@authhero/adapter-interfaces 1.11.0 → 1.13.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.
@@ -2,26 +2,28 @@ import { z as e } from "@hono/zod-openapi";
2
2
  const r = e.object({
3
3
  created_at: e.string(),
4
4
  updated_at: e.string()
5
- }), Q = e.object({
5
+ }), Z = e.object({
6
6
  id: e.string(),
7
7
  version: e.string().optional()
8
- }), Z = e.object({
8
+ }), Q = e.object({
9
9
  name: e.string(),
10
10
  version: e.string()
11
11
  }), $ = e.object({
12
12
  name: e.string(),
13
- value: e.string()
13
+ // Optional on writes so PATCH callers can omit the value to preserve the
14
+ // existing secret. The adapter merges by name when value is missing.
15
+ value: e.string().optional()
14
16
  }), w = e.object({
15
17
  name: e.string().max(255),
16
18
  code: e.string().max(1e5),
17
- supported_triggers: e.array(Q).optional(),
19
+ supported_triggers: e.array(Z).optional(),
18
20
  runtime: e.string().max(50).optional(),
19
- dependencies: e.array(Z).optional(),
21
+ dependencies: e.array(Q).optional(),
20
22
  secrets: e.array($).optional()
21
23
  }), Wo = w.partial().extend({
22
24
  status: e.enum(["draft", "built"]).optional(),
23
25
  deployed_at: e.string().optional()
24
- }), zo = w.extend({
26
+ }), Ko = w.extend({
25
27
  id: e.string(),
26
28
  tenant_id: e.string(),
27
29
  status: e.enum(["draft", "built"]).default("built"),
@@ -95,7 +97,7 @@ const r = e.object({
95
97
  hostname: e.string(),
96
98
  is_mobile: e.boolean().optional(),
97
99
  timestamp: e.string()
98
- }), Ko = re.extend({
100
+ }), zo = re.extend({
99
101
  id: e.string()
100
102
  }), qo = e.enum(["AUTH0", "EMAIL", "REDIRECT"]), Xo = e.enum([
101
103
  "CREATE_USER",
@@ -166,7 +168,7 @@ const r = e.object({
166
168
  description: "Unique identifier for the flow",
167
169
  example: "af_12tMpdJ3iek7svMyZkSh5M"
168
170
  })
169
- }), Qo = e.object({
171
+ }), Zo = e.object({
170
172
  page: e.string().min(0).optional().default("0").transform((t) => parseInt(t, 10)).openapi({
171
173
  description: "The page number where 0 is the first page"
172
174
  }),
@@ -182,7 +184,7 @@ const r = e.object({
182
184
  q: e.string().optional().openapi({
183
185
  description: "A lucene query string used to filter the results"
184
186
  })
185
- }), Zo = e.object({
187
+ }), Qo = e.object({
186
188
  start: e.number(),
187
189
  limit: e.number(),
188
190
  length: e.number(),
@@ -298,9 +300,9 @@ const r = e.object({
298
300
  user_id: e.string()
299
301
  }).catchall(e.any());
300
302
  let Ee = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", Se = (t = 21) => {
301
- let o = "", i = crypto.getRandomValues(new Uint8Array(t |= 0));
303
+ let o = "", n = crypto.getRandomValues(new Uint8Array(t |= 0));
302
304
  for (; t--; )
303
- o += Ee[i[t] & 63];
305
+ o += Ee[n[t] & 63];
304
306
  return o;
305
307
  };
306
308
  const ye = e.object({
@@ -426,8 +428,14 @@ const ye = e.object({
426
428
  addons: e.record(e.any()).default({}).optional().openapi({
427
429
  description: "Addons enabled for this client and their associated configurations."
428
430
  }),
429
- token_endpoint_auth_method: e.enum(["none", "client_secret_post", "client_secret_basic"]).default("client_secret_basic").optional().openapi({
430
- description: "Defines the requested authentication method for the token endpoint. Can be none (public client without a client secret), client_secret_post (client uses HTTP POST parameters), or client_secret_basic (client uses HTTP Basic)."
431
+ token_endpoint_auth_method: e.enum([
432
+ "none",
433
+ "client_secret_post",
434
+ "client_secret_basic",
435
+ "client_secret_jwt",
436
+ "private_key_jwt"
437
+ ]).default("client_secret_basic").optional().openapi({
438
+ description: "Defines the requested authentication method for the token endpoint. `none` (public client), `client_secret_post` / `client_secret_basic` (HTTP POST / Basic), `client_secret_jwt` (RFC 7523 HMAC assertion using client_secret), or `private_key_jwt` (RFC 7523 asymmetric assertion verified against the client's `jwks` / `jwks_uri`)."
431
439
  }),
432
440
  client_metadata: e.record(e.string().max(255)).default({}).optional().openapi({
433
441
  description: 'Metadata associated with the client, in the form of an object with string values (max 255 chars). Maximum of 10 metadata properties allowed. Field names (max 255 chars) are alphanumeric and may only include the following special characters: :,-+=_*?"/()<>@ [Tab][Space]'
@@ -689,8 +697,8 @@ const C = e.object({
689
697
  je,
690
698
  Re
691
699
  ]);
692
- var De = /* @__PURE__ */ ((t) => (t.STEP = "STEP", t.FLOW = "FLOW", t.CONDITION = "CONDITION", t.ACTION = "ACTION", t))(De || {});
693
- const ve = e.object({
700
+ var ve = /* @__PURE__ */ ((t) => (t.STEP = "STEP", t.FLOW = "FLOW", t.CONDITION = "CONDITION", t.ACTION = "ACTION", t))(ve || {});
701
+ const De = e.object({
694
702
  id: e.string(),
695
703
  type: e.literal(
696
704
  "STEP"
@@ -741,7 +749,7 @@ const ve = e.object({
741
749
  type: e.string(),
742
750
  coordinates: m
743
751
  }).passthrough(), Fe = e.union([
744
- ve,
752
+ De,
745
753
  Le,
746
754
  Ue,
747
755
  xe
@@ -771,12 +779,12 @@ const ve = e.object({
771
779
  created_at: !0,
772
780
  updated_at: !0
773
781
  });
774
- var D = /* @__PURE__ */ ((t) => (t.TOKEN = "token", t.ID_TOKEN = "id_token", t.TOKEN_ID_TOKEN = "token id_token", t.CODE = "code", t))(D || {}), v = /* @__PURE__ */ ((t) => (t.QUERY = "query", t.FRAGMENT = "fragment", t.FORM_POST = "form_post", t.WEB_MESSAGE = "web_message", t.SAML_POST = "saml_post", t))(v || {}), L = /* @__PURE__ */ ((t) => (t.S256 = "S256", t.Plain = "plain", t))(L || {});
782
+ var v = /* @__PURE__ */ ((t) => (t.TOKEN = "token", t.ID_TOKEN = "id_token", t.TOKEN_ID_TOKEN = "token id_token", t.CODE = "code", t))(v || {}), D = /* @__PURE__ */ ((t) => (t.QUERY = "query", t.FRAGMENT = "fragment", t.FORM_POST = "form_post", t.WEB_MESSAGE = "web_message", t.SAML_POST = "saml_post", t))(D || {}), L = /* @__PURE__ */ ((t) => (t.S256 = "S256", t.Plain = "plain", t))(L || {});
775
783
  const Ge = e.object({
776
784
  client_id: e.string(),
777
785
  act_as: e.string().optional(),
778
- response_type: e.nativeEnum(D).optional(),
779
- response_mode: e.nativeEnum(v).optional(),
786
+ response_type: e.nativeEnum(v).optional(),
787
+ response_mode: e.nativeEnum(D).optional(),
780
788
  redirect_uri: e.string().optional(),
781
789
  audience: e.string().optional(),
782
790
  organization: e.string().optional(),
@@ -863,7 +871,7 @@ const Ge = e.object({
863
871
  }), rn = e.object({
864
872
  ...We.shape,
865
873
  created_at: e.string()
866
- }), ze = e.object({
874
+ }), Ke = e.object({
867
875
  kid: e.string().optional(),
868
876
  team_id: e.string().optional(),
869
877
  realms: e.string().optional(),
@@ -883,6 +891,8 @@ const Ge = e.object({
883
891
  twilio_sid: e.string().optional(),
884
892
  twilio_token: e.string().optional(),
885
893
  icon_url: e.string().optional(),
894
+ // Email domains that route to this connection via Home Realm Discovery
895
+ domain_aliases: e.array(e.string()).optional(),
886
896
  // Password policy options for Username-Password-Authentication connections
887
897
  passwordPolicy: e.enum(["none", "low", "fair", "good", "excellent"]).optional(),
888
898
  password_complexity_options: e.object({
@@ -982,21 +992,21 @@ function T(t) {
982
992
  return t.filter((o) => o !== null).map(T);
983
993
  if (t && typeof t == "object") {
984
994
  const o = {};
985
- for (const [i, h] of Object.entries(t))
986
- h !== null && (o[i] = T(h));
995
+ for (const [n, h] of Object.entries(t))
996
+ h !== null && (o[n] = T(h));
987
997
  return o;
988
998
  }
989
999
  return t;
990
1000
  }
991
1001
  }
992
- const Ke = e.object({
1002
+ const ze = e.object({
993
1003
  id: e.string().optional(),
994
1004
  name: e.string(),
995
1005
  display_name: e.string().optional(),
996
1006
  strategy: e.string(),
997
1007
  options: e.preprocess(
998
1008
  (t) => t === null ? {} : T(t),
999
- ze
1009
+ Ke
1000
1010
  ).default({}),
1001
1011
  enabled_clients: e.array(e.string()).default([]).optional(),
1002
1012
  response_type: e.custom().optional(),
@@ -1009,7 +1019,7 @@ const Ke = e.object({
1009
1019
  id: e.string(),
1010
1020
  created_at: e.string().transform((t) => t === null ? "" : t),
1011
1021
  updated_at: e.string().transform((t) => t === null ? "" : t)
1012
- }).extend(Ke.shape), qe = e.object({
1022
+ }).extend(ze.shape), qe = e.object({
1013
1023
  domain: e.string(),
1014
1024
  custom_domain_id: e.string().optional(),
1015
1025
  type: e.enum(["auth0_managed_certs", "self_managed_certs"]),
@@ -1057,12 +1067,12 @@ const Ke = e.object({
1057
1067
  config: e.object({
1058
1068
  text: e.string().optional()
1059
1069
  }).optional()
1060
- }), Qe = l.extend({
1070
+ }), Ze = l.extend({
1061
1071
  type: e.literal("HTML"),
1062
1072
  config: e.object({
1063
1073
  content: e.string().optional()
1064
1074
  }).optional()
1065
- }), Ze = l.extend({
1075
+ }), Qe = l.extend({
1066
1076
  type: e.literal("IMAGE"),
1067
1077
  config: e.object({
1068
1078
  src: e.string().optional(),
@@ -1118,7 +1128,7 @@ const Ke = e.object({
1118
1128
  config: e.object({
1119
1129
  site_key: e.string().optional()
1120
1130
  })
1121
- }), n = O.extend({
1131
+ }), i = O.extend({
1122
1132
  category: e.literal("FIELD").optional(),
1123
1133
  label: e.string().min(1).optional(),
1124
1134
  hint: e.string().min(1).max(500).optional(),
@@ -1131,12 +1141,12 @@ const Ke = e.object({
1131
1141
  ).optional(),
1132
1142
  required: e.boolean().optional(),
1133
1143
  sensitive: e.boolean().optional()
1134
- }), rt = n.extend({
1144
+ }), rt = i.extend({
1135
1145
  type: e.literal("BOOLEAN"),
1136
1146
  config: e.object({
1137
1147
  default_value: e.boolean().optional()
1138
1148
  }).optional()
1139
- }), st = n.extend({
1149
+ }), st = i.extend({
1140
1150
  type: e.literal("CARDS"),
1141
1151
  config: e.object({
1142
1152
  options: e.array(
@@ -1149,7 +1159,7 @@ const Ke = e.object({
1149
1159
  ).optional(),
1150
1160
  multi_select: e.boolean().optional()
1151
1161
  }).optional()
1152
- }), lt = n.extend({
1162
+ }), lt = i.extend({
1153
1163
  type: e.literal("CHOICE"),
1154
1164
  config: e.object({
1155
1165
  options: e.array(
@@ -1162,7 +1172,7 @@ const Ke = e.object({
1162
1172
  multiple: e.boolean().optional(),
1163
1173
  default_value: e.union([e.string(), e.array(e.string())]).optional()
1164
1174
  }).optional()
1165
- }), pt = n.extend({
1175
+ }), pt = i.extend({
1166
1176
  type: e.literal("CUSTOM"),
1167
1177
  config: e.object({
1168
1178
  component: e.string().optional(),
@@ -1170,7 +1180,7 @@ const Ke = e.object({
1170
1180
  schema: e.record(e.any()).optional(),
1171
1181
  code: e.string().optional()
1172
1182
  })
1173
- }), ct = n.extend({
1183
+ }), ct = i.extend({
1174
1184
  type: e.literal("DATE"),
1175
1185
  config: e.object({
1176
1186
  format: e.string().optional(),
@@ -1178,7 +1188,7 @@ const Ke = e.object({
1178
1188
  max: e.string().optional(),
1179
1189
  default_value: e.string().optional()
1180
1190
  }).optional()
1181
- }), dt = n.extend({
1191
+ }), dt = i.extend({
1182
1192
  type: e.literal("DROPDOWN"),
1183
1193
  config: e.object({
1184
1194
  options: e.array(
@@ -1192,26 +1202,26 @@ const Ke = e.object({
1192
1202
  multiple: e.boolean().optional(),
1193
1203
  default_value: e.union([e.string(), e.array(e.string())]).optional()
1194
1204
  }).optional()
1195
- }), _t = n.extend({
1205
+ }), _t = i.extend({
1196
1206
  type: e.literal("EMAIL"),
1197
1207
  config: e.object({
1198
1208
  placeholder: e.string().optional(),
1199
1209
  default_value: e.string().optional()
1200
1210
  }).optional()
1201
- }), gt = n.extend({
1211
+ }), gt = i.extend({
1202
1212
  type: e.literal("FILE"),
1203
1213
  config: e.object({
1204
1214
  accept: e.string().optional(),
1205
1215
  max_size: e.number().optional(),
1206
1216
  multiple: e.boolean().optional()
1207
1217
  }).optional()
1208
- }), ut = n.extend({
1218
+ }), ut = i.extend({
1209
1219
  type: e.literal("LEGAL"),
1210
1220
  config: e.object({
1211
1221
  text: e.string(),
1212
1222
  html: e.boolean().optional()
1213
1223
  }).optional()
1214
- }), mt = n.extend({
1224
+ }), mt = i.extend({
1215
1225
  type: e.literal("NUMBER"),
1216
1226
  config: e.object({
1217
1227
  placeholder: e.string().optional(),
@@ -1220,7 +1230,7 @@ const Ke = e.object({
1220
1230
  step: e.number().optional(),
1221
1231
  default_value: e.string().optional()
1222
1232
  }).optional()
1223
- }), ht = n.extend({
1233
+ }), ht = i.extend({
1224
1234
  type: e.literal("PASSWORD"),
1225
1235
  config: e.object({
1226
1236
  placeholder: e.string().optional(),
@@ -1229,13 +1239,13 @@ const Ke = e.object({
1229
1239
  forgot_password_link: e.string().optional(),
1230
1240
  default_value: e.string().optional()
1231
1241
  }).optional()
1232
- }), bt = n.extend({
1242
+ }), bt = i.extend({
1233
1243
  type: e.literal("PAYMENT"),
1234
1244
  config: e.object({
1235
1245
  provider: e.string().optional(),
1236
1246
  currency: e.string().optional()
1237
1247
  }).optional()
1238
- }), ft = n.extend({
1248
+ }), ft = i.extend({
1239
1249
  type: e.literal("SOCIAL"),
1240
1250
  config: e.object({
1241
1251
  providers: e.array(e.string()).optional(),
@@ -1250,7 +1260,7 @@ const Ke = e.object({
1250
1260
  })
1251
1261
  ).optional()
1252
1262
  }).optional()
1253
- }), Et = n.extend({
1263
+ }), Et = i.extend({
1254
1264
  type: e.literal("TEL"),
1255
1265
  config: e.object({
1256
1266
  placeholder: e.string().optional(),
@@ -1258,7 +1268,7 @@ const Ke = e.object({
1258
1268
  default_value: e.string().optional(),
1259
1269
  allow_email: e.boolean().optional()
1260
1270
  }).optional()
1261
- }), St = n.extend({
1271
+ }), St = i.extend({
1262
1272
  type: e.literal("TEXT"),
1263
1273
  config: e.object({
1264
1274
  placeholder: e.string().optional(),
@@ -1266,13 +1276,13 @@ const Ke = e.object({
1266
1276
  max_length: e.number().optional(),
1267
1277
  default_value: e.string().optional()
1268
1278
  }).optional()
1269
- }), yt = n.extend({
1279
+ }), yt = i.extend({
1270
1280
  type: e.literal("COUNTRY"),
1271
1281
  config: e.object({
1272
1282
  placeholder: e.string().optional(),
1273
1283
  default_value: e.string().optional()
1274
1284
  }).optional()
1275
- }), At = n.extend({
1285
+ }), At = i.extend({
1276
1286
  type: e.literal("URL"),
1277
1287
  config: e.object({
1278
1288
  placeholder: e.string().optional(),
@@ -1280,8 +1290,8 @@ const Ke = e.object({
1280
1290
  }).optional()
1281
1291
  }), It = e.discriminatedUnion("type", [
1282
1292
  Ye,
1283
- Qe,
1284
1293
  Ze,
1294
+ Qe,
1285
1295
  $e,
1286
1296
  Je,
1287
1297
  et,
@@ -1420,7 +1430,7 @@ const Ke = e.object({
1420
1430
  id: e.number().optional(),
1421
1431
  text: e.string(),
1422
1432
  type: e.enum(["info", "error", "success", "warning"])
1423
- }), Dt = e.object({
1433
+ }), vt = e.object({
1424
1434
  id: e.string().optional(),
1425
1435
  text: e.string(),
1426
1436
  href: e.string(),
@@ -1434,7 +1444,7 @@ const Ke = e.object({
1434
1444
  description: e.string().optional(),
1435
1445
  components: e.array(U),
1436
1446
  messages: e.array(kt).optional(),
1437
- links: e.array(Dt).optional(),
1447
+ links: e.array(vt).optional(),
1438
1448
  /** Footer HTML content displayed at the very bottom of the widget (e.g., terms and conditions) */
1439
1449
  footer: e.string().optional()
1440
1450
  });
@@ -1514,7 +1524,7 @@ const x = e.enum([
1514
1524
  * Everything else is opaque to the runtime. Persisted as JSON.
1515
1525
  */
1516
1526
  metadata: e.record(e.unknown()).optional()
1517
- }, vt = e.object({
1527
+ }, Dt = e.object({
1518
1528
  ...p,
1519
1529
  trigger_id: x,
1520
1530
  url: e.string()
@@ -1531,7 +1541,7 @@ const x = e.enum([
1531
1541
  trigger_id: M,
1532
1542
  code_id: e.string()
1533
1543
  }), bn = e.union([
1534
- vt,
1544
+ Dt,
1535
1545
  Lt,
1536
1546
  Ut,
1537
1547
  xt
@@ -1575,7 +1585,7 @@ const x = e.enum([
1575
1585
  name: e.string().optional()
1576
1586
  }), Wt = e.object({
1577
1587
  email: e.string().optional()
1578
- }), zt = e.object({
1588
+ }), Kt = e.object({
1579
1589
  organization_id: e.string().max(50),
1580
1590
  inviter: Bt,
1581
1591
  invitee: Wt,
@@ -1593,7 +1603,7 @@ const x = e.enum([
1593
1603
  created_at: e.string().datetime(),
1594
1604
  expires_at: e.string().datetime(),
1595
1605
  ticket_id: e.string().optional()
1596
- }).extend(zt.shape), Kt = e.object({
1606
+ }).extend(Kt.shape), zt = e.object({
1597
1607
  alg: e.enum([
1598
1608
  "RS256",
1599
1609
  "RS384",
@@ -1605,15 +1615,35 @@ const x = e.enum([
1605
1615
  "HS384",
1606
1616
  "HS512"
1607
1617
  ]),
1608
- e: e.string(),
1609
1618
  kid: e.string(),
1610
1619
  kty: e.enum(["RSA", "EC", "oct"]),
1611
- n: e.string(),
1620
+ use: e.enum(["sig", "enc"]).optional(),
1621
+ // RSA-specific public-key members (RFC 7518 §6.3.1).
1622
+ n: e.string().optional(),
1623
+ e: e.string().optional(),
1624
+ // EC-specific public-key members (RFC 7518 §6.2.1).
1625
+ crv: e.string().optional(),
1626
+ x: e.string().optional(),
1627
+ y: e.string().optional(),
1612
1628
  x5t: e.string().optional(),
1613
- x5c: e.array(e.string()).optional(),
1614
- use: e.enum(["sig", "enc"]).optional()
1629
+ x5c: e.array(e.string()).optional()
1630
+ }).superRefine((t, o) => {
1631
+ if (t.kty === "RSA")
1632
+ for (const n of ["n", "e"])
1633
+ t[n] || o.addIssue({
1634
+ code: e.ZodIssueCode.custom,
1635
+ path: [n],
1636
+ message: `RSA JWK is missing required member '${n}'`
1637
+ });
1638
+ else if (t.kty === "EC")
1639
+ for (const n of ["crv", "x", "y"])
1640
+ t[n] || o.addIssue({
1641
+ code: e.ZodIssueCode.custom,
1642
+ path: [n],
1643
+ message: `EC JWK is missing required member '${n}'`
1644
+ });
1615
1645
  }), yn = e.object({
1616
- keys: e.array(Kt)
1646
+ keys: e.array(zt)
1617
1647
  }), An = e.object({
1618
1648
  issuer: e.string(),
1619
1649
  authorization_endpoint: e.string(),
@@ -1636,6 +1666,7 @@ const x = e.enum([
1636
1666
  claims_supported: e.array(e.string()),
1637
1667
  request_uri_parameter_supported: e.boolean(),
1638
1668
  request_parameter_supported: e.boolean(),
1669
+ request_object_signing_alg_values_supported: e.array(e.string()).optional(),
1639
1670
  token_endpoint_auth_signing_alg_values_supported: e.array(e.string())
1640
1671
  });
1641
1672
  var G = /* @__PURE__ */ ((t) => (t.PENDING = "pending", t.AUTHENTICATED = "authenticated", t.AWAITING_EMAIL_VERIFICATION = "awaiting_email_verification", t.AWAITING_MFA = "awaiting_mfa", t.AWAITING_HOOK = "awaiting_hook", t.AWAITING_CONTINUATION = "awaiting_continuation", t.COMPLETED = "completed", t.FAILED = "failed", t.EXPIRED = "expired", t))(G || {});
@@ -1829,6 +1860,8 @@ const qt = e.nativeEnum(G), Xt = e.object({
1829
1860
  SUCCESSFULLY_ACCEPTED_USER_INVITE: "si",
1830
1861
  BREACHED_PASSWORD_ON_SIGNUP: "signup_pwd_leak",
1831
1862
  SUCCESS_LOGOUT: "slo",
1863
+ SUCCESS_HOOK: "sh",
1864
+ // Custom AuthHero-specific
1832
1865
  SUCCESS_REVOCATION: "srrt",
1833
1866
  SUCCESS_SIGNUP: "ss",
1834
1867
  FAILED_SS_SSO_OPERATION: "ss_sso_failure",
@@ -1847,10 +1880,10 @@ const qt = e.nativeEnum(G), Xt = e.object({
1847
1880
  WARNING_DURING_LOGIN: "w",
1848
1881
  WARNING_SENDING_NOTIFICATION: "wn",
1849
1882
  WARNING_USER_MANAGEMENT: "wum"
1850
- }, Qt = e.string().refine(
1883
+ }, Zt = e.string().refine(
1851
1884
  (t) => Object.values(Yt).includes(t),
1852
1885
  { message: "Invalid log type" }
1853
- ), Zt = e.object({
1886
+ ), Qt = e.object({
1854
1887
  name: e.string(),
1855
1888
  version: e.string(),
1856
1889
  env: e.object({
@@ -1864,7 +1897,7 @@ const qt = e.nativeEnum(G), Xt = e.object({
1864
1897
  time_zone: e.string(),
1865
1898
  continent_code: e.string()
1866
1899
  }), Jt = e.object({
1867
- type: Qt,
1900
+ type: Zt,
1868
1901
  date: e.string(),
1869
1902
  description: e.string().optional(),
1870
1903
  ip: e.string().optional(),
@@ -1883,7 +1916,7 @@ const qt = e.nativeEnum(G), Xt = e.object({
1883
1916
  strategy: e.string().optional(),
1884
1917
  strategy_type: e.string().optional(),
1885
1918
  hostname: e.string().optional(),
1886
- auth0_client: Zt.optional(),
1919
+ auth0_client: Qt.optional(),
1887
1920
  log_id: e.string().optional(),
1888
1921
  location_info: $t.optional()
1889
1922
  }), Cn = e.object({
@@ -2036,6 +2069,11 @@ const qt = e.nativeEnum(G), Xt = e.object({
2036
2069
  allowed_logout_urls: e.array(e.string()).optional(),
2037
2070
  // Universal Login settings
2038
2071
  default_redirection_uri: e.string().optional(),
2072
+ // Anchor client used for tenant-level flows that aren't tied to a specific
2073
+ // application (e.g. /connect/start DCR consent). When unset, /connect/start
2074
+ // falls back to the first available client. Roughly analogous to Auth0's
2075
+ // "Default App" / Global Client.
2076
+ default_client_id: e.string().optional(),
2039
2077
  // Advanced settings
2040
2078
  enabled_locales: e.array(e.string()).optional(),
2041
2079
  default_directory: e.string().optional(),
@@ -2258,7 +2296,16 @@ const _o = e.object({
2258
2296
  }), mo = e.object({
2259
2297
  background_color: e.string(),
2260
2298
  background_image_url: e.string(),
2261
- page_layout: e.enum(["center", "left", "right"])
2299
+ page_layout: e.enum(["center", "left", "right"]),
2300
+ /**
2301
+ * Where the tenant logo renders on the page.
2302
+ * - "widget" (default): inside the widget card via the widget's own header.
2303
+ * - "chip": as a floating pill in the top-left page corner. The widget's
2304
+ * internal logo is suppressed when this is selected.
2305
+ * - "none": no logo on the page or in the widget.
2306
+ * Optional for backwards compatibility; absent values mean "widget".
2307
+ */
2308
+ logo_placement: e.enum(["widget", "chip", "none"]).optional()
2262
2309
  }), ho = e.object({
2263
2310
  header_text_alignment: e.enum(["center", "left", "right"]),
2264
2311
  logo_height: e.number(),
@@ -2274,12 +2321,12 @@ const _o = e.object({
2274
2321
  widget: ho
2275
2322
  }), kn = bo.extend({
2276
2323
  themeId: e.string()
2277
- }), Dn = e.object({
2324
+ }), vn = e.object({
2278
2325
  universal_login_experience: e.enum(["new", "classic"]).default("new"),
2279
2326
  identifier_first: e.boolean().default(!0),
2280
2327
  password_first: e.boolean().default(!1),
2281
2328
  webauthn_platform_first_factor: e.boolean()
2282
- }), vn = e.object({
2329
+ }), Dn = e.object({
2283
2330
  name: e.string(),
2284
2331
  enabled: e.boolean().optional().default(!0),
2285
2332
  default_from_address: e.string().optional(),
@@ -2418,7 +2465,7 @@ const _o = e.object({
2418
2465
  }),
2419
2466
  created_at: e.string().optional(),
2420
2467
  updated_at: e.string().optional()
2421
- }), Bn = e.array(ko), Do = e.object({
2468
+ }), Bn = e.array(ko), vo = e.object({
2422
2469
  logo_url: e.string().optional().openapi({
2423
2470
  description: "URL of the organization's logo"
2424
2471
  }),
@@ -2430,7 +2477,7 @@ const _o = e.object({
2430
2477
  description: "Page background color in hex format (e.g., #FFFFFF)"
2431
2478
  })
2432
2479
  }).optional()
2433
- }).optional(), vo = e.object({
2480
+ }).optional(), Do = e.object({
2434
2481
  connection_id: e.string().openapi({
2435
2482
  description: "ID of the connection"
2436
2483
  }),
@@ -2465,11 +2512,11 @@ const _o = e.object({
2465
2512
  display_name: e.string().optional().openapi({
2466
2513
  description: "The display name of the organization"
2467
2514
  }),
2468
- branding: Do,
2515
+ branding: vo,
2469
2516
  metadata: e.record(e.any()).default({}).optional().openapi({
2470
2517
  description: "Custom metadata for the organization"
2471
2518
  }),
2472
- enabled_connections: e.array(vo).default([]).optional().openapi({
2519
+ enabled_connections: e.array(Do).default([]).optional().openapi({
2473
2520
  description: "List of enabled connections for the organization"
2474
2521
  }),
2475
2522
  token_quota: Lo
@@ -2497,7 +2544,7 @@ const _o = e.object({
2497
2544
  }).optional(),
2498
2545
  created_at: e.string().optional(),
2499
2546
  updated_at: e.string().optional()
2500
- }), zn = e.array(
2547
+ }), Kn = e.array(
2501
2548
  Fo
2502
2549
  ), Po = e.object({
2503
2550
  user_id: e.string().openapi({
@@ -2506,7 +2553,7 @@ const _o = e.object({
2506
2553
  organization_id: e.string().openapi({
2507
2554
  description: "ID of the organization"
2508
2555
  })
2509
- }), Kn = e.object({
2556
+ }), zn = e.object({
2510
2557
  ...Po.shape,
2511
2558
  ...r.shape,
2512
2559
  id: e.string()
@@ -2677,7 +2724,7 @@ const _o = e.object({
2677
2724
  prompt: Mo,
2678
2725
  language: e.string(),
2679
2726
  custom_text: Ho
2680
- }), Qn = {
2727
+ }), Zn = {
2681
2728
  EMAIL: "email",
2682
2729
  SMS: "sms",
2683
2730
  USERNAME_PASSWORD: "Username-Password-Authentication",
@@ -2692,7 +2739,7 @@ const _o = e.object({
2692
2739
  SAMLP: "samlp",
2693
2740
  WAAD: "waad",
2694
2741
  ADFS: "adfs"
2695
- }, Zn = {
2742
+ }, Qn = {
2696
2743
  DATABASE: "database",
2697
2744
  SOCIAL: "social",
2698
2745
  PASSWORDLESS: "passwordless"
@@ -2704,7 +2751,7 @@ const _o = e.object({
2704
2751
  "webauthn-roaming",
2705
2752
  "webauthn-platform",
2706
2753
  "passkey"
2707
- ]), z = e.object({
2754
+ ]), K = e.object({
2708
2755
  user_id: e.string(),
2709
2756
  type: Go,
2710
2757
  // Phone-specific
@@ -2721,7 +2768,7 @@ const _o = e.object({
2721
2768
  // Common
2722
2769
  confirmed: e.boolean().default(!1)
2723
2770
  });
2724
- function K(t, o) {
2771
+ function z(t, o) {
2725
2772
  t.type === "phone" && !t.phone_number && o.addIssue({
2726
2773
  code: e.ZodIssueCode.custom,
2727
2774
  message: "phone_number is required when type is 'phone'",
@@ -2740,22 +2787,22 @@ function K(t, o) {
2740
2787
  path: ["public_key"]
2741
2788
  }));
2742
2789
  }
2743
- const $n = z.superRefine(K), Jn = e.object({
2744
- ...z.shape,
2790
+ const $n = K.superRefine(z), Jn = e.object({
2791
+ ...K.shape,
2745
2792
  id: e.string(),
2746
2793
  created_at: e.string(),
2747
2794
  updated_at: e.string()
2748
- }).superRefine(K);
2795
+ }).superRefine(z);
2749
2796
  function ei(t) {
2750
- const [o, i] = t.split("|");
2751
- if (!o || !i)
2797
+ const [o, n] = t.split("|");
2798
+ if (!o || !n)
2752
2799
  throw new Error(`Invalid user_id: ${t}`);
2753
- return { connection: o, id: i };
2800
+ return { connection: o, id: n };
2754
2801
  }
2755
2802
  function ti(t) {
2756
2803
  const {
2757
2804
  primary: o,
2758
- secondaries: i,
2805
+ secondaries: n,
2759
2806
  syncMethods: h = ["create", "rawCreate", "update", "remove", "delete", "set"]
2760
2807
  } = t, S = {
2761
2808
  get(c, a) {
@@ -2764,7 +2811,7 @@ function ti(t) {
2764
2811
  const d = c[a];
2765
2812
  return typeof d != "function" ? d : h.includes(a) ? async (..._) => {
2766
2813
  const y = await d.apply(c, _), g = [];
2767
- for (const s of i) {
2814
+ for (const s of n) {
2768
2815
  const b = s.adapter[a];
2769
2816
  if (typeof b != "function")
2770
2817
  continue;
@@ -2806,9 +2853,9 @@ function ni(t) {
2806
2853
  usernameMinLength: 1,
2807
2854
  usernameMaxLength: 15
2808
2855
  };
2809
- const i = o.attributes;
2810
- if (i) {
2811
- const q = ((c = (S = i.username) == null ? void 0 : S.identifier) == null ? void 0 : c.active) === !0, X = ((d = (a = i.email) == null ? void 0 : a.identifier) == null ? void 0 : d.active) !== !1, V = ((y = (_ = i.username) == null ? void 0 : _.validation) == null ? void 0 : y.min_length) ?? 1, Y = ((s = (g = i.username) == null ? void 0 : g.validation) == null ? void 0 : s.max_length) ?? 15;
2856
+ const n = o.attributes;
2857
+ if (n) {
2858
+ const q = ((c = (S = n.username) == null ? void 0 : S.identifier) == null ? void 0 : c.active) === !0, X = ((d = (a = n.email) == null ? void 0 : a.identifier) == null ? void 0 : d.active) !== !1, V = ((y = (_ = n.username) == null ? void 0 : _.validation) == null ? void 0 : y.min_length) ?? 1, Y = ((s = (g = n.username) == null ? void 0 : g.validation) == null ? void 0 : s.max_length) ?? 15;
2812
2859
  return {
2813
2860
  usernameIdentifierActive: q,
2814
2861
  emailIdentifierActive: X,
@@ -2828,9 +2875,9 @@ function ii(t) {
2828
2875
  }
2829
2876
  export {
2830
2877
  Xo as Auth0ActionEnum,
2831
- Zt as Auth0Client,
2832
- v as AuthorizationResponseMode,
2833
- D as AuthorizationResponseType,
2878
+ Qt as Auth0Client,
2879
+ D as AuthorizationResponseMode,
2880
+ v as AuthorizationResponseType,
2834
2881
  L as CodeChallengeMethod,
2835
2882
  k as ComponentCategory,
2836
2883
  R as ComponentType,
@@ -2841,16 +2888,16 @@ export {
2841
2888
  $t as LocationInfo,
2842
2889
  Yt as LogTypes,
2843
2890
  G as LoginSessionState,
2844
- De as NodeType,
2891
+ ve as NodeType,
2845
2892
  ce as RedirectTargetEnum,
2846
- Qn as Strategy,
2847
- Zn as StrategyType,
2848
- Z as actionDependencySchema,
2893
+ Zn as Strategy,
2894
+ Qn as StrategyType,
2895
+ Q as actionDependencySchema,
2849
2896
  w as actionInsertSchema,
2850
2897
  Ue as actionNodeSchema,
2851
- zo as actionSchema,
2898
+ Ko as actionSchema,
2852
2899
  $ as actionSecretSchema,
2853
- Q as actionTriggerSchema,
2900
+ Z as actionTriggerSchema,
2854
2901
  Wo as actionUpdateSchema,
2855
2902
  Vn as activeUsersResponseSchema,
2856
2903
  ee as actorSchema,
@@ -2858,11 +2905,11 @@ export {
2858
2905
  ro as attackProtectionSchema,
2859
2906
  J as auditCategorySchema,
2860
2907
  re as auditEventInsertSchema,
2861
- Ko as auditEventSchema,
2908
+ zo as auditEventSchema,
2862
2909
  ae as auth0ClientSchema,
2863
2910
  nn as auth0FlowInsertSchema,
2864
2911
  He as auth0FlowSchema,
2865
- Qo as auth0QuerySchema,
2912
+ Zo as auth0QuerySchema,
2866
2913
  le as auth0UpdateUserActionSchema,
2867
2914
  $o as auth0UserResponseSchema,
2868
2915
  Ge as authParamsSchema,
@@ -2890,8 +2937,8 @@ export {
2890
2937
  go as colorsSchema,
2891
2938
  kt as componentMessageSchema,
2892
2939
  ke as componentSchema,
2893
- Ke as connectionInsertSchema,
2894
- ze as connectionOptionsSchema,
2940
+ ze as connectionInsertSchema,
2941
+ Ke as connectionOptionsSchema,
2895
2942
  sn as connectionSchema,
2896
2943
  m as coordinatesSchema,
2897
2944
  ti as createPassthroughAdapter,
@@ -2902,7 +2949,7 @@ export {
2902
2949
  Yn as customTextEntrySchema,
2903
2950
  Ho as customTextSchema,
2904
2951
  Xn as dailyStatsSchema,
2905
- vn as emailProviderSchema,
2952
+ Dn as emailProviderSchema,
2906
2953
  se as emailVerificationRulesSchema,
2907
2954
  pe as emailVerifyActionSchema,
2908
2955
  Me as endingSchema,
@@ -2912,7 +2959,7 @@ export {
2912
2959
  Yo as flowSchema,
2913
2960
  je as flowsFieldComponentSchema,
2914
2961
  Le as flowsFlowNodeSchema,
2915
- ve as flowsStepNodeSchema,
2962
+ De as flowsStepNodeSchema,
2916
2963
  u as fontDetailsSchema,
2917
2964
  uo as fontsSchema,
2918
2965
  cn as formControlSchema,
@@ -2930,7 +2977,7 @@ export {
2930
2977
  H as hookTemplateId,
2931
2978
  hn as hookTemplates,
2932
2979
  me as identitySchema,
2933
- zt as inviteInsertSchema,
2980
+ Kt as inviteInsertSchema,
2934
2981
  Sn as inviteSchema,
2935
2982
  Wt as inviteeSchema,
2936
2983
  Bt as inviterSchema,
@@ -2939,7 +2986,7 @@ export {
2939
2986
  ii as isPlainObject,
2940
2987
  un as isWidgetComponent,
2941
2988
  yn as jwksKeySchema,
2942
- Kt as jwksSchema,
2989
+ zt as jwksSchema,
2943
2990
  we as legalComponentSchema,
2944
2991
  ie as locationInfoSchema,
2945
2992
  Jt as logInsertSchema,
@@ -2955,11 +3002,11 @@ export {
2955
3002
  qt as loginSessionStateSchema,
2956
3003
  Fe as nodeSchema,
2957
3004
  An as openIDConfigurationSchema,
2958
- Do as organizationBrandingSchema,
3005
+ vo as organizationBrandingSchema,
2959
3006
  xo as organizationConnectionInsertSchema,
2960
- zn as organizationConnectionListSchema,
3007
+ Kn as organizationConnectionListSchema,
2961
3008
  Fo as organizationConnectionSchema,
2962
- vo as organizationEnabledConnectionSchema,
3009
+ Do as organizationEnabledConnectionSchema,
2963
3010
  Uo as organizationInsertSchema,
2964
3011
  Wn as organizationSchema,
2965
3012
  Lo as organizationTokenQuotaSchema,
@@ -2969,7 +3016,7 @@ export {
2969
3016
  On as passwordSchema,
2970
3017
  ue as profileDataSchema,
2971
3018
  Mo as promptScreenSchema,
2972
- Dn as promptSettingSchema,
3019
+ vn as promptSettingSchema,
2973
3020
  de as redirectActionSchema,
2974
3021
  fo as refreshTokenInsertSchema,
2975
3022
  Ln as refreshTokenSchema,
@@ -2987,7 +3034,7 @@ export {
2987
3034
  Pn as rolePermissionListSchema,
2988
3035
  Co as rolePermissionSchema,
2989
3036
  ko as roleSchema,
2990
- Dt as screenLinkSchema,
3037
+ vt as screenLinkSchema,
2991
3038
  lo as sessionInsertSchema,
2992
3039
  Nn as sessionSchema,
2993
3040
  wn as signingKeySchema,
@@ -3002,11 +3049,11 @@ export {
3002
3049
  bo as themeInsertSchema,
3003
3050
  kn as themeSchema,
3004
3051
  Rn as tokenResponseSchema,
3005
- Zo as totalsSchema,
3052
+ Qo as totalsSchema,
3006
3053
  _n as uiScreenSchema,
3007
3054
  be as userInsertSchema,
3008
3055
  Po as userOrganizationInsertSchema,
3009
- Kn as userOrganizationSchema,
3056
+ zn as userOrganizationSchema,
3010
3057
  To as userPermissionInsertSchema,
3011
3058
  Mn as userPermissionListSchema,
3012
3059
  Oo as userPermissionSchema,