@authhero/kysely-adapter 10.36.0 → 10.37.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 Ee=Object.defineProperty;var de=t=>{throw TypeError(t)};var Je=(t,e,r)=>e in t?Ee(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var z=(t,e,r)=>Je(t,typeof e!="symbol"?e+"":e,r),V=(t,e,r)=>e.has(t)||de("Cannot "+r);var d=(t,e,r)=>(V(t,e,"read from private field"),r?r.call(t):e.get(t)),C=(t,e,r)=>e.has(t)?de("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),E=(t,e,r,a)=>(V(t,e,"write to private field"),a?a.call(t,r):e.set(t,r),r),m=(t,e,r)=>(V(t,e,"access private method"),r);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const v=require("@authhero/adapter-interfaces");require("@hono/zod-openapi");var Y=class extends Error{constructor(e=500,r){super(r==null?void 0:r.message,{cause:r==null?void 0:r.cause});z(this,"res");z(this,"status");this.res=r==null?void 0:r.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 Re(t){return async(e,r)=>{const{identities:a,...o}=r,n={...o,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),login_count:0,tenant_id:e,email_verified:r.email_verified?1:0,is_social:r.is_social?1:0,app_metadata:JSON.stringify(r.app_metadata),user_metadata:JSON.stringify(r.user_metadata)};try{await t.insertInto("users").values(n).execute()}catch(s){throw s.code==="SQLITE_CONSTRAINT_UNIQUE"||s.message.includes("AlreadyExists")?new Y(409,{message:"User already exists"}):new Y(500,{message:`${s.code}, ${s.message}`})}return{...n,email:n.email||"",email_verified:n.email_verified===1,is_social:n.is_social===1}}}function f(t){if(t==null||typeof t!="object")return t;if(Array.isArray(t))return t.map(r=>r!==null&&typeof r=="object"?f(r):r);const e={...t};for(const r in e){const a=e[r];a===null?delete e[r]:a!==null&&typeof a=="object"&&(Array.isArray(a)?e[r]=a.map(o=>o!==null&&typeof o=="object"?f(o):o):e[r]=f(a))}return e}function fe(t){let e={};try{e=JSON.parse(t.profileData||"{}")}catch(r){console.error("Error parsing profileData",r)}return{connection:t.connection,provider:t.provider,user_id:v.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,r)=>{const[a,o]=await Promise.all([t.selectFrom("users").where("users.tenant_id","=",e).where("users.user_id","=",r).selectAll().executeTakeFirst(),t.selectFrom("users").where("users.tenant_id","=",e).where("users.linked_to","=",r).selectAll().execute()]);if(!a)return null;const{tenant_id:n,...s}=a,l={...s,email:a.email||"",email_verified:a.email_verified===1,is_social:a.is_social===1,app_metadata:JSON.parse(a.app_metadata),user_metadata:JSON.parse(a.user_metadata),identities:[{connection:a.connection,provider:a.provider,user_id:v.parseUserId(a.user_id).id,isSocial:!!a.is_social},...o.map(fe)]};return f(l)}}function b(t,e,r,a){return r.split(/\s+/).map(n=>n.replace(/^([^:]+)=/g,"$1:")).map(n=>{let s=n.startsWith("-"),l=null,c="",_=!1,u;if(n.startsWith("-_exists_:"))l=n.substring(10),_=!0,s=!0;else if(n.startsWith("_exists_:"))l=n.substring(9),_=!0,s=!1;else if(n.includes(":")){const h=s?n.substring(1):n,g=h.indexOf(":");l=h.substring(0,g),c=h.substring(g+1),_=!1,c.startsWith(">=")?(u=">=",c=c.substring(2)):c.startsWith(">")?(u=">",c=c.substring(1)):c.startsWith("<=")?(u="<=",c=c.substring(2)):c.startsWith("<")?(u="<",c=c.substring(1)):u="="}else l=null,c=n,_=!1;return{key:l,value:c,isNegation:s,isExistsQuery:_,operator:u}}).forEach(({key:n,value:s,isNegation:l,isExistsQuery:c,operator:_})=>{if(n)if(c)l?e=e.where(n,"is",null):e=e.where(n,"is not",null);else if(l)switch(_){case">":e=e.where(n,"<=",s);break;case">=":e=e.where(n,"<",s);break;case"<":e=e.where(n,">=",s);break;case"<=":e=e.where(n,">",s);break;default:e=e.where(n,"!=",s)}else e=e.where(n,_,s);else if(s){const{ref:u}=t.dynamic;e=e.where(h=>h.or(a.map(g=>h(u(g),"like",`%${s}%`))))}}),e}function N(t){return typeof t=="string"?parseInt(t,10):typeof t=="bigint"?Number(t):t}function Ue(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("users").where("users.tenant_id","=",e);if(r.q&&(a=b(t,a,r.q,["email","name"])),r.sort&&r.sort.sort_by){const{ref:u}=t.dynamic;a=a.orderBy(u(r.sort.sort_by),r.sort.sort_order)}const n=await a.offset(r.page*r.per_page).limit(r.per_page).selectAll().execute(),s=n.map(u=>u.user_id),l=s.length?await t.selectFrom("users").selectAll().where("users.tenant_id","=",e).where("users.linked_to","in",s).execute():[],c=n.map(u=>{const h=l.filter(g=>g.linked_to===u.user_id);return f({...u,email_verified:u.email_verified===1,is_social:u.is_social===1,app_metadata:JSON.parse(u.app_metadata),user_metadata:JSON.parse(u.user_metadata),identities:[{connection:u.connection,provider:u.provider,user_id:v.parseUserId(u.user_id).id,isSocial:!!u.is_social},...h.map(fe)]})}),{count:_}=await a.select(u=>u.fn.countAll().as("count")).executeTakeFirstOrThrow();return{users:c,start:r.page*r.per_page,limit:r.per_page,length:N(_)}}}function Be(t){return async(e,r)=>(await t.deleteFrom("users").where("users.tenant_id","=",e).where("users.linked_to","=",r).execute(),(await t.deleteFrom("users").where("users.tenant_id","=",e).where("users.user_id","=",r).execute()).length===1)}function L(t,e="",r={}){for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a)){const o=e?`${e}_${a}`:a,n=t[a];typeof n=="object"&&n!==null&&!Array.isArray(n)?L(n,o,r):typeof n=="boolean"?r[o]=n?1:0:r[o]=n}return r}function pe(t,e){const r={};for(const[a,o]of Object.entries(t)){const n=e.find(s=>a.startsWith(`${s}_`));if(!n)r[a]=o;else{const s=a.slice(n.length+1);r[n]={...r[n],[s]:o}}}return r}function Qe(t){return async(e,r,a)=>{const o=L({...a,updated_at:new Date().toISOString(),app_metadata:a.app_metadata?JSON.stringify(a.app_metadata):void 0,user_metadata:a.user_metadata?JSON.stringify(a.user_metadata):void 0});return(await t.updateTable("users").set(o).where("users.tenant_id","=",e).where("users.user_id","=",r).execute()).length===1}}function qe(t){return async(e,r,a,o)=>{const n={linked_to:null};return(await t.updateTable("users").set(n).where("users.tenant_id","=",e).where("users.user_id","=",`${a}|${o}`).where("users.linked_to","=",`${r}`).execute()).length===1}}function Ve(t){return{create:Re(t),remove:Be(t),get:Ke(t),list:Ue(t),update:Qe(t),unlink:qe(t)}}const We="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let x=(t=21)=>{let e="",r=crypto.getRandomValues(new Uint8Array(t));for(;t--;)e+=We[r[t]&63];return e};function Ge(t){return async e=>{const r={id:e.id||x(),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...e};return await t.insertInto("tenants").values(r).execute(),r}}function He(t){return async e=>{const r=await t.selectFrom("tenants").where("tenants.id","=",e).selectAll().executeTakeFirst();return r?f(r):null}}function Ye(t){return async(e={page:0,per_page:50,include_totals:!1})=>{let r=t.selectFrom("tenants");if(e.sort&&e.sort.sort_by){const{ref:l}=t.dynamic;r=r.orderBy(l(e.sort.sort_by),e.sort.sort_order)}e.q&&(r=r.where(l=>l.or([l("name","like",`%${e.q}%`)])));const o=await r.offset(e.page*e.per_page).limit(e.per_page).selectAll().execute();if(!e.include_totals)return{tenants:o};const{count:n}=await r.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow(),s=N(n);return{tenants:o.map(f),start:(e.page-1)*e.per_page,limit:e.per_page,length:s}}}function Xe(t){return async(e,r)=>{const a={...r,id:e,updated_at:new Date().toISOString()};await t.updateTable("tenants").set(a).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:Ye(t),update:Xe(t),remove:Ze(t)}}function ue(t){return t?JSON.stringify(t):void 0}const tt=1024;function rt(t){return async(e,r)=>{var o,n,s;const a={id:x(),...r,user_agent:r.user_agent.slice(0,tt)};return await t.insertInto("logs").values({...a,description:(o=a.description)==null?void 0:o.substring(0,256),isMobile:r.isMobile?1:0,tenant_id:e,scope:(n=r.scope)==null?void 0:n.join(","),auth0_client:ue(r.auth0_client),details:(s=ue(r.details))==null?void 0:s.substring(0,8192)}).execute(),a}}function me(t){if(!t)return"";try{return JSON.parse(t)}catch{return t}}function ge(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 at(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("logs").where("logs.tenant_id","=",e);r.q&&(a=b(t,a,r.q,["user_id","ip"]));let o=a;if(r.sort&&r.sort.sort_by){const{ref:l}=t.dynamic;o=o.orderBy(l(r.sort.sort_by),r.sort.sort_order)}o=o.offset(r.page*r.per_page).limit(r.per_page);const n=await o.selectAll().execute(),{count:s}=await a.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{logs:n.map(ge),start:r.page*r.per_page,limit:r.per_page,length:N(s)}}}function nt(t){return async(e,r)=>{const a=await t.selectFrom("logs").where("logs.tenant_id","=",e).where("logs.id","=",r).selectAll().executeTakeFirst();return a?ge(a):null}}function ot(t){return{create:rt(t),list:at(t),get:nt(t)}}function st(t){return async(e,r)=>{const a=await t.selectFrom("sessions").where("sessions.tenant_id","=",e).where("sessions.id","=",r).selectAll().executeTakeFirst();if(!a)return null;const{tenant_id:o,device:n,clients:s,...l}=a;return{...l,device:JSON.parse(n),clients:JSON.parse(s)}}}function it(t){return async(e,r)=>{const a={...r,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({...a,tenant_id:e,device:JSON.stringify(r.device),clients:JSON.stringify(r.clients)}).execute(),a}}function lt(t){return async(e,r)=>!!(await t.deleteFrom("sessions").where("tenant_id","=",e).where("sessions.id","=",r).execute()).length}function ct(t){return async(e,r,a)=>{const o={...a,updated_at:new Date().toISOString(),device:a.device?JSON.stringify(a.device):void 0,clients:a.clients?JSON.stringify(a.clients):void 0};return!!(await t.updateTable("sessions").set(o).where("tenant_id","=",e).where("sessions.id","=",r).execute()).length}}function dt(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("sessions").where("sessions.tenant_id","=",e);r.q&&(a=b(t,a,r.q,["user_id","session_id"]));let o=a;if(r.sort&&r.sort.sort_by){const{ref:c}=t.dynamic;o=o.orderBy(c(r.sort.sort_by),r.sort.sort_order)}o=o.offset(r.page*r.per_page).limit(r.per_page);const n=await o.selectAll().execute(),{count:s}=await a.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow(),l=N(s);return{sessions:n.map(c=>({...c,device:JSON.parse(c.device),clients:JSON.parse(c.clients)})),start:r.page*r.per_page,limit:r.per_page,length:l}}}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,r)=>{const a=await t.selectFrom("passwords").where("passwords.tenant_id","=",e).where("passwords.user_id","=",r).selectAll().executeTakeFirst();if(!a)return null;const{tenant_id:o,...n}=a;return n}}function _t(t){return async(e,r)=>{const a={...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("passwords").values({...a,tenant_id:e}).execute(),a}}function ht(t){return async(e,r)=>(await t.updateTable("passwords").set({password:r.password,updated_at:new Date().toISOString()}).where("tenant_id","=",e).where("user_id","=",r.user_id).execute()).length===1}function ft(t){return{create:_t(t),update:ht(t),get:mt(t)}}function pt(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("codes").where("codes.tenant_id","=",e);r.q&&(a=b(t,a,r.q,["code","login_id"]));const n=await a.offset(r.page*r.per_page).limit(r.per_page).selectAll().execute(),{count:s}=await a.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow();return{codes:n.map(c=>{const{tenant_id:_,...u}=c;return v.codeSchema.parse(f(u))}),start:r.page*r.per_page,limit:r.per_page,length:N(s)}}}function gt(t){return async(e,r)=>{const a={...r,created_at:new Date().toISOString()};return await t.insertInto("codes").values({...a,tenant_id:e}).execute(),a}}function wt(t){return async(e,r)=>(await t.deleteFrom("codes").where("codes.tenant_id","=",e).where("codes.code_id","=",r).executeTakeFirst()).numDeletedRows>0}function yt(t){return async(e,r,a)=>{let o=t.selectFrom("codes").where("codes.code_id","=",r).where("codes.code_type","=",a);e.length&&(o=o.where("codes.tenant_id","=",e));const n=await o.selectAll().executeTakeFirst();return n?f(n):null}}function vt(t){return async(e,r)=>(await t.updateTable("codes").set({used_at:new Date().toISOString()}).where("codes.tenant_id","=",e).where("codes.code_id","=",r).executeTakeFirst()).numUpdatedRows>0}function Nt(t){return{create:gt(t),list:pt(t),remove:wt(t),used:vt(t),get:yt(t)}}function Ct(t){return async(e,r)=>{const a={created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...r,disable_sign_ups:r.disable_sign_ups??!1},o=JSON.stringify(r.allowed_origins),n=JSON.stringify(r.callbacks),s=JSON.stringify(r.web_origins),l=JSON.stringify(r.allowed_logout_urls),c=JSON.stringify(r.allowed_clients);return await t.insertInto("applications").values({...a,tenant_id:e,disable_sign_ups:r.disable_sign_ups?1:0,addons:r.addons?JSON.stringify(r.addons):"{}",callbacks:n,allowed_origins:o,web_origins:s,allowed_logout_urls:l,allowed_clients:c}).execute(),a}}function bt(t){return async e=>({applications:(await t.selectFrom("applications").where("applications.tenant_id","=",e).selectAll().execute()).map(n=>({...n,disable_sign_ups:!!n.disable_sign_ups,addons:n.addons?JSON.parse(n.addons):{},callbacks:n.callbacks?JSON.parse(n.callbacks):[],allowed_origins:n.allowed_origins?JSON.parse(n.allowed_origins):[],web_origins:n.web_origins?JSON.parse(n.web_origins):[],allowed_logout_urls:n.allowed_logout_urls?JSON.parse(n.allowed_logout_urls):[],allowed_clients:n.allowed_logout_urls?JSON.parse(n.allowed_logout_urls):[]}))})}function xt(t){return async(e,r)=>{const a=await t.selectFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",r).selectAll().executeTakeFirst();return a?f({...a,disable_sign_ups:!!a.disable_sign_ups,addons:JSON.parse(a.addons),callbacks:JSON.parse(a.callbacks),allowed_origins:JSON.parse(a.allowed_origins),web_origins:JSON.parse(a.web_origins),allowed_logout_urls:JSON.parse(a.allowed_logout_urls)}):null}}function Tt(t){return async(e,r)=>(await t.deleteFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",r).executeTakeFirst()).numDeletedRows>0}function St(t){return async(e,r,a)=>{const o={...a,updated_at:new Date().toISOString(),allowed_origins:a.allowed_origins?JSON.stringify(a.allowed_origins):void 0,callbacks:a.callbacks?JSON.stringify(a.callbacks):void 0,web_origins:a.web_origins?JSON.stringify(a.web_origins):void 0,allowed_logout_urls:a.allowed_logout_urls?JSON.stringify(a.allowed_logout_urls):void 0,allowed_clients:a.allowed_clients?JSON.stringify(a.allowed_clients):void 0,addons:a.addons?JSON.stringify(a.addons):"{}",disable_sign_ups:a.disable_sign_ups?1:0};return await t.updateTable("applications").set(o).where("applications.id","=",r).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,r)=>{const a={id:x(),...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("connections").values({...a,options:JSON.stringify(a.options||{}),tenant_id:e}).execute(),a}}function $t(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("connections").where("connections.tenant_id","=",e);r.q&&(a=b(t,a,r.q,["user_id","ip"]));const s=(await a.offset(r.page*r.per_page).limit(r.per_page).selectAll().execute()).map(c=>f({...c,options:JSON.parse(c.options)})),{count:l}=await a.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow();return{connections:s,start:r.page*r.per_page,limit:r.per_page,length:N(l)}}}function It(t){return async(e,r)=>(await t.deleteFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",r).executeTakeFirst()).numDeletedRows>0}function Dt(t){return async(e,r)=>{const a=await t.selectFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",r).selectAll().executeTakeFirst();return a?f({...a,options:JSON.parse(a.options)}):null}}function Pt(t){return async(e,r,a)=>{const o={...a,updated_at:new Date().toISOString()};return await t.updateTable("connections").set({...o,options:o.options?JSON.stringify(o.options):void 0}).where("connections.id","=",r).where("connections.tenant_id","=",e).execute(),!0}}function jt(t){return{create:kt(t),get:Dt(t),list:$t(t),remove:It(t),update:Pt(t)}}function Ft(t){return{get:async e=>{const r=await t.selectFrom("applications").selectAll().where("id","=",e).executeTakeFirst();if(!r)return null;const a=await t.selectFrom("tenants").selectAll().where("id","=",r.tenant_id).executeTakeFirst();if(!a)throw new Y(404,{message:"Tenant not found"});const o=await t.selectFrom("connections").where("tenant_id","=",r.tenant_id).selectAll().execute();return{...r,connections:o.map(s=>v.connectionSchema.parse(f({...s,options:s.options?JSON.parse(s.options):{}}))),addons:r.addons?JSON.parse(r.addons):{},callbacks:r.callbacks?JSON.parse(r.callbacks):[],allowed_origins:r.allowed_origins?JSON.parse(r.allowed_origins):[],web_origins:r.web_origins?JSON.parse(r.web_origins):[],allowed_logout_urls:r.allowed_logout_urls?JSON.parse(r.allowed_logout_urls):[],allowed_clients:r.allowed_clients?JSON.parse(r.allowed_clients):[],tenant:f(a),disable_sign_ups:!!r.disable_sign_ups}}}}function Mt(t){return async()=>await t.selectFrom("keys").where(r=>r.or([r("revoked_at",">",new Date().toISOString()),r("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,r)=>!!(await t.updateTable("keys").set(r).where("kid","=",e).execute()).length}function zt(t){return{create:At(t),list:Mt(t),update:Lt(t)}}function Et(t){return async(e,r)=>{const a={custom_domain_id:x(),status:"pending",primary:!1,...r};return await t.insertInto("custom_domains").values({...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),tenant_id:e,primary:a.primary?1:0}).execute(),a}}function Jt(t){return async e=>(await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).selectAll().execute()).map(a=>({...a,primary:a.primary===1}))}function Rt(t){return async(e,r)=>(await t.deleteFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",r).execute()).length>0}function Kt(t){return async(e,r)=>{const a=await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",r).selectAll().executeTakeFirst();return a?{...a,primary:a.primary===1}:null}}function Ut(t){return async(e,r,a)=>{const o={...a,updated_at:new Date().toISOString(),primary:a.primary?1:0};return(await t.updateTable("custom_domains").set(o).where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",r).execute()).length>0}}function Bt(t){return async e=>{const r=await t.selectFrom("custom_domains").where("custom_domains.domain","=",e).selectAll().executeTakeFirst();return r?{...r,primary:r.primary===1}:null}}function Qt(t){return{create:Et(t),get:Kt(t),getByDomain:Bt(t),list:Jt(t),remove:Rt(t),update:Ut(t)}}function qt(t){return async e=>{const[r]=await t.selectFrom("branding").where("branding.tenant_id","=",e).selectAll().execute();if(!r)return null;const{tenant_id:a,colors_primary:o,colors_page_background_type:n,colors_page_background_start:s,colors_page_background_end:l,colors_page_background_angle_dev:c,font_url:_,...u}=r;return f({...u,colors:{primary:o,page_background:{type:n,start:s,end:l,angle_deg:c}},font:_?{url:_}:void 0})}}function Vt(t){return async(e,r)=>{var s,l,c,_,u,h,g,D,P,k,B,ae,ne,oe,se,ie,le,ce;const{colors:a,font:o,...n}=r;try{await t.insertInto("branding").values({...n,colors_primary:a==null?void 0:a.primary,colors_page_background_type:(l=(s=r.colors)==null?void 0:s.page_background)==null?void 0:l.type,colors_page_background_start:(_=(c=r.colors)==null?void 0:c.page_background)==null?void 0:_.start,colors_page_background_end:(h=(u=r.colors)==null?void 0:u.page_background)==null?void 0:h.end,colors_page_background_angle_dev:(D=(g=r.colors)==null?void 0:g.page_background)==null?void 0:D.angle_deg,font_url:(P=r.font)==null?void 0:P.url,tenant_id:e}).execute()}catch{await t.updateTable("branding").set({...n,colors_primary:a==null?void 0:a.primary,colors_page_background_type:(B=(k=r.colors)==null?void 0:k.page_background)==null?void 0:B.type,colors_page_background_start:(ne=(ae=r.colors)==null?void 0:ae.page_background)==null?void 0:ne.start,colors_page_background_end:(se=(oe=r.colors)==null?void 0:oe.page_background)==null?void 0:se.end,colors_page_background_angle_dev:(le=(ie=r.colors)==null?void 0:ie.page_background)==null?void 0:le.angle_deg,font_url:(ce=r.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,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("hooks").where("hooks.tenant_id","=",e);r.q&&(a=b(t,a,r.q,["url","form_id"]));const n=await a.offset(r.page*r.per_page).limit(r.per_page).selectAll().execute(),{count:s}=await a.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow();return{hooks:n.map(c=>{const{tenant_id:_,enabled:u,synchronous:h,...g}=c;return f({...g,enabled:!!u,synchronous:!!h})}),start:r.page*r.per_page,limit:r.per_page,length:N(s)}}}function Ht(t){return async(e,r)=>{const a=await t.selectFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",r).selectAll().executeTakeFirst();return a?f({...a,enabled:!!a.enabled,synchronous:!!a.synchronous}):null}}function Yt(t){return async(e,r)=>(await t.deleteFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",r).executeTakeFirst()).numDeletedRows>0}function Xt(t){return async(e,r)=>{const a={hook_id:x(),...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("hooks").values({...a,tenant_id:e,enabled:r.enabled?1:0,synchronous:r.synchronous?1:0}).execute(),a}}function Zt(t){return async(e,r,a)=>{const o={...a,updated_at:new Date().toISOString(),enabled:a.enabled!==void 0?a.enabled?1:0:void 0,synchronous:a.enabled!==void 0?a.synchronous?1:0:void 0};return await t.updateTable("hooks").set(o).where("hooks.hook_id","=",r).where("hooks.tenant_id","=",e).execute(),!0}}function er(t){return{create:Xt(t),get:Ht(t),list:Gt(t),update:Zt(t),remove:Yt(t)}}function tr(t){return async(e,r)=>{const a={themeId:x(),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...r},o={...a,tenant_id:e};return await t.insertInto("themes").values(L(o)).execute(),a}}function rr(t){return async(e,r)=>(await t.deleteFrom("themes").where("themes.tenant_id","=",e).where("themes.themeId","=",r).executeTakeFirst()).numDeletedRows>0}function ar(t){return async(e,r)=>{const a=await t.selectFrom("themes").where("themes.tenant_id","=",e).where("themes.themeId","=",r).selectAll().executeTakeFirst();if(!a)return null;const o={...a,borders_show_widget_shadow:!!a.borders_show_widget_shadow,fonts_body_text_bold:!!a.fonts_body_text_bold,fonts_buttons_text_bold:!!a.fonts_buttons_text_bold,fonts_input_labels_bold:!!a.fonts_input_labels_bold,fonts_links_bold:!!a.fonts_links_bold,fonts_subtitle_bold:!!a.fonts_subtitle_bold,fonts_title_bold:!!a.fonts_title_bold};return f(pe(o,["widget","colors","borders","fonts","page_background"]))}}function nr(t){return async(e,r,a)=>{const o=L({...a,updated_at:new Date().toISOString()});return await t.updateTable("themes").set(o).where("themes.themeId","=",r).where("themes.tenant_id","=",e).execute(),!0}}function or(t){return{create:tr(t),get:ar(t),remove:rr(t),update:nr(t)}}function sr(t){return async(e,r)=>{const a=await t.selectFrom("login_sessions").where("login_sessions.id","=",r).selectAll().executeTakeFirst();return a?v.loginSessionSchema.parse(pe(f({...a,login_completed:!!a.login_completed}),["authParams"])):null}}function ir(t){return async(e,r)=>{var o;const a={id:x(),...r,authorization_url:(o=r.authorization_url)==null?void 0:o.slice(0,1024),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),login_completed:!!r.login_completed};return await t.insertInto("login_sessions").values({...L(a),tenant_id:e}).execute(),a}}function lr(t){return async(e,r,a)=>(await t.updateTable("login_sessions").set(L({...a})).where("login_sessions.id","=",r).where("login_sessions.tenant_id","=",e).execute()).length===1}function cr(t){return async(e,r)=>(await t.deleteFrom("login_sessions").where("login_sessions.tenant_id","=",e).where("login_sessions.id","=",r).execute()).length>0}function dr(t){return{create:ir(t),get:sr(t),update:lr(t),remove:cr(t)}}function ur(t){return async e=>{const[r]=await t.selectFrom("prompt_settings").where("prompt_settings.tenant_id","=",e).selectAll().execute();return f({identifier_first:!!(r!=null&&r.identifier_first),password_first:!!(r!=null&&r.password_first),webauthn_platform_first_factor:!!(r!=null&&r.webauthn_platform_first_factor),universal_login_experience:(r==null?void 0:r.universal_login_experience)||"new"})}}function _e(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 mr(t){return async(e,r)=>{try{const a=v.promptSettingSchema.parse(r);await t.insertInto("prompt_settings").values({..._e(a),tenant_id:e}).execute()}catch{await t.updateTable("prompt_settings").set(_e(r)).where("tenant_id","=",e).execute()}}}function _r(t){return{get:ur(t),set:mr(t)}}function hr(t){return async e=>{const[r]=await t.selectFrom("email_providers").where("email_providers.tenant_id","=",e).selectAll().execute();if(!r)return null;const{tenant_id:a,credentials:o,settings:n,enabled:s,...l}=r;return f({...l,credentials:JSON.parse(o),settings:JSON.parse(n),enabled:!!s})}}function fr(t){return async(e,r)=>{const{credentials:a,settings:o,enabled:n,...s}=r;await t.updateTable("email_providers").set({...s,credentials:a?JSON.stringify(a):void 0,settings:o?JSON.stringify(o):void 0,enabled:n!==void 0?n?1:0:void 0}).where("tenant_id","=",e).execute()}}function pr(t){return async(e,r)=>{const{credentials:a,settings:o,enabled:n,...s}=r;await t.insertInto("email_providers").values({...s,enabled:n?1:0,credentials:JSON.stringify(a),settings:JSON.stringify(o),tenant_id:e,created_at:new Date().toISOString(),updated_at:new Date().toISOString()}).execute()}}function gr(t){return{get:hr(t),create:pr(t),update:fr(t)}}function wr(t){return async(e,r)=>{const a=await t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e).where("refresh_tokens.id","=",r).selectAll().executeTakeFirst();return a?{...a,rotating:!!a.rotating,device:a.device?JSON.parse(a.device):{},resource_servers:a.resource_servers?JSON.parse(a.resource_servers):[]}:null}}function yr(t){return async(e,r)=>{const a={...r,created_at:new Date().toISOString()};return await t.insertInto("refresh_tokens").values({...a,tenant_id:e,rotating:r.rotating?1:0,device:JSON.stringify(r.device),resource_servers:JSON.stringify(r.resource_servers)}).execute(),{...r,...a}}}function vr(t){return async(e,r)=>!!(await t.deleteFrom("refresh_tokens").where("tenant_id","=",e).where("refresh_tokens.id","=",r).execute()).length}function Nr(t){return async(e,r,a)=>{const o={...a,device:a.device?JSON.stringify(a.device):void 0,resource_servers:a.resource_servers?JSON.stringify(a.resource_servers):void 0,rotating:a.rotating?1:0};return!!(await t.updateTable("refresh_tokens").set(o).where("tenant_id","=",e).where("refresh_tokens.id","=",r).execute()).length}}function Cr(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e);r.q&&(a=b(t,a,r.q,["token","session_id"]));let o=a;if(r.sort&&r.sort.sort_by){const{ref:c}=t.dynamic;o=o.orderBy(c(r.sort.sort_by),r.sort.sort_order)}o=o.offset(r.page*r.per_page).limit(r.per_page);const n=await o.selectAll().execute(),{count:s}=await a.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow(),l=N(s);return{refresh_tokens:n.map(c=>({...c,rotating:!!c.rotating,device:c.device?JSON.parse(c.device):{},resource_servers:c.resource_servers?JSON.parse(c.resource_servers):[]})),start:r.page*r.per_page,limit:r.per_page,length:l}}}function br(t){return{create:yr(t),get:wr(t),list:Cr(t),remove:vr(t),update:Nr(t)}}function xr(t){return async()=>{const e=new Date(Date.now()-864e5).toISOString(),r=new Date(Date.now()-1e3*60*60*24*7).toISOString(),a=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","<",r).where("session_id","is",null).limit(1e5).execute(),console.log("delete logs"),await t.deleteFrom("logs").where("date","<",a).limit(1e5).execute(),console.log("delete refresh tokens"),await t.deleteFrom("refresh_tokens").where(n=>n.or([n("expires_at","<",r),n("idle_expires_at","<",r)])).limit(1e4).execute(),console.log("delete sessions");const o=await t.selectFrom("sessions").select("id").where(n=>n.or([n("expires_at","<",r),n("idle_expires_at","<",r)])).where("id","not in",t.selectFrom("refresh_tokens").select("session_id")).limit(1e5).execute();o.length>0&&await t.deleteFrom("sessions").where("id","in",o.map(n=>n.id)).execute(),console.log("cleanup complete")}}function Tr(t){return async(e,r)=>{const a=v.formSchema.parse({id:x(),...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString()});return await t.insertInto("forms").values({...a,nodes:JSON.stringify(a.nodes||[]),start:JSON.stringify(a.start||{}),ending:JSON.stringify(a.ending||{}),tenant_id:e}).execute(),v.formSchema.parse(a)}}function Sr(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("forms").where("tenant_id","=",e);r!=null&&r.q&&(a=b(t,a,r.q,[]));const s=(await a.offset(r.page*r.per_page).limit(r.per_page).selectAll().execute()).map(c=>{const _={...c};if(typeof _.nodes=="string")try{_.nodes=JSON.parse(_.nodes)}catch{}if(typeof _.start=="string")try{_.start=JSON.parse(_.start)}catch{}if(typeof _.ending=="string")try{_.ending=JSON.parse(_.ending)}catch{}return v.formSchema.parse(f(_))}),{count:l}=await a.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow();return{forms:s,start:r.page*r.per_page,limit:r.per_page,length:N(l)}}}function Or(t){return async(e,r)=>{const{numDeletedRows:a}=await t.deleteFrom("forms").where("id","=",r).where("tenant_id","=",e).executeTakeFirst();return a>0}}function kr(t){return async(e,r)=>{const a=await t.selectFrom("forms").selectAll().where("forms.id","=",r).where("tenant_id","=",e).executeTakeFirst();if(!a)return null;const o={...a};if(typeof o.nodes=="string")try{o.nodes=JSON.parse(o.nodes)}catch{}if(typeof o.start=="string")try{o.start=JSON.parse(o.start)}catch{}if(typeof o.ending=="string")try{o.ending=JSON.parse(o.ending)}catch{}return v.formSchema.parse(f(o))}}function $r(t){return async(e,r,a)=>{const o={...a,updated_at:new Date().toISOString()};a.nodes&&(o.nodes=JSON.stringify(a.nodes)),a.start&&(o.start=JSON.stringify(a.start)),a.ending&&(o.ending=JSON.stringify(a.ending));const{numUpdatedRows:n}=await t.updateTable("forms").set(o).where("id","=",r).where("tenant_id","=",e).executeTakeFirst();return n>0}}function Ir(t){return{create:Tr(t),get:kr(t),list:Sr(t),remove:Or(t),update:$r(t)}}function Dr(t){return async(e,r)=>{const a=new Date().toISOString(),o={id:x(),...r,created_at:a,updated_at:a},n=v.resourceServerSchema.parse(o),{verificationKey:s,scopes:l,options:c,skip_consent_for_verifiable_first_party_clients:_,allow_offline_access:u,...h}=n,g={...h,tenant_id:e,scopes:l?JSON.stringify(l):"[]",options:c?JSON.stringify(c):"{}",skip_consent_for_verifiable_first_party_clients:_?1:0,allow_offline_access:u?1:0,verification_key:s,created_at:a,updated_at:a};return await t.insertInto("resource_servers").values(g).execute(),f(n)}}function Pr(t){return async(e,r)=>{const a=await t.selectFrom("resource_servers").selectAll().where("tenant_id","=",e).where("id","=",r).executeTakeFirst();if(!a)return null;const o=a,{verification_key:n,scopes:s,options:l,skip_consent_for_verifiable_first_party_clients:c,allow_offline_access:_,...u}=o,h={...u,scopes:s?JSON.parse(s):[],options:l?JSON.parse(l):{},skip_consent_for_verifiable_first_party_clients:!!c,allow_offline_access:!!_,verificationKey:n};return f(h)}}function jr(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("resource_servers").where("resource_servers.tenant_id","=",e);if(r.q){const c=r.q.trim(),_=c.split(/\s+/),u=_.length===1?_[0]:void 0,h=u?u.match(/^(-)?(name|identifier):(.*)$/):null,g=h?h[3]:"",D=/^(>=|>|<=|<)/.test(g||"");if(h&&!D){const P=!!h[1],k=h[2]==="name"?"resource_servers.name":"resource_servers.identifier";a=P?a.where(k,"not like",`%${g}%`):a.where(k,"like",`%${g}%`)}else a=b(t,a,c,["resource_servers.name","resource_servers.identifier"])}const s=(await a.offset(r.page*r.per_page).limit(r.per_page).selectAll().execute()).map(c=>{const _=c,{verification_key:u,scopes:h,options:g,skip_consent_for_verifiable_first_party_clients:D,allow_offline_access:P,...k}=_,B={...k,scopes:h?JSON.parse(h):[],options:g?JSON.parse(g):{},skip_consent_for_verifiable_first_party_clients:!!D,allow_offline_access:!!P,verificationKey:u};return f(B)}),{count:l}=await a.select(c=>c.fn.countAll().as("count")).executeTakeFirstOrThrow();return{resource_servers:s,start:r.page*r.per_page,limit:r.per_page,length:N(l)}}}function Fr(t){return async(e,r)=>{const a=await t.deleteFrom("resource_servers").where("tenant_id","=",e).where("id","=",r).executeTakeFirst();return Number(a.numDeletedRows)>0}}function Mr(t){return async(e,r,a)=>{const{verificationKey:o,scopes:n,options:s,skip_consent_for_verifiable_first_party_clients:l,allow_offline_access:c,..._}=a,u={..._,updated_at:new Date().toISOString()};o!==void 0&&(u.verification_key=o),n!==void 0&&(u.scopes=JSON.stringify(n)),s!==void 0&&(u.options=JSON.stringify(s)),l!==void 0&&(u.skip_consent_for_verifiable_first_party_clients=l?1:0),c!==void 0&&(u.allow_offline_access=c?1:0);const h=await t.updateTable("resource_servers").set(u).where("tenant_id","=",e).where("id","=",r).executeTakeFirst();return Number(h.numUpdatedRows)>0}}function Ar(t){return{create:Dr(t),get:Pr(t),list:jr(t),remove:Fr(t),update:Mr(t)}}function Lr(t){return async(e,r)=>{const a=new Date().toISOString(),o=x(),n={id:o,...r,tenant_id:e,created_at:a,updated_at:a};return await t.insertInto("roles").values(n).execute(),{id:o,...r,created_at:a,updated_at:a}}}function zr(t){return async(e,r)=>{const a=await t.selectFrom("roles").selectAll().where("roles.tenant_id","=",e).where("roles.id","=",r).executeTakeFirst();return a?{...a}:null}}function Er(t){return async(e,r={page:0,per_page:50,include_totals:!1})=>{let a=t.selectFrom("roles").where("roles.tenant_id","=",e);r.q&&(a=b(t,a,r.q,["name"]));const n=await a.offset(r.page*r.per_page).limit(r.per_page).selectAll().execute(),{count:s}=await a.select(l=>l.fn.countAll().as("count")).executeTakeFirstOrThrow();return{roles:n,start:r.page*r.per_page,limit:r.per_page,length:N(s)}}}function Jr(t){return async(e,r,a)=>{const o={...a,updated_at:new Date().toISOString()},n=await t.updateTable("roles").set(o).where("roles.tenant_id","=",e).where("roles.id","=",r).executeTakeFirst();return Number(n.numUpdatedRows)>0}}function Rr(t){return async(e,r)=>{const a=await t.deleteFrom("roles").where("tenant_id","=",e).where("id","=",r).executeTakeFirst();return Number(a.numDeletedRows)>0}}function Kr(t){return{create:Lr(t),get:zr(t),list:Er(t),update:Jr(t),remove:Rr(t)}}function Ur(t){return async(e,r,a)=>{if(a.length===0)return!0;const o=new Date().toISOString();try{for(const n of a){if(n.role_id!==r)throw new Error(`Permission role_id ${n.role_id} does not match expected role_id ${r}`);const s={tenant_id:e,role_id:n.role_id,resource_server_identifier:n.resource_server_identifier,permission_name:n.permission_name,created_at:o};try{await t.insertInto("role_permissions").values(s).execute()}catch(l){if(l.code==="SQLITE_CONSTRAINT_PRIMARYKEY"||l.code==="SQLITE_CONSTRAINT_UNIQUE")continue;throw l}}return!0}catch(n){return console.error("Error assigning role permissions:",n),!1}}}function Br(t){return async(e,r,a)=>{if(a.length===0)return!0;try{return(await Promise.all(a.map(n=>t.deleteFrom("role_permissions").where("tenant_id","=",e).where("role_id","=",r).where("resource_server_identifier","=",n.resource_server_identifier).where("permission_name","=",n.permission_name).executeTakeFirst()))).some(n=>Number(n.numDeletedRows)>0)}catch(o){return console.error("Error removing role permissions:",o),!1}}}function Qr(t){return async(e,r,a={page:0,per_page:50,include_totals:!1})=>(await t.selectFrom("role_permissions").leftJoin("resource_servers",s=>s.onRef("role_permissions.tenant_id","=","resource_servers.tenant_id").onRef("role_permissions.resource_server_identifier","=","resource_servers.id")).select(["role_permissions.role_id","role_permissions.resource_server_identifier","role_permissions.permission_name","role_permissions.created_at","resource_servers.name as resource_server_name"]).where("role_permissions.tenant_id","=",e).where("role_permissions.role_id","=",r).offset(a.page*a.per_page).limit(a.per_page).execute()).map(s=>({role_id:s.role_id,resource_server_identifier:s.resource_server_identifier,resource_server_name:s.resource_server_name||s.resource_server_identifier,permission_name:s.permission_name,description:null,created_at:s.created_at}))}function qr(t){return{assign:Ur(t),remove:Br(t),list:Qr(t)}}function Vr(t){return async(e,r,a)=>{if(a.length===0)return!0;const o=new Date().toISOString();try{for(const n of a){const s={tenant_id:e,user_id:r,resource_server_identifier:n.resource_server_identifier,permission_name:n.permission_name,created_at:o};try{await t.insertInto("user_permissions").values(s).execute()}catch(l){if(l.code==="SQLITE_CONSTRAINT_PRIMARYKEY"||l.code==="SQLITE_CONSTRAINT_UNIQUE")continue;throw l}}return!0}catch(n){return console.error("Error assigning user permissions:",n),!1}}}function Wr(t){return async(e,r,a)=>{if(a.length===0)return!0;try{for(const o of a)await t.deleteFrom("user_permissions").where("tenant_id","=",e).where("user_id","=",r).where("resource_server_identifier","=",o.resource_server_identifier).where("permission_name","=",o.permission_name).execute();return!0}catch(o){return console.error("Error removing user permissions:",o),!1}}}function Gr(t){return async(e,r,a)=>(await t.selectFrom("user_permissions").leftJoin("resource_servers",n=>n.onRef("user_permissions.tenant_id","=","resource_servers.tenant_id").onRef("user_permissions.resource_server_identifier","=","resource_servers.id")).select(["user_permissions.resource_server_identifier","user_permissions.permission_name","resource_servers.name as resource_server_name","user_permissions.user_id","user_permissions.created_at"]).where("user_permissions.tenant_id","=",e).where("user_permissions.user_id","=",r).execute()).map(n=>({resource_server_identifier:n.resource_server_identifier,permission_name:n.permission_name,description:null,resource_server_name:n.resource_server_name||n.resource_server_identifier,user_id:n.user_id,created_at:n.created_at}))}function Hr(t){return{assign:Vr(t),remove:Wr(t),list:Gr(t)}}function Yr(t){return async(e,r)=>await t.selectFrom("user_roles as ur").innerJoin("roles as r",o=>o.onRef("ur.role_id","=","r.id").onRef("ur.tenant_id","=","r.tenant_id")).select(["r.id","r.name","r.description","r.created_at","r.updated_at"]).where("ur.tenant_id","=",e).where("ur.user_id","=",r).execute()}function Xr(t){return async(e,r,a)=>{if(a.length===0)return!0;const o=new Date().toISOString();try{for(const n of a)try{await t.insertInto("user_roles").values({tenant_id:e,user_id:r,role_id:n,created_at:o}).execute()}catch(s){if(s.code==="SQLITE_CONSTRAINT_PRIMARYKEY"||s.code==="SQLITE_CONSTRAINT_UNIQUE")continue;throw s}return!0}catch(n){return console.error("Error assigning user roles:",n),!1}}}function Zr(t){return async(e,r,a)=>{try{return a.length&&await t.deleteFrom("user_roles").where("tenant_id","=",e).where("user_id","=",r).where(o=>o("role_id","in",a)).execute(),!0}catch(o){return console.error("Error removing user roles:",o),!1}}}function ea(t){return{list:Yr(t),assign:Xr(t),remove:Zr(t)}}function ta(t){return t[t.length-1]}function y(t){return Object.freeze(t)}const Q=y({is(t){return t.kind==="IdentifierNode"},create(t){return y({kind:"IdentifierNode",name:t})}}),X=y({is(t){return t.kind==="SchemableIdentifierNode"},create(t){return y({kind:"SchemableIdentifierNode",identifier:Q.create(t)})},createWithSchema(t,e){return y({kind:"SchemableIdentifierNode",schema:Q.create(t),identifier:Q.create(e)})}}),ra=y({is(t){return t.kind==="AliasNode"},create(t,e){return y({kind:"AliasNode",node:t,alias:e})}}),W=y({is(t){return t.kind==="TableNode"},create(t){return y({kind:"TableNode",table:X.create(t)})},createWithSchema(t,e){return y({kind:"TableNode",table:X.createWithSchema(t,e)})}});var q;class aa{constructor(){z(this,"nodeStack",[]);C(this,q,y({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 r=this.transformNodeImpl(e);return this.nodeStack.pop(),y(r)}transformNodeImpl(e){return d(this,q)[e.kind](e)}transformNodeList(e){return e&&y(e.map(r=>this.transformNode(r)))}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:y([...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}}q=new WeakMap;const na=y({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 A,$,I,w,we,ye,ve,j,Z,Ne;class oa extends aa{constructor(r){super();C(this,w);C(this,A);C(this,$,new Set);C(this,I,new Set);E(this,A,r)}transformNodeImpl(r){if(!m(this,w,we).call(this,r))return super.transformNodeImpl(r);const a=m(this,w,ve).call(this,r);for(const s of a)d(this,I).add(s);const o=m(this,w,ye).call(this,r);for(const s of o)d(this,$).add(s);const n=super.transformNodeImpl(r);for(const s of o)d(this,$).delete(s);for(const s of a)d(this,I).delete(s);return n}transformSchemableIdentifier(r){const a=super.transformSchemableIdentifier(r);return a.schema||!d(this,$).has(r.identifier.name)?a:{...a,schema:Q.create(d(this,A))}}transformReferences(r){const a=super.transformReferences(r);return a.table.table.schema?a:{...a,table:W.createWithSchema(d(this,A),a.table.table.identifier.name)}}}A=new WeakMap,$=new WeakMap,I=new WeakMap,w=new WeakSet,we=function(r){return r.kind in na},ye=function(r){const a=new Set;if("name"in r&&r.name&&X.is(r.name)&&m(this,w,Z).call(this,r.name,a),"from"in r&&r.from)for(const o of r.from.froms)m(this,w,j).call(this,o,a);if("into"in r&&r.into&&m(this,w,j).call(this,r.into,a),"table"in r&&r.table&&m(this,w,j).call(this,r.table,a),"joins"in r&&r.joins)for(const o of r.joins)m(this,w,j).call(this,o.table,a);return"using"in r&&r.using&&m(this,w,j).call(this,r.using,a),a},ve=function(r){const a=new Set;return"with"in r&&r.with&&m(this,w,Ne).call(this,r.with,a),a},j=function(r,a){const o=W.is(r)?r:ra.is(r)&&W.is(r.node)?r.node:null;o&&m(this,w,Z).call(this,o.table,a)},Z=function(r,a){const o=r.identifier.name;!d(this,$).has(o)&&!d(this,I).has(o)&&a.add(o)},Ne=function(r,a){for(const o of r.expressions){const n=o.name.table.table.identifier.name;d(this,I).has(n)||a.add(n)}};var K;class sa{constructor(e){C(this,K);E(this,K,new oa(e))}transformQuery(e){return d(this,K).transformNode(e.node)}async transformResult(e){return e.result}}K=new WeakMap;class ia{transformQuery(e){return e.node}async transformResult(e){return e.result}}const la="kysely_migration",he="kysely_migration_lock",ca=!1,G="migration_lock",da=y({__noMigrations__:!0});var p,i,J,T,S,F,be,O,xe,Te,Se,Oe,ke,ee,M,te,$e,Ie,De,re,Pe,je,Fe,Me,Ae,R;class Ce{constructor(e){C(this,i);C(this,p);E(this,p,y(e))}async getMigrations(){const e=await m(this,i,M).call(this,d(this,i,S))?await d(this,p).db.withPlugin(d(this,i,O)).selectFrom(d(this,i,S)).select(["name","timestamp"]).execute():[];return(await m(this,i,re).call(this)).map(({name:a,...o})=>{const n=e.find(s=>s.name===a);return{name:a,migration:o,executedAt:n?new Date(n.timestamp):void 0}})}async migrateToLatest(){return m(this,i,J).call(this,()=>({direction:"Up",step:1/0}))}async migrateTo(e){return m(this,i,J).call(this,({migrations:r,executedMigrations:a,pendingMigrations:o})=>{if(e===da)return{direction:"Down",step:1/0};if(!r.find(l=>l.name===e))throw new Error(`migration "${e}" doesn't exist`);const n=a.indexOf(e),s=o.findIndex(l=>l.name===e);if(n!==-1)return{direction:"Down",step:a.length-n-1};if(s!==-1)return{direction:"Up",step:s+1};throw new Error(`migration "${e}" isn't executed or pending`)})}async migrateUp(){return m(this,i,J).call(this,()=>({direction:"Up",step:1}))}async migrateDown(){return m(this,i,J).call(this,()=>({direction:"Down",step:1}))}}p=new WeakMap,i=new WeakSet,J=async function(e){try{return await m(this,i,xe).call(this),await m(this,i,$e).call(this,e)}catch(r){return r instanceof H?r.resultSet:{error:r}}},T=function(){return d(this,p).migrationTableSchema},S=function(){return d(this,p).migrationTableName??la},F=function(){return d(this,p).migrationLockTableName??he},be=function(){return d(this,p).allowUnorderedMigrations??ca},O=function(){return d(this,i,T)?new sa(d(this,i,T)):new ia},xe=async function(){await m(this,i,Te).call(this),await m(this,i,Se).call(this),await m(this,i,Oe).call(this),await m(this,i,ke).call(this)},Te=async function(){if(d(this,i,T)&&!await m(this,i,ee).call(this))try{await m(this,i,R).call(this,d(this,p).db.schema.createSchema(d(this,i,T)))}catch(e){if(!await m(this,i,ee).call(this))throw e}},Se=async function(){if(!await m(this,i,M).call(this,d(this,i,S)))try{d(this,i,T)&&await m(this,i,R).call(this,d(this,p).db.schema.createSchema(d(this,i,T))),await m(this,i,R).call(this,d(this,p).db.schema.withPlugin(d(this,i,O)).createTable(d(this,i,S)).addColumn("name","varchar(255)",e=>e.notNull().primaryKey()).addColumn("timestamp","varchar(255)",e=>e.notNull()))}catch(e){if(!await m(this,i,M).call(this,d(this,i,S)))throw e}},Oe=async function(){if(!await m(this,i,M).call(this,d(this,i,F)))try{await m(this,i,R).call(this,d(this,p).db.schema.withPlugin(d(this,i,O)).createTable(d(this,i,F)).addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("is_locked","integer",e=>e.notNull().defaultTo(0)))}catch(e){if(!await m(this,i,M).call(this,d(this,i,F)))throw e}},ke=async function(){if(!await m(this,i,te).call(this))try{await d(this,p).db.withPlugin(d(this,i,O)).insertInto(d(this,i,F)).values({id:G,is_locked:0}).execute()}catch(e){if(!await m(this,i,te).call(this))throw e}},ee=async function(){return(await d(this,p).db.introspection.getSchemas()).some(r=>r.name===d(this,i,T))},M=async function(e){const r=d(this,i,T);return(await d(this,p).db.introspection.getTables({withInternalKyselyTables:!0})).some(o=>o.name===e&&(!r||o.schema===r))},te=async function(){return!!await d(this,p).db.withPlugin(d(this,i,O)).selectFrom(d(this,i,F)).where("id","=",G).select("id").executeTakeFirst()},$e=async function(e){const r=d(this,p).db.getExecutor().adapter,a=y({lockTable:d(this,p).migrationLockTableName??he,lockRowId:G,lockTableSchema:d(this,p).migrationTableSchema}),o=async n=>{try{await r.acquireMigrationLock(n,a);const s=await m(this,i,Ie).call(this,n);if(s.migrations.length===0)return{results:[]};const{direction:l,step:c}=e(s);return c<=0?{results:[]}:l==="Down"?await m(this,i,Me).call(this,n,s,c):l==="Up"?await m(this,i,Ae).call(this,n,s,c):{results:[]}}finally{await r.releaseMigrationLock(n,a)}};return r.supportsTransactionalDdl?d(this,p).db.transaction().execute(o):d(this,p).db.connection().execute(o)},Ie=async function(e){const r=await m(this,i,re).call(this),a=await m(this,i,Pe).call(this,e);m(this,i,je).call(this,r,a),d(this,i,be)||m(this,i,Fe).call(this,r,a);const o=m(this,i,De).call(this,r,a);return y({migrations:r,executedMigrations:a,lastMigration:ta(a),pendingMigrations:o})},De=function(e,r){return e.filter(a=>!r.includes(a.name))},re=async function(){const e=await d(this,p).provider.getMigrations();return Object.keys(e).sort().map(r=>({...e[r],name:r}))},Pe=async function(e){return(await e.withPlugin(d(this,i,O)).selectFrom(d(this,i,S)).select("name").orderBy(["timestamp","name"]).execute()).map(a=>a.name)},je=function(e,r){for(const a of r)if(!e.some(o=>o.name===a))throw new Error(`corrupted migrations: previously executed migration ${a} is missing`)},Fe=function(e,r){for(let a=0;a<r.length;++a)if(e[a].name!==r[a])throw new Error(`corrupted migrations: expected previously executed migration ${r[a]} to be at index ${a} but ${e[a].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,r,a){const o=r.executedMigrations.slice().reverse().slice(0,a).map(s=>r.migrations.find(l=>l.name===s)),n=o.map(s=>({migrationName:s.name,direction:"Down",status:"NotExecuted"}));for(let s=0;s<n.length;++s){const l=o[s];try{l.down&&(await l.down(e),await e.withPlugin(d(this,i,O)).deleteFrom(d(this,i,S)).where("name","=",l.name).execute(),n[s]={migrationName:l.name,direction:"Down",status:"Success"})}catch(c){throw n[s]={migrationName:l.name,direction:"Down",status:"Error"},new H({error:c,results:n})}}return{results:n}},Ae=async function(e,r,a){const n=r.pendingMigrations.slice(0,a).map(s=>({migrationName:s.name,direction:"Up",status:"NotExecuted"}));for(let s=0;s<n.length;s++){const l=r.pendingMigrations[s];try{await l.up(e),await e.withPlugin(d(this,i,O)).insertInto(d(this,i,S)).values({name:l.name,timestamp:new Date().toISOString()}).execute(),n[s]={migrationName:l.name,direction:"Up",status:"Success"}}catch(c){throw n[s]={migrationName:l.name,direction:"Up",status:"Error"},new H({error:c,results:n})}}return{results:n}},R=async function(e){d(this,p).db.getExecutor().adapter.supportsCreateIfNotExists&&(e=e.ifNotExists()),await e.execute()};var U;class H extends Error{constructor(r){super();C(this,U);E(this,U,r)}get resultSet(){return d(this,U)}}U=new WeakMap;class Le{constructor(e){z(this,"migrations");this.migrations=e}async getMigrations(){return this.migrations}}async function ua(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 ma(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 _a=Object.freeze(Object.defineProperty({__proto__:null,down:ma,up:ua},Symbol.toStringTag,{value:"Module"}));async function ha(t){await t.schema.alterTable("tenants").addColumn("support_url","varchar(255)").execute()}async function fa(t){await t.schema.alterTable("tenants").dropColumn("support_url").execute()}const pa=Object.freeze(Object.defineProperty({__proto__:null,down:fa,up:ha},Symbol.toStringTag,{value:"Module"}));async function ga(t){}async function wa(t){}const ya=Object.freeze(Object.defineProperty({__proto__:null,down:wa,up:ga},Symbol.toStringTag,{value:"Module"}));async function va(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 Na(t){await t.schema.dropTable("logs").execute()}const Ca=Object.freeze(Object.defineProperty({__proto__:null,down:Na,up:va},Symbol.toStringTag,{value:"Module"}));async function ba(t){}async function xa(t){}const Ta=Object.freeze(Object.defineProperty({__proto__:null,down:xa,up:ba},Symbol.toStringTag,{value:"Module"}));async function Sa(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 Oa(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("tickets").execute(),await t.schema.dropTable("otps").execute()}const ka=Object.freeze(Object.defineProperty({__proto__:null,down:Oa,up:Sa},Symbol.toStringTag,{value:"Module"}));async function $a(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 Ia(t){await t.schema.dropTable("passwords").execute(),await t.schema.dropTable("codes").execute()}const Da=Object.freeze(Object.defineProperty({__proto__:null,down:Ia,up:$a},Symbol.toStringTag,{value:"Module"}));async function Pa(t){}async function ja(t){}const Fa=Object.freeze(Object.defineProperty({__proto__:null,down:ja,up:Pa},Symbol.toStringTag,{value:"Module"}));async function Ma(t){await t.schema.alterTable("passwords").addColumn("password","varchar(255)",e=>e.notNull()).execute()}async function Aa(t){await t.schema.alterTable("passwords").dropColumn("password").execute()}const La=Object.freeze(Object.defineProperty({__proto__:null,down:Aa,up:Ma},Symbol.toStringTag,{value:"Module"}));async function za(t){}async function Ea(t){}const Ja=Object.freeze(Object.defineProperty({__proto__:null,down:Ea,up:za},Symbol.toStringTag,{value:"Module"}));async function Ra(t){}async function Ka(t){}const Ua=Object.freeze(Object.defineProperty({__proto__:null,down:Ka,up:Ra},Symbol.toStringTag,{value:"Module"}));async function Ba(t){}async function Qa(t){}const qa=Object.freeze(Object.defineProperty({__proto__:null,down:Qa,up:Ba},Symbol.toStringTag,{value:"Module"}));async function Va(t){await t.schema.createIndex("users_email_index").on("users").column("email").execute()}async function Wa(t){await t.schema.dropIndex("users_email_index").execute()}const Ga=Object.freeze(Object.defineProperty({__proto__:null,down:Wa,up:Va},Symbol.toStringTag,{value:"Module"}));async function Ha(t){await t.schema.alterTable("users").addColumn("profileData","varchar(2048)").execute()}async function Ya(t){await t.schema.alterTable("users").dropColumn("profileData").execute()}const Xa=Object.freeze(Object.defineProperty({__proto__:null,down:Ya,up:Ha},Symbol.toStringTag,{value:"Module"}));async function Za(t){await t.schema.createIndex("users_linked_to_index").on("users").column("linked_to").execute()}async function en(t){await t.schema.dropIndex("users_linked_to_index")}const tn=Object.freeze(Object.defineProperty({__proto__:null,down:en,up:Za},Symbol.toStringTag,{value:"Module"}));async function rn(t){await t.schema.alterTable("users").addColumn("locale","varchar(255)").execute()}async function an(t){await t.schema.alterTable("users").dropColumn("locale").execute()}const nn=Object.freeze(Object.defineProperty({__proto__:null,down:an,up:rn},Symbol.toStringTag,{value:"Module"}));async function on(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 sn(t){await t.schema.dropTable("keys").execute()}const ln=Object.freeze(Object.defineProperty({__proto__:null,down:sn,up:on},Symbol.toStringTag,{value:"Module"}));async function cn(t){}async function dn(t){}const un=Object.freeze(Object.defineProperty({__proto__:null,down:dn,up:cn},Symbol.toStringTag,{value:"Module"}));async function mn(t){}async function _n(t){}const hn=Object.freeze(Object.defineProperty({__proto__:null,down:_n,up:mn},Symbol.toStringTag,{value:"Module"}));async function fn(t){await t.schema.alterTable("otps").addColumn("audience","varchar(255)").execute()}async function pn(t){await t.schema.alterTable("otps").dropColumn("audience").execute()}const gn=Object.freeze(Object.defineProperty({__proto__:null,down:pn,up:fn},Symbol.toStringTag,{value:"Module"}));async function wn(t){}async function yn(t){}const vn=Object.freeze(Object.defineProperty({__proto__:null,down:yn,up:wn},Symbol.toStringTag,{value:"Module"}));async function Nn(t){await t.schema.alterTable("logs").dropColumn("category").execute()}async function Cn(t){await t.schema.alterTable("logs").addColumn("category","varchar(255)",e=>e.notNull()).execute()}const bn=Object.freeze(Object.defineProperty({__proto__:null,down:Cn,up:Nn},Symbol.toStringTag,{value:"Module"}));async function xn(t){await t.schema.alterTable("users").dropColumn("tags").execute()}async function Tn(t){await t.schema.alterTable("users").addColumn("tags","varchar(255)").execute()}const Sn=Object.freeze(Object.defineProperty({__proto__:null,down:Tn,up:xn},Symbol.toStringTag,{value:"Module"}));async function On(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 kn(t){await t.schema.dropIndex("logs_user_id"),await t.schema.dropIndex("logs_tenant_id"),await t.schema.dropIndex("logs_date")}const $n=Object.freeze(Object.defineProperty({__proto__:null,down:kn,up:On},Symbol.toStringTag,{value:"Module"}));async function In(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(8192)").execute()}async function Dn(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(2048)").execute()}const Pn=Object.freeze(Object.defineProperty({__proto__:null,down:Dn,up:In},Symbol.toStringTag,{value:"Module"}));async function jn(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 Fn(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 Mn=Object.freeze(Object.defineProperty({__proto__:null,down:Fn,up:jn},Symbol.toStringTag,{value:"Module"}));async function An(t){await t.schema.createIndex("users_name_index").on("users").column("name").execute()}async function Ln(t){await t.schema.dropIndex("users_name_index").execute()}const zn=Object.freeze(Object.defineProperty({__proto__:null,down:Ln,up:An},Symbol.toStringTag,{value:"Module"}));async function En(t){}async function Jn(t){await t.schema.alterTable("users").dropConstraint("unique_email_provider").execute()}const Rn=Object.freeze(Object.defineProperty({__proto__:null,down:Jn,up:En},Symbol.toStringTag,{value:"Module"}));async function Kn(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(8192)").execute()}async function Un(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(1024)").execute()}const Bn=Object.freeze(Object.defineProperty({__proto__:null,down:Un,up:Kn},Symbol.toStringTag,{value:"Module"}));async function Qn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(8192)").execute()}async function qn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(1024)").execute()}const Vn=Object.freeze(Object.defineProperty({__proto__:null,down:qn,up:Qn},Symbol.toStringTag,{value:"Module"}));async function Wn(t){await t.schema.createTable("branding").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull().primaryKey()).addColumn("logo_url","varchar(512)").addColumn("favicon_url","varchar(512)").addColumn("font_url","varchar(512)").addColumn("colors_primary","varchar(8)").addColumn("colors_page_background_type","varchar(32)").addColumn("colors_page_background_start","varchar(8)").addColumn("colors_page_background_end","varchar(8)").addColumn("colors_page_background_angle_dev","integer").execute()}async function Gn(t){await t.schema.dropTable("branding").execute()}const Hn=Object.freeze(Object.defineProperty({__proto__:null,down:Gn,up:Wn},Symbol.toStringTag,{value:"Module"}));async function Yn(t){}async function Xn(t){}const Zn=Object.freeze(Object.defineProperty({__proto__:null,down:Xn,up:Yn},Symbol.toStringTag,{value:"Module"}));async function eo(t){}async function to(t){}const ro=Object.freeze(Object.defineProperty({__proto__:null,down:to,up:eo},Symbol.toStringTag,{value:"Module"}));async function ao(t){}async function no(t){}const oo=Object.freeze(Object.defineProperty({__proto__:null,down:no,up:ao},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("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 uo(t){await t.schema.dropTable("authentication_codes").execute()}const mo=Object.freeze(Object.defineProperty({__proto__:null,down:uo,up:co},Symbol.toStringTag,{value:"Module"}));async function _o(t){}async function ho(t){}const fo=Object.freeze(Object.defineProperty({__proto__:null,down:ho,up:_o},Symbol.toStringTag,{value:"Module"}));async function po(t){await t.schema.alterTable("otps").addColumn("ip","varchar(64)").execute()}async function go(t){await t.schema.alterTable("otps").dropColumn("ip").execute()}const wo=Object.freeze(Object.defineProperty({__proto__:null,down:go,up:po},Symbol.toStringTag,{value:"Module"}));async function yo(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(1024)").execute()}async function vo(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(255)").execute()}const No=Object.freeze(Object.defineProperty({__proto__:null,down:vo,up:yo},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){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 So(t){await t.schema.dropTable("hooks").execute()}const Oo=Object.freeze(Object.defineProperty({__proto__:null,down:So,up:To},Symbol.toStringTag,{value:"Module"}));async function ko(t){}async function $o(t){}const Io=Object.freeze(Object.defineProperty({__proto__:null,down:$o,up:ko},Symbol.toStringTag,{value:"Module"}));async function Do(t){}async function Po(t){}const jo=Object.freeze(Object.defineProperty({__proto__:null,down:Po,up:Do},Symbol.toStringTag,{value:"Module"}));async function Fo(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 Mo(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 Ao=Object.freeze(Object.defineProperty({__proto__:null,down:Mo,up:Fo},Symbol.toStringTag,{value:"Module"}));async function Lo(t){}async function zo(t){}const Eo=Object.freeze(Object.defineProperty({__proto__:null,down:zo,up:Lo},Symbol.toStringTag,{value:"Module"}));async function Jo(t){await t.schema.alterTable("logins").addColumn("auth0Client","varchar(256)").execute()}async function Ro(t){await t.schema.alterTable("logins").dropColumn("auth0Client").execute()}const Ko=Object.freeze(Object.defineProperty({__proto__:null,down:Ro,up:Jo},Symbol.toStringTag,{value:"Module"}));async function Uo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(8192)").execute()}async function Bo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(511)").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){}async function Ho(t){}const Yo=Object.freeze(Object.defineProperty({__proto__:null,down:Ho,up:Go},Symbol.toStringTag,{value:"Module"}));async function Xo(t){await t.schema.alterTable("logins").addColumn("authParams_nonce","varchar(255)").execute()}async function Zo(t){await t.schema.alterTable("logins").dropColumn("nonce").execute()}const es=Object.freeze(Object.defineProperty({__proto__:null,down:Zo,up:Xo},Symbol.toStringTag,{value:"Module"}));async function ts(t){}async function rs(t){}const as=Object.freeze(Object.defineProperty({__proto__:null,down:rs,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.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 ls(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 cs=Object.freeze(Object.defineProperty({__proto__:null,down:ls,up:is},Symbol.toStringTag,{value:"Module"}));async function ds(t){await t.schema.dropTable("otps").execute(),await t.schema.dropTable("authentication_codes").execute()}async function us(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 ms=Object.freeze(Object.defineProperty({__proto__:null,down:us,up:ds},Symbol.toStringTag,{value:"Module"}));async function _s(t){await t.schema.createIndex("IDX_logs_tenant_date_type_user").on("logs").columns(["tenant_id","date","type","user_id"]).execute()}async function hs(t){await t.schema.dropIndex("IDX_logs_tenant_date_type_user").on("logs").execute()}const fs=Object.freeze(Object.defineProperty({__proto__:null,down:hs,up:_s},Symbol.toStringTag,{value:"Module"}));async function ps(t){}async function gs(t){}const ws=Object.freeze(Object.defineProperty({__proto__:null,down:gs,up:ps},Symbol.toStringTag,{value:"Module"}));async function ys(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 vs(t){await t.schema.dropTable("prompt_settings").execute()}const Ns=Object.freeze(Object.defineProperty({__proto__:null,down:vs,up:ys},Symbol.toStringTag,{value:"Module"}));async function Cs(t){}async function bs(t){}const xs=Object.freeze(Object.defineProperty({__proto__:null,down:bs,up:Cs},Symbol.toStringTag,{value:"Module"}));async function Ts(t){}async function Ss(t){}const Os=Object.freeze(Object.defineProperty({__proto__:null,down:Ss,up:Ts},Symbol.toStringTag,{value:"Module"}));async function ks(t){}async function $s(t){}const Is=Object.freeze(Object.defineProperty({__proto__:null,down:$s,up:ks},Symbol.toStringTag,{value:"Module"}));async function Ds(t){await t.schema.alterTable("logins").addColumn("authParams_ui_locales","varchar(32)").execute()}async function Ps(t){await t.schema.alterTable("logins").dropColumn("authParams_ui_locales").execute()}const js=Object.freeze(Object.defineProperty({__proto__:null,down:Ps,up:Ds},Symbol.toStringTag,{value:"Module"}));async function Fs(t){await t.schema.alterTable("logins").addColumn("authParams_prompt","varchar(16)").execute()}async function Ms(t){await t.schema.alterTable("logins").dropColumn("authParams_prompt").execute()}const As=Object.freeze(Object.defineProperty({__proto__:null,down:Ms,up:Fs},Symbol.toStringTag,{value:"Module"}));async function Ls(t){}async function zs(t){}const Es=Object.freeze(Object.defineProperty({__proto__:null,down:zs,up:Ls},Symbol.toStringTag,{value:"Module"}));async function Js(t){await t.schema.alterTable("logins").addColumn("authParams_act_as","varchar(255)").execute()}async function Rs(t){await t.schema.alterTable("logins").dropColumn("authParam_act_as").execute()}const Ks=Object.freeze(Object.defineProperty({__proto__:null,down:Rs,up:Js},Symbol.toStringTag,{value:"Module"}));async function Us(t){await t.schema.alterTable("codes").addColumn("code_verifier","varchar(128)").execute()}async function Bs(t){await t.schema.alterTable("codes").dropColumn("code_verifier").execute()}const Qs=Object.freeze(Object.defineProperty({__proto__:null,down:Bs,up:Us},Symbol.toStringTag,{value:"Module"}));async function qs(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 Vs(t){await t.schema.dropTable("email_providers").execute()}const Ws=Object.freeze(Object.defineProperty({__proto__:null,down:Vs,up:qs},Symbol.toStringTag,{value:"Module"}));async function Gs(t){await t.schema.dropTable("tickets").execute()}async function Hs(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 Ys=Object.freeze(Object.defineProperty({__proto__:null,down:Hs,up:Gs},Symbol.toStringTag,{value:"Module"}));async function Xs(t){}async function Zs(t){await t.schema.alterTable("logins").dropColumn("ip").dropColumn("useragent").execute()}const ei=Object.freeze(Object.defineProperty({__proto__:null,down:Zs,up:Xs},Symbol.toStringTag,{value:"Module"}));async function ti(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 ri(t){await t.schema.dropTable("refresh_tokens").execute()}const ai=Object.freeze(Object.defineProperty({__proto__:null,down:ri,up:ti},Symbol.toStringTag,{value:"Module"}));async function ni(t){}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("sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}async function li(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 ci=Object.freeze(Object.defineProperty({__proto__:null,down:li,up:ii},Symbol.toStringTag,{value:"Module"}));async function di(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 ui(t){await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}const mi=Object.freeze(Object.defineProperty({__proto__:null,down:ui,up:di},Symbol.toStringTag,{value:"Module"}));async function _i(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 hi(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 fi=Object.freeze(Object.defineProperty({__proto__:null,down:hi,up:_i},Symbol.toStringTag,{value:"Module"}));async function pi(t){}async function gi(t){await t.schema.alterTable("logins").dropColumn("authParams_organization").dropColumn("authorization_url").execute()}const wi=Object.freeze(Object.defineProperty({__proto__:null,down:gi,up:pi},Symbol.toStringTag,{value:"Module"}));async function yi(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(2048)").execute()}async function vi(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(1024)").execute()}const Ni=Object.freeze(Object.defineProperty({__proto__:null,down:vi,up:yi},Symbol.toStringTag,{value:"Module"}));async function Ci(t){}async function bi(t){}const xi=Object.freeze(Object.defineProperty({__proto__:null,down:bi,up:Ci},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 Si(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("login_sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}const Oi=Object.freeze(Object.defineProperty({__proto__:null,down:Si,up:Ti},Symbol.toStringTag,{value:"Module"}));async function ki(t){await t.schema.dropTable("logins").execute(),await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}async function $i(t){}const Ii=Object.freeze(Object.defineProperty({__proto__:null,down:$i,up:ki},Symbol.toStringTag,{value:"Module"}));async function Di(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 Pi(t){}const ji=Object.freeze(Object.defineProperty({__proto__:null,down:Pi,up:Di},Symbol.toStringTag,{value:"Module"}));async function Fi(t){}async function Mi(t){await t.schema.alterTable("users").dropColumn("phone_number").dropColumn("phone_verified").dropColumn("username").execute()}const Ai=Object.freeze(Object.defineProperty({__proto__:null,down:Mi,up:Fi},Symbol.toStringTag,{value:"Module"}));async function Li(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 zi(t){await t.schema.dropTable("forms").execute()}const Ei=Object.freeze(Object.defineProperty({__proto__:null,down:zi,up:Li},Symbol.toStringTag,{value:"Module"}));async function Ji(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 Ri(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 Ki=Object.freeze(Object.defineProperty({__proto__:null,down:Ri,up:Ji},Symbol.toStringTag,{value:"Module"}));async function Ui(t){await t.schema.alterTable("login_sessions").addColumn("login_completed","boolean",e=>e.notNull().defaultTo(0)).execute()}async function Bi(t){await t.schema.alterTable("login_sessions").dropColumn("login_completed").execute()}const Qi=Object.freeze(Object.defineProperty({__proto__:null,down:Bi,up:Ui},Symbol.toStringTag,{value:"Module"}));async function qi(t){await t.schema.alterTable("sessions").addColumn("login_session_id","varchar(21)",e=>e.references("login_sessions.id").onDelete("set null")).execute()}async function Vi(t){await t.schema.alterTable("sessions").dropColumn("login_session_id").execute()}const Wi=Object.freeze(Object.defineProperty({__proto__:null,down:Vi,up:qi},Symbol.toStringTag,{value:"Module"}));async function Gi(t){await t.schema.createIndex("IDX_sessions_login_session_id").on("sessions").column("login_session_id").execute()}async function Hi(t){await t.schema.dropIndex("IDX_sessions_login_session_id").on("sessions").execute()}const Yi=Object.freeze(Object.defineProperty({__proto__:null,down:Hi,up:Gi},Symbol.toStringTag,{value:"Module"}));async function Xi(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 Zi(t){await t.schema.alterTable("codes").dropColumn("code_challenge").execute(),await t.schema.alterTable("codes").dropColumn("code_challenge_method").execute()}const el=Object.freeze(Object.defineProperty({__proto__:null,down:Zi,up:Xi},Symbol.toStringTag,{value:"Module"}));async function tl(t){await t.schema.alterTable("codes").addColumn("redirect_uri","varchar(1024)").execute()}async function rl(t){await t.schema.alterTable("codes").dropColumn("redirect_uri").execute()}const al=Object.freeze(Object.defineProperty({__proto__:null,down:rl,up:tl},Symbol.toStringTag,{value:"Module"}));async function nl(t){await t.schema.alterTable("codes").addColumn("nonce","varchar(1024)").execute(),await t.schema.alterTable("codes").addColumn("state","varchar(2048)").execute()}async function ol(t){await t.schema.alterTable("codes").dropColumn("nonce").execute(),await t.schema.alterTable("codes").dropColumn("state").execute()}const sl=Object.freeze(Object.defineProperty({__proto__:null,down:ol,up:nl},Symbol.toStringTag,{value:"Module"}));async function il(t){await t.schema.createTable("themes").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("themeId","varchar(255)",e=>e.notNull()).addColumn("displayName","varchar(255)",e=>e.notNull()).addColumn("colors_primary_button_label","varchar(24)",e=>e.notNull()).addColumn("colors_primary_button","varchar(24)",e=>e.notNull()).addColumn("colors_secondary_button_border","varchar(24)",e=>e.notNull()).addColumn("colors_secondary_button_label","varchar(24)",e=>e.notNull()).addColumn("colors_base_focus_color","varchar(24)",e=>e.notNull()).addColumn("colors_base_hover_color","varchar(24)",e=>e.notNull()).addColumn("colors_body_text","varchar(24)",e=>e.notNull()).addColumn("colors_captcha_widget_theme","varchar(24)",e=>e.notNull()).addColumn("colors_error","varchar(24)",e=>e.notNull()).addColumn("colors_header","varchar(24)",e=>e.notNull()).addColumn("colors_icons","varchar(24)",e=>e.notNull()).addColumn("colors_input_background","varchar(24)",e=>e.notNull()).addColumn("colors_input_border","varchar(24)",e=>e.notNull()).addColumn("colors_input_filled_text","varchar(24)",e=>e.notNull()).addColumn("colors_input_labels_placeholders","varchar(24)",e=>e.notNull()).addColumn("colors_links_focused_components","varchar(24)",e=>e.notNull()).addColumn("colors_success","varchar(24)",e=>e.notNull()).addColumn("colors_widget_background","varchar(24)",e=>e.notNull()).addColumn("colors_widget_border","varchar(24)",e=>e.notNull()).addColumn("borders_button_border_radius","integer",e=>e.notNull()).addColumn("borders_button_border_weight","integer",e=>e.notNull()).addColumn("borders_buttons_style","varchar(24)",e=>e.notNull()).addColumn("borders_input_border_radius","integer",e=>e.notNull()).addColumn("borders_input_border_weight","integer",e=>e.notNull()).addColumn("borders_inputs_style","varchar(24)",e=>e.notNull()).addColumn("borders_show_widget_shadow","boolean",e=>e.notNull()).addColumn("borders_widget_border_weight","integer",e=>e.notNull()).addColumn("borders_widget_corner_radius","integer",e=>e.notNull()).addColumn("fonts_body_text_bold","integer",e=>e.notNull()).addColumn("fonts_body_text_size","integer",e=>e.notNull()).addColumn("fonts_buttons_text_bold","integer",e=>e.notNull()).addColumn("fonts_buttons_text_size","integer",e=>e.notNull()).addColumn("fonts_font_url","varchar(255)",e=>e.notNull()).addColumn("fonts_input_labels_bold","integer",e=>e.notNull()).addColumn("fonts_input_labels_size","integer",e=>e.notNull()).addColumn("fonts_links_bold","boolean",e=>e.notNull()).addColumn("fonts_links_size","integer",e=>e.notNull()).addColumn("fonts_links_style","varchar(24)",e=>e.notNull()).addColumn("fonts_reference_text_size","integer",e=>e.notNull()).addColumn("fonts_subtitle_bold","boolean",e=>e.notNull()).addColumn("fonts_subtitle_size","integer",e=>e.notNull()).addColumn("fonts_title_bold","boolean",e=>e.notNull()).addColumn("fonts_title_size","integer",e=>e.notNull()).addColumn("page_background_background_color","varchar(24)",e=>e.notNull()).addColumn("page_background_background_image_url","varchar(255)",e=>e.notNull()).addColumn("page_background_page_layout","varchar(24)",e=>e.notNull()).addColumn("widget_header_text_alignment","varchar(24)",e=>e.notNull()).addColumn("widget_logo_height","integer",e=>e.notNull()).addColumn("widget_logo_position","varchar(24)",e=>e.notNull()).addColumn("widget_logo_url","varchar(255)",e=>e.notNull()).addColumn("widget_social_buttons_layout","varchar(24)",e=>e.notNull()).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addPrimaryKeyConstraint("themes_pkey",["tenant_id","themeId"]).execute(),await t.schema.createIndex("themes_tenant_id_idx").on("themes").column("tenant_id").execute()}async function ll(t){await t.schema.dropTable("themes").execute()}const cl=Object.freeze(Object.defineProperty({__proto__:null,down:ll,up:il},Symbol.toStringTag,{value:"Module"}));async function dl(t){await t.schema.createTable("resource_servers").addColumn("id","varchar(21)",e=>e.notNull()).addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("identifier","varchar(191)",e=>e.notNull()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("scopes","varchar(4096)").addColumn("signing_alg","varchar(64)").addColumn("signing_secret","varchar(2048)").addColumn("token_lifetime","integer").addColumn("token_lifetime_for_web","integer").addColumn("skip_consent_for_verifiable_first_party_clients","integer").addColumn("allow_offline_access","integer").addColumn("verification_key","varchar(4096)").addColumn("options","varchar(4096)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).addPrimaryKeyConstraint("resource_servers_pk",["tenant_id","id"]).execute(),await t.schema.createIndex("resource_servers_tenant_identifier_uq").on("resource_servers").columns(["tenant_id","identifier"]).unique().execute(),await t.schema.createTable("roles").addColumn("id","varchar(21)",e=>e.notNull()).addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("name","varchar(50)",e=>e.notNull()).addColumn("description","varchar(255)").addColumn("created_at","varchar(255)",e=>e.notNull()).addColumn("updated_at","varchar(255)",e=>e.notNull()).addPrimaryKeyConstraint("roles_pk",["tenant_id","id"]).execute(),await t.schema.createIndex("roles_tenant_name_uq").on("roles").columns(["tenant_id","name"]).unique().execute()}async function ul(t){await t.schema.dropTable("roles").execute(),await t.schema.dropTable("resource_servers").execute()}const ml=Object.freeze(Object.defineProperty({__proto__:null,down:ul,up:dl},Symbol.toStringTag,{value:"Module"}));async function _l(t){await t.schema.createTable("role_permissions").addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("role_id","varchar(21)",e=>e.notNull()).addColumn("resource_server_identifier","varchar(191)",e=>e.notNull()).addColumn("permission_name","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addPrimaryKeyConstraint("role_permissions_pk",["tenant_id","role_id","resource_server_identifier","permission_name"]).execute(),await t.schema.createIndex("role_permissions_role_fk").on("role_permissions").columns(["tenant_id","role_id"]).execute(),await t.schema.createIndex("role_permissions_permission_fk").on("role_permissions").columns(["tenant_id","resource_server_identifier","permission_name"]).execute(),await t.schema.createTable("user_permissions").addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("user_id","varchar(191)",e=>e.notNull()).addColumn("resource_server_identifier","varchar(191)",e=>e.notNull()).addColumn("permission_name","varchar(255)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addPrimaryKeyConstraint("user_permissions_pk",["tenant_id","user_id","resource_server_identifier","permission_name"]).execute(),await t.schema.createIndex("user_permissions_user_fk").on("user_permissions").columns(["tenant_id","user_id"]).execute(),await t.schema.createIndex("user_permissions_permission_fk").on("user_permissions").columns(["tenant_id","resource_server_identifier","permission_name"]).execute()}async function hl(t){await t.schema.dropTable("user_permissions").execute(),await t.schema.dropTable("role_permissions").execute()}const fl=Object.freeze(Object.defineProperty({__proto__:null,down:hl,up:_l},Symbol.toStringTag,{value:"Module"}));async function pl(t){await t.schema.createTable("user_roles").addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("user_id","varchar(191)",e=>e.notNull()).addColumn("role_id","varchar(21)",e=>e.notNull()).addColumn("created_at","varchar(255)",e=>e.notNull()).addPrimaryKeyConstraint("user_roles_pk",["tenant_id","user_id","role_id"]).execute(),await t.schema.createIndex("user_roles_user_fk").on("user_roles").columns(["tenant_id","user_id"]).execute(),await t.schema.createIndex("user_roles_role_fk").on("user_roles").columns(["tenant_id","role_id"]).execute()}async function gl(t){await t.schema.dropTable("user_roles").execute()}const wl=Object.freeze(Object.defineProperty({__proto__:null,down:gl,up:pl},Symbol.toStringTag,{value:"Module"})),ze={m1_init:_a,m2_magicLink:pa,m3_updateAt:ya,m4_logTable:Ca,m5_userProfile:Ta,m6_sessions:ka,m7_passwords:Da,m8_logsTableNewFields:Fa,m9_passwordTableNewField:La,n01_codesTable:Ja,n11_universalLoginSession:Ua,n12_userFields:qa,n13_userEmailIndex:Ga,n14_profileDataField:Xa,n15_userEmailIndex:tn,n16_userLocale:nn,n17_signingKeys:ln,n18_logsFields:un,n19_connectionsUserinfo:hn,n20_missingFields:gn,n21_sessionDeletedAt:vn,n22_dropLogsFields:bn,n23_dropUsersFields:Sn,n24_logsIndexes:$n,n25_logDescMaxLength:Pn,n26_logsTableExtraFields:Mn,n27_usersTableNameIndex:zn,n28_usersEmailConstrain:Rn,n29_increaseOtpStateLength:Bn,n30_increaseTicketStateLength:Vn,n31_branding:Hn,n32_indexesAndNotNull:Zn,n33_vendorIdInUniversalLoginSession:ro,n34_auth0ClientInUniversalLoginSession:oo,n35_increaseUniversalSessionStateLength:lo,n36_authenticationCodes:mo,n37_disableSignUps:fo,n38_otpIpAddress:wo,n39_increaseUserAgentLength:No,n40_userId:xo,n41_hooks:Oo,n42_userIdIndexes:Io,n43_userIdIndexes:jo,n44_codes:Ao,n45_hookProperties:Eo,n46_loginAuth0Client:Ko,n47_loginAuth0Client:Qo,n48_saml:Wo,n49_removeFields:Yo,n50_authParamsNonce:es,n51_connectionid:as,n52_cert:ss,n53_codes_primary_key:cs,n54_cleanup_tables:ms,n55_logs_index:fs,n56_application_fields:ws,n57_prompt_settings:Ns,n58_connection_client_id:xs,n59_connection_options:Os,n60_users_metadata:Is,n61_userLocales:js,n62_prompt:As,n63_connection_cleanup:Es,n64_act_as:Ks,n65_code_verifier:Qs,n66_email_providers:Ws,n67_drop_tickets:Ys,n68_login_useragents:ei,n70_refresh_tokens:ai,n71_session_new_fields:si,n72_session_primary_key:ci,n73_drop_sessions:mi,n74_custom_domains:fi,n75_organizations:wi,n76_authorization_url_length:Ni,n77_drop_sessions:xi,n78_login_sessions:Oi,n79_drop_sessions_2:Ii,n80_recreate_custom_domains:ji,n81_phone:Ai,n82_forms:Ei,n83_addFormsIdToHooks:Ki,n84_login_completed:Qi,n85_add_login_session_id_to_sessions:Wi,n86_index_sessions_login_session_id:Yi,n87_code_challenge:el,n88_add_redirect_uri_to_codes:al,n89_add_nonce_and_state_to_codes:sl,n90_themes:cl,n91_resource_servers_rules_permissions:ml,n92_role_permissions:fl,n93_add_permissions_to_roles:wl};async function yl(t,e=!1){e&&console.log("migrating...");const r=new Le(ze),a=new Ce({db:t,provider:r}),{error:o,results:n}=await a.migrateToLatest();if(n==null||n.forEach(s=>{s.status==="Success"?e&&console.log(`migration "${s.migrationName}" was executed successfully`):s.status==="Error"&&console.error(`failed to execute migration "${s.migrationName}"`)}),o)throw console.error("failed to migrate"),console.error(o),o}async function vl(t){console.log("migrating...");const e=new Le(ze),r=new Ce({db:t,provider:e}),{error:a,results:o}=await r.migrateDown();if(o==null||o.forEach(n=>{n.status==="Success"?console.log(`migration "${n.migrationName}" was reverted successfully`):n.status==="Error"&&console.error(`failed to execute migration "${n.migrationName}"`)}),a)throw console.error("failed to migrate"),console.error(a),a}function Nl(t){return{applications:Ot(t),branding:Wt(t),cleanup:xr(t),clients:Ft(t),codes:Nt(t),connections:jt(t),emailProviders:gr(t),customDomains:Qt(t),forms:Ir(t),hooks:er(t),keys:zt(t),loginSessions:dr(t),logs:ot(t),passwords:ft(t),promptSettings:_r(t),refreshTokens:br(t),resourceServers:Ar(t),rolePermissions:qr(t),userPermissions:Hr(t),userRoles:ea(t),roles:Kr(t),sessions:ut(t),tenants:et(t),themes:or(t),users:Ve(t)}}exports.default=Nl;exports.migrateDown=vl;exports.migrateToLatest=yl;
1
+ "use strict";var Ee=Object.defineProperty;var de=t=>{throw TypeError(t)};var Je=(t,e,r)=>e in t?Ee(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var K=(t,e,r)=>Je(t,typeof e!="symbol"?e+"":e,r),Y=(t,e,r)=>e.has(t)||de("Cannot "+r);var d=(t,e,r)=>(Y(t,e,"read from private field"),r?r.call(t):e.get(t)),O=(t,e,r)=>e.has(t)?de("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),U=(t,e,r,a)=>(Y(t,e,"write to private field"),a?a.call(t,r):e.set(t,r),r),p=(t,e,r)=>(Y(t,e,"access private method"),r);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const x=require("@authhero/adapter-interfaces");require("@hono/zod-openapi");var te=class extends Error{constructor(e=500,r){super(r==null?void 0:r.message,{cause:r==null?void 0:r.cause});K(this,"res");K(this,"status");this.res=r==null?void 0:r.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 Re(t){return async(e,r)=>{const{identities:a,...n}=r,o={...n,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),login_count:0,tenant_id:e,email_verified:r.email_verified?1:0,is_social:r.is_social?1:0,app_metadata:JSON.stringify(r.app_metadata),user_metadata:JSON.stringify(r.user_metadata)};try{await t.insertInto("users").values(o).execute()}catch(s){throw s.code==="SQLITE_CONSTRAINT_UNIQUE"||s.message.includes("AlreadyExists")?new te(409,{message:"User already exists"}):new te(500,{message:`${s.code}, ${s.message}`})}return{...o,email:o.email||"",email_verified:o.email_verified===1,is_social:o.is_social===1}}}function y(t){if(t==null||typeof t!="object")return t;if(Array.isArray(t))return t.map(r=>r!==null&&typeof r=="object"?y(r):r);const e={...t};for(const r in e){const a=e[r];a===null?delete e[r]:a!==null&&typeof a=="object"&&(Array.isArray(a)?e[r]=a.map(n=>n!==null&&typeof n=="object"?y(n):n):e[r]=y(a))}return e}function fe(t){let e={};try{e=JSON.parse(t.profileData||"{}")}catch(r){console.error("Error parsing profileData",r)}return{connection:t.connection,provider:t.provider,user_id:x.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,r)=>{const[a,n]=await Promise.all([t.selectFrom("users").where("users.tenant_id","=",e).where("users.user_id","=",r).selectAll().executeTakeFirst(),t.selectFrom("users").where("users.tenant_id","=",e).where("users.linked_to","=",r).selectAll().execute()]);if(!a)return null;const{tenant_id:o,...s}=a,i={...s,email:a.email||"",email_verified:a.email_verified===1,is_social:a.is_social===1,app_metadata:JSON.parse(a.app_metadata),user_metadata:JSON.parse(a.user_metadata),identities:[{connection:a.connection,provider:a.provider,user_id:x.parseUserId(a.user_id).id,isSocial:!!a.is_social},...n.map(fe)]};return y(i)}}function S(t,e,r,a){return r.split(/\s+/).map(o=>o.replace(/^([^:]+)=/g,"$1:")).map(o=>{let s=o.startsWith("-"),i=null,c="",_=!1,u;if(o.startsWith("-_exists_:"))i=o.substring(10),_=!0,s=!0;else if(o.startsWith("_exists_:"))i=o.substring(9),_=!0,s=!1;else if(o.includes(":")){const m=s?o.substring(1):o,h=m.indexOf(":");i=m.substring(0,h),c=m.substring(h+1),_=!1,c.startsWith(">=")?(u=">=",c=c.substring(2)):c.startsWith(">")?(u=">",c=c.substring(1)):c.startsWith("<=")?(u="<=",c=c.substring(2)):c.startsWith("<")?(u="<",c=c.substring(1)):u="="}else i=null,c=o,_=!1;return{key:i,value:c,isNegation:s,isExistsQuery:_,operator:u}}).forEach(({key:o,value:s,isNegation:i,isExistsQuery:c,operator:_})=>{if(o)if(c)i?e=e.where(o,"is",null):e=e.where(o,"is not",null);else if(i)switch(_){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,_,s);else if(s){const{ref:u}=t.dynamic;e=e.where(m=>m.or(a.map(h=>m(u(h),"like",`%${s}%`))))}}),e}function T(t){return typeof t=="string"?parseInt(t,10):typeof t=="bigint"?Number(t):t}function Ue(t){return async(e,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,sort:s,q:i}=r;let c=t.selectFrom("users").where("users.tenant_id","=",e);if(i&&(c=S(t,c,i,["email","name"])),s&&s.sort_by){const{ref:w}=t.dynamic;c=c.orderBy(w(s.sort_by),s.sort_order)}const u=await c.offset(a*n).limit(n).selectAll().execute(),m=u.map(w=>w.user_id),h=m.length?await t.selectFrom("users").selectAll().where("users.tenant_id","=",e).where("users.linked_to","in",m).execute():[],f=u.map(w=>{const b=h.filter(P=>P.linked_to===w.user_id);return y({...w,email_verified:w.email_verified===1,is_social:w.is_social===1,app_metadata:JSON.parse(w.app_metadata),user_metadata:JSON.parse(w.user_metadata),identities:[{connection:w.connection,provider:w.provider,user_id:x.parseUserId(w.user_id).id,isSocial:!!w.is_social},...b.map(fe)]})});if(!o)return{users:f,start:0,limit:0,length:0};const{count:g}=await c.select(w=>w.fn.countAll().as("count")).executeTakeFirstOrThrow();return{users:f,start:a*n,limit:n,length:T(g)}}}function Be(t){return async(e,r)=>(await t.deleteFrom("users").where("users.tenant_id","=",e).where("users.linked_to","=",r).execute(),(await t.deleteFrom("users").where("users.tenant_id","=",e).where("users.user_id","=",r).execute()).length===1)}function R(t,e="",r={}){for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a)){const n=e?`${e}_${a}`:a,o=t[a];typeof o=="object"&&o!==null&&!Array.isArray(o)?R(o,n,r):typeof o=="boolean"?r[n]=o?1:0:r[n]=o}return r}function pe(t,e){const r={};for(const[a,n]of Object.entries(t)){const o=e.find(s=>a.startsWith(`${s}_`));if(!o)r[a]=n;else{const s=a.slice(o.length+1);r[o]={...r[o],[s]:n}}}return r}function Qe(t){return async(e,r,a)=>{const n=R({...a,updated_at:new Date().toISOString(),app_metadata:a.app_metadata?JSON.stringify(a.app_metadata):void 0,user_metadata:a.user_metadata?JSON.stringify(a.user_metadata):void 0});return(await t.updateTable("users").set(n).where("users.tenant_id","=",e).where("users.user_id","=",r).execute()).length===1}}function qe(t){return async(e,r,a,n)=>{const o={linked_to:null};return(await t.updateTable("users").set(o).where("users.tenant_id","=",e).where("users.user_id","=",`${a}|${n}`).where("users.linked_to","=",`${r}`).execute()).length===1}}function Ve(t){return{create:Re(t),remove:Be(t),get:Ke(t),list:Ue(t),update:Qe(t),unlink:qe(t)}}const We="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let k=(t=21)=>{let e="",r=crypto.getRandomValues(new Uint8Array(t));for(;t--;)e+=We[r[t]&63];return e};function Ge(t){return async e=>{const r={id:e.id||k(),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...e};return await t.insertInto("tenants").values(r).execute(),r}}function He(t){return async e=>{const r=await t.selectFrom("tenants").where("tenants.id","=",e).selectAll().executeTakeFirst();return r?y(r):null}}function Ye(t){return async e=>{let r=t.selectFrom("tenants");const{page:a=0,per_page:n=50,include_totals:o=!1,sort:s,q:i}=e;if(s&&s.sort_by){const{ref:f}=t.dynamic;r=r.orderBy(f(s.sort_by),s.sort_order)}i&&(r=r.where(f=>f.or([f("name","like",`%${i}%`)])));const u=(await r.offset(a*n).limit(n).selectAll().execute()).map(y);if(!o)return{tenants:u};const{count:m}=await r.select(f=>f.fn.countAll().as("count")).executeTakeFirstOrThrow(),h=T(m);return{tenants:u,start:a*n,limit:n,length:h}}}function Xe(t){return async(e,r)=>{const a={...r,id:e,updated_at:new Date().toISOString()};await t.updateTable("tenants").set(a).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:Ye(t),update:Xe(t),remove:Ze(t)}}function ue(t){return t?JSON.stringify(t):void 0}const tt=1024;function rt(t){return async(e,r)=>{var n,o,s;const a={id:k(),...r,user_agent:r.user_agent.slice(0,tt)};return await t.insertInto("logs").values({...a,description:(n=a.description)==null?void 0:n.substring(0,256),isMobile:r.isMobile?1:0,tenant_id:e,scope:(o=r.scope)==null?void 0:o.join(","),auth0_client:ue(r.auth0_client),details:(s=ue(r.details))==null?void 0:s.substring(0,8192)}).execute(),a}}function me(t){if(!t)return"";try{return JSON.parse(t)}catch{return t}}function ge(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 at(t){return async(e,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,sort:s,q:i}=r;let c=t.selectFrom("logs").where("logs.tenant_id","=",e);i&&(c=S(t,c,i,["user_id","ip"]));let _=c;if(s&&s.sort_by){const{ref:f}=t.dynamic;_=_.orderBy(f(s.sort_by),s.sort_order)}_=_.offset(a*n).limit(n);const m=(await _.selectAll().execute()).map(ge);if(!o)return{logs:m,start:0,limit:0,length:0};const{count:h}=await c.select(f=>f.fn.countAll().as("count")).executeTakeFirstOrThrow();return{logs:m,start:a*n,limit:n,length:T(h)}}}function nt(t){return async(e,r)=>{const a=await t.selectFrom("logs").where("logs.tenant_id","=",e).where("logs.id","=",r).selectAll().executeTakeFirst();return a?ge(a):null}}function ot(t){return{create:rt(t),list:at(t),get:nt(t)}}function st(t){return async(e,r)=>{const a=await t.selectFrom("sessions").where("sessions.tenant_id","=",e).where("sessions.id","=",r).selectAll().executeTakeFirst();if(!a)return null;const{tenant_id:n,device:o,clients:s,...i}=a;return{...i,device:JSON.parse(o),clients:JSON.parse(s)}}}function it(t){return async(e,r)=>{const a={...r,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({...a,tenant_id:e,device:JSON.stringify(r.device),clients:JSON.stringify(r.clients)}).execute(),a}}function lt(t){return async(e,r)=>!!(await t.deleteFrom("sessions").where("tenant_id","=",e).where("sessions.id","=",r).execute()).length}function ct(t){return async(e,r,a)=>{const n={...a,updated_at:new Date().toISOString(),device:a.device?JSON.stringify(a.device):void 0,clients:a.clients?JSON.stringify(a.clients):void 0};return!!(await t.updateTable("sessions").set(n).where("tenant_id","=",e).where("sessions.id","=",r).execute()).length}}function dt(t){return async(e,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,sort:s,q:i}=r;let c=t.selectFrom("sessions").where("sessions.tenant_id","=",e);i&&(c=S(t,c,i,["user_id","session_id"]));let _=c;if(s&&s.sort_by){const{ref:g}=t.dynamic;_=_.orderBy(g(s.sort_by),s.sort_order)}_=_.offset(a*n).limit(n);const m=(await _.selectAll().execute()).map(g=>({...g,device:JSON.parse(g.device),clients:JSON.parse(g.clients)}));if(!o)return{sessions:m,start:0,limit:0,length:0};const{count:h}=await c.select(g=>g.fn.countAll().as("count")).executeTakeFirstOrThrow(),f=T(h);return{sessions:m,start:a*n,limit:n,length:f}}}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,r)=>{const a=await t.selectFrom("passwords").where("passwords.tenant_id","=",e).where("passwords.user_id","=",r).selectAll().executeTakeFirst();if(!a)return null;const{tenant_id:n,...o}=a;return o}}function _t(t){return async(e,r)=>{const a={...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("passwords").values({...a,tenant_id:e}).execute(),a}}function ht(t){return async(e,r)=>(await t.updateTable("passwords").set({password:r.password,updated_at:new Date().toISOString()}).where("tenant_id","=",e).where("user_id","=",r.user_id).execute()).length===1}function ft(t){return{create:_t(t),update:ht(t),get:mt(t)}}function pt(t){return async(e,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,q:s}=r;let i=t.selectFrom("codes").where("codes.tenant_id","=",e);s&&(i=S(t,i,s,["code","login_id"]));const u=(await i.offset(a*n).limit(n).selectAll().execute()).map(h=>{const{tenant_id:f,...g}=h;return x.codeSchema.parse(y(g))});if(!o)return{codes:u,start:0,limit:0,length:0};const{count:m}=await i.select(h=>h.fn.countAll().as("count")).executeTakeFirstOrThrow();return{codes:u,start:a*n,limit:n,length:T(m)}}}function gt(t){return async(e,r)=>{const a={...r,created_at:new Date().toISOString()};return await t.insertInto("codes").values({...a,tenant_id:e}).execute(),a}}function wt(t){return async(e,r)=>(await t.deleteFrom("codes").where("codes.tenant_id","=",e).where("codes.code_id","=",r).executeTakeFirst()).numDeletedRows>0}function yt(t){return async(e,r,a)=>{let n=t.selectFrom("codes").where("codes.code_id","=",r).where("codes.code_type","=",a);e.length&&(n=n.where("codes.tenant_id","=",e));const o=await n.selectAll().executeTakeFirst();return o?y(o):null}}function vt(t){return async(e,r)=>(await t.updateTable("codes").set({used_at:new Date().toISOString()}).where("codes.tenant_id","=",e).where("codes.code_id","=",r).executeTakeFirst()).numUpdatedRows>0}function Nt(t){return{create:gt(t),list:pt(t),remove:wt(t),used:vt(t),get:yt(t)}}function Ct(t){return async(e,r)=>{const a={created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...r,disable_sign_ups:r.disable_sign_ups??!1},n=JSON.stringify(r.allowed_origins),o=JSON.stringify(r.callbacks),s=JSON.stringify(r.web_origins),i=JSON.stringify(r.allowed_logout_urls),c=JSON.stringify(r.allowed_clients);return await t.insertInto("applications").values({...a,tenant_id:e,disable_sign_ups:r.disable_sign_ups?1:0,addons:r.addons?JSON.stringify(r.addons):"{}",callbacks:o,allowed_origins:n,web_origins:s,allowed_logout_urls:i,allowed_clients:c}).execute(),a}}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,r)=>{const a=await t.selectFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",r).selectAll().executeTakeFirst();return a?y({...a,disable_sign_ups:!!a.disable_sign_ups,addons:JSON.parse(a.addons),callbacks:JSON.parse(a.callbacks),allowed_origins:JSON.parse(a.allowed_origins),web_origins:JSON.parse(a.web_origins),allowed_logout_urls:JSON.parse(a.allowed_logout_urls)}):null}}function Tt(t){return async(e,r)=>(await t.deleteFrom("applications").where("applications.tenant_id","=",e).where("applications.id","=",r).executeTakeFirst()).numDeletedRows>0}function St(t){return async(e,r,a)=>{const n={...a,updated_at:new Date().toISOString(),allowed_origins:a.allowed_origins?JSON.stringify(a.allowed_origins):void 0,callbacks:a.callbacks?JSON.stringify(a.callbacks):void 0,web_origins:a.web_origins?JSON.stringify(a.web_origins):void 0,allowed_logout_urls:a.allowed_logout_urls?JSON.stringify(a.allowed_logout_urls):void 0,allowed_clients:a.allowed_clients?JSON.stringify(a.allowed_clients):void 0,addons:a.addons?JSON.stringify(a.addons):"{}",disable_sign_ups:a.disable_sign_ups?1:0};return await t.updateTable("applications").set(n).where("applications.id","=",r).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,r)=>{const a={id:k(),...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("connections").values({...a,options:JSON.stringify(a.options||{}),tenant_id:e}).execute(),a}}function $t(t){return async(e,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,q:s}=r;let i=t.selectFrom("connections").where("connections.tenant_id","=",e);s&&(i=S(t,i,s,["user_id","ip"]));const u=(await i.offset(a*n).limit(n).selectAll().execute()).map(h=>y({...h,options:JSON.parse(h.options)}));if(!o)return{connections:u,start:0,limit:0,length:0};const{count:m}=await i.select(h=>h.fn.countAll().as("count")).executeTakeFirstOrThrow();return{connections:u,start:a*n,limit:n,length:T(m)}}}function It(t){return async(e,r)=>(await t.deleteFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",r).executeTakeFirst()).numDeletedRows>0}function Dt(t){return async(e,r)=>{const a=await t.selectFrom("connections").where("connections.tenant_id","=",e).where("connections.id","=",r).selectAll().executeTakeFirst();return a?y({...a,options:JSON.parse(a.options)}):null}}function Pt(t){return async(e,r,a)=>{const n={...a,updated_at:new Date().toISOString()};return await t.updateTable("connections").set({...n,options:n.options?JSON.stringify(n.options):void 0}).where("connections.id","=",r).where("connections.tenant_id","=",e).execute(),!0}}function jt(t){return{create:kt(t),get:Dt(t),list:$t(t),remove:It(t),update:Pt(t)}}function Ft(t){return{get:async e=>{const r=await t.selectFrom("applications").selectAll().where("id","=",e).executeTakeFirst();if(!r)return null;const a=await t.selectFrom("tenants").selectAll().where("id","=",r.tenant_id).executeTakeFirst();if(!a)throw new te(404,{message:"Tenant not found"});const n=await t.selectFrom("connections").where("tenant_id","=",r.tenant_id).selectAll().execute();return{...r,connections:n.map(s=>x.connectionSchema.parse(y({...s,options:s.options?JSON.parse(s.options):{}}))),addons:r.addons?JSON.parse(r.addons):{},callbacks:r.callbacks?JSON.parse(r.callbacks):[],allowed_origins:r.allowed_origins?JSON.parse(r.allowed_origins):[],web_origins:r.web_origins?JSON.parse(r.web_origins):[],allowed_logout_urls:r.allowed_logout_urls?JSON.parse(r.allowed_logout_urls):[],allowed_clients:r.allowed_clients?JSON.parse(r.allowed_clients):[],tenant:y(a),disable_sign_ups:!!r.disable_sign_ups}}}}function Mt(t){return async(e={})=>{const{page:r=0,per_page:a=100,include_totals:n=!1,sort:o,q:s}=e;let i=t.selectFrom("keys").where(f=>f.or([f("revoked_at",">",new Date().toISOString()),f("revoked_at","is",null)]));s&&(i=S(t,i,s,["kid","connection","fingerprint","thumbprint","type"]));let c=i.select(f=>f.fn.count("kid").as("count"));const _=r*a;i=i.limit(a).offset(_),o&&(i=i.orderBy(o.sort_by,o.sort_order));const u=await i.selectAll().execute();if(!n)return{signingKeys:u,start:0,limit:0,length:0};const m=await c.executeTakeFirst(),h=T((m==null?void 0:m.count)??0);return{signingKeys:u,start:_,limit:a,length:h}}}function At(t){return async e=>{await t.insertInto("keys").values({...e,created_at:new Date().toDateString()}).execute()}}function Lt(t){return async(e,r)=>!!(await t.updateTable("keys").set(r).where("kid","=",e).execute()).length}function zt(t){return{create:At(t),list:Mt(t),update:Lt(t)}}function Et(t){return async(e,r)=>{const a={custom_domain_id:k(),status:"pending",primary:!1,...r};return await t.insertInto("custom_domains").values({...a,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),tenant_id:e,primary:a.primary?1:0}).execute(),a}}function Jt(t){return async e=>(await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).selectAll().execute()).map(a=>({...a,primary:a.primary===1}))}function Rt(t){return async(e,r)=>(await t.deleteFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",r).execute()).length>0}function Kt(t){return async(e,r)=>{const a=await t.selectFrom("custom_domains").where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",r).selectAll().executeTakeFirst();return a?{...a,primary:a.primary===1}:null}}function Ut(t){return async(e,r,a)=>{const n={...a,updated_at:new Date().toISOString(),primary:a.primary?1:0};return(await t.updateTable("custom_domains").set(n).where("custom_domains.tenant_id","=",e).where("custom_domains.custom_domain_id","=",r).execute()).length>0}}function Bt(t){return async e=>{const r=await t.selectFrom("custom_domains").where("custom_domains.domain","=",e).selectAll().executeTakeFirst();return r?{...r,primary:r.primary===1}:null}}function Qt(t){return{create:Et(t),get:Kt(t),getByDomain:Bt(t),list:Jt(t),remove:Rt(t),update:Ut(t)}}function qt(t){return async e=>{const[r]=await t.selectFrom("branding").where("branding.tenant_id","=",e).selectAll().execute();if(!r)return null;const{tenant_id:a,colors_primary:n,colors_page_background_type:o,colors_page_background_start:s,colors_page_background_end:i,colors_page_background_angle_dev:c,font_url:_,...u}=r;return y({...u,colors:{primary:n,page_background:{type:o,start:s,end:i,angle_deg:c}},font:_?{url:_}:void 0})}}function Vt(t){return async(e,r)=>{var s,i,c,_,u,m,h,f,g,w,b,P,A,j,W,ie,le,ce;const{colors:a,font:n,...o}=r;try{await t.insertInto("branding").values({...o,colors_primary:a==null?void 0:a.primary,colors_page_background_type:(i=(s=r.colors)==null?void 0:s.page_background)==null?void 0:i.type,colors_page_background_start:(_=(c=r.colors)==null?void 0:c.page_background)==null?void 0:_.start,colors_page_background_end:(m=(u=r.colors)==null?void 0:u.page_background)==null?void 0:m.end,colors_page_background_angle_dev:(f=(h=r.colors)==null?void 0:h.page_background)==null?void 0:f.angle_deg,font_url:(g=r.font)==null?void 0:g.url,tenant_id:e}).execute()}catch{await t.updateTable("branding").set({...o,colors_primary:a==null?void 0:a.primary,colors_page_background_type:(b=(w=r.colors)==null?void 0:w.page_background)==null?void 0:b.type,colors_page_background_start:(A=(P=r.colors)==null?void 0:P.page_background)==null?void 0:A.start,colors_page_background_end:(W=(j=r.colors)==null?void 0:j.page_background)==null?void 0:W.end,colors_page_background_angle_dev:(le=(ie=r.colors)==null?void 0:ie.page_background)==null?void 0:le.angle_deg,font_url:(ce=r.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,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,q:s}=r;let i=t.selectFrom("hooks").where("hooks.tenant_id","=",e);s&&(i=S(t,i,s,["url","form_id"]));const u=(await i.offset(a*n).limit(n).selectAll().execute()).map(h=>{const{tenant_id:f,enabled:g,synchronous:w,...b}=h;return y({...b,enabled:!!g,synchronous:!!w})});if(!o)return{hooks:u,start:0,limit:0,length:0};const{count:m}=await i.select(h=>h.fn.countAll().as("count")).executeTakeFirstOrThrow();return{hooks:u,start:a*n,limit:n,length:T(m)}}}function Ht(t){return async(e,r)=>{const a=await t.selectFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",r).selectAll().executeTakeFirst();return a?y({...a,enabled:!!a.enabled,synchronous:!!a.synchronous}):null}}function Yt(t){return async(e,r)=>(await t.deleteFrom("hooks").where("hooks.tenant_id","=",e).where("hooks.hook_id","=",r).executeTakeFirst()).numDeletedRows>0}function Xt(t){return async(e,r)=>{const a={hook_id:k(),...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString()};return await t.insertInto("hooks").values({...a,tenant_id:e,enabled:r.enabled?1:0,synchronous:r.synchronous?1:0}).execute(),a}}function Zt(t){return async(e,r,a)=>{const n={...a,updated_at:new Date().toISOString(),enabled:a.enabled!==void 0?a.enabled?1:0:void 0,synchronous:a.enabled!==void 0?a.synchronous?1:0:void 0};return await t.updateTable("hooks").set(n).where("hooks.hook_id","=",r).where("hooks.tenant_id","=",e).execute(),!0}}function er(t){return{create:Xt(t),get:Ht(t),list:Gt(t),update:Zt(t),remove:Yt(t)}}function tr(t){return async(e,r)=>{const a={themeId:k(),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),...r},n={...a,tenant_id:e};return await t.insertInto("themes").values(R(n)).execute(),a}}function rr(t){return async(e,r)=>(await t.deleteFrom("themes").where("themes.tenant_id","=",e).where("themes.themeId","=",r).executeTakeFirst()).numDeletedRows>0}function ar(t){return async(e,r)=>{const a=await t.selectFrom("themes").where("themes.tenant_id","=",e).where("themes.themeId","=",r).selectAll().executeTakeFirst();if(!a)return null;const n={...a,borders_show_widget_shadow:!!a.borders_show_widget_shadow,fonts_body_text_bold:!!a.fonts_body_text_bold,fonts_buttons_text_bold:!!a.fonts_buttons_text_bold,fonts_input_labels_bold:!!a.fonts_input_labels_bold,fonts_links_bold:!!a.fonts_links_bold,fonts_subtitle_bold:!!a.fonts_subtitle_bold,fonts_title_bold:!!a.fonts_title_bold};return y(pe(n,["widget","colors","borders","fonts","page_background"]))}}function nr(t){return async(e,r,a)=>{const n=R({...a,updated_at:new Date().toISOString()});return await t.updateTable("themes").set(n).where("themes.themeId","=",r).where("themes.tenant_id","=",e).execute(),!0}}function or(t){return{create:tr(t),get:ar(t),remove:rr(t),update:nr(t)}}function sr(t){return async(e,r)=>{const a=await t.selectFrom("login_sessions").where("login_sessions.id","=",r).selectAll().executeTakeFirst();return a?x.loginSessionSchema.parse(pe(y({...a,login_completed:!!a.login_completed}),["authParams"])):null}}function ir(t){return async(e,r)=>{var n;const a={id:k(),...r,authorization_url:(n=r.authorization_url)==null?void 0:n.slice(0,1024),created_at:new Date().toISOString(),updated_at:new Date().toISOString(),login_completed:!!r.login_completed};return await t.insertInto("login_sessions").values({...R(a),tenant_id:e}).execute(),a}}function lr(t){return async(e,r,a)=>(await t.updateTable("login_sessions").set(R({...a})).where("login_sessions.id","=",r).where("login_sessions.tenant_id","=",e).execute()).length===1}function cr(t){return async(e,r)=>(await t.deleteFrom("login_sessions").where("login_sessions.tenant_id","=",e).where("login_sessions.id","=",r).execute()).length>0}function dr(t){return{create:ir(t),get:sr(t),update:lr(t),remove:cr(t)}}function ur(t){return async e=>{const[r]=await t.selectFrom("prompt_settings").where("prompt_settings.tenant_id","=",e).selectAll().execute();return y({identifier_first:!!(r!=null&&r.identifier_first),password_first:!!(r!=null&&r.password_first),webauthn_platform_first_factor:!!(r!=null&&r.webauthn_platform_first_factor),universal_login_experience:(r==null?void 0:r.universal_login_experience)||"new"})}}function _e(t){return y({...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 mr(t){return async(e,r)=>{try{const a=x.promptSettingSchema.parse(r);await t.insertInto("prompt_settings").values({..._e(a),tenant_id:e}).execute()}catch{await t.updateTable("prompt_settings").set(_e(r)).where("tenant_id","=",e).execute()}}}function _r(t){return{get:ur(t),set:mr(t)}}function hr(t){return async e=>{const[r]=await t.selectFrom("email_providers").where("email_providers.tenant_id","=",e).selectAll().execute();if(!r)return null;const{tenant_id:a,credentials:n,settings:o,enabled:s,...i}=r;return y({...i,credentials:JSON.parse(n),settings:JSON.parse(o),enabled:!!s})}}function fr(t){return async(e,r)=>{const{credentials:a,settings:n,enabled:o,...s}=r;await t.updateTable("email_providers").set({...s,credentials:a?JSON.stringify(a):void 0,settings:n?JSON.stringify(n):void 0,enabled:o!==void 0?o?1:0:void 0}).where("tenant_id","=",e).execute()}}function pr(t){return async(e,r)=>{const{credentials:a,settings:n,enabled:o,...s}=r;await t.insertInto("email_providers").values({...s,enabled:o?1:0,credentials:JSON.stringify(a),settings:JSON.stringify(n),tenant_id:e,created_at:new Date().toISOString(),updated_at:new Date().toISOString()}).execute()}}function gr(t){return{get:hr(t),create:pr(t),update:fr(t)}}function wr(t){return async(e,r)=>{const a=await t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e).where("refresh_tokens.id","=",r).selectAll().executeTakeFirst();return a?{...a,rotating:!!a.rotating,device:a.device?JSON.parse(a.device):{},resource_servers:a.resource_servers?JSON.parse(a.resource_servers):[]}:null}}function yr(t){return async(e,r)=>{const a={...r,created_at:new Date().toISOString()};return await t.insertInto("refresh_tokens").values({...a,tenant_id:e,rotating:r.rotating?1:0,device:JSON.stringify(r.device),resource_servers:JSON.stringify(r.resource_servers)}).execute(),{...r,...a}}}function vr(t){return async(e,r)=>!!(await t.deleteFrom("refresh_tokens").where("tenant_id","=",e).where("refresh_tokens.id","=",r).execute()).length}function Nr(t){return async(e,r,a)=>{const n={...a,device:a.device?JSON.stringify(a.device):void 0,resource_servers:a.resource_servers?JSON.stringify(a.resource_servers):void 0,rotating:a.rotating?1:0};return!!(await t.updateTable("refresh_tokens").set(n).where("tenant_id","=",e).where("refresh_tokens.id","=",r).execute()).length}}function Cr(t){return async(e,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,sort:s,q:i}=r;let c=t.selectFrom("refresh_tokens").where("refresh_tokens.tenant_id","=",e);i&&(c=S(t,c,i,["token","session_id"]));let _=c;if(s&&s.sort_by){const{ref:g}=t.dynamic;_=_.orderBy(g(s.sort_by),s.sort_order)}_=_.offset(a*n).limit(n);const m=(await _.selectAll().execute()).map(g=>({...g,rotating:!!g.rotating,device:g.device?JSON.parse(g.device):{},resource_servers:g.resource_servers?JSON.parse(g.resource_servers):[]}));if(!o)return{refresh_tokens:m,start:0,limit:0,length:0};const{count:h}=await c.select(g=>g.fn.countAll().as("count")).executeTakeFirstOrThrow(),f=T(h);return{refresh_tokens:m,start:a*n,limit:n,length:f}}}function br(t){return{create:yr(t),get:wr(t),list:Cr(t),remove:vr(t),update:Nr(t)}}function xr(t){return async()=>{const e=new Date(Date.now()-864e5).toISOString(),r=new Date(Date.now()-1e3*60*60*24*7).toISOString(),a=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","<",r).where("session_id","is",null).limit(1e5).execute(),console.log("delete logs"),await t.deleteFrom("logs").where("date","<",a).limit(1e5).execute(),console.log("delete refresh tokens"),await t.deleteFrom("refresh_tokens").where(o=>o.or([o("expires_at","<",r),o("idle_expires_at","<",r)])).limit(1e4).execute(),console.log("delete sessions");const n=await t.selectFrom("sessions").select("id").where(o=>o.or([o("expires_at","<",r),o("idle_expires_at","<",r)])).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 Tr(t){return async(e,r)=>{const a=x.formSchema.parse({id:k(),...r,created_at:new Date().toISOString(),updated_at:new Date().toISOString()});return await t.insertInto("forms").values({...a,nodes:JSON.stringify(a.nodes||[]),start:JSON.stringify(a.start||{}),ending:JSON.stringify(a.ending||{}),tenant_id:e}).execute(),x.formSchema.parse(a)}}function Sr(t){return async(e,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,q:s}=r;let i=t.selectFrom("forms").where("tenant_id","=",e);s&&(i=S(t,i,s,[]));const u=(await i.offset(a*n).limit(n).selectAll().execute()).map(h=>{const f={...h};if(typeof f.nodes=="string")try{f.nodes=JSON.parse(f.nodes)}catch{}if(typeof f.start=="string")try{f.start=JSON.parse(f.start)}catch{}if(typeof f.ending=="string")try{f.ending=JSON.parse(f.ending)}catch{}return x.formSchema.parse(y(f))});if(!o)return{forms:u,start:0,limit:0,length:0};const{count:m}=await i.select(h=>h.fn.countAll().as("count")).executeTakeFirstOrThrow();return{forms:u,start:a*n,limit:n,length:T(m)}}}function Or(t){return async(e,r)=>{const{numDeletedRows:a}=await t.deleteFrom("forms").where("id","=",r).where("tenant_id","=",e).executeTakeFirst();return a>0}}function kr(t){return async(e,r)=>{const a=await t.selectFrom("forms").selectAll().where("forms.id","=",r).where("tenant_id","=",e).executeTakeFirst();if(!a)return null;const n={...a};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 x.formSchema.parse(y(n))}}function $r(t){return async(e,r,a)=>{const n={...a,updated_at:new Date().toISOString()};a.nodes&&(n.nodes=JSON.stringify(a.nodes)),a.start&&(n.start=JSON.stringify(a.start)),a.ending&&(n.ending=JSON.stringify(a.ending));const{numUpdatedRows:o}=await t.updateTable("forms").set(n).where("id","=",r).where("tenant_id","=",e).executeTakeFirst();return o>0}}function Ir(t){return{create:Tr(t),get:kr(t),list:Sr(t),remove:Or(t),update:$r(t)}}function Dr(t){return async(e,r)=>{const a=new Date().toISOString(),n={id:k(),...r,created_at:a,updated_at:a},o=x.resourceServerSchema.parse(n),{verificationKey:s,scopes:i,options:c,skip_consent_for_verifiable_first_party_clients:_,allow_offline_access:u,...m}=o,h={...m,tenant_id:e,scopes:i?JSON.stringify(i):"[]",options:c?JSON.stringify(c):"{}",skip_consent_for_verifiable_first_party_clients:_?1:0,allow_offline_access:u?1:0,verification_key:s,created_at:a,updated_at:a};return await t.insertInto("resource_servers").values(h).execute(),y(o)}}function Pr(t){return async(e,r)=>{const a=await t.selectFrom("resource_servers").selectAll().where("tenant_id","=",e).where("id","=",r).executeTakeFirst();if(!a)return null;const n=a,{verification_key:o,scopes:s,options:i,skip_consent_for_verifiable_first_party_clients:c,allow_offline_access:_,...u}=n,m={...u,scopes:s?JSON.parse(s):[],options:i?JSON.parse(i):{},skip_consent_for_verifiable_first_party_clients:!!c,allow_offline_access:!!_,verificationKey:o};return y(m)}}function jr(t){return async(e,r={})=>{const{page:a=0,per_page:n=50,include_totals:o=!1,q:s}=r;let i=t.selectFrom("resource_servers").where("resource_servers.tenant_id","=",e);if(s){const h=s.trim(),f=h.split(/\s+/),g=f.length===1?f[0]:void 0,w=g?g.match(/^(-)?(name|identifier):(.*)$/):null,b=w?w[3]:"",P=/^(>=|>|<=|<)/.test(b||"");if(w&&!P){const A=!!w[1],j=w[2]==="name"?"resource_servers.name":"resource_servers.identifier";i=A?i.where(j,"not like",`%${b}%`):i.where(j,"like",`%${b}%`)}else i=S(t,i,h,["resource_servers.name","resource_servers.identifier"])}const u=(await i.offset(a*n).limit(n).selectAll().execute()).map(h=>{const f=h,{verification_key:g,scopes:w,options:b,skip_consent_for_verifiable_first_party_clients:P,allow_offline_access:A,...j}=f,W={...j,scopes:w?JSON.parse(w):[],options:b?JSON.parse(b):{},skip_consent_for_verifiable_first_party_clients:!!P,allow_offline_access:!!A,verificationKey:g};return y(W)});if(!o)return{resource_servers:u,start:0,limit:0,length:0};const{count:m}=await i.select(h=>h.fn.countAll().as("count")).executeTakeFirstOrThrow();return{resource_servers:u,start:a*n,limit:n,length:T(m)}}}function Fr(t){return async(e,r)=>{const a=await t.deleteFrom("resource_servers").where("tenant_id","=",e).where("id","=",r).executeTakeFirst();return Number(a.numDeletedRows)>0}}function Mr(t){return async(e,r,a)=>{const{verificationKey:n,scopes:o,options:s,skip_consent_for_verifiable_first_party_clients:i,allow_offline_access:c,..._}=a,u={..._,updated_at:new Date().toISOString()};n!==void 0&&(u.verification_key=n),o!==void 0&&(u.scopes=JSON.stringify(o)),s!==void 0&&(u.options=JSON.stringify(s)),i!==void 0&&(u.skip_consent_for_verifiable_first_party_clients=i?1:0),c!==void 0&&(u.allow_offline_access=c?1:0);const m=await t.updateTable("resource_servers").set(u).where("tenant_id","=",e).where("id","=",r).executeTakeFirst();return Number(m.numUpdatedRows)>0}}function Ar(t){return{create:Dr(t),get:Pr(t),list:jr(t),remove:Fr(t),update:Mr(t)}}function Lr(t){return async(e,r)=>{const a=new Date().toISOString(),n=k(),o={id:n,...r,tenant_id:e,created_at:a,updated_at:a};return await t.insertInto("roles").values(o).execute(),{id:n,...r,created_at:a,updated_at:a}}}function zr(t){return async(e,r)=>{const a=await t.selectFrom("roles").selectAll().where("roles.tenant_id","=",e).where("roles.id","=",r).executeTakeFirst();return a?{...a}:null}}function Er(t){return async(e,r)=>{let a=t.selectFrom("roles").where("roles.tenant_id","=",e);const{page:n=0,per_page:o=50,include_totals:s=!1}=r;r.q&&(a=S(t,a,r.q,["name"]));const c=await a.offset(n*o).limit(o).selectAll().execute();if(!s)return{roles:c,start:n*o,limit:o,length:c.length};const{count:_}=await a.select(u=>u.fn.countAll().as("count")).executeTakeFirstOrThrow();return{roles:c,start:n*o,limit:o,length:T(_)}}}function Jr(t){return async(e,r,a)=>{const n={...a,updated_at:new Date().toISOString()},o=await t.updateTable("roles").set(n).where("roles.tenant_id","=",e).where("roles.id","=",r).executeTakeFirst();return Number(o.numUpdatedRows)>0}}function Rr(t){return async(e,r)=>{const a=await t.deleteFrom("roles").where("tenant_id","=",e).where("id","=",r).executeTakeFirst();return Number(a.numDeletedRows)>0}}function Kr(t){return{create:Lr(t),get:zr(t),list:Er(t),update:Jr(t),remove:Rr(t)}}function Ur(t){return async(e,r,a)=>{if(a.length===0)return!0;const n=new Date().toISOString();try{for(const o of a){if(o.role_id!==r)throw new Error(`Permission role_id ${o.role_id} does not match expected role_id ${r}`);const s={tenant_id:e,role_id:o.role_id,resource_server_identifier:o.resource_server_identifier,permission_name:o.permission_name,created_at:n};try{await t.insertInto("role_permissions").values(s).execute()}catch(i){if(i.code==="SQLITE_CONSTRAINT_PRIMARYKEY"||i.code==="SQLITE_CONSTRAINT_UNIQUE")continue;throw i}}return!0}catch(o){return console.error("Error assigning role permissions:",o),!1}}}function Br(t){return async(e,r,a)=>{if(a.length===0)return!0;try{return(await Promise.all(a.map(o=>t.deleteFrom("role_permissions").where("tenant_id","=",e).where("role_id","=",r).where("resource_server_identifier","=",o.resource_server_identifier).where("permission_name","=",o.permission_name).executeTakeFirst()))).some(o=>Number(o.numDeletedRows)>0)}catch(n){return console.error("Error removing role permissions:",n),!1}}}function Qr(t){return async(e,r,a={})=>{const{page:n=0,per_page:o=50,include_totals:s=!1}=a;let i=t.selectFrom("role_permissions").leftJoin("resource_servers",m=>m.onRef("role_permissions.tenant_id","=","resource_servers.tenant_id").onRef("role_permissions.resource_server_identifier","=","resource_servers.id")).select(["role_permissions.role_id","role_permissions.resource_server_identifier","role_permissions.permission_name","role_permissions.created_at","resource_servers.name as resource_server_name"]).where("role_permissions.tenant_id","=",e).where("role_permissions.role_id","=",r);const u=(await i.offset(n*o).limit(o).execute()).map(m=>({role_id:m.role_id,resource_server_identifier:m.resource_server_identifier,resource_server_name:m.resource_server_name||m.resource_server_identifier,permission_name:m.permission_name,description:null,created_at:m.created_at}));return s&&await i.select(m=>m.fn.countAll().as("count")).executeTakeFirstOrThrow(),u}}function qr(t){return{assign:Ur(t),remove:Br(t),list:Qr(t)}}function Vr(t){return async(e,r,a)=>{if(a.length===0)return!0;const n=new Date().toISOString();try{for(const o of a){const s={tenant_id:e,user_id:r,resource_server_identifier:o.resource_server_identifier,permission_name:o.permission_name,created_at:n};try{await t.insertInto("user_permissions").values(s).execute()}catch(i){if(i.code==="SQLITE_CONSTRAINT_PRIMARYKEY"||i.code==="SQLITE_CONSTRAINT_UNIQUE")continue;throw i}}return!0}catch(o){return console.error("Error assigning user permissions:",o),!1}}}function Wr(t){return async(e,r,a)=>{if(a.length===0)return!0;try{for(const n of a)await t.deleteFrom("user_permissions").where("tenant_id","=",e).where("user_id","=",r).where("resource_server_identifier","=",n.resource_server_identifier).where("permission_name","=",n.permission_name).execute();return!0}catch(n){return console.error("Error removing user permissions:",n),!1}}}function Gr(t){return async(e,r,a)=>(await t.selectFrom("user_permissions").leftJoin("resource_servers",o=>o.onRef("user_permissions.tenant_id","=","resource_servers.tenant_id").onRef("user_permissions.resource_server_identifier","=","resource_servers.id")).select(["user_permissions.resource_server_identifier","user_permissions.permission_name","resource_servers.name as resource_server_name","user_permissions.user_id","user_permissions.created_at"]).where("user_permissions.tenant_id","=",e).where("user_permissions.user_id","=",r).execute()).map(o=>({resource_server_identifier:o.resource_server_identifier,permission_name:o.permission_name,description:null,resource_server_name:o.resource_server_name||o.resource_server_identifier,user_id:o.user_id,created_at:o.created_at}))}function Hr(t){return{assign:Vr(t),remove:Wr(t),list:Gr(t)}}function Yr(t){return async(e,r)=>await t.selectFrom("user_roles as ur").innerJoin("roles as r",n=>n.onRef("ur.role_id","=","r.id").onRef("ur.tenant_id","=","r.tenant_id")).select(["r.id","r.name","r.description","r.created_at","r.updated_at"]).where("ur.tenant_id","=",e).where("ur.user_id","=",r).execute()}function Xr(t){return async(e,r,a)=>{if(a.length===0)return!0;const n=new Date().toISOString();try{for(const o of a)try{await t.insertInto("user_roles").values({tenant_id:e,user_id:r,role_id:o,created_at:n}).execute()}catch(s){if(s.code==="SQLITE_CONSTRAINT_PRIMARYKEY"||s.code==="SQLITE_CONSTRAINT_UNIQUE")continue;throw s}return!0}catch(o){return console.error("Error assigning user roles:",o),!1}}}function Zr(t){return async(e,r,a)=>{try{return a.length&&await t.deleteFrom("user_roles").where("tenant_id","=",e).where("user_id","=",r).where(n=>n("role_id","in",a)).execute(),!0}catch(n){return console.error("Error removing user roles:",n),!1}}}function ea(t){return{list:Yr(t),assign:Xr(t),remove:Zr(t)}}function ta(t){return t[t.length-1]}function C(t){return Object.freeze(t)}const G=C({is(t){return t.kind==="IdentifierNode"},create(t){return C({kind:"IdentifierNode",name:t})}}),re=C({is(t){return t.kind==="SchemableIdentifierNode"},create(t){return C({kind:"SchemableIdentifierNode",identifier:G.create(t)})},createWithSchema(t,e){return C({kind:"SchemableIdentifierNode",schema:G.create(t),identifier:G.create(e)})}}),ra=C({is(t){return t.kind==="AliasNode"},create(t,e){return C({kind:"AliasNode",node:t,alias:e})}}),X=C({is(t){return t.kind==="TableNode"},create(t){return C({kind:"TableNode",table:re.create(t)})},createWithSchema(t,e){return C({kind:"TableNode",table:re.createWithSchema(t,e)})}});var H;class aa{constructor(){K(this,"nodeStack",[]);O(this,H,C({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 r=this.transformNodeImpl(e);return this.nodeStack.pop(),C(r)}transformNodeImpl(e){return d(this,H)[e.kind](e)}transformNodeList(e){return e&&C(e.map(r=>this.transformNode(r)))}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:C([...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}}H=new WeakMap;const na=C({AlterTableNode:!0,CreateIndexNode:!0,CreateSchemaNode:!0,CreateTableNode:!0,CreateTypeNode:!0,CreateViewNode:!0,DeleteQueryNode:!0,DropIndexNode:!0,DropSchemaNode:!0,DropTableNode:!0,DropTypeNode:!0,DropViewNode:!0,InsertQueryNode:!0,RawNode:!0,SelectQueryNode:!0,UpdateQueryNode:!0,MergeQueryNode:!0});var J,F,M,N,we,ye,ve,L,ae,Ne;class oa extends aa{constructor(r){super();O(this,N);O(this,J);O(this,F,new Set);O(this,M,new Set);U(this,J,r)}transformNodeImpl(r){if(!p(this,N,we).call(this,r))return super.transformNodeImpl(r);const a=p(this,N,ve).call(this,r);for(const s of a)d(this,M).add(s);const n=p(this,N,ye).call(this,r);for(const s of n)d(this,F).add(s);const o=super.transformNodeImpl(r);for(const s of n)d(this,F).delete(s);for(const s of a)d(this,M).delete(s);return o}transformSchemableIdentifier(r){const a=super.transformSchemableIdentifier(r);return a.schema||!d(this,F).has(r.identifier.name)?a:{...a,schema:G.create(d(this,J))}}transformReferences(r){const a=super.transformReferences(r);return a.table.table.schema?a:{...a,table:X.createWithSchema(d(this,J),a.table.table.identifier.name)}}}J=new WeakMap,F=new WeakMap,M=new WeakMap,N=new WeakSet,we=function(r){return r.kind in na},ye=function(r){const a=new Set;if("name"in r&&r.name&&re.is(r.name)&&p(this,N,ae).call(this,r.name,a),"from"in r&&r.from)for(const n of r.from.froms)p(this,N,L).call(this,n,a);if("into"in r&&r.into&&p(this,N,L).call(this,r.into,a),"table"in r&&r.table&&p(this,N,L).call(this,r.table,a),"joins"in r&&r.joins)for(const n of r.joins)p(this,N,L).call(this,n.table,a);return"using"in r&&r.using&&p(this,N,L).call(this,r.using,a),a},ve=function(r){const a=new Set;return"with"in r&&r.with&&p(this,N,Ne).call(this,r.with,a),a},L=function(r,a){const n=X.is(r)?r:ra.is(r)&&X.is(r.node)?r.node:null;n&&p(this,N,ae).call(this,n.table,a)},ae=function(r,a){const n=r.identifier.name;!d(this,F).has(n)&&!d(this,M).has(n)&&a.add(n)},Ne=function(r,a){for(const n of r.expressions){const o=n.name.table.table.identifier.name;d(this,M).has(o)||a.add(o)}};var q;class sa{constructor(e){O(this,q);U(this,q,new oa(e))}transformQuery(e){return d(this,q).transformNode(e.node)}async transformResult(e){return e.result}}q=new WeakMap;class ia{transformQuery(e){return e.node}async transformResult(e){return e.result}}const la="kysely_migration",he="kysely_migration_lock",ca=!1,Z="migration_lock",da=C({__noMigrations__:!0});var v,l,B,$,I,z,be,D,xe,Te,Se,Oe,ke,ne,E,oe,$e,Ie,De,se,Pe,je,Fe,Me,Ae,Q;class Ce{constructor(e){O(this,l);O(this,v);U(this,v,C(e))}async getMigrations(){const e=await p(this,l,E).call(this,d(this,l,I))?await d(this,v).db.withPlugin(d(this,l,D)).selectFrom(d(this,l,I)).select(["name","timestamp"]).execute():[];return(await p(this,l,se).call(this)).map(({name:a,...n})=>{const o=e.find(s=>s.name===a);return{name:a,migration:n,executedAt:o?new Date(o.timestamp):void 0}})}async migrateToLatest(){return p(this,l,B).call(this,()=>({direction:"Up",step:1/0}))}async migrateTo(e){return p(this,l,B).call(this,({migrations:r,executedMigrations:a,pendingMigrations:n})=>{if(e===da)return{direction:"Down",step:1/0};if(!r.find(i=>i.name===e))throw new Error(`migration "${e}" doesn't exist`);const o=a.indexOf(e),s=n.findIndex(i=>i.name===e);if(o!==-1)return{direction:"Down",step:a.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 p(this,l,B).call(this,()=>({direction:"Up",step:1}))}async migrateDown(){return p(this,l,B).call(this,()=>({direction:"Down",step:1}))}}v=new WeakMap,l=new WeakSet,B=async function(e){try{return await p(this,l,xe).call(this),await p(this,l,$e).call(this,e)}catch(r){return r instanceof ee?r.resultSet:{error:r}}},$=function(){return d(this,v).migrationTableSchema},I=function(){return d(this,v).migrationTableName??la},z=function(){return d(this,v).migrationLockTableName??he},be=function(){return d(this,v).allowUnorderedMigrations??ca},D=function(){return d(this,l,$)?new sa(d(this,l,$)):new ia},xe=async function(){await p(this,l,Te).call(this),await p(this,l,Se).call(this),await p(this,l,Oe).call(this),await p(this,l,ke).call(this)},Te=async function(){if(d(this,l,$)&&!await p(this,l,ne).call(this))try{await p(this,l,Q).call(this,d(this,v).db.schema.createSchema(d(this,l,$)))}catch(e){if(!await p(this,l,ne).call(this))throw e}},Se=async function(){if(!await p(this,l,E).call(this,d(this,l,I)))try{d(this,l,$)&&await p(this,l,Q).call(this,d(this,v).db.schema.createSchema(d(this,l,$))),await p(this,l,Q).call(this,d(this,v).db.schema.withPlugin(d(this,l,D)).createTable(d(this,l,I)).addColumn("name","varchar(255)",e=>e.notNull().primaryKey()).addColumn("timestamp","varchar(255)",e=>e.notNull()))}catch(e){if(!await p(this,l,E).call(this,d(this,l,I)))throw e}},Oe=async function(){if(!await p(this,l,E).call(this,d(this,l,z)))try{await p(this,l,Q).call(this,d(this,v).db.schema.withPlugin(d(this,l,D)).createTable(d(this,l,z)).addColumn("id","varchar(255)",e=>e.notNull().primaryKey()).addColumn("is_locked","integer",e=>e.notNull().defaultTo(0)))}catch(e){if(!await p(this,l,E).call(this,d(this,l,z)))throw e}},ke=async function(){if(!await p(this,l,oe).call(this))try{await d(this,v).db.withPlugin(d(this,l,D)).insertInto(d(this,l,z)).values({id:Z,is_locked:0}).execute()}catch(e){if(!await p(this,l,oe).call(this))throw e}},ne=async function(){return(await d(this,v).db.introspection.getSchemas()).some(r=>r.name===d(this,l,$))},E=async function(e){const r=d(this,l,$);return(await d(this,v).db.introspection.getTables({withInternalKyselyTables:!0})).some(n=>n.name===e&&(!r||n.schema===r))},oe=async function(){return!!await d(this,v).db.withPlugin(d(this,l,D)).selectFrom(d(this,l,z)).where("id","=",Z).select("id").executeTakeFirst()},$e=async function(e){const r=d(this,v).db.getExecutor().adapter,a=C({lockTable:d(this,v).migrationLockTableName??he,lockRowId:Z,lockTableSchema:d(this,v).migrationTableSchema}),n=async o=>{try{await r.acquireMigrationLock(o,a);const s=await p(this,l,Ie).call(this,o);if(s.migrations.length===0)return{results:[]};const{direction:i,step:c}=e(s);return c<=0?{results:[]}:i==="Down"?await p(this,l,Me).call(this,o,s,c):i==="Up"?await p(this,l,Ae).call(this,o,s,c):{results:[]}}finally{await r.releaseMigrationLock(o,a)}};return r.supportsTransactionalDdl?d(this,v).db.transaction().execute(n):d(this,v).db.connection().execute(n)},Ie=async function(e){const r=await p(this,l,se).call(this),a=await p(this,l,Pe).call(this,e);p(this,l,je).call(this,r,a),d(this,l,be)||p(this,l,Fe).call(this,r,a);const n=p(this,l,De).call(this,r,a);return C({migrations:r,executedMigrations:a,lastMigration:ta(a),pendingMigrations:n})},De=function(e,r){return e.filter(a=>!r.includes(a.name))},se=async function(){const e=await d(this,v).provider.getMigrations();return Object.keys(e).sort().map(r=>({...e[r],name:r}))},Pe=async function(e){return(await e.withPlugin(d(this,l,D)).selectFrom(d(this,l,I)).select("name").orderBy(["timestamp","name"]).execute()).map(a=>a.name)},je=function(e,r){for(const a of r)if(!e.some(n=>n.name===a))throw new Error(`corrupted migrations: previously executed migration ${a} is missing`)},Fe=function(e,r){for(let a=0;a<r.length;++a)if(e[a].name!==r[a])throw new Error(`corrupted migrations: expected previously executed migration ${r[a]} to be at index ${a} but ${e[a].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,r,a){const n=r.executedMigrations.slice().reverse().slice(0,a).map(s=>r.migrations.find(i=>i.name===s)),o=n.map(s=>({migrationName:s.name,direction:"Down",status:"NotExecuted"}));for(let s=0;s<o.length;++s){const i=n[s];try{i.down&&(await i.down(e),await e.withPlugin(d(this,l,D)).deleteFrom(d(this,l,I)).where("name","=",i.name).execute(),o[s]={migrationName:i.name,direction:"Down",status:"Success"})}catch(c){throw o[s]={migrationName:i.name,direction:"Down",status:"Error"},new ee({error:c,results:o})}}return{results:o}},Ae=async function(e,r,a){const o=r.pendingMigrations.slice(0,a).map(s=>({migrationName:s.name,direction:"Up",status:"NotExecuted"}));for(let s=0;s<o.length;s++){const i=r.pendingMigrations[s];try{await i.up(e),await e.withPlugin(d(this,l,D)).insertInto(d(this,l,I)).values({name:i.name,timestamp:new Date().toISOString()}).execute(),o[s]={migrationName:i.name,direction:"Up",status:"Success"}}catch(c){throw o[s]={migrationName:i.name,direction:"Up",status:"Error"},new ee({error:c,results:o})}}return{results:o}},Q=async function(e){d(this,v).db.getExecutor().adapter.supportsCreateIfNotExists&&(e=e.ifNotExists()),await e.execute()};var V;class ee extends Error{constructor(r){super();O(this,V);U(this,V,r)}get resultSet(){return d(this,V)}}V=new WeakMap;class Le{constructor(e){K(this,"migrations");this.migrations=e}async getMigrations(){return this.migrations}}async function ua(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 ma(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 _a=Object.freeze(Object.defineProperty({__proto__:null,down:ma,up:ua},Symbol.toStringTag,{value:"Module"}));async function ha(t){await t.schema.alterTable("tenants").addColumn("support_url","varchar(255)").execute()}async function fa(t){await t.schema.alterTable("tenants").dropColumn("support_url").execute()}const pa=Object.freeze(Object.defineProperty({__proto__:null,down:fa,up:ha},Symbol.toStringTag,{value:"Module"}));async function ga(t){}async function wa(t){}const ya=Object.freeze(Object.defineProperty({__proto__:null,down:wa,up:ga},Symbol.toStringTag,{value:"Module"}));async function va(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 Na(t){await t.schema.dropTable("logs").execute()}const Ca=Object.freeze(Object.defineProperty({__proto__:null,down:Na,up:va},Symbol.toStringTag,{value:"Module"}));async function ba(t){}async function xa(t){}const Ta=Object.freeze(Object.defineProperty({__proto__:null,down:xa,up:ba},Symbol.toStringTag,{value:"Module"}));async function Sa(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 Oa(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("tickets").execute(),await t.schema.dropTable("otps").execute()}const ka=Object.freeze(Object.defineProperty({__proto__:null,down:Oa,up:Sa},Symbol.toStringTag,{value:"Module"}));async function $a(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 Ia(t){await t.schema.dropTable("passwords").execute(),await t.schema.dropTable("codes").execute()}const Da=Object.freeze(Object.defineProperty({__proto__:null,down:Ia,up:$a},Symbol.toStringTag,{value:"Module"}));async function Pa(t){}async function ja(t){}const Fa=Object.freeze(Object.defineProperty({__proto__:null,down:ja,up:Pa},Symbol.toStringTag,{value:"Module"}));async function Ma(t){await t.schema.alterTable("passwords").addColumn("password","varchar(255)",e=>e.notNull()).execute()}async function Aa(t){await t.schema.alterTable("passwords").dropColumn("password").execute()}const La=Object.freeze(Object.defineProperty({__proto__:null,down:Aa,up:Ma},Symbol.toStringTag,{value:"Module"}));async function za(t){}async function Ea(t){}const Ja=Object.freeze(Object.defineProperty({__proto__:null,down:Ea,up:za},Symbol.toStringTag,{value:"Module"}));async function Ra(t){}async function Ka(t){}const Ua=Object.freeze(Object.defineProperty({__proto__:null,down:Ka,up:Ra},Symbol.toStringTag,{value:"Module"}));async function Ba(t){}async function Qa(t){}const qa=Object.freeze(Object.defineProperty({__proto__:null,down:Qa,up:Ba},Symbol.toStringTag,{value:"Module"}));async function Va(t){await t.schema.createIndex("users_email_index").on("users").column("email").execute()}async function Wa(t){await t.schema.dropIndex("users_email_index").execute()}const Ga=Object.freeze(Object.defineProperty({__proto__:null,down:Wa,up:Va},Symbol.toStringTag,{value:"Module"}));async function Ha(t){await t.schema.alterTable("users").addColumn("profileData","varchar(2048)").execute()}async function Ya(t){await t.schema.alterTable("users").dropColumn("profileData").execute()}const Xa=Object.freeze(Object.defineProperty({__proto__:null,down:Ya,up:Ha},Symbol.toStringTag,{value:"Module"}));async function Za(t){await t.schema.createIndex("users_linked_to_index").on("users").column("linked_to").execute()}async function en(t){await t.schema.dropIndex("users_linked_to_index")}const tn=Object.freeze(Object.defineProperty({__proto__:null,down:en,up:Za},Symbol.toStringTag,{value:"Module"}));async function rn(t){await t.schema.alterTable("users").addColumn("locale","varchar(255)").execute()}async function an(t){await t.schema.alterTable("users").dropColumn("locale").execute()}const nn=Object.freeze(Object.defineProperty({__proto__:null,down:an,up:rn},Symbol.toStringTag,{value:"Module"}));async function on(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(4096)").addColumn("pkcs7","varchar(4096)").addColumn("fingerprint","varchar(256)").addColumn("thumbprint","varchar(256)").addColumn("current_since","varchar(256)").addColumn("current_until","varchar(256)").addColumn("type","varchar(50)",e=>e.notNull().defaultTo("jwt_signing")).addColumn("connection","varchar(255)",e=>e.references("connections.id").onDelete("cascade")).execute()}async function sn(t){await t.schema.dropTable("keys").execute()}const ln=Object.freeze(Object.defineProperty({__proto__:null,down:sn,up:on},Symbol.toStringTag,{value:"Module"}));async function cn(t){}async function dn(t){}const un=Object.freeze(Object.defineProperty({__proto__:null,down:dn,up:cn},Symbol.toStringTag,{value:"Module"}));async function mn(t){}async function _n(t){}const hn=Object.freeze(Object.defineProperty({__proto__:null,down:_n,up:mn},Symbol.toStringTag,{value:"Module"}));async function fn(t){await t.schema.alterTable("otps").addColumn("audience","varchar(255)").execute()}async function pn(t){await t.schema.alterTable("otps").dropColumn("audience").execute()}const gn=Object.freeze(Object.defineProperty({__proto__:null,down:pn,up:fn},Symbol.toStringTag,{value:"Module"}));async function wn(t){}async function yn(t){}const vn=Object.freeze(Object.defineProperty({__proto__:null,down:yn,up:wn},Symbol.toStringTag,{value:"Module"}));async function Nn(t){await t.schema.alterTable("logs").dropColumn("category").execute()}async function Cn(t){await t.schema.alterTable("logs").addColumn("category","varchar(255)",e=>e.notNull()).execute()}const bn=Object.freeze(Object.defineProperty({__proto__:null,down:Cn,up:Nn},Symbol.toStringTag,{value:"Module"}));async function xn(t){await t.schema.alterTable("users").dropColumn("tags").execute()}async function Tn(t){await t.schema.alterTable("users").addColumn("tags","varchar(255)").execute()}const Sn=Object.freeze(Object.defineProperty({__proto__:null,down:Tn,up:xn},Symbol.toStringTag,{value:"Module"}));async function On(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 kn(t){await t.schema.dropIndex("logs_user_id"),await t.schema.dropIndex("logs_tenant_id"),await t.schema.dropIndex("logs_date")}const $n=Object.freeze(Object.defineProperty({__proto__:null,down:kn,up:On},Symbol.toStringTag,{value:"Module"}));async function In(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(8192)").execute()}async function Dn(t){await t.schema.alterTable("logs").dropColumn("details").execute(),await t.schema.alterTable("logs").addColumn("details","varchar(2048)").execute()}const Pn=Object.freeze(Object.defineProperty({__proto__:null,down:Dn,up:In},Symbol.toStringTag,{value:"Module"}));async function jn(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 Fn(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 Mn=Object.freeze(Object.defineProperty({__proto__:null,down:Fn,up:jn},Symbol.toStringTag,{value:"Module"}));async function An(t){await t.schema.createIndex("users_name_index").on("users").column("name").execute()}async function Ln(t){await t.schema.dropIndex("users_name_index").execute()}const zn=Object.freeze(Object.defineProperty({__proto__:null,down:Ln,up:An},Symbol.toStringTag,{value:"Module"}));async function En(t){}async function Jn(t){await t.schema.alterTable("users").dropConstraint("unique_email_provider").execute()}const Rn=Object.freeze(Object.defineProperty({__proto__:null,down:Jn,up:En},Symbol.toStringTag,{value:"Module"}));async function Kn(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(8192)").execute()}async function Un(t){await t.schema.alterTable("otps").dropColumn("state").execute(),await t.schema.alterTable("otps").addColumn("state","varchar(1024)").execute()}const Bn=Object.freeze(Object.defineProperty({__proto__:null,down:Un,up:Kn},Symbol.toStringTag,{value:"Module"}));async function Qn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(8192)").execute()}async function qn(t){await t.schema.alterTable("tickets").dropColumn("state").execute(),await t.schema.alterTable("tickets").addColumn("state","varchar(1024)").execute()}const Vn=Object.freeze(Object.defineProperty({__proto__:null,down:qn,up:Qn},Symbol.toStringTag,{value:"Module"}));async function Wn(t){await t.schema.createTable("branding").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull().primaryKey()).addColumn("logo_url","varchar(512)").addColumn("favicon_url","varchar(512)").addColumn("font_url","varchar(512)").addColumn("colors_primary","varchar(8)").addColumn("colors_page_background_type","varchar(32)").addColumn("colors_page_background_start","varchar(8)").addColumn("colors_page_background_end","varchar(8)").addColumn("colors_page_background_angle_dev","integer").execute()}async function Gn(t){await t.schema.dropTable("branding").execute()}const Hn=Object.freeze(Object.defineProperty({__proto__:null,down:Gn,up:Wn},Symbol.toStringTag,{value:"Module"}));async function Yn(t){}async function Xn(t){}const Zn=Object.freeze(Object.defineProperty({__proto__:null,down:Xn,up:Yn},Symbol.toStringTag,{value:"Module"}));async function eo(t){}async function to(t){}const ro=Object.freeze(Object.defineProperty({__proto__:null,down:to,up:eo},Symbol.toStringTag,{value:"Module"}));async function ao(t){}async function no(t){}const oo=Object.freeze(Object.defineProperty({__proto__:null,down:no,up:ao},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("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 uo(t){await t.schema.dropTable("authentication_codes").execute()}const mo=Object.freeze(Object.defineProperty({__proto__:null,down:uo,up:co},Symbol.toStringTag,{value:"Module"}));async function _o(t){}async function ho(t){}const fo=Object.freeze(Object.defineProperty({__proto__:null,down:ho,up:_o},Symbol.toStringTag,{value:"Module"}));async function po(t){await t.schema.alterTable("otps").addColumn("ip","varchar(64)").execute()}async function go(t){await t.schema.alterTable("otps").dropColumn("ip").execute()}const wo=Object.freeze(Object.defineProperty({__proto__:null,down:go,up:po},Symbol.toStringTag,{value:"Module"}));async function yo(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(1024)").execute()}async function vo(t){await t.schema.alterTable("logs").dropColumn("user_agent").execute(),await t.schema.alterTable("logs").addColumn("user_agent","varchar(255)").execute()}const No=Object.freeze(Object.defineProperty({__proto__:null,down:vo,up:yo},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){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 So(t){await t.schema.dropTable("hooks").execute()}const Oo=Object.freeze(Object.defineProperty({__proto__:null,down:So,up:To},Symbol.toStringTag,{value:"Module"}));async function ko(t){}async function $o(t){}const Io=Object.freeze(Object.defineProperty({__proto__:null,down:$o,up:ko},Symbol.toStringTag,{value:"Module"}));async function Do(t){}async function Po(t){}const jo=Object.freeze(Object.defineProperty({__proto__:null,down:Po,up:Do},Symbol.toStringTag,{value:"Module"}));async function Fo(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 Mo(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 Ao=Object.freeze(Object.defineProperty({__proto__:null,down:Mo,up:Fo},Symbol.toStringTag,{value:"Module"}));async function Lo(t){}async function zo(t){}const Eo=Object.freeze(Object.defineProperty({__proto__:null,down:zo,up:Lo},Symbol.toStringTag,{value:"Module"}));async function Jo(t){await t.schema.alterTable("logins").addColumn("auth0Client","varchar(256)").execute()}async function Ro(t){await t.schema.alterTable("logins").dropColumn("auth0Client").execute()}const Ko=Object.freeze(Object.defineProperty({__proto__:null,down:Ro,up:Jo},Symbol.toStringTag,{value:"Module"}));async function Uo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(8192)").execute()}async function Bo(t){await t.schema.alterTable("logins").dropColumn("authParams_state").execute(),await t.schema.alterTable("logins").addColumn("authParams_state","varchar(511)").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){}async function Ho(t){}const Yo=Object.freeze(Object.defineProperty({__proto__:null,down:Ho,up:Go},Symbol.toStringTag,{value:"Module"}));async function Xo(t){await t.schema.alterTable("logins").addColumn("authParams_nonce","varchar(255)").execute()}async function Zo(t){await t.schema.alterTable("logins").dropColumn("nonce").execute()}const es=Object.freeze(Object.defineProperty({__proto__:null,down:Zo,up:Xo},Symbol.toStringTag,{value:"Module"}));async function ts(t){}async function rs(t){}const as=Object.freeze(Object.defineProperty({__proto__:null,down:rs,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.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 ls(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 cs=Object.freeze(Object.defineProperty({__proto__:null,down:ls,up:is},Symbol.toStringTag,{value:"Module"}));async function ds(t){await t.schema.dropTable("otps").execute(),await t.schema.dropTable("authentication_codes").execute()}async function us(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 ms=Object.freeze(Object.defineProperty({__proto__:null,down:us,up:ds},Symbol.toStringTag,{value:"Module"}));async function _s(t){await t.schema.createIndex("IDX_logs_tenant_date_type_user").on("logs").columns(["tenant_id","date","type","user_id"]).execute()}async function hs(t){await t.schema.dropIndex("IDX_logs_tenant_date_type_user").on("logs").execute()}const fs=Object.freeze(Object.defineProperty({__proto__:null,down:hs,up:_s},Symbol.toStringTag,{value:"Module"}));async function ps(t){}async function gs(t){}const ws=Object.freeze(Object.defineProperty({__proto__:null,down:gs,up:ps},Symbol.toStringTag,{value:"Module"}));async function ys(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 vs(t){await t.schema.dropTable("prompt_settings").execute()}const Ns=Object.freeze(Object.defineProperty({__proto__:null,down:vs,up:ys},Symbol.toStringTag,{value:"Module"}));async function Cs(t){}async function bs(t){}const xs=Object.freeze(Object.defineProperty({__proto__:null,down:bs,up:Cs},Symbol.toStringTag,{value:"Module"}));async function Ts(t){}async function Ss(t){}const Os=Object.freeze(Object.defineProperty({__proto__:null,down:Ss,up:Ts},Symbol.toStringTag,{value:"Module"}));async function ks(t){}async function $s(t){}const Is=Object.freeze(Object.defineProperty({__proto__:null,down:$s,up:ks},Symbol.toStringTag,{value:"Module"}));async function Ds(t){await t.schema.alterTable("logins").addColumn("authParams_ui_locales","varchar(32)").execute()}async function Ps(t){await t.schema.alterTable("logins").dropColumn("authParams_ui_locales").execute()}const js=Object.freeze(Object.defineProperty({__proto__:null,down:Ps,up:Ds},Symbol.toStringTag,{value:"Module"}));async function Fs(t){await t.schema.alterTable("logins").addColumn("authParams_prompt","varchar(16)").execute()}async function Ms(t){await t.schema.alterTable("logins").dropColumn("authParams_prompt").execute()}const As=Object.freeze(Object.defineProperty({__proto__:null,down:Ms,up:Fs},Symbol.toStringTag,{value:"Module"}));async function Ls(t){}async function zs(t){}const Es=Object.freeze(Object.defineProperty({__proto__:null,down:zs,up:Ls},Symbol.toStringTag,{value:"Module"}));async function Js(t){await t.schema.alterTable("logins").addColumn("authParams_act_as","varchar(255)").execute()}async function Rs(t){await t.schema.alterTable("logins").dropColumn("authParam_act_as").execute()}const Ks=Object.freeze(Object.defineProperty({__proto__:null,down:Rs,up:Js},Symbol.toStringTag,{value:"Module"}));async function Us(t){await t.schema.alterTable("codes").addColumn("code_verifier","varchar(128)").execute()}async function Bs(t){await t.schema.alterTable("codes").dropColumn("code_verifier").execute()}const Qs=Object.freeze(Object.defineProperty({__proto__:null,down:Bs,up:Us},Symbol.toStringTag,{value:"Module"}));async function qs(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 Vs(t){await t.schema.dropTable("email_providers").execute()}const Ws=Object.freeze(Object.defineProperty({__proto__:null,down:Vs,up:qs},Symbol.toStringTag,{value:"Module"}));async function Gs(t){await t.schema.dropTable("tickets").execute()}async function Hs(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 Ys=Object.freeze(Object.defineProperty({__proto__:null,down:Hs,up:Gs},Symbol.toStringTag,{value:"Module"}));async function Xs(t){}async function Zs(t){await t.schema.alterTable("logins").dropColumn("ip").dropColumn("useragent").execute()}const ei=Object.freeze(Object.defineProperty({__proto__:null,down:Zs,up:Xs},Symbol.toStringTag,{value:"Module"}));async function ti(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 ri(t){await t.schema.dropTable("refresh_tokens").execute()}const ai=Object.freeze(Object.defineProperty({__proto__:null,down:ri,up:ti},Symbol.toStringTag,{value:"Module"}));async function ni(t){}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("sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}async function li(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 ci=Object.freeze(Object.defineProperty({__proto__:null,down:li,up:ii},Symbol.toStringTag,{value:"Module"}));async function di(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 ui(t){await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}const mi=Object.freeze(Object.defineProperty({__proto__:null,down:ui,up:di},Symbol.toStringTag,{value:"Module"}));async function _i(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 hi(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 fi=Object.freeze(Object.defineProperty({__proto__:null,down:hi,up:_i},Symbol.toStringTag,{value:"Module"}));async function pi(t){}async function gi(t){await t.schema.alterTable("logins").dropColumn("authParams_organization").dropColumn("authorization_url").execute()}const wi=Object.freeze(Object.defineProperty({__proto__:null,down:gi,up:pi},Symbol.toStringTag,{value:"Module"}));async function yi(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(2048)").execute()}async function vi(t){await t.schema.alterTable("logins").dropColumn("authorization_url").execute(),await t.schema.alterTable("logins").addColumn("authorization_url","varchar(1024)").execute()}const Ni=Object.freeze(Object.defineProperty({__proto__:null,down:vi,up:yi},Symbol.toStringTag,{value:"Module"}));async function Ci(t){}async function bi(t){}const xi=Object.freeze(Object.defineProperty({__proto__:null,down:bi,up:Ci},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 Si(t){await t.schema.dropTable("sessions").execute(),await t.schema.dropTable("login_sessions").execute(),await t.schema.dropTable("refresh_tokens").execute()}const Oi=Object.freeze(Object.defineProperty({__proto__:null,down:Si,up:Ti},Symbol.toStringTag,{value:"Module"}));async function ki(t){await t.schema.dropTable("logins").execute(),await t.schema.dropTable("sessions_2").execute(),await t.schema.dropTable("refresh_tokens_2").execute()}async function $i(t){}const Ii=Object.freeze(Object.defineProperty({__proto__:null,down:$i,up:ki},Symbol.toStringTag,{value:"Module"}));async function Di(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 Pi(t){}const ji=Object.freeze(Object.defineProperty({__proto__:null,down:Pi,up:Di},Symbol.toStringTag,{value:"Module"}));async function Fi(t){}async function Mi(t){await t.schema.alterTable("users").dropColumn("phone_number").dropColumn("phone_verified").dropColumn("username").execute()}const Ai=Object.freeze(Object.defineProperty({__proto__:null,down:Mi,up:Fi},Symbol.toStringTag,{value:"Module"}));async function Li(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 zi(t){await t.schema.dropTable("forms").execute()}const Ei=Object.freeze(Object.defineProperty({__proto__:null,down:zi,up:Li},Symbol.toStringTag,{value:"Module"}));async function Ji(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 Ri(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 Ki=Object.freeze(Object.defineProperty({__proto__:null,down:Ri,up:Ji},Symbol.toStringTag,{value:"Module"}));async function Ui(t){await t.schema.alterTable("login_sessions").addColumn("login_completed","boolean",e=>e.notNull().defaultTo(0)).execute()}async function Bi(t){await t.schema.alterTable("login_sessions").dropColumn("login_completed").execute()}const Qi=Object.freeze(Object.defineProperty({__proto__:null,down:Bi,up:Ui},Symbol.toStringTag,{value:"Module"}));async function qi(t){await t.schema.alterTable("sessions").addColumn("login_session_id","varchar(21)",e=>e.references("login_sessions.id").onDelete("set null")).execute()}async function Vi(t){await t.schema.alterTable("sessions").dropColumn("login_session_id").execute()}const Wi=Object.freeze(Object.defineProperty({__proto__:null,down:Vi,up:qi},Symbol.toStringTag,{value:"Module"}));async function Gi(t){await t.schema.createIndex("IDX_sessions_login_session_id").on("sessions").column("login_session_id").execute()}async function Hi(t){await t.schema.dropIndex("IDX_sessions_login_session_id").on("sessions").execute()}const Yi=Object.freeze(Object.defineProperty({__proto__:null,down:Hi,up:Gi},Symbol.toStringTag,{value:"Module"}));async function Xi(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 Zi(t){await t.schema.alterTable("codes").dropColumn("code_challenge").execute(),await t.schema.alterTable("codes").dropColumn("code_challenge_method").execute()}const el=Object.freeze(Object.defineProperty({__proto__:null,down:Zi,up:Xi},Symbol.toStringTag,{value:"Module"}));async function tl(t){await t.schema.alterTable("codes").addColumn("redirect_uri","varchar(1024)").execute()}async function rl(t){await t.schema.alterTable("codes").dropColumn("redirect_uri").execute()}const al=Object.freeze(Object.defineProperty({__proto__:null,down:rl,up:tl},Symbol.toStringTag,{value:"Module"}));async function nl(t){await t.schema.alterTable("codes").addColumn("nonce","varchar(1024)").execute(),await t.schema.alterTable("codes").addColumn("state","varchar(2048)").execute()}async function ol(t){await t.schema.alterTable("codes").dropColumn("nonce").execute(),await t.schema.alterTable("codes").dropColumn("state").execute()}const sl=Object.freeze(Object.defineProperty({__proto__:null,down:ol,up:nl},Symbol.toStringTag,{value:"Module"}));async function il(t){await t.schema.createTable("themes").addColumn("tenant_id","varchar(255)",e=>e.references("tenants.id").onDelete("cascade").notNull()).addColumn("themeId","varchar(255)",e=>e.notNull()).addColumn("displayName","varchar(255)",e=>e.notNull()).addColumn("colors_primary_button_label","varchar(24)",e=>e.notNull()).addColumn("colors_primary_button","varchar(24)",e=>e.notNull()).addColumn("colors_secondary_button_border","varchar(24)",e=>e.notNull()).addColumn("colors_secondary_button_label","varchar(24)",e=>e.notNull()).addColumn("colors_base_focus_color","varchar(24)",e=>e.notNull()).addColumn("colors_base_hover_color","varchar(24)",e=>e.notNull()).addColumn("colors_body_text","varchar(24)",e=>e.notNull()).addColumn("colors_captcha_widget_theme","varchar(24)",e=>e.notNull()).addColumn("colors_error","varchar(24)",e=>e.notNull()).addColumn("colors_header","varchar(24)",e=>e.notNull()).addColumn("colors_icons","varchar(24)",e=>e.notNull()).addColumn("colors_input_background","varchar(24)",e=>e.notNull()).addColumn("colors_input_border","varchar(24)",e=>e.notNull()).addColumn("colors_input_filled_text","varchar(24)",e=>e.notNull()).addColumn("colors_input_labels_placeholders","varchar(24)",e=>e.notNull()).addColumn("colors_links_focused_components","varchar(24)",e=>e.notNull()).addColumn("colors_success","varchar(24)",e=>e.notNull()).addColumn("colors_widget_background","varchar(24)",e=>e.notNull()).addColumn("colors_widget_border","varchar(24)",e=>e.notNull()).addColumn("borders_button_border_radius","integer",e=>e.notNull()).addColumn("borders_button_border_weight","integer",e=>e.notNull()).addColumn("borders_buttons_style","varchar(24)",e=>e.notNull()).addColumn("borders_input_border_radius","integer",e=>e.notNull()).addColumn("borders_input_border_weight","integer",e=>e.notNull()).addColumn("borders_inputs_style","varchar(24)",e=>e.notNull()).addColumn("borders_show_widget_shadow","boolean",e=>e.notNull()).addColumn("borders_widget_border_weight","integer",e=>e.notNull()).addColumn("borders_widget_corner_radius","integer",e=>e.notNull()).addColumn("fonts_body_text_bold","integer",e=>e.notNull()).addColumn("fonts_body_text_size","integer",e=>e.notNull()).addColumn("fonts_buttons_text_bold","integer",e=>e.notNull()).addColumn("fonts_buttons_text_size","integer",e=>e.notNull()).addColumn("fonts_font_url","varchar(255)",e=>e.notNull()).addColumn("fonts_input_labels_bold","integer",e=>e.notNull()).addColumn("fonts_input_labels_size","integer",e=>e.notNull()).addColumn("fonts_links_bold","boolean",e=>e.notNull()).addColumn("fonts_links_size","integer",e=>e.notNull()).addColumn("fonts_links_style","varchar(24)",e=>e.notNull()).addColumn("fonts_reference_text_size","integer",e=>e.notNull()).addColumn("fonts_subtitle_bold","boolean",e=>e.notNull()).addColumn("fonts_subtitle_size","integer",e=>e.notNull()).addColumn("fonts_title_bold","boolean",e=>e.notNull()).addColumn("fonts_title_size","integer",e=>e.notNull()).addColumn("page_background_background_color","varchar(24)",e=>e.notNull()).addColumn("page_background_background_image_url","varchar(255)",e=>e.notNull()).addColumn("page_background_page_layout","varchar(24)",e=>e.notNull()).addColumn("widget_header_text_alignment","varchar(24)",e=>e.notNull()).addColumn("widget_logo_height","integer",e=>e.notNull()).addColumn("widget_logo_position","varchar(24)",e=>e.notNull()).addColumn("widget_logo_url","varchar(255)",e=>e.notNull()).addColumn("widget_social_buttons_layout","varchar(24)",e=>e.notNull()).addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addPrimaryKeyConstraint("themes_pkey",["tenant_id","themeId"]).execute(),await t.schema.createIndex("themes_tenant_id_idx").on("themes").column("tenant_id").execute()}async function ll(t){await t.schema.dropTable("themes").execute()}const cl=Object.freeze(Object.defineProperty({__proto__:null,down:ll,up:il},Symbol.toStringTag,{value:"Module"}));async function dl(t){await t.schema.createTable("resource_servers").addColumn("id","varchar(21)",e=>e.notNull()).addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("identifier","varchar(191)",e=>e.notNull()).addColumn("name","varchar(255)",e=>e.notNull()).addColumn("scopes","varchar(4096)").addColumn("signing_alg","varchar(64)").addColumn("signing_secret","varchar(2048)").addColumn("token_lifetime","integer").addColumn("token_lifetime_for_web","integer").addColumn("skip_consent_for_verifiable_first_party_clients","integer").addColumn("allow_offline_access","integer").addColumn("verification_key","varchar(4096)").addColumn("options","varchar(4096)").addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addPrimaryKeyConstraint("resource_servers_pk",["tenant_id","id"]).execute(),await t.schema.createIndex("resource_servers_tenant_identifier_uq").on("resource_servers").columns(["tenant_id","identifier"]).unique().execute(),await t.schema.createTable("roles").addColumn("id","varchar(21)",e=>e.notNull()).addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("name","varchar(50)",e=>e.notNull()).addColumn("description","varchar(255)").addColumn("created_at","varchar(35)",e=>e.notNull()).addColumn("updated_at","varchar(35)",e=>e.notNull()).addPrimaryKeyConstraint("roles_pk",["tenant_id","id"]).execute(),await t.schema.createIndex("roles_tenant_name_uq").on("roles").columns(["tenant_id","name"]).unique().execute()}async function ul(t){await t.schema.dropTable("roles").execute(),await t.schema.dropTable("resource_servers").execute()}const ml=Object.freeze(Object.defineProperty({__proto__:null,down:ul,up:dl},Symbol.toStringTag,{value:"Module"}));async function _l(t){await t.schema.createTable("role_permissions").addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("role_id","varchar(21)",e=>e.notNull()).addColumn("resource_server_identifier","varchar(191)",e=>e.notNull()).addColumn("permission_name","varchar(191)",e=>e.notNull()).addColumn("created_at","varchar(35)",e=>e.notNull()).addPrimaryKeyConstraint("role_permissions_pk",["tenant_id","role_id","resource_server_identifier","permission_name"]).execute(),await t.schema.createIndex("role_permissions_role_fk").on("role_permissions").columns(["tenant_id","role_id"]).execute(),await t.schema.createIndex("role_permissions_permission_fk").on("role_permissions").columns(["tenant_id","resource_server_identifier","permission_name"]).execute(),await t.schema.createTable("user_permissions").addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("user_id","varchar(191)",e=>e.notNull()).addColumn("resource_server_identifier","varchar(191)",e=>e.notNull()).addColumn("permission_name","varchar(191)",e=>e.notNull()).addColumn("created_at","varchar(35)",e=>e.notNull()).addPrimaryKeyConstraint("user_permissions_pk",["tenant_id","user_id","resource_server_identifier","permission_name"]).execute(),await t.schema.createIndex("user_permissions_user_fk").on("user_permissions").columns(["tenant_id","user_id"]).execute(),await t.schema.createIndex("user_permissions_permission_fk").on("user_permissions").columns(["tenant_id","resource_server_identifier","permission_name"]).execute()}async function hl(t){await t.schema.dropTable("user_permissions").execute(),await t.schema.dropTable("role_permissions").execute()}const fl=Object.freeze(Object.defineProperty({__proto__:null,down:hl,up:_l},Symbol.toStringTag,{value:"Module"}));async function pl(t){await t.schema.createTable("user_roles").addColumn("tenant_id","varchar(191)",e=>e.notNull()).addColumn("user_id","varchar(191)",e=>e.notNull()).addColumn("role_id","varchar(21)",e=>e.notNull()).addColumn("created_at","varchar(35)",e=>e.notNull()).addPrimaryKeyConstraint("user_roles_pk",["tenant_id","user_id","role_id"]).execute(),await t.schema.createIndex("user_roles_user_fk").on("user_roles").columns(["tenant_id","user_id"]).execute(),await t.schema.createIndex("user_roles_role_fk").on("user_roles").columns(["tenant_id","role_id"]).execute()}async function gl(t){await t.schema.dropTable("user_roles").execute()}const wl=Object.freeze(Object.defineProperty({__proto__:null,down:gl,up:pl},Symbol.toStringTag,{value:"Module"}));async function yl(t){}async function vl(t){await t.schema.alterTable("keys").dropColumn("connection").execute(),await t.schema.alterTable("keys").alterColumn("cert",e=>e.setDataType("varchar(2048)")).execute(),await t.schema.alterTable("keys").alterColumn("pkcs7",e=>e.setDataType("varchar(2048)")).execute(),await t.schema.alterTable("keys").dropColumn("type").execute()}const Nl=Object.freeze(Object.defineProperty({__proto__:null,down:vl,up:yl},Symbol.toStringTag,{value:"Module"})),ze={m1_init:_a,m2_magicLink:pa,m3_updateAt:ya,m4_logTable:Ca,m5_userProfile:Ta,m6_sessions:ka,m7_passwords:Da,m8_logsTableNewFields:Fa,m9_passwordTableNewField:La,n01_codesTable:Ja,n11_universalLoginSession:Ua,n12_userFields:qa,n13_userEmailIndex:Ga,n14_profileDataField:Xa,n15_userEmailIndex:tn,n16_userLocale:nn,n17_signingKeys:ln,n18_logsFields:un,n19_connectionsUserinfo:hn,n20_missingFields:gn,n21_sessionDeletedAt:vn,n22_dropLogsFields:bn,n23_dropUsersFields:Sn,n24_logsIndexes:$n,n25_logDescMaxLength:Pn,n26_logsTableExtraFields:Mn,n27_usersTableNameIndex:zn,n28_usersEmailConstrain:Rn,n29_increaseOtpStateLength:Bn,n30_increaseTicketStateLength:Vn,n31_branding:Hn,n32_indexesAndNotNull:Zn,n33_vendorIdInUniversalLoginSession:ro,n34_auth0ClientInUniversalLoginSession:oo,n35_increaseUniversalSessionStateLength:lo,n36_authenticationCodes:mo,n37_disableSignUps:fo,n38_otpIpAddress:wo,n39_increaseUserAgentLength:No,n40_userId:xo,n41_hooks:Oo,n42_userIdIndexes:Io,n43_userIdIndexes:jo,n44_codes:Ao,n45_hookProperties:Eo,n46_loginAuth0Client:Ko,n47_loginAuth0Client:Qo,n48_saml:Wo,n49_removeFields:Yo,n50_authParamsNonce:es,n51_connectionid:as,n52_cert:ss,n53_codes_primary_key:cs,n54_cleanup_tables:ms,n55_logs_index:fs,n56_application_fields:ws,n57_prompt_settings:Ns,n58_connection_client_id:xs,n59_connection_options:Os,n60_users_metadata:Is,n61_userLocales:js,n62_prompt:As,n63_connection_cleanup:Es,n64_act_as:Ks,n65_code_verifier:Qs,n66_email_providers:Ws,n67_drop_tickets:Ys,n68_login_useragents:ei,n70_refresh_tokens:ai,n71_session_new_fields:si,n72_session_primary_key:ci,n73_drop_sessions:mi,n74_custom_domains:fi,n75_organizations:wi,n76_authorization_url_length:Ni,n77_drop_sessions:xi,n78_login_sessions:Oi,n79_drop_sessions_2:Ii,n80_recreate_custom_domains:ji,n81_phone:Ai,n82_forms:Ei,n83_addFormsIdToHooks:Ki,n84_login_completed:Qi,n85_add_login_session_id_to_sessions:Wi,n86_index_sessions_login_session_id:Yi,n87_code_challenge:el,n88_add_redirect_uri_to_codes:al,n89_add_nonce_and_state_to_codes:sl,n90_themes:cl,n91_resource_servers_rules_permissions:ml,n92_role_permissions:fl,n93_add_permissions_to_roles:wl,n94_keys_connection_and_extend_columns:Nl};async function Cl(t,e=!1){e&&console.log("migrating...");const r=new Le(ze),a=new Ce({db:t,provider:r}),{error:n,results:o}=await a.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 bl(t){console.log("migrating...");const e=new Le(ze),r=new Ce({db:t,provider:e}),{error:a,results:n}=await r.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}"`)}),a)throw console.error("failed to migrate"),console.error(a),a}function xl(t){return{applications:Ot(t),branding:Wt(t),cleanup:xr(t),clients:Ft(t),codes:Nt(t),connections:jt(t),emailProviders:gr(t),customDomains:Qt(t),forms:Ir(t),hooks:er(t),keys:zt(t),loginSessions:dr(t),logs:ot(t),passwords:ft(t),promptSettings:_r(t),refreshTokens:br(t),resourceServers:Ar(t),rolePermissions:qr(t),userPermissions:Hr(t),userRoles:ea(t),roles:Kr(t),sessions:ut(t),tenants:et(t),themes:or(t),users:Ve(t)}}exports.default=xl;exports.migrateDown=bl;exports.migrateToLatest=Cl;