@authhero/drizzle 1.10.0 → 1.11.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.
@@ -475,7 +475,7 @@ var Re = Object.defineProperty, ze = (e, t) => {
475
475
  C({ columns: [e.tenant_id, e.id] }),
476
476
  x("connections_tenant_id_index").on(e.tenant_id),
477
477
  re("connections_id_unique").on(e.id)
478
- ]), V = w("custom_domains", {
478
+ ]), Ke = w("custom_domains", {
479
479
  custom_domain_id: T("custom_domain_id", { length: 256 }).primaryKey(),
480
480
  tenant_id: T("tenant_id", { length: 191 }).notNull().references(() => O.id, { onDelete: "cascade" }),
481
481
  domain: T("domain", { length: 255 }).notNull(),
@@ -489,7 +489,7 @@ var Re = Object.defineProperty, ze = (e, t) => {
489
489
  domain_metadata: T("domain_metadata", { length: 2048 }),
490
490
  created_at: T("created_at", { length: 35 }).notNull(),
491
491
  updated_at: T("updated_at", { length: 35 }).notNull()
492
- }, (e) => [re("custom_domains_domain_unique").on(e.domain)]), Ke = w("domains", {
492
+ }, (e) => [re("custom_domains_domain_unique").on(e.domain)]), qe = w("domains", {
493
493
  id: T("id", { length: 255 }).primaryKey(),
494
494
  tenant_id: T("tenant_id", { length: 191 }).notNull().references(() => O.id, { onDelete: "cascade" }),
495
495
  domain: T("domain", { length: 255 }).notNull(),
@@ -499,7 +499,7 @@ var Re = Object.defineProperty, ze = (e, t) => {
499
499
  dkim_public_key: T("dkim_public_key", { length: 2048 }),
500
500
  created_at: T("created_at", { length: 35 }).notNull(),
501
501
  updated_at: T("updated_at", { length: 35 }).notNull()
502
- }), H = w("organizations", {
502
+ }), V = w("organizations", {
503
503
  id: T("id", { length: 21 }).primaryKey(),
504
504
  tenant_id: T("tenant_id", { length: 191 }).notNull(),
505
505
  name: T("name", { length: 256 }).notNull(),
@@ -510,7 +510,7 @@ var Re = Object.defineProperty, ze = (e, t) => {
510
510
  token_quota: T("token_quota"),
511
511
  created_at: T("created_at", { length: 35 }).notNull(),
512
512
  updated_at: T("updated_at", { length: 35 }).notNull()
513
- }, (e) => [x("idx_organizations_tenant_id").on(e.tenant_id)]), U = w("user_organizations", {
513
+ }, (e) => [x("idx_organizations_tenant_id").on(e.tenant_id)]), H = w("user_organizations", {
514
514
  id: T("id", { length: 21 }).primaryKey(),
515
515
  tenant_id: T("tenant_id", { length: 191 }).notNull(),
516
516
  user_id: T("user_id", { length: 191 }).notNull(),
@@ -522,7 +522,7 @@ var Re = Object.defineProperty, ze = (e, t) => {
522
522
  x("idx_user_organizations_tenant_id").on(e.tenant_id),
523
523
  x("idx_user_organizations_user_id").on(e.user_id),
524
524
  x("idx_user_organizations_organization_id").on(e.organization_id)
525
- ]), qe = w("invites", {
525
+ ]), Je = w("invites", {
526
526
  id: T("id", { length: 21 }).primaryKey(),
527
527
  tenant_id: T("tenant_id", { length: 191 }).notNull(),
528
528
  organization_id: T("organization_id", { length: 21 }).notNull(),
@@ -544,7 +544,7 @@ var Re = Object.defineProperty, ze = (e, t) => {
544
544
  x("idx_invites_organization_id").on(e.organization_id),
545
545
  x("idx_invites_expires_at").on(e.expires_at),
546
546
  x("idx_invites_tenant_created").on(e.tenant_id, e.created_at)
547
- ]), W = w("roles", {
547
+ ]), U = w("roles", {
548
548
  id: T("id", { length: 21 }).notNull(),
549
549
  tenant_id: T("tenant_id", { length: 191 }).notNull(),
550
550
  name: T("name", { length: 50 }).notNull(),
@@ -556,7 +556,7 @@ var Re = Object.defineProperty, ze = (e, t) => {
556
556
  }, (e) => [C({
557
557
  columns: [e.tenant_id, e.id],
558
558
  name: "roles_pk"
559
- })]), Je = w("role_permissions", {
559
+ })]), W = w("role_permissions", {
560
560
  tenant_id: T("tenant_id", { length: 191 }).notNull(),
561
561
  role_id: T("role_id", { length: 21 }).notNull(),
562
562
  resource_server_identifier: T("resource_server_identifier", { length: 191 }).notNull(),
@@ -941,9 +941,9 @@ var Re = Object.defineProperty, ze = (e, t) => {
941
941
  clients: () => I,
942
942
  codes: () => F,
943
943
  connections: () => B,
944
- customDomains: () => V,
944
+ customDomains: () => Ke,
945
945
  customText: () => st,
946
- domains: () => Ke,
946
+ domains: () => qe,
947
947
  emailProviders: () => nt,
948
948
  emailTemplates: () => rt,
949
949
  flows: () => et,
@@ -951,11 +951,11 @@ var Re = Object.defineProperty, ze = (e, t) => {
951
951
  grants: () => z,
952
952
  hookCode: () => at,
953
953
  hooks: () => it,
954
- invites: () => qe,
954
+ invites: () => Je,
955
955
  keys: () => ot,
956
956
  loginSessions: () => P,
957
957
  logs: () => q,
958
- organizations: () => H,
958
+ organizations: () => V,
959
959
  otps: () => We,
960
960
  outboxEvents: () => J,
961
961
  passwords: () => j,
@@ -963,8 +963,8 @@ var Re = Object.defineProperty, ze = (e, t) => {
963
963
  proxyRoutes: () => Y,
964
964
  refreshTokens: () => N,
965
965
  resourceServers: () => K,
966
- rolePermissions: () => Je,
967
- roles: () => W,
966
+ rolePermissions: () => W,
967
+ roles: () => U,
968
968
  scimConfigurations: () => lt,
969
969
  scimExternalIds: () => ut,
970
970
  scimTokens: () => X,
@@ -975,7 +975,7 @@ var Re = Object.defineProperty, ze = (e, t) => {
975
975
  tokenExchangeProfiles: () => dt,
976
976
  universalLoginTemplates: () => Ze,
977
977
  userActivity: () => He,
978
- userOrganizations: () => U,
978
+ userOrganizations: () => H,
979
979
  userPermissions: () => Ye,
980
980
  userRoles: () => G,
981
981
  users: () => A
@@ -1997,31 +1997,31 @@ function rn(e) {
1997
1997
  created_at: r,
1998
1998
  updated_at: r
1999
1999
  };
2000
- return await e.insert(V).values(i), nn({
2000
+ return await e.insert(Ke).values(i), nn({
2001
2001
  ...i,
2002
2002
  tenant_id: t
2003
2003
  });
2004
2004
  },
2005
2005
  async get(n, r) {
2006
- let i = await e.select().from(V).where(t(a(V.tenant_id, n), a(V.custom_domain_id, r))).get();
2006
+ let i = await e.select().from(Ke).where(t(a(Ke.tenant_id, n), a(Ke.custom_domain_id, r))).get();
2007
2007
  return i ? nn(i) : null;
2008
2008
  },
2009
2009
  async getByDomain(t) {
2010
- let n = await e.select().from(V).where(a(V.domain, t)).get();
2010
+ let n = await e.select().from(Ke).where(a(Ke.domain, t)).get();
2011
2011
  return n ? {
2012
2012
  ...nn(n),
2013
2013
  tenant_id: n.tenant_id
2014
2014
  } : null;
2015
2015
  },
2016
2016
  async list(t) {
2017
- return (await e.select().from(V).where(a(V.tenant_id, t)).all()).map(nn);
2017
+ return (await e.select().from(Ke).where(a(Ke.tenant_id, t)).all()).map(nn);
2018
2018
  },
2019
2019
  async update(n, r, i) {
2020
2020
  let o = { updated_at: (/* @__PURE__ */ new Date()).toISOString() };
2021
- return i.domain !== void 0 && (o.domain = i.domain), i.primary !== void 0 && (o.primary = i.primary), i.status !== void 0 && (o.status = i.status), i.type !== void 0 && (o.type = i.type), i.origin_domain_name !== void 0 && (o.origin_domain_name = i.origin_domain_name), i.verification !== void 0 && (o.verification = JSON.stringify(i.verification)), i.custom_client_ip_header !== void 0 && (o.custom_client_ip_header = i.custom_client_ip_header), i.tls_policy !== void 0 && (o.tls_policy = i.tls_policy), i.domain_metadata !== void 0 && (o.domain_metadata = JSON.stringify(i.domain_metadata)), (await e.update(V).set(o).where(t(a(V.tenant_id, n), a(V.custom_domain_id, r))).returning()).length > 0;
2021
+ return i.domain !== void 0 && (o.domain = i.domain), i.primary !== void 0 && (o.primary = i.primary), i.status !== void 0 && (o.status = i.status), i.type !== void 0 && (o.type = i.type), i.origin_domain_name !== void 0 && (o.origin_domain_name = i.origin_domain_name), i.verification !== void 0 && (o.verification = JSON.stringify(i.verification)), i.custom_client_ip_header !== void 0 && (o.custom_client_ip_header = i.custom_client_ip_header), i.tls_policy !== void 0 && (o.tls_policy = i.tls_policy), i.domain_metadata !== void 0 && (o.domain_metadata = JSON.stringify(i.domain_metadata)), (await e.update(Ke).set(o).where(t(a(Ke.tenant_id, n), a(Ke.custom_domain_id, r))).returning()).length > 0;
2022
2022
  },
2023
2023
  async remove(n, r) {
2024
- return (await e.delete(V).where(t(a(V.tenant_id, n), a(V.custom_domain_id, r))).returning()).length > 0;
2024
+ return (await e.delete(Ke).where(t(a(Ke.tenant_id, n), a(Ke.custom_domain_id, r))).returning()).length > 0;
2025
2025
  }
2026
2026
  };
2027
2027
  }
@@ -2554,7 +2554,7 @@ function kn(e) {
2554
2554
  };
2555
2555
  for (let e of Dn) n[e] !== void 0 && (s[e] = JSON.stringify(n[e]));
2556
2556
  try {
2557
- await e.insert(qe).values(s);
2557
+ await e.insert(Je).values(s);
2558
2558
  } catch (e) {
2559
2559
  throw e?.message?.includes("UNIQUE constraint failed") || e?.message?.includes("duplicate key") ? new Le(409, { message: "Invite already exists" }) : e;
2560
2560
  }
@@ -2564,23 +2564,23 @@ function kn(e) {
2564
2564
  });
2565
2565
  },
2566
2566
  async get(n, r) {
2567
- let i = await e.select().from(qe).where(t(a(qe.tenant_id, n), a(qe.id, r))).get();
2567
+ let i = await e.select().from(Je).where(t(a(Je.tenant_id, n), a(Je.id, r))).get();
2568
2568
  return i ? On(i) : null;
2569
2569
  },
2570
2570
  async update(n, r, i) {
2571
2571
  let o = {};
2572
2572
  for (let e of Dn) i[e] !== void 0 && (o[e] = JSON.stringify(i[e]));
2573
- return i.connection_id !== void 0 && (o.connection_id = i.connection_id), i.ttl_sec !== void 0 && (o.ttl_sec = i.ttl_sec, o.expires_at = new Date(Date.now() + i.ttl_sec * 1e3).toISOString()), (await e.update(qe).set(o).where(t(a(qe.tenant_id, n), a(qe.id, r))).returning()).length > 0;
2573
+ return i.connection_id !== void 0 && (o.connection_id = i.connection_id), i.ttl_sec !== void 0 && (o.ttl_sec = i.ttl_sec, o.expires_at = new Date(Date.now() + i.ttl_sec * 1e3).toISOString()), (await e.update(Je).set(o).where(t(a(Je.tenant_id, n), a(Je.id, r))).returning()).length > 0;
2574
2574
  },
2575
2575
  async list(t, o) {
2576
- let { page: s = 0, per_page: c = 50, include_totals: l = !1, sort: u } = o || {}, d = e.select().from(qe).where(a(qe.tenant_id, t)).$dynamic();
2576
+ let { page: s = 0, per_page: c = 50, include_totals: l = !1, sort: u } = o || {}, d = e.select().from(Je).where(a(Je.tenant_id, t)).$dynamic();
2577
2577
  if (u?.sort_by) {
2578
- let e = qe[u.sort_by];
2578
+ let e = Je[u.sort_by];
2579
2579
  e && (d = d.orderBy(u.sort_order === "desc" ? i(e) : n(e)));
2580
2580
  }
2581
2581
  let f = (await d.offset(s * c).limit(c)).map(On);
2582
2582
  if (!l) return { invites: f };
2583
- let [p] = await e.select({ count: r() }).from(qe).where(a(qe.tenant_id, t));
2583
+ let [p] = await e.select({ count: r() }).from(Je).where(a(Je.tenant_id, t));
2584
2584
  return {
2585
2585
  invites: f,
2586
2586
  start: s * c,
@@ -2589,7 +2589,7 @@ function kn(e) {
2589
2589
  };
2590
2590
  },
2591
2591
  async remove(n, r) {
2592
- return (await e.delete(qe).where(t(a(qe.tenant_id, n), a(qe.id, r))).returning()).length > 0;
2592
+ return (await e.delete(Je).where(t(a(Je.tenant_id, n), a(Je.id, r))).returning()).length > 0;
2593
2593
  }
2594
2594
  };
2595
2595
  }
@@ -2923,7 +2923,7 @@ function qn(e) {
2923
2923
  updated_at: r
2924
2924
  };
2925
2925
  try {
2926
- await e.insert(H).values(i);
2926
+ await e.insert(V).values(i);
2927
2927
  } catch (e) {
2928
2928
  throw e?.message?.includes("UNIQUE constraint failed") || e?.message?.includes("AlreadyExists") ? new Le(409, { message: "Organization already exists" }) : e;
2929
2929
  }
@@ -2933,29 +2933,29 @@ function qn(e) {
2933
2933
  });
2934
2934
  },
2935
2935
  async get(n, r) {
2936
- let i = await e.select().from(H).where(t(a(H.tenant_id, n), a(H.id, r))).get();
2937
- return i ||= await e.select().from(H).where(t(a(H.tenant_id, n), a(H.name, r))).get(), i ? Kn(i) : null;
2936
+ let i = await e.select().from(V).where(t(a(V.tenant_id, n), a(V.id, r))).get();
2937
+ return i ||= await e.select().from(V).where(t(a(V.tenant_id, n), a(V.name, r))).get(), i ? Kn(i) : null;
2938
2938
  },
2939
2939
  async update(n, r, i) {
2940
2940
  let o = { updated_at: (/* @__PURE__ */ new Date()).toISOString() };
2941
- return i.name !== void 0 && (o.name = i.name), i.display_name !== void 0 && (o.display_name = i.display_name), i.branding !== void 0 && (o.branding = JSON.stringify(i.branding)), i.metadata !== void 0 && (o.metadata = JSON.stringify(i.metadata)), i.enabled_connections !== void 0 && (o.enabled_connections = JSON.stringify(i.enabled_connections)), i.token_quota !== void 0 && (o.token_quota = JSON.stringify(i.token_quota)), (await e.update(H).set(o).where(t(a(H.tenant_id, n), a(H.id, r))).returning()).length > 0;
2941
+ return i.name !== void 0 && (o.name = i.name), i.display_name !== void 0 && (o.display_name = i.display_name), i.branding !== void 0 && (o.branding = JSON.stringify(i.branding)), i.metadata !== void 0 && (o.metadata = JSON.stringify(i.metadata)), i.enabled_connections !== void 0 && (o.enabled_connections = JSON.stringify(i.enabled_connections)), i.token_quota !== void 0 && (o.token_quota = JSON.stringify(i.token_quota)), (await e.update(V).set(o).where(t(a(V.tenant_id, n), a(V.id, r))).returning()).length > 0;
2942
2942
  },
2943
2943
  async list(o, s) {
2944
- let { page: c = 0, per_page: l = 50, include_totals: u = !1, sort: d, q: f } = s || {}, p = [a(H.tenant_id, o)];
2944
+ let { page: c = 0, per_page: l = 50, include_totals: u = !1, sort: d, q: f } = s || {}, p = [a(V.tenant_id, o)];
2945
2945
  if (f) {
2946
2946
  let e = Te(f, Wn);
2947
2947
  if (e) {
2948
- let t = _t(H, e, Wn);
2948
+ let t = _t(V, e, Wn);
2949
2949
  t && p.push(t);
2950
2950
  }
2951
2951
  }
2952
2952
  let m = t(...p);
2953
2953
  if (kt(s)) {
2954
2954
  let n = {
2955
- sortColumn: H.created_at,
2956
- idColumn: H.id,
2955
+ sortColumn: V.created_at,
2956
+ idColumn: V.id,
2957
2957
  sortOrder: "desc"
2958
- }, r = Mt(s, n), i = At(s), { rows: a, next: o } = Nt(await e.select().from(H).where(r ? t(m, r) : m).orderBy(...jt(n)).limit(i + 1), i, "created_at"), c = a.map(Kn);
2958
+ }, r = Mt(s, n), i = At(s), { rows: a, next: o } = Nt(await e.select().from(V).where(r ? t(m, r) : m).orderBy(...jt(n)).limit(i + 1), i, "created_at"), c = a.map(Kn);
2959
2959
  return {
2960
2960
  organizations: c,
2961
2961
  start: 0,
@@ -2965,14 +2965,14 @@ function qn(e) {
2965
2965
  next: o
2966
2966
  };
2967
2967
  }
2968
- let h = e.select().from(H).where(m).$dynamic();
2968
+ let h = e.select().from(V).where(m).$dynamic();
2969
2969
  if (d?.sort_by) {
2970
- let e = H[d.sort_by];
2970
+ let e = V[d.sort_by];
2971
2971
  e && (h = h.orderBy(d.sort_order === "desc" ? i(e) : n(e)));
2972
2972
  }
2973
2973
  let g = (await h.offset(c * l).limit(l)).map(Kn);
2974
2974
  if (!u) return { organizations: g };
2975
- let [_] = await e.select({ count: r() }).from(H).where(m);
2975
+ let [_] = await e.select({ count: r() }).from(V).where(m);
2976
2976
  return {
2977
2977
  organizations: g,
2978
2978
  start: c * l,
@@ -2981,7 +2981,7 @@ function qn(e) {
2981
2981
  };
2982
2982
  },
2983
2983
  async remove(n, r) {
2984
- return (await e.delete(H).where(t(a(H.tenant_id, n), a(H.id, r))).returning()).length > 0;
2984
+ return (await e.delete(V).where(t(a(V.tenant_id, n), a(V.id, r))).returning()).length > 0;
2985
2985
  }
2986
2986
  };
2987
2987
  }
@@ -3625,7 +3625,7 @@ function Sr(e) {
3625
3625
  async assign(t, n, r) {
3626
3626
  if (r.length === 0) return !0;
3627
3627
  let i = (/* @__PURE__ */ new Date()).toISOString();
3628
- return await e.insert(Je).values(r.map((e) => ({
3628
+ return await e.insert(W).values(r.map((e) => ({
3629
3629
  tenant_id: t,
3630
3630
  role_id: n,
3631
3631
  resource_server_identifier: e.resource_server_identifier,
@@ -3634,33 +3634,52 @@ function Sr(e) {
3634
3634
  }))).onConflictDoNothing(), !0;
3635
3635
  },
3636
3636
  async list(n, r, i) {
3637
- let o = await e.select({
3638
- resource_server_identifier: Je.resource_server_identifier,
3639
- permission_name: Je.permission_name,
3640
- created_at: Je.created_at
3641
- }).from(Je).where(t(a(Je.tenant_id, n), a(Je.role_id, r))).all(), s = [...new Set(o.map((e) => e.resource_server_identifier))], c = /* @__PURE__ */ new Map();
3642
- if (s.length > 0) {
3643
- let r = await e.select({
3644
- identifier: K.identifier,
3645
- name: K.name
3646
- }).from(K).where(t(a(K.tenant_id, n), l(K.identifier, s))).all();
3647
- for (let e of r) c.set(e.identifier, e.name);
3648
- }
3649
- return o.map((e) => ({
3650
- ...e,
3651
- resource_server_name: c.get(e.resource_server_identifier) || e.resource_server_identifier
3652
- }));
3637
+ return Cr(e, n, await e.select({
3638
+ resource_server_identifier: W.resource_server_identifier,
3639
+ permission_name: W.permission_name,
3640
+ created_at: W.created_at
3641
+ }).from(W).where(t(a(W.tenant_id, n), a(W.role_id, r))).all());
3642
+ },
3643
+ async listCheckpoint(n, r, i = {}) {
3644
+ let o = {
3645
+ sortColumn: W.resource_server_identifier,
3646
+ idColumn: W.permission_name,
3647
+ sortOrder: "asc"
3648
+ }, s = At(i), { rows: c, next: l } = Nt(await e.select({
3649
+ role_id: W.role_id,
3650
+ resource_server_identifier: W.resource_server_identifier,
3651
+ permission_name: W.permission_name,
3652
+ created_at: W.created_at
3653
+ }).from(W).where(t(a(W.tenant_id, n), a(W.role_id, r), Mt(i, o))).orderBy(...jt(o)).limit(s + 1).all(), s, "resource_server_identifier", "permission_name");
3654
+ return {
3655
+ permissions: await Cr(e, n, c),
3656
+ next: l
3657
+ };
3653
3658
  },
3654
3659
  async remove(n, r, i) {
3655
3660
  if (i.length === 0) return !0;
3656
- let o = i.map((e) => t(a(Je.resource_server_identifier, e.resource_server_identifier), a(Je.permission_name, e.permission_name)));
3657
- return await e.delete(Je).where(t(a(Je.tenant_id, n), a(Je.role_id, r), v(...o))).returning(), !0;
3661
+ let o = i.map((e) => t(a(W.resource_server_identifier, e.resource_server_identifier), a(W.permission_name, e.permission_name)));
3662
+ return await e.delete(W).where(t(a(W.tenant_id, n), a(W.role_id, r), v(...o))).returning(), !0;
3658
3663
  }
3659
3664
  };
3660
3665
  }
3666
+ async function Cr(e, n, r) {
3667
+ let i = [...new Set(r.map((e) => e.resource_server_identifier))], o = /* @__PURE__ */ new Map();
3668
+ if (i.length > 0) {
3669
+ let r = await e.select({
3670
+ identifier: K.identifier,
3671
+ name: K.name
3672
+ }).from(K).where(t(a(K.tenant_id, n), l(K.identifier, i))).all();
3673
+ for (let e of r) o.set(e.identifier, e.name);
3674
+ }
3675
+ return r.map((e) => ({
3676
+ ...e,
3677
+ resource_server_name: o.get(e.resource_server_identifier) || e.resource_server_identifier
3678
+ }));
3679
+ }
3661
3680
  //#endregion
3662
3681
  //#region src/adapters/userPermissions.ts
3663
- function Cr(e) {
3682
+ function wr(e) {
3664
3683
  return {
3665
3684
  async create(t, n, r, i) {
3666
3685
  try {
@@ -3699,7 +3718,7 @@ function Cr(e) {
3699
3718
  }
3700
3719
  //#endregion
3701
3720
  //#region src/adapters/roles.ts
3702
- function wr(e) {
3721
+ function Tr(e) {
3703
3722
  let { tenant_id: t, is_system: n, metadata: r, ...i } = e;
3704
3723
  return D({
3705
3724
  ...i,
@@ -3707,7 +3726,7 @@ function wr(e) {
3707
3726
  metadata: Z(r)
3708
3727
  });
3709
3728
  }
3710
- function Tr(e) {
3729
+ function Er(e) {
3711
3730
  return {
3712
3731
  async create(t, n) {
3713
3732
  let r = (/* @__PURE__ */ new Date()).toISOString(), i = {
@@ -3720,43 +3739,43 @@ function Tr(e) {
3720
3739
  created_at: r,
3721
3740
  updated_at: r
3722
3741
  };
3723
- return await e.insert(W).values(i), wr({
3742
+ return await e.insert(U).values(i), Tr({
3724
3743
  ...i,
3725
3744
  tenant_id: t
3726
3745
  });
3727
3746
  },
3728
3747
  async get(n, r) {
3729
- let i = await e.select().from(W).where(t(a(W.tenant_id, n), a(W.id, r))).get();
3730
- return i ? wr(i) : null;
3748
+ let i = await e.select().from(U).where(t(a(U.tenant_id, n), a(U.id, r))).get();
3749
+ return i ? Tr(i) : null;
3731
3750
  },
3732
3751
  async update(n, r, i) {
3733
3752
  let o = { updated_at: (/* @__PURE__ */ new Date()).toISOString() };
3734
- return i.name !== void 0 && (o.name = i.name), i.description !== void 0 && (o.description = i.description), i.is_system !== void 0 && (o.is_system = +!!i.is_system), i.metadata !== void 0 && (o.metadata = JSON.stringify(i.metadata)), (await e.update(W).set(o).where(t(a(W.tenant_id, n), a(W.id, r))).returning()).length > 0;
3753
+ return i.name !== void 0 && (o.name = i.name), i.description !== void 0 && (o.description = i.description), i.is_system !== void 0 && (o.is_system = +!!i.is_system), i.metadata !== void 0 && (o.metadata = JSON.stringify(i.metadata)), (await e.update(U).set(o).where(t(a(U.tenant_id, n), a(U.id, r))).returning()).length > 0;
3735
3754
  },
3736
3755
  async list(o, s) {
3737
- let { page: c = 0, per_page: l = 50, include_totals: u = !1, sort: d, q: f } = s || {}, p = f ? _t(W, f, ["name"]) : void 0, m = p ? t(a(W.tenant_id, o), p) : a(W.tenant_id, o);
3756
+ let { page: c = 0, per_page: l = 50, include_totals: u = !1, sort: d, q: f } = s || {}, p = f ? _t(U, f, ["name"]) : void 0, m = p ? t(a(U.tenant_id, o), p) : a(U.tenant_id, o);
3738
3757
  if (kt(s)) {
3739
3758
  let n = {
3740
- sortColumn: W.created_at,
3741
- idColumn: W.id,
3759
+ sortColumn: U.created_at,
3760
+ idColumn: U.id,
3742
3761
  sortOrder: "desc"
3743
- }, r = At(s), { rows: i, next: a } = Nt(await e.select().from(W).where(t(m, Mt(s, n))).orderBy(...jt(n)).limit(r + 1), r, "created_at");
3762
+ }, r = At(s), { rows: i, next: a } = Nt(await e.select().from(U).where(t(m, Mt(s, n))).orderBy(...jt(n)).limit(r + 1), r, "created_at");
3744
3763
  return {
3745
- roles: i.map(wr),
3764
+ roles: i.map(Tr),
3746
3765
  start: 0,
3747
3766
  limit: r,
3748
3767
  length: i.length,
3749
3768
  next: a
3750
3769
  };
3751
3770
  }
3752
- let h = e.select().from(W).where(m).$dynamic();
3771
+ let h = e.select().from(U).where(m).$dynamic();
3753
3772
  if (d?.sort_by) {
3754
- let e = W[d.sort_by];
3773
+ let e = U[d.sort_by];
3755
3774
  e && (h = h.orderBy(d.sort_order === "desc" ? i(e) : n(e)));
3756
3775
  }
3757
- let g = (await h.offset(c * l).limit(l)).map(wr);
3776
+ let g = (await h.offset(c * l).limit(l)).map(Tr);
3758
3777
  if (!u) return { roles: g };
3759
- let [_] = await e.select({ count: r() }).from(W).where(m);
3778
+ let [_] = await e.select({ count: r() }).from(U).where(m);
3760
3779
  return {
3761
3780
  roles: g,
3762
3781
  start: c * l,
@@ -3765,13 +3784,13 @@ function Tr(e) {
3765
3784
  };
3766
3785
  },
3767
3786
  async remove(n, r) {
3768
- return (await e.delete(W).where(t(a(W.tenant_id, n), a(W.id, r))).returning()).length > 0;
3787
+ return (await e.delete(U).where(t(a(U.tenant_id, n), a(U.id, r))).returning()).length > 0;
3769
3788
  }
3770
3789
  };
3771
3790
  }
3772
3791
  //#endregion
3773
3792
  //#region src/adapters/sessions.ts
3774
- var Er = ["created_at_ts", "updated_at_ts"], Dr = [
3793
+ var Dr = ["created_at_ts", "updated_at_ts"], Or = [
3775
3794
  "expires_at_ts",
3776
3795
  "idle_expires_at_ts",
3777
3796
  "authenticated_at_ts",
@@ -3779,7 +3798,7 @@ var Er = ["created_at_ts", "updated_at_ts"], Dr = [
3779
3798
  "used_at_ts",
3780
3799
  "revoked_at_ts"
3781
3800
  ];
3782
- function Or(e) {
3801
+ function kr(e) {
3783
3802
  let { tenant_id: t, created_at_ts: n, updated_at_ts: r, expires_at_ts: i, idle_expires_at_ts: a, authenticated_at_ts: o, last_interaction_at_ts: s, used_at_ts: c, revoked_at_ts: l, device: u, clients: d, ...f } = e, p = ae({
3784
3803
  created_at_ts: n,
3785
3804
  updated_at_ts: r,
@@ -3789,7 +3808,7 @@ function Or(e) {
3789
3808
  last_interaction_at_ts: s,
3790
3809
  used_at_ts: c,
3791
3810
  revoked_at_ts: l
3792
- }, [...Er], [...Dr]);
3811
+ }, [...Dr], [...Or]);
3793
3812
  return D({
3794
3813
  ...f,
3795
3814
  ...p,
@@ -3797,10 +3816,10 @@ function Or(e) {
3797
3816
  clients: Z(d, [])
3798
3817
  });
3799
3818
  }
3800
- function kr(e, t) {
3819
+ function Ar(e, t) {
3801
3820
  return Math.max(e ?? 0, t ?? 0);
3802
3821
  }
3803
- function Ar(e) {
3822
+ function jr(e) {
3804
3823
  return {
3805
3824
  async create(n, r) {
3806
3825
  let i = Date.now(), o = {
@@ -3818,23 +3837,23 @@ function Ar(e) {
3818
3837
  last_interaction_at_ts: r.last_interaction_at ? E(r.last_interaction_at) : i,
3819
3838
  used_at_ts: E(r.used_at),
3820
3839
  revoked_at_ts: E(r.revoked_at)
3821
- }, s = [e.insert(M).values(o)], c = kr(o.expires_at_ts, o.idle_expires_at_ts);
3840
+ }, s = [e.insert(M).values(o)], c = Ar(o.expires_at_ts, o.idle_expires_at_ts);
3822
3841
  return c > 0 && o.login_session_id && s.push(e.update(P).set({
3823
3842
  expires_at_ts: c,
3824
3843
  updated_at_ts: i
3825
- }).where(t(a(P.tenant_id, n), a(P.id, o.login_session_id), m(P.expires_at_ts, c)))), await wt(e, s), Or({
3844
+ }).where(t(a(P.tenant_id, n), a(P.id, o.login_session_id), m(P.expires_at_ts, c)))), await wt(e, s), kr({
3826
3845
  ...o,
3827
3846
  tenant_id: n
3828
3847
  });
3829
3848
  },
3830
3849
  async get(n, r) {
3831
3850
  let i = await e.select().from(M).where(t(a(M.tenant_id, n), a(M.id, r))).get();
3832
- return i ? Or(i) : null;
3851
+ return i ? kr(i) : null;
3833
3852
  },
3834
3853
  async update(n, r, i) {
3835
3854
  let o = { updated_at_ts: Date.now() };
3836
3855
  i.user_id !== void 0 && (o.user_id = i.user_id), i.login_session_id !== void 0 && (o.login_session_id = i.login_session_id), i.device !== void 0 && (o.device = JSON.stringify(i.device)), i.clients !== void 0 && (o.clients = JSON.stringify(i.clients)), i.expires_at !== void 0 && (o.expires_at_ts = E(i.expires_at)), i.idle_expires_at !== void 0 && (o.idle_expires_at_ts = E(i.idle_expires_at)), i.authenticated_at !== void 0 && (o.authenticated_at_ts = E(i.authenticated_at)), i.last_interaction_at !== void 0 && (o.last_interaction_at_ts = E(i.last_interaction_at)), i.used_at !== void 0 && (o.used_at_ts = E(i.used_at)), i.revoked_at !== void 0 && (o.revoked_at_ts = E(i.revoked_at));
3837
- let s = await e.update(M).set(o).where(t(a(M.tenant_id, n), a(M.id, r))).returning(), c = kr(o.expires_at_ts, o.idle_expires_at_ts), l = s[0];
3856
+ let s = await e.update(M).set(o).where(t(a(M.tenant_id, n), a(M.id, r))).returning(), c = Ar(o.expires_at_ts, o.idle_expires_at_ts), l = s[0];
3838
3857
  if (c > 0 && l) {
3839
3858
  let r = i.login_session_id ?? l.login_session_id;
3840
3859
  r && await e.update(P).set({
@@ -3850,7 +3869,7 @@ function Ar(e) {
3850
3869
  let e = M[d.sort_by];
3851
3870
  e && (h = h.orderBy(d.sort_order === "desc" ? i(e) : n(e)));
3852
3871
  }
3853
- let g = (await h.offset(c * l).limit(l)).map(Or);
3872
+ let g = (await h.offset(c * l).limit(l)).map(kr);
3854
3873
  if (!u) return { sessions: g };
3855
3874
  let [_] = await e.select({ count: r() }).from(M).where(m);
3856
3875
  return {
@@ -3867,7 +3886,7 @@ function Ar(e) {
3867
3886
  }
3868
3887
  //#endregion
3869
3888
  //#region src/adapters/tenants.ts
3870
- var jr = [
3889
+ var Mr = [
3871
3890
  "session_cookie",
3872
3891
  "enabled_locales",
3873
3892
  "error_page",
@@ -3883,25 +3902,25 @@ var jr = [
3883
3902
  "acr_values_supported",
3884
3903
  "mtls",
3885
3904
  "mfa"
3886
- ], Mr = [
3905
+ ], Nr = [
3887
3906
  "allow_organization_name_in_authentication_api",
3888
3907
  "customize_mfa_in_postlogin_action",
3889
3908
  "pushed_authorization_requests_supported",
3890
3909
  "authorization_response_iss_parameter_supported"
3891
3910
  ];
3892
- function Nr(e) {
3911
+ function Pr(e) {
3893
3912
  let t = { ...e };
3894
- for (let e of jr) typeof t[e] == "string" && (t[e] = Z(t[e]));
3895
- for (let e of Mr) t[e] !== void 0 && t[e] !== null && (t[e] = t[e] === 1);
3913
+ for (let e of Mr) typeof t[e] == "string" && (t[e] = Z(t[e]));
3914
+ for (let e of Nr) t[e] !== void 0 && t[e] !== null && (t[e] = t[e] === 1);
3896
3915
  return D(t);
3897
3916
  }
3898
- function Pr(e) {
3917
+ function Fr(e) {
3899
3918
  let t = { ...e };
3900
- le(e, jr, t);
3901
- for (let n of Mr) e[n] !== void 0 && (t[n] = +!!e[n]);
3919
+ le(e, Mr, t);
3920
+ for (let n of Nr) e[n] !== void 0 && (t[n] = +!!e[n]);
3902
3921
  return ce(t);
3903
3922
  }
3904
- function Fr(e) {
3923
+ function Ir(e) {
3905
3924
  return {
3906
3925
  async create(t) {
3907
3926
  let n = {
@@ -3909,7 +3928,7 @@ function Fr(e) {
3909
3928
  created_at: (/* @__PURE__ */ new Date()).toISOString(),
3910
3929
  updated_at: (/* @__PURE__ */ new Date()).toISOString(),
3911
3930
  ...t
3912
- }, r = Pr(n);
3931
+ }, r = Fr(n);
3913
3932
  try {
3914
3933
  await e.insert(O).values(r);
3915
3934
  } catch (e) {
@@ -3920,7 +3939,7 @@ function Fr(e) {
3920
3939
  },
3921
3940
  async get(t) {
3922
3941
  let n = await e.select().from(O).where(a(O.id, t)).get();
3923
- return n ? Nr(n) : null;
3942
+ return n ? Pr(n) : null;
3924
3943
  },
3925
3944
  async list(t) {
3926
3945
  let { page: a = 0, per_page: o = 50, include_totals: s = !1, sort: c, q: l } = t || {}, u = l ? _t(O, l, ["friendly_name"]) : void 0, d = e.select().from(O).$dynamic();
@@ -3928,7 +3947,7 @@ function Fr(e) {
3928
3947
  let e = O[c.sort_by];
3929
3948
  e && (d = d.orderBy(c.sort_order === "desc" ? i(e) : n(e)));
3930
3949
  }
3931
- let f = (await d.offset(a * o).limit(o)).map(Nr);
3950
+ let f = (await d.offset(a * o).limit(o)).map(Pr);
3932
3951
  if (!s) return { tenants: f };
3933
3952
  let p = e.select({ count: r() }).from(O).$dynamic();
3934
3953
  u && (p = p.where(u));
@@ -3941,7 +3960,7 @@ function Fr(e) {
3941
3960
  };
3942
3961
  },
3943
3962
  async update(t, n) {
3944
- let r = Pr({
3963
+ let r = Fr({
3945
3964
  ...n,
3946
3965
  id: t,
3947
3966
  updated_at: (/* @__PURE__ */ new Date()).toISOString()
@@ -3955,18 +3974,18 @@ function Fr(e) {
3955
3974
  }
3956
3975
  //#endregion
3957
3976
  //#region src/adapters/themes.ts
3958
- var Ir = [
3977
+ var Lr = [
3959
3978
  "colors",
3960
3979
  "borders",
3961
3980
  "fonts",
3962
3981
  "page_background",
3963
3982
  "widget"
3964
3983
  ];
3965
- function Lr(e) {
3966
- let { tenant_id: t, ...n } = e, r = mt(n, Ir);
3984
+ function Rr(e) {
3985
+ let { tenant_id: t, ...n } = e, r = mt(n, Lr);
3967
3986
  return r.borders && (r.borders.show_widget_shadow = !!r.borders.show_widget_shadow), r.fonts && (r.fonts.body_text_bold = !!r.fonts.body_text_bold, r.fonts.buttons_text_bold = !!r.fonts.buttons_text_bold, r.fonts.input_labels_bold = !!r.fonts.input_labels_bold, r.fonts.links_bold = !!r.fonts.links_bold, r.fonts.subtitle_bold = !!r.fonts.subtitle_bold, r.fonts.title_bold = !!r.fonts.title_bold), D(r);
3968
3987
  }
3969
- function Rr(e) {
3988
+ function zr(e) {
3970
3989
  return {
3971
3990
  async create(t, n, r, i) {
3972
3991
  let a = i?.importMetadata, o = (/* @__PURE__ */ new Date()).toISOString(), s = a?.id || r || b(), c = {
@@ -3976,14 +3995,14 @@ function Rr(e) {
3976
3995
  created_at: a?.created_at ?? o,
3977
3996
  updated_at: a?.updated_at ?? o
3978
3997
  };
3979
- return await e.insert(Qe).values(c), Lr({
3998
+ return await e.insert(Qe).values(c), Rr({
3980
3999
  ...c,
3981
4000
  tenant_id: t
3982
4001
  });
3983
4002
  },
3984
4003
  async get(n, r) {
3985
4004
  let i = await e.select().from(Qe).where(t(a(Qe.tenant_id, n), a(Qe.themeId, r))).get();
3986
- return i ? Lr(i) : null;
4005
+ return i ? Rr(i) : null;
3987
4006
  },
3988
4007
  async update(n, r, i) {
3989
4008
  let o = pt(i);
@@ -3996,7 +4015,7 @@ function Rr(e) {
3996
4015
  }
3997
4016
  //#endregion
3998
4017
  //#region src/adapters/universalLoginTemplates.ts
3999
- function zr(e) {
4018
+ function Br(e) {
4000
4019
  return {
4001
4020
  async get(t) {
4002
4021
  let n = await e.select({ body: Ze.body }).from(Ze).where(a(Ze.tenant_id, t)).get();
@@ -4024,11 +4043,11 @@ function zr(e) {
4024
4043
  }
4025
4044
  //#endregion
4026
4045
  //#region src/adapters/userActivity.ts
4027
- function Br(e) {
4046
+ function Vr(e) {
4028
4047
  let t = {};
4029
4048
  return e.last_login !== void 0 && (t.last_login = e.last_login), e.last_ip !== void 0 && (t.last_ip = e.last_ip), e.login_count !== void 0 && (t.login_count = e.login_count), e.failed_logins !== void 0 && (t.failed_logins = JSON.stringify(e.failed_logins)), e.last_password_reset !== void 0 && (t.last_password_reset = e.last_password_reset), t;
4030
4049
  }
4031
- function Vr(e) {
4050
+ function Hr(e) {
4032
4051
  return {
4033
4052
  async get(n, r) {
4034
4053
  let i = await e.select().from(He).where(t(a(He.tenant_id, n), a(He.user_id, r))).get();
@@ -4042,7 +4061,7 @@ function Vr(e) {
4042
4061
  } : null;
4043
4062
  },
4044
4063
  async upsert(t, n, r) {
4045
- let i = Br(r), a = e.insert(He).values({
4064
+ let i = Vr(r), a = e.insert(He).values({
4046
4065
  tenant_id: t,
4047
4066
  user_id: n,
4048
4067
  login_count: 0,
@@ -4061,13 +4080,13 @@ function Vr(e) {
4061
4080
  }
4062
4081
  //#endregion
4063
4082
  //#region src/adapters/outbox.ts
4064
- function Hr(e) {
4083
+ function Ur(e) {
4065
4084
  return {
4066
4085
  ...e,
4067
4086
  payload: Z(e.payload, {})
4068
4087
  };
4069
4088
  }
4070
- function Ur(e, t, n, r) {
4089
+ function Wr(e, t, n, r) {
4071
4090
  return e.insert(J).values({
4072
4091
  id: t,
4073
4092
  tenant_id: n,
@@ -4088,18 +4107,18 @@ function Ur(e, t, n, r) {
4088
4107
  claim_expires_at: null
4089
4108
  });
4090
4109
  }
4091
- function Wr(e) {
4110
+ function Gr(e) {
4092
4111
  return {
4093
4112
  async create(t, n) {
4094
4113
  let r = b();
4095
- return await Ur(e, r, t, n), r;
4114
+ return await Wr(e, r, t, n), r;
4096
4115
  },
4097
4116
  async getByIds(t) {
4098
- return t.length === 0 ? [] : (await e.select().from(J).where(l(J.id, t)).all()).map(Hr);
4117
+ return t.length === 0 ? [] : (await e.select().from(J).where(l(J.id, t)).all()).map(Ur);
4099
4118
  },
4100
4119
  async getUnprocessed(n) {
4101
4120
  let r = (/* @__PURE__ */ new Date()).toISOString();
4102
- return (await e.select().from(J).where(t(f(J.processed_at), v(f(J.next_retry_at), h(J.next_retry_at, r)), v(f(J.claimed_by), h(J.claim_expires_at, r)))).orderBy(J.created_at, J.id).limit(n).all()).map(Hr);
4121
+ return (await e.select().from(J).where(t(f(J.processed_at), v(f(J.next_retry_at), h(J.next_retry_at, r)), v(f(J.claimed_by), h(J.claim_expires_at, r)))).orderBy(J.created_at, J.id).limit(n).all()).map(Ur);
4103
4122
  },
4104
4123
  async claimEvents(n, r, i) {
4105
4124
  if (n.length === 0) return [];
@@ -4174,10 +4193,10 @@ function Wr(e) {
4174
4193
  }
4175
4194
  //#endregion
4176
4195
  //#region src/adapters/users.ts
4177
- function Gr(e, t, n) {
4178
- return (n?.outboxEvents ?? []).map((n) => Ur(e, n.id, t, n));
4196
+ function Kr(e, t, n) {
4197
+ return (n?.outboxEvents ?? []).map((n) => Wr(e, n.id, t, n));
4179
4198
  }
4180
- var Kr = [
4199
+ var qr = [
4181
4200
  "user_id",
4182
4201
  "email",
4183
4202
  "email_verified",
@@ -4199,23 +4218,23 @@ var Kr = [
4199
4218
  "login_count",
4200
4219
  "created_at",
4201
4220
  "updated_at"
4202
- ], qr = [
4221
+ ], Jr = [
4203
4222
  "email",
4204
4223
  "name",
4205
4224
  "phone_number",
4206
4225
  "user_id"
4207
- ], Jr = new Set([
4226
+ ], Yr = new Set([
4208
4227
  "last_login",
4209
4228
  "last_ip",
4210
4229
  "login_count"
4211
- ]), Yr = o(A), Xr = o(He), Zr = Object.fromEntries(Kr.map((e) => [e, e === "login_count" ? {
4230
+ ]), Xr = o(A), Zr = o(He), Qr = Object.fromEntries(qr.map((e) => [e, e === "login_count" ? {
4212
4231
  coalesce: He.login_count,
4213
4232
  defaultValue: 0
4214
- } : Jr.has(e) ? Xr[e] : Yr[e]]));
4215
- function Qr() {
4233
+ } : Yr.has(e) ? Zr[e] : Xr[e]]));
4234
+ function $r() {
4216
4235
  return t(a(He.tenant_id, A.tenant_id), a(He.user_id, A.user_id));
4217
4236
  }
4218
- function $r(e, t) {
4237
+ function ei(e, t) {
4219
4238
  return {
4220
4239
  ...e,
4221
4240
  last_login: t?.last_login,
@@ -4223,7 +4242,7 @@ function $r(e, t) {
4223
4242
  login_count: t?.login_count ?? 0
4224
4243
  };
4225
4244
  }
4226
- function ei(e, t) {
4245
+ function ti(e, t) {
4227
4246
  let n = {
4228
4247
  connection: e.connection,
4229
4248
  provider: e.provider,
@@ -4236,8 +4255,8 @@ function ei(e, t) {
4236
4255
  ...typeof e.profileData == "string" ? Z(e.profileData, {}) : {}
4237
4256
  }, n;
4238
4257
  }
4239
- function ti(e, t = []) {
4240
- let { tenant_id: n, app_metadata: r, user_metadata: i, address: a, email_verified: o, phone_verified: s, is_social: c, blocked: l, linked_to: u, profileData: d, ...f } = e, p = ei(e, !0), m = t.map((e) => ei(e, !1));
4258
+ function ni(e, t = []) {
4259
+ let { tenant_id: n, app_metadata: r, user_metadata: i, address: a, email_verified: o, phone_verified: s, is_social: c, blocked: l, linked_to: u, profileData: d, ...f } = e, p = ti(e, !0), m = t.map((e) => ti(e, !1));
4241
4260
  return D({
4242
4261
  ...f,
4243
4262
  email: e.email || "",
@@ -4251,7 +4270,7 @@ function ti(e, t = []) {
4251
4270
  identities: [p, ...m]
4252
4271
  });
4253
4272
  }
4254
- function ni(e) {
4273
+ function ri(e) {
4255
4274
  let o = async (t, n, r) => {
4256
4275
  let i = (/* @__PURE__ */ new Date()).toISOString(), a = {
4257
4276
  user_id: n.user_id,
@@ -4305,12 +4324,12 @@ function ni(e) {
4305
4324
  created_at: i,
4306
4325
  updated_at: i
4307
4326
  }));
4308
- for (let n of Gr(e, t, r)) c.push(n);
4327
+ for (let n of Kr(e, t, r)) c.push(n);
4309
4328
  c.length > 1 ? await wt(e, c) : await e.insert(A).values(a);
4310
4329
  } catch (e) {
4311
4330
  throw e?.message?.includes("UNIQUE constraint") || e?.message?.includes("AlreadyExists") ? new Le(409, { message: "User already exists" }) : (console.error("User upsert failed:", e?.code, e?.message), new Le(500, { message: "Internal server error" }));
4312
4331
  }
4313
- return ti({
4332
+ return ni({
4314
4333
  ...a,
4315
4334
  last_login: n.last_login,
4316
4335
  last_ip: n.last_ip,
@@ -4321,10 +4340,10 @@ function ni(e) {
4321
4340
  create: o,
4322
4341
  rawCreate: o,
4323
4342
  async get(n, r) {
4324
- let i = await e.select().from(A).leftJoin(He, Qr()).where(t(a(A.tenant_id, n), a(A.user_id, r))).get();
4343
+ let i = await e.select().from(A).leftJoin(He, $r()).where(t(a(A.tenant_id, n), a(A.user_id, r))).get();
4325
4344
  if (!i) return null;
4326
4345
  let o = await e.select().from(A).where(t(a(A.tenant_id, n), a(A.linked_to, r))).all();
4327
- return ti($r(i.users, i.user_activity), o);
4346
+ return ni(ei(i.users, i.user_activity), o);
4328
4347
  },
4329
4348
  async update(n, r, i, o) {
4330
4349
  let s = { updated_at: (/* @__PURE__ */ new Date()).toISOString() };
@@ -4351,8 +4370,8 @@ function ni(e) {
4351
4370
  "zoneinfo"
4352
4371
  ]) i[e] !== void 0 && (s[e] = i[e]);
4353
4372
  i.email_verified !== void 0 && (s.email_verified = i.email_verified), i.phone_verified !== void 0 && (s.phone_verified = i.phone_verified), i.is_social !== void 0 && (s.is_social = i.is_social), i.blocked !== void 0 && (s.blocked = i.blocked), i.app_metadata !== void 0 && (s.app_metadata = JSON.stringify(i.app_metadata)), i.user_metadata !== void 0 && (s.user_metadata = JSON.stringify(i.user_metadata)), i.address !== void 0 && (s.address = JSON.stringify(i.address)), i.profileData !== void 0 && (s.profileData = JSON.stringify(i.profileData));
4354
- let c = e.update(A).set(s).where(t(a(A.tenant_id, n), a(A.user_id, r))).returning(), l = Gr(e, n, o), u;
4355
- return u = l.length > 0 ? (await wt(e, [c, ...l]))[0] : await c, !Array.isArray(u) || u.length === 0 ? !1 : ((i.last_login !== void 0 || i.last_ip !== void 0 || i.login_count !== void 0) && await Vr(e).upsert(n, r, {
4373
+ let c = e.update(A).set(s).where(t(a(A.tenant_id, n), a(A.user_id, r))).returning(), l = Kr(e, n, o), u;
4374
+ return u = l.length > 0 ? (await wt(e, [c, ...l]))[0] : await c, !Array.isArray(u) || u.length === 0 ? !1 : ((i.last_login !== void 0 || i.last_ip !== void 0 || i.login_count !== void 0) && await Hr(e).upsert(n, r, {
4356
4375
  last_login: i.last_login,
4357
4376
  last_ip: i.last_ip,
4358
4377
  login_count: i.login_count
@@ -4361,15 +4380,15 @@ function ni(e) {
4361
4380
  async list(o, s) {
4362
4381
  let { page: c = 0, per_page: u = 50, include_totals: d = !1, sort: p, q: m } = s || {}, h = [a(A.tenant_id, o), f(A.linked_to)];
4363
4382
  if (m) {
4364
- let e = Te(m, Kr);
4383
+ let e = Te(m, qr);
4365
4384
  if (e) {
4366
- let t = _t(Zr, e, qr);
4385
+ let t = _t(Qr, e, Jr);
4367
4386
  t && h.push(t);
4368
4387
  }
4369
4388
  }
4370
4389
  let g = t(...h), _ = async (n) => {
4371
4390
  let r = n.map((e) => e.user_id), i = r.length > 0 ? await e.select().from(A).where(t(a(A.tenant_id, o), l(A.linked_to, r))) : [];
4372
- return n.map((e) => ti(e, i.filter((t) => t.linked_to === e.user_id)));
4391
+ return n.map((e) => ni(e, i.filter((t) => t.linked_to === e.user_id)));
4373
4392
  };
4374
4393
  if (kt(s)) {
4375
4394
  if (p?.sort_by && p.sort_by !== "created_at") throw new Le(400, { message: `Sorting by ${p.sort_by} is not supported with checkpoint pagination (from/take); only created_at is` });
@@ -4378,7 +4397,7 @@ function ni(e) {
4378
4397
  idColumn: A.user_id,
4379
4398
  sortOrder: n,
4380
4399
  sortKey: `created_at:${n}`
4381
- }, i = At(s), a = Mt(s, r), { rows: o, next: c } = Nt((await e.select().from(A).leftJoin(He, Qr()).where(a ? t(g, a) : g).orderBy(...jt(r)).limit(i + 1)).map((e) => $r(e.users, e.user_activity)), i, "created_at", "user_id", r.sortKey), l = await _(o);
4400
+ }, i = At(s), a = Mt(s, r), { rows: o, next: c } = Nt((await e.select().from(A).leftJoin(He, $r()).where(a ? t(g, a) : g).orderBy(...jt(r)).limit(i + 1)).map((e) => ei(e.users, e.user_activity)), i, "created_at", "user_id", r.sortKey), l = await _(o);
4382
4401
  return {
4383
4402
  users: l,
4384
4403
  start: 0,
@@ -4387,15 +4406,15 @@ function ni(e) {
4387
4406
  next: c
4388
4407
  };
4389
4408
  }
4390
- let v = e.select().from(A).leftJoin(He, Qr()).where(g).$dynamic();
4409
+ let v = e.select().from(A).leftJoin(He, $r()).where(g).$dynamic();
4391
4410
  if (p?.sort_by) {
4392
- let e = Zr[p.sort_by];
4411
+ let e = Qr[p.sort_by];
4393
4412
  if (e) {
4394
4413
  let t = ht(e) ? gt(e) : e;
4395
4414
  v = v.orderBy(p.sort_order === "desc" ? i(t) : n(t));
4396
4415
  }
4397
4416
  }
4398
- let [y, ee] = await Promise.all([v.offset(c * u).limit(u), d ? e.select({ count: r() }).from(A).leftJoin(He, Qr()).where(g) : void 0]), b = await _(y.map((e) => $r(e.users, e.user_activity)));
4417
+ let [y, ee] = await Promise.all([v.offset(c * u).limit(u), d ? e.select({ count: r() }).from(A).leftJoin(He, $r()).where(g) : void 0]), b = await _(y.map((e) => ei(e.users, e.user_activity)));
4399
4418
  if (!ee) return { users: b };
4400
4419
  let [te] = ee;
4401
4420
  return {
@@ -4413,7 +4432,7 @@ function ni(e) {
4413
4432
  e.delete(A).where(t(a(A.tenant_id, n), l(A.user_id, c))),
4414
4433
  e.delete(A).where(t(a(A.tenant_id, n), a(A.user_id, r))).returning()
4415
4434
  ], f = d.length - 1;
4416
- if (s) for (let t of Gr(e, n, i)) d.push(t);
4435
+ if (s) for (let t of Kr(e, n, i)) d.push(t);
4417
4436
  let p = (await wt(e, d))[f];
4418
4437
  return Array.isArray(p) && p.length > 0;
4419
4438
  },
@@ -4425,7 +4444,7 @@ function ni(e) {
4425
4444
  }
4426
4445
  //#endregion
4427
4446
  //#region src/adapters/userRoles.ts
4428
- function ri(e) {
4447
+ function ii(e) {
4429
4448
  return {
4430
4449
  async create(t, n, r, i) {
4431
4450
  try {
@@ -4447,7 +4466,7 @@ function ri(e) {
4447
4466
  o !== void 0 && s.push(a(G.organization_id, o));
4448
4467
  let c = await e.select({ role_id: G.role_id }).from(G).where(t(...s)).all();
4449
4468
  return c.length === 0 ? [] : (await Promise.all(c.map(async (r) => {
4450
- let i = await e.select().from(W).where(t(a(W.tenant_id, n), a(W.id, r.role_id))).get();
4469
+ let i = await e.select().from(U).where(t(a(U.tenant_id, n), a(U.id, r.role_id))).get();
4451
4470
  if (!i) return null;
4452
4471
  let { tenant_id: o, is_system: s, metadata: c, ...l } = i;
4453
4472
  return D({
@@ -4488,7 +4507,7 @@ function ri(e) {
4488
4507
  }
4489
4508
  //#endregion
4490
4509
  //#region src/adapters/userOrganizations.ts
4491
- function ii(e) {
4510
+ function ai(e) {
4492
4511
  return {
4493
4512
  async create(t, n) {
4494
4513
  let r = (/* @__PURE__ */ new Date()).toISOString(), i = {
@@ -4500,7 +4519,7 @@ function ii(e) {
4500
4519
  updated_at: r
4501
4520
  };
4502
4521
  try {
4503
- await e.insert(U).values(i);
4522
+ await e.insert(H).values(i);
4504
4523
  } catch (e) {
4505
4524
  throw e?.message?.includes("UNIQUE constraint") || e?.message?.includes("duplicate key") ? new Le(409, { message: "User organization already exists" }) : e;
4506
4525
  }
@@ -4508,19 +4527,19 @@ function ii(e) {
4508
4527
  return o;
4509
4528
  },
4510
4529
  async get(n, r) {
4511
- let i = await e.select().from(U).where(t(a(U.tenant_id, n), a(U.id, r))).get();
4530
+ let i = await e.select().from(H).where(t(a(H.tenant_id, n), a(H.id, r))).get();
4512
4531
  if (!i) return null;
4513
4532
  let { tenant_id: o, ...s } = i;
4514
4533
  return s;
4515
4534
  },
4516
4535
  async update(n, r, i) {
4517
4536
  let o = { updated_at: (/* @__PURE__ */ new Date()).toISOString() };
4518
- return i.user_id !== void 0 && (o.user_id = i.user_id), i.organization_id !== void 0 && (o.organization_id = i.organization_id), (await e.update(U).set(o).where(t(a(U.tenant_id, n), a(U.id, r))).returning()).length > 0;
4537
+ return i.user_id !== void 0 && (o.user_id = i.user_id), i.organization_id !== void 0 && (o.organization_id = i.organization_id), (await e.update(H).set(o).where(t(a(H.tenant_id, n), a(H.id, r))).returning()).length > 0;
4519
4538
  },
4520
4539
  async list(n, o) {
4521
- let { include_totals: s = !1, q: c } = o || {}, l = a(U.tenant_id, n), u = l;
4540
+ let { include_totals: s = !1, q: c } = o || {}, l = a(H.tenant_id, n), u = l;
4522
4541
  if (c) {
4523
- let e = _t(U, c, ["user_id", "organization_id"]);
4542
+ let e = _t(H, c, ["user_id", "organization_id"]);
4524
4543
  e && (u = t(l, e));
4525
4544
  }
4526
4545
  let d = (e) => {
@@ -4529,10 +4548,10 @@ function ii(e) {
4529
4548
  };
4530
4549
  if (kt(o)) {
4531
4550
  let n = {
4532
- sortColumn: U.created_at,
4533
- idColumn: U.id,
4551
+ sortColumn: H.created_at,
4552
+ idColumn: H.id,
4534
4553
  sortOrder: "desc"
4535
- }, r = Mt(o, n), i = At(o), { rows: a, next: s } = Nt((await e.select().from(U).where(r ? t(u, r) : u).orderBy(...jt(n)).limit(i + 1)).map(d), i, "created_at");
4554
+ }, r = Mt(o, n), i = At(o), { rows: a, next: s } = Nt((await e.select().from(H).where(r ? t(u, r) : u).orderBy(...jt(n)).limit(i + 1)).map(d), i, "created_at");
4536
4555
  return {
4537
4556
  userOrganizations: a,
4538
4557
  start: 0,
@@ -4541,9 +4560,9 @@ function ii(e) {
4541
4560
  next: s
4542
4561
  };
4543
4562
  }
4544
- let f = o?.page ?? 0, p = o?.per_page ?? 50, m = f * p, h = (await e.select().from(U).where(u).orderBy(i(U.created_at), i(U.id)).offset(m).limit(p)).map(d);
4563
+ let f = o?.page ?? 0, p = o?.per_page ?? 50, m = f * p, h = (await e.select().from(H).where(u).orderBy(i(H.created_at), i(H.id)).offset(m).limit(p)).map(d);
4545
4564
  if (!s) return { userOrganizations: h };
4546
- let [g] = await e.select({ count: r() }).from(U).where(u);
4565
+ let [g] = await e.select({ count: r() }).from(H).where(u);
4547
4566
  return {
4548
4567
  userOrganizations: h,
4549
4568
  start: m,
@@ -4552,8 +4571,8 @@ function ii(e) {
4552
4571
  };
4553
4572
  },
4554
4573
  async listUserOrganizations(n, i, o) {
4555
- let { page: s = 0, per_page: c = 50, include_totals: l = !1 } = o || {}, u = await e.select().from(U).where(t(a(U.tenant_id, n), a(U.user_id, i))).offset(s * c).limit(c).all(), d = (await Promise.all(u.map(async (r) => {
4556
- let i = await e.select().from(H).where(t(a(H.tenant_id, n), a(H.id, r.organization_id))).get();
4574
+ let { page: s = 0, per_page: c = 50, include_totals: l = !1 } = o || {}, u = await e.select().from(H).where(t(a(H.tenant_id, n), a(H.user_id, i))).offset(s * c).limit(c).all(), d = (await Promise.all(u.map(async (r) => {
4575
+ let i = await e.select().from(V).where(t(a(V.tenant_id, n), a(V.id, r.organization_id))).get();
4557
4576
  if (!i) return null;
4558
4577
  let { tenant_id: o, branding: s, metadata: c, enabled_connections: l, token_quota: u, ...d } = i;
4559
4578
  return D({
@@ -4565,7 +4584,7 @@ function ii(e) {
4565
4584
  });
4566
4585
  }))).filter(Boolean);
4567
4586
  if (!l) return { organizations: d };
4568
- let [f] = await e.select({ count: r() }).from(U).where(t(a(U.tenant_id, n), a(U.user_id, i)));
4587
+ let [f] = await e.select({ count: r() }).from(H).where(t(a(H.tenant_id, n), a(H.user_id, i)));
4569
4588
  return {
4570
4589
  organizations: d,
4571
4590
  start: s * c,
@@ -4574,25 +4593,25 @@ function ii(e) {
4574
4593
  };
4575
4594
  },
4576
4595
  async remove(n, r) {
4577
- return (await e.delete(U).where(t(a(U.tenant_id, n), a(U.id, r))).returning()).length > 0;
4596
+ return (await e.delete(H).where(t(a(H.tenant_id, n), a(H.id, r))).returning()).length > 0;
4578
4597
  }
4579
4598
  };
4580
4599
  }
4581
4600
  //#endregion
4582
4601
  //#region src/adapters/stats.ts
4583
- var ai = ["s"], oi = ["pwd_leak"];
4584
- function si(e) {
4602
+ var oi = ["s"], si = ["pwd_leak"];
4603
+ function ci(e) {
4585
4604
  return /^\d{8}$/.test(e) ? `${e.slice(0, 4)}-${e.slice(4, 6)}-${e.slice(6, 8)}` : e;
4586
4605
  }
4587
- function ci(e) {
4606
+ function li(e) {
4588
4607
  return {
4589
4608
  async getDaily(n, r) {
4590
- let i = /* @__PURE__ */ new Date(), o = r?.from ? si(r.from) : (/* @__PURE__ */ new Date(i.getTime() - 720 * 60 * 60 * 1e3)).toISOString().split("T")[0], s = r?.to ? si(r.to) : i.toISOString().split("T")[0];
4609
+ let i = /* @__PURE__ */ new Date(), o = r?.from ? ci(r.from) : (/* @__PURE__ */ new Date(i.getTime() - 720 * 60 * 60 * 1e3)).toISOString().split("T")[0], s = r?.to ? ci(r.to) : i.toISOString().split("T")[0];
4591
4610
  return (await e.select({
4592
4611
  date: y`substr(${q.date}, 1, 10)`.as("date"),
4593
- logins: y`SUM(CASE WHEN ${q.type} IN (${y.join(ai.map((e) => y`${e}`), y`, `)}) THEN 1 ELSE 0 END)`.as("logins"),
4612
+ logins: y`SUM(CASE WHEN ${q.type} IN (${y.join(oi.map((e) => y`${e}`), y`, `)}) THEN 1 ELSE 0 END)`.as("logins"),
4594
4613
  signups: y`SUM(CASE WHEN ${q.type} = 'ss' THEN 1 ELSE 0 END)`.as("signups"),
4595
- leaked_passwords: y`SUM(CASE WHEN ${q.type} IN (${y.join(oi.map((e) => y`${e}`), y`, `)}) THEN 1 ELSE 0 END)`.as("leaked_passwords")
4614
+ leaked_passwords: y`SUM(CASE WHEN ${q.type} IN (${y.join(si.map((e) => y`${e}`), y`, `)}) THEN 1 ELSE 0 END)`.as("leaked_passwords")
4596
4615
  }).from(q).where(t(a(q.tenant_id, n), c(q.date, o), h(q.date, `${s}T23:59:59.999Z`))).groupBy(y`substr(${q.date}, 1, 10)`).orderBy(y`substr(${q.date}, 1, 10)`).all()).map((e) => ({
4597
4616
  date: e.date,
4598
4617
  logins: Number(e.logins) || 0,
@@ -4603,14 +4622,14 @@ function ci(e) {
4603
4622
  }));
4604
4623
  },
4605
4624
  async getActiveUsers(n) {
4606
- let r = (/* @__PURE__ */ new Date(Date.now() - 720 * 60 * 60 * 1e3)).toISOString(), [i] = await e.select({ count: y`COUNT(DISTINCT ${q.user_id})`.as("count") }).from(q).where(t(a(q.tenant_id, n), c(q.date, r), y`${q.type} IN (${y.join(ai.map((e) => y`${e}`), y`, `)})`));
4625
+ let r = (/* @__PURE__ */ new Date(Date.now() - 720 * 60 * 60 * 1e3)).toISOString(), [i] = await e.select({ count: y`COUNT(DISTINCT ${q.user_id})`.as("count") }).from(q).where(t(a(q.tenant_id, n), c(q.date, r), y`${q.type} IN (${y.join(oi.map((e) => y`${e}`), y`, `)})`));
4607
4626
  return Number(i?.count) || 0;
4608
4627
  }
4609
4628
  };
4610
4629
  }
4611
4630
  //#endregion
4612
4631
  //#region src/adapters/analytics.ts
4613
- var li = {
4632
+ var ui = {
4614
4633
  "active-users": ["s", "seacft"],
4615
4634
  logins: [
4616
4635
  "s",
@@ -4640,7 +4659,7 @@ var li = {
4640
4659
  "fvr"
4641
4660
  ],
4642
4661
  "codes-sent": ["cls", "cs"]
4643
- }, ui = {
4662
+ }, di = {
4644
4663
  "active-users": {
4645
4664
  alias: "active_users",
4646
4665
  type: "UInt64",
@@ -4697,7 +4716,7 @@ var li = {
4697
4716
  agg: "count"
4698
4717
  }
4699
4718
  };
4700
- function di(e) {
4719
+ function fi(e) {
4701
4720
  switch (e) {
4702
4721
  case "hour": return y`substr(${q.date}, 1, 13)`;
4703
4722
  case "month": return y`substr(${q.date}, 1, 7)`;
@@ -4706,10 +4725,10 @@ function di(e) {
4706
4725
  default: throw Error(`Unsupported interval '${e}' for SQL analytics adapter`);
4707
4726
  }
4708
4727
  }
4709
- function fi(e) {
4728
+ function pi(e) {
4710
4729
  return `"${e.replace(/"/g, "\"\"")}"`;
4711
4730
  }
4712
- function pi(e) {
4731
+ function mi(e) {
4713
4732
  switch (e) {
4714
4733
  case "connection": return q.connection;
4715
4734
  case "client_id": return q.client_id;
@@ -4718,10 +4737,10 @@ function pi(e) {
4718
4737
  case "time": throw Error("time dimension handled separately");
4719
4738
  }
4720
4739
  }
4721
- function mi(e) {
4740
+ function hi(e) {
4722
4741
  return {
4723
4742
  async query(n, r, i) {
4724
- let o = Date.now(), s = li[r], u = ui[r], d = [
4743
+ let o = Date.now(), s = ui[r], u = di[r], d = [
4725
4744
  a(q.tenant_id, n),
4726
4745
  c(q.date, i.from),
4727
4746
  m(q.date, i.to),
@@ -4730,13 +4749,13 @@ function mi(e) {
4730
4749
  i.filters.connection?.length && d.push(l(q.connection, i.filters.connection)), i.filters.client_id?.length && d.push(l(q.client_id, i.filters.client_id)), i.filters.user_type?.length && d.push(l(q.strategy_type, i.filters.user_type)), i.filters.user_id?.length && d.push(l(q.user_id, i.filters.user_id));
4731
4750
  let f = {}, p = [], h = [];
4732
4751
  for (let e of i.group_by) if (e === "time") {
4733
- let e = di(i.interval);
4752
+ let e = fi(i.interval);
4734
4753
  f.time = e, p.push(e), h.push({
4735
4754
  name: "time",
4736
4755
  type: i.interval === "hour" ? "DateTime" : "Date"
4737
4756
  });
4738
4757
  } else {
4739
- let t = pi(e);
4758
+ let t = mi(e);
4740
4759
  f[e] = t, p.push(t), h.push({
4741
4760
  name: e,
4742
4761
  type: "String"
@@ -4752,9 +4771,9 @@ function mi(e) {
4752
4771
  if (i.order_by) {
4753
4772
  let e = i.order_by.startsWith("-"), t = e ? i.order_by.slice(1) : i.order_by;
4754
4773
  if (!_.has(t)) throw Error(`Invalid order_by column '${t}' for analytics query`);
4755
- let n = fi(t);
4774
+ let n = pi(t);
4756
4775
  g = g.orderBy(y.raw(`${n} ${e ? "DESC" : "ASC"}`));
4757
- } else g = i.group_by[0] === "time" ? g.orderBy(y.raw(`${fi("time")} ASC`)) : g.orderBy(y.raw(`${fi(u.alias)} DESC`));
4776
+ } else g = i.group_by[0] === "time" ? g.orderBy(y.raw(`${pi("time")} ASC`)) : g.orderBy(y.raw(`${pi(u.alias)} DESC`));
4758
4777
  g = g.limit(i.limit).offset(i.offset);
4759
4778
  let v = (await g.all()).map((e) => {
4760
4779
  let t = {};
@@ -4803,10 +4822,10 @@ function mi(e) {
4803
4822
  }
4804
4823
  //#endregion
4805
4824
  //#region src/adapters/cleanup.ts
4806
- var hi = 10080 * 60 * 1e3;
4807
- function gi(e) {
4825
+ var gi = 10080 * 60 * 1e3;
4826
+ function _i(e) {
4808
4827
  return async (n) => {
4809
- let r = Date.now() - hi;
4828
+ let r = Date.now() - gi;
4810
4829
  try {
4811
4830
  let i = [v(m(N.expires_at_ts, r), m(N.idle_expires_at_ts, r))];
4812
4831
  n?.tenant_id && i.push(a(N.tenant_id, n.tenant_id)), await e.delete(N).where(t(...i)), i = [v(m(M.expires_at_ts, r), m(M.idle_expires_at_ts, r))], n?.tenant_id && i.push(a(M.tenant_id, n.tenant_id)), n?.user_id && i.push(a(M.user_id, n.user_id)), await e.delete(M).where(t(...i)), i = [m(P.expires_at_ts, r)], n?.tenant_id && i.push(a(P.tenant_id, n.tenant_id)), await e.delete(P).where(t(...i));
@@ -4841,7 +4860,7 @@ var Q = w("tenant_operations", {
4841
4860
  x("tenant_operations_tenant_id_created_at_idx").on(e.tenant_id, e.created_at),
4842
4861
  x("tenant_operations_rollout_id_idx").on(e.rollout_id),
4843
4862
  x("tenant_operations_status_idx").on(e.status)
4844
- ]), _i = w("tenant_operation_events", {
4863
+ ]), vi = w("tenant_operation_events", {
4845
4864
  id: T("id", { length: 255 }).primaryKey(),
4846
4865
  operation_id: T("operation_id", { length: 255 }).notNull(),
4847
4866
  step: T("step", { length: 255 }).notNull(),
@@ -4872,7 +4891,7 @@ var Q = w("tenant_operations", {
4872
4891
  name: "tenant_operation_rows_operation_id_constraint"
4873
4892
  }).onDelete("cascade"),
4874
4893
  x("tenant_operation_rows_operation_id_status_idx").on(e.operation_id, e.status)
4875
- ]), vi = w("rollouts", {
4894
+ ]), yi = w("rollouts", {
4876
4895
  id: T("id", { length: 255 }).primaryKey(),
4877
4896
  kind: T("kind", { length: 32 }).notNull(),
4878
4897
  status: T("status", { length: 32 }).notNull(),
@@ -4888,7 +4907,7 @@ var Q = w("tenant_operations", {
4888
4907
  });
4889
4908
  //#endregion
4890
4909
  //#region src/adapters/tenantOperations.ts
4891
- function yi(e) {
4910
+ function bi(e) {
4892
4911
  if (!e) return null;
4893
4912
  try {
4894
4913
  return JSON.parse(e);
@@ -4896,7 +4915,7 @@ function yi(e) {
4896
4915
  return null;
4897
4916
  }
4898
4917
  }
4899
- function bi(e) {
4918
+ function xi(e) {
4900
4919
  return Pe.parse({
4901
4920
  id: e.id,
4902
4921
  tenant_id: e.tenant_id,
@@ -4910,8 +4929,8 @@ function bi(e) {
4910
4929
  target_database_version: e.target_database_version,
4911
4930
  error: e.error,
4912
4931
  initiated_by: e.initiated_by,
4913
- input: yi(e.input),
4914
- result: yi(e.result),
4932
+ input: bi(e.input),
4933
+ result: bi(e.result),
4915
4934
  claimed_by: e.claimed_by,
4916
4935
  claim_expires_at: e.claim_expires_at,
4917
4936
  created_at: e.created_at,
@@ -4919,7 +4938,7 @@ function bi(e) {
4919
4938
  finished_at: e.finished_at
4920
4939
  });
4921
4940
  }
4922
- function xi(e) {
4941
+ function Si(e) {
4923
4942
  return {
4924
4943
  async create(t) {
4925
4944
  let n = je.parse(t), r = (/* @__PURE__ */ new Date()).toISOString(), i = {
@@ -4950,7 +4969,7 @@ function xi(e) {
4950
4969
  },
4951
4970
  async get(t) {
4952
4971
  let n = await e.select().from(Q).where(a(Q.id, t)).limit(1);
4953
- return n[0] ? bi(n[0]) : null;
4972
+ return n[0] ? xi(n[0]) : null;
4954
4973
  },
4955
4974
  async list(n = {}) {
4956
4975
  let r = n.page ?? 0, o = n.per_page ?? 50, s = [];
@@ -4961,7 +4980,7 @@ function xi(e) {
4961
4980
  n.engine !== void 0 && s.push(a(Q.engine, n.engine)), n.updated_before !== void 0 && s.push(m(Q.updated_at, n.updated_before));
4962
4981
  let c = await e.select().from(Q).where(s.length ? t(...s) : void 0).orderBy(i(Q.created_at), i(Q.id)).offset(r * o).limit(o);
4963
4982
  return {
4964
- operations: c.map(bi),
4983
+ operations: c.map(xi),
4965
4984
  start: r * o,
4966
4985
  limit: o,
4967
4986
  length: c.length
@@ -4987,7 +5006,7 @@ function xi(e) {
4987
5006
  },
4988
5007
  async listResumable(r) {
4989
5008
  let i = (/* @__PURE__ */ new Date()).toISOString();
4990
- return (await e.select().from(Q).where(t(l(Q.status, ["pending", "running"]), a(Q.kind, r.kind), v(f(Q.claimed_by), h(Q.claim_expires_at, i)))).orderBy(n(Q.created_at), n(Q.id)).limit(r.limit)).map(bi);
5009
+ return (await e.select().from(Q).where(t(l(Q.status, ["pending", "running"]), a(Q.kind, r.kind), v(f(Q.claimed_by), h(Q.claim_expires_at, i)))).orderBy(n(Q.created_at), n(Q.id)).limit(r.limit)).map(xi);
4991
5010
  },
4992
5011
  async remove(t) {
4993
5012
  return (await e.select({ id: Q.id }).from(Q).where(a(Q.id, t)).limit(1)).length === 0 ? !1 : (await e.delete(Q).where(a(Q.id, t)), !0);
@@ -4996,19 +5015,19 @@ function xi(e) {
4996
5015
  }
4997
5016
  //#endregion
4998
5017
  //#region src/adapters/tenantOperationRows.ts
4999
- var Si = 50, Ci = 50;
5000
- function wi(e) {
5018
+ var Ci = 50, wi = 50;
5019
+ function Ti(e) {
5001
5020
  try {
5002
5021
  return JSON.parse(e);
5003
5022
  } catch {
5004
5023
  return {};
5005
5024
  }
5006
5025
  }
5007
- function Ti(e) {
5026
+ function Ei(e) {
5008
5027
  return Ne.parse({
5009
5028
  operation_id: e.operation_id,
5010
5029
  seq: e.seq,
5011
- payload: wi(e.payload),
5030
+ payload: Ti(e.payload),
5012
5031
  status: e.status,
5013
5032
  error_code: e.error_code,
5014
5033
  error_message: e.error_message,
@@ -5018,12 +5037,12 @@ function Ti(e) {
5018
5037
  updated_at: e.updated_at
5019
5038
  });
5020
5039
  }
5021
- function Ei(e, t) {
5040
+ function Di(e, t) {
5022
5041
  let n = [];
5023
5042
  for (let r = 0; r < e.length; r += t) n.push(e.slice(r, r + t));
5024
5043
  return n;
5025
5044
  }
5026
- function Di(e, n, r, i) {
5045
+ function Oi(e, n, r, i) {
5027
5046
  return e.update($).set({
5028
5047
  status: r.status,
5029
5048
  error_code: r.error_code ?? null,
@@ -5033,7 +5052,7 @@ function Di(e, n, r, i) {
5033
5052
  updated_at: i
5034
5053
  }).where(t(a($.operation_id, n), a($.seq, r.seq), a($.status, "pending")));
5035
5054
  }
5036
- function Oi(e) {
5055
+ function ki(e) {
5037
5056
  return {
5038
5057
  async createMany(t) {
5039
5058
  if (t.length === 0) return 0;
@@ -5052,23 +5071,23 @@ function Oi(e) {
5052
5071
  updated_at: n
5053
5072
  };
5054
5073
  });
5055
- for (let t of Ei(r, Si)) await e.insert($).values(t);
5074
+ for (let t of Di(r, Ci)) await e.insert($).values(t);
5056
5075
  return r.length;
5057
5076
  },
5058
5077
  async claimPending(r, i) {
5059
- return (await e.select().from($).where(t(a($.operation_id, r), a($.status, "pending"))).orderBy(n($.seq)).limit(i)).map(Ti);
5078
+ return (await e.select().from($).where(t(a($.operation_id, r), a($.status, "pending"))).orderBy(n($.seq)).limit(i)).map(Ei);
5060
5079
  },
5061
5080
  async recordOutcomes(n, r) {
5062
5081
  if (r.length === 0) return 0;
5063
5082
  let i = (/* @__PURE__ */ new Date()).toISOString(), o = r.map((e) => e.seq), s = /* @__PURE__ */ new Set();
5064
- for (let r of Ei(o, Ci)) {
5083
+ for (let r of Di(o, wi)) {
5065
5084
  let i = await e.select({ seq: $.seq }).from($).where(t(a($.operation_id, n), a($.status, "pending"), l($.seq, r)));
5066
5085
  for (let e of i) s.add(e.seq);
5067
5086
  }
5068
5087
  let c = r.filter((e) => s.has(e.seq));
5069
5088
  if (c.length === 0) return 0;
5070
- for (let t of Ei(c, Ci)) {
5071
- let [r, ...a] = t.map((t) => Di(e, n, t, i));
5089
+ for (let t of Di(c, wi)) {
5090
+ let [r, ...a] = t.map((t) => Oi(e, n, t, i));
5072
5091
  r && await wt(e, [r, ...a]);
5073
5092
  }
5074
5093
  return c.length;
@@ -5104,7 +5123,7 @@ function Oi(e) {
5104
5123
  }
5105
5124
  let u = await e.select().from($).where(t(...c)).orderBy(n($.seq)).offset(o * s).limit(s);
5106
5125
  return {
5107
- rows: u.map(Ti),
5126
+ rows: u.map(Ei),
5108
5127
  start: o * s,
5109
5128
  limit: s,
5110
5129
  length: u.length
@@ -5118,27 +5137,27 @@ function Oi(e) {
5118
5137
  }
5119
5138
  //#endregion
5120
5139
  //#region src/helpers/monotonic-id.ts
5121
- var ki = "0123456789ABCDEFGHJKMNPQRSTVWXYZ", Ai = 32, ji = 10, Mi = 4, Ni = 10;
5122
- function Pi(e, t) {
5140
+ var Ai = "0123456789ABCDEFGHJKMNPQRSTVWXYZ", ji = 32, Mi = 10, Ni = 4, Pi = 10;
5141
+ function Fi(e, t) {
5123
5142
  let n = "";
5124
- for (let r = t; r > 0; r--) n = ki.charAt(e % Ai) + n, e = Math.floor(e / Ai);
5143
+ for (let r = t; r > 0; r--) n = Ai.charAt(e % ji) + n, e = Math.floor(e / ji);
5125
5144
  return n;
5126
5145
  }
5127
- function Fi() {
5128
- let e = new Uint8Array(Ni);
5146
+ function Ii() {
5147
+ let e = new Uint8Array(Pi);
5129
5148
  crypto.getRandomValues(e);
5130
5149
  let t = "";
5131
- for (let n = 0; n < Ni; n++) t += ki.charAt(e[n] % Ai);
5150
+ for (let n = 0; n < Pi; n++) t += Ai.charAt(e[n] % ji);
5132
5151
  return t;
5133
5152
  }
5134
- var Ii = 0, Li = 0;
5135
- function Ri() {
5153
+ var Li = 0, Ri = 0;
5154
+ function zi() {
5136
5155
  let e = Date.now();
5137
- return e === Ii ? Li++ : (Ii = e, Li = 0), Pi(e, ji) + Pi(Li, Mi) + Fi();
5156
+ return e === Li ? Ri++ : (Li = e, Ri = 0), Fi(e, Mi) + Fi(Ri, Ni) + Ii();
5138
5157
  }
5139
5158
  //#endregion
5140
5159
  //#region src/adapters/tenantOperationEvents.ts
5141
- function zi(e) {
5160
+ function Bi(e) {
5142
5161
  if (!e) return null;
5143
5162
  try {
5144
5163
  let t = JSON.parse(e);
@@ -5146,22 +5165,22 @@ function zi(e) {
5146
5165
  } catch {}
5147
5166
  return null;
5148
5167
  }
5149
- function Bi(e) {
5168
+ function Vi(e) {
5150
5169
  return Ae.parse({
5151
5170
  id: e.id,
5152
5171
  operation_id: e.operation_id,
5153
5172
  step: e.step,
5154
5173
  outcome: e.outcome,
5155
- detail: zi(e.detail),
5174
+ detail: Bi(e.detail),
5156
5175
  attempt: e.attempt,
5157
5176
  created_at: e.created_at
5158
5177
  });
5159
5178
  }
5160
- function Vi(e) {
5179
+ function Hi(e) {
5161
5180
  return {
5162
5181
  async create(t) {
5163
5182
  let n = ke.parse(t), r = {
5164
- id: `evt_${Ri()}`,
5183
+ id: `evt_${zi()}`,
5165
5184
  operation_id: n.operation_id,
5166
5185
  step: n.step,
5167
5186
  outcome: n.outcome,
@@ -5169,7 +5188,7 @@ function Vi(e) {
5169
5188
  attempt: n.attempt,
5170
5189
  created_at: (/* @__PURE__ */ new Date()).toISOString()
5171
5190
  };
5172
- return await e.insert(_i).values(r), Ae.parse({
5191
+ return await e.insert(vi).values(r), Ae.parse({
5173
5192
  id: r.id,
5174
5193
  operation_id: r.operation_id,
5175
5194
  step: r.step,
@@ -5180,9 +5199,9 @@ function Vi(e) {
5180
5199
  });
5181
5200
  },
5182
5201
  async listByOperation(t, r = {}) {
5183
- let i = r.page ?? 0, o = r.per_page ?? 100, s = await e.select().from(_i).where(a(_i.operation_id, t)).orderBy(n(_i.created_at), n(_i.id)).offset(i * o).limit(o);
5202
+ let i = r.page ?? 0, o = r.per_page ?? 100, s = await e.select().from(vi).where(a(vi.operation_id, t)).orderBy(n(vi.created_at), n(vi.id)).offset(i * o).limit(o);
5184
5203
  return {
5185
- events: s.map(Bi),
5204
+ events: s.map(Vi),
5186
5205
  start: i * o,
5187
5206
  limit: o,
5188
5207
  length: s.length
@@ -5192,7 +5211,7 @@ function Vi(e) {
5192
5211
  }
5193
5212
  //#endregion
5194
5213
  //#region src/adapters/rollouts.ts
5195
- function Hi(e) {
5214
+ function Ui(e) {
5196
5215
  if (!e) return null;
5197
5216
  try {
5198
5217
  return JSON.parse(e);
@@ -5200,7 +5219,7 @@ function Hi(e) {
5200
5219
  return null;
5201
5220
  }
5202
5221
  }
5203
- function Ui(e) {
5222
+ function Wi(e) {
5204
5223
  return we.parse({
5205
5224
  id: e.id,
5206
5225
  kind: e.kind,
@@ -5208,15 +5227,15 @@ function Ui(e) {
5208
5227
  target_worker_version: e.target_worker_version,
5209
5228
  target_database_version: e.target_database_version,
5210
5229
  wave_size: e.wave_size,
5211
- canary_tenant_ids: Hi(e.canary_tenant_ids),
5212
- filter: Hi(e.filter),
5230
+ canary_tenant_ids: Ui(e.canary_tenant_ids),
5231
+ filter: Ui(e.filter),
5213
5232
  initiated_by: e.initiated_by,
5214
5233
  created_at: e.created_at,
5215
5234
  updated_at: e.updated_at,
5216
5235
  finished_at: e.finished_at
5217
5236
  });
5218
5237
  }
5219
- function Wi(e) {
5238
+ function Gi(e) {
5220
5239
  return {
5221
5240
  async create(t) {
5222
5241
  let n = Ce.parse(t), r = (/* @__PURE__ */ new Date()).toISOString(), i = {
@@ -5233,37 +5252,37 @@ function Wi(e) {
5233
5252
  updated_at: r,
5234
5253
  finished_at: null
5235
5254
  };
5236
- await e.insert(vi).values(i);
5255
+ await e.insert(yi).values(i);
5237
5256
  let a = await this.get(i.id);
5238
5257
  if (!a) throw Error(`Failed to create rollout ${i.id}`);
5239
5258
  return a;
5240
5259
  },
5241
5260
  async get(t) {
5242
- let n = await e.select().from(vi).where(a(vi.id, t)).limit(1);
5243
- return n[0] ? Ui(n[0]) : null;
5261
+ let n = await e.select().from(yi).where(a(yi.id, t)).limit(1);
5262
+ return n[0] ? Wi(n[0]) : null;
5244
5263
  },
5245
5264
  async list(t = {}) {
5246
- let n = t.page ?? 0, r = t.per_page ?? 50, a = await e.select().from(vi).orderBy(i(vi.created_at), i(vi.id)).offset(n * r).limit(r);
5265
+ let n = t.page ?? 0, r = t.per_page ?? 50, a = await e.select().from(yi).orderBy(i(yi.created_at), i(yi.id)).offset(n * r).limit(r);
5247
5266
  return {
5248
- rollouts: a.map(Ui),
5267
+ rollouts: a.map(Wi),
5249
5268
  start: n * r,
5250
5269
  limit: r,
5251
5270
  length: a.length
5252
5271
  };
5253
5272
  },
5254
5273
  async update(t, n) {
5255
- if ((await e.select({ id: vi.id }).from(vi).where(a(vi.id, t)).limit(1)).length === 0) return !1;
5274
+ if ((await e.select({ id: yi.id }).from(yi).where(a(yi.id, t)).limit(1)).length === 0) return !1;
5256
5275
  let r = { updated_at: (/* @__PURE__ */ new Date()).toISOString() };
5257
- return n.status !== void 0 && (r.status = n.status), n.wave_size !== void 0 && (r.wave_size = n.wave_size), n.canary_tenant_ids !== void 0 && (r.canary_tenant_ids = n.canary_tenant_ids ? JSON.stringify(n.canary_tenant_ids) : null), n.filter !== void 0 && (r.filter = n.filter ? JSON.stringify(n.filter) : null), n.finished_at !== void 0 && (r.finished_at = n.finished_at), await e.update(vi).set(r).where(a(vi.id, t)), !0;
5276
+ return n.status !== void 0 && (r.status = n.status), n.wave_size !== void 0 && (r.wave_size = n.wave_size), n.canary_tenant_ids !== void 0 && (r.canary_tenant_ids = n.canary_tenant_ids ? JSON.stringify(n.canary_tenant_ids) : null), n.filter !== void 0 && (r.filter = n.filter ? JSON.stringify(n.filter) : null), n.finished_at !== void 0 && (r.finished_at = n.finished_at), await e.update(yi).set(r).where(a(yi.id, t)), !0;
5258
5277
  },
5259
5278
  async remove(t) {
5260
- return (await e.select({ id: vi.id }).from(vi).where(a(vi.id, t)).limit(1)).length === 0 ? !1 : (await e.delete(vi).where(a(vi.id, t)), !0);
5279
+ return (await e.select({ id: yi.id }).from(yi).where(a(yi.id, t)).limit(1)).length === 0 ? !1 : (await e.delete(yi).where(a(yi.id, t)), !0);
5261
5280
  }
5262
5281
  };
5263
5282
  }
5264
5283
  //#endregion
5265
5284
  //#region src/adapters/index.ts
5266
- function Gi(e, t = { useTransactions: !0 }) {
5285
+ function Ki(e, t = { useTransactions: !0 }) {
5267
5286
  let n = {
5268
5287
  actions: bt(e),
5269
5288
  actionExecutions: St(e),
@@ -5299,27 +5318,27 @@ function Gi(e, t = { useTransactions: !0 }) {
5299
5318
  refreshTokens: hr(e),
5300
5319
  resourceServers: xr(e),
5301
5320
  rolePermissions: Sr(e),
5302
- userPermissions: Cr(e),
5303
- roles: Tr(e),
5304
- sessions: Ar(e),
5305
- sessionCleanup: gi(e),
5306
- tenants: Fr(e),
5321
+ userPermissions: wr(e),
5322
+ roles: Er(e),
5323
+ sessions: jr(e),
5324
+ sessionCleanup: _i(e),
5325
+ tenants: Ir(e),
5307
5326
  tokenExchangeProfiles: ir(e),
5308
5327
  ...t.controlPlane ? {
5309
- tenantOperations: xi(e),
5310
- tenantOperationEvents: Vi(e),
5311
- tenantOperationRows: Oi(e),
5312
- rollouts: Wi(e)
5328
+ tenantOperations: Si(e),
5329
+ tenantOperationEvents: Hi(e),
5330
+ tenantOperationRows: ki(e),
5331
+ rollouts: Gi(e)
5313
5332
  } : {},
5314
- themes: Rr(e),
5315
- universalLoginTemplates: zr(e),
5316
- users: ni(e),
5317
- userActivity: Vr(e),
5318
- userRoles: ri(e),
5319
- userOrganizations: ii(e),
5320
- stats: ci(e),
5321
- analytics: mi(e),
5322
- outbox: Wr(e),
5333
+ themes: zr(e),
5334
+ universalLoginTemplates: Br(e),
5335
+ users: ri(e),
5336
+ userActivity: Hr(e),
5337
+ userRoles: ii(e),
5338
+ userOrganizations: ai(e),
5339
+ stats: li(e),
5340
+ analytics: hi(e),
5341
+ outbox: Gr(e),
5323
5342
  async transaction(r) {
5324
5343
  if (t.useTransactions === !1 || Ct(e)) return r(n);
5325
5344
  await e.run(y`BEGIN`);
@@ -5335,7 +5354,7 @@ function Gi(e, t = { useTransactions: !0 }) {
5335
5354
  }
5336
5355
  //#endregion
5337
5356
  //#region src/adapters/resolveHost.ts
5338
- function Ki(e) {
5357
+ function qi(e) {
5339
5358
  if (!e) return { path: "/*" };
5340
5359
  try {
5341
5360
  let t = JSON.parse(e), n = xe.safeParse(t);
@@ -5343,7 +5362,7 @@ function Ki(e) {
5343
5362
  } catch {}
5344
5363
  return { path: "/*" };
5345
5364
  }
5346
- function qi(e) {
5365
+ function Ji(e) {
5347
5366
  if (!e) return [];
5348
5367
  try {
5349
5368
  let t = JSON.parse(e);
@@ -5358,20 +5377,20 @@ function qi(e) {
5358
5377
  return [];
5359
5378
  }
5360
5379
  }
5361
- async function Ji(e, r) {
5380
+ async function Yi(e, r) {
5362
5381
  let i = r.toLowerCase(), o = (await e.select({
5363
- custom_domain_id: V.custom_domain_id,
5364
- tenant_id: V.tenant_id,
5365
- domain: V.domain
5366
- }).from(V).where(a(V.domain, i)).limit(1))[0];
5382
+ custom_domain_id: Ke.custom_domain_id,
5383
+ tenant_id: Ke.tenant_id,
5384
+ domain: Ke.domain
5385
+ }).from(Ke).where(a(Ke.domain, i)).limit(1))[0];
5367
5386
  if (!o) return null;
5368
5387
  let s = (await e.select().from(Y).where(t(a(Y.tenant_id, o.tenant_id), a(Y.custom_domain_id, o.custom_domain_id))).orderBy(n(Y.priority), n(Y.created_at))).map((e) => ({
5369
5388
  id: e.id,
5370
5389
  tenant_id: e.tenant_id,
5371
5390
  custom_domain_id: e.custom_domain_id,
5372
5391
  priority: e.priority,
5373
- match: Ki(e.match),
5374
- handlers: qi(e.handlers),
5392
+ match: qi(e.match),
5393
+ handlers: Ji(e.handlers),
5375
5394
  created_at: e.created_at,
5376
5395
  updated_at: e.updated_at
5377
5396
  }));
@@ -5384,11 +5403,11 @@ async function Ji(e, r) {
5384
5403
  }
5385
5404
  //#endregion
5386
5405
  //#region src/adapters/proxyData.ts
5387
- function Yi(e) {
5406
+ function Xi(e) {
5388
5407
  return {
5389
5408
  proxyRoutes: er(e),
5390
- resolveHost: (t) => Ji(e, t)
5409
+ resolveHost: (t) => Yi(e, t)
5391
5410
  };
5392
5411
  }
5393
5412
  //#endregion
5394
- export { Yi as createProxyDataAdapter, er as createProxyRoutesAdapter, Gi as default, ft as sqlite };
5413
+ export { Xi as createProxyDataAdapter, er as createProxyRoutesAdapter, Ki as default, ft as sqlite };