authhero 9.0.0 → 9.1.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.
Files changed (48) hide show
  1. package/dist/assets/u/widget/authhero-widget.esm.js +1 -1
  2. package/dist/assets/u/widget/index.esm.js +1 -1
  3. package/dist/assets/u/widget/{p-52a70476.entry.js → p-cdfc4555.entry.js} +1 -1
  4. package/dist/assets/u/widget/{p-f6babd26.entry.js → p-eca60302.entry.js} +1 -1
  5. package/dist/authhero.cjs +143 -140
  6. package/dist/authhero.d.ts +88 -59
  7. package/dist/authhero.mjs +14326 -13074
  8. package/dist/tsconfig.types.tsbuildinfo +1 -1
  9. package/dist/types/authentication-flows/passwordless.d.ts +3 -2
  10. package/dist/types/constants.d.ts +2 -0
  11. package/dist/types/generated/locale-types.d.ts +2 -0
  12. package/dist/types/helpers/client.d.ts +2 -2
  13. package/dist/types/helpers/revoke-user-sessions.d.ts +15 -0
  14. package/dist/types/helpers/scim/default-mapping.d.ts +10 -0
  15. package/dist/types/helpers/scim/discovery.d.ts +49 -0
  16. package/dist/types/helpers/scim/filter.d.ts +58 -0
  17. package/dist/types/helpers/scim/mint-token.d.ts +11 -0
  18. package/dist/types/helpers/scim/patch.d.ts +23 -0
  19. package/dist/types/helpers/scim/responses.d.ts +36 -0
  20. package/dist/types/helpers/scim/user-mapping.d.ts +76 -0
  21. package/dist/types/helpers/users.d.ts +73 -1
  22. package/dist/types/hooks/user-registration.d.ts +1 -0
  23. package/dist/types/index.d.ts +86 -57
  24. package/dist/types/middlewares/scim-auth.d.ts +19 -0
  25. package/dist/types/routes/auth-api/index.d.ts +14 -14
  26. package/dist/types/routes/auth-api/passwordless.d.ts +14 -14
  27. package/dist/types/routes/management-api/authentication-methods.d.ts +1 -1
  28. package/dist/types/routes/management-api/branding.d.ts +1 -1
  29. package/dist/types/routes/management-api/email-templates.d.ts +18 -18
  30. package/dist/types/routes/management-api/failed-events.d.ts +1 -1
  31. package/dist/types/routes/management-api/forms.d.ts +14 -0
  32. package/dist/types/routes/management-api/guardian.d.ts +5 -5
  33. package/dist/types/routes/management-api/index.d.ts +63 -38
  34. package/dist/types/routes/management-api/logs.d.ts +4 -4
  35. package/dist/types/routes/management-api/organizations.d.ts +2 -2
  36. package/dist/types/routes/management-api/prompts.d.ts +6 -4
  37. package/dist/types/routes/management-api/scim.d.ts +187 -0
  38. package/dist/types/routes/management-api/tenants.d.ts +6 -6
  39. package/dist/types/routes/management-api/users-by-email.d.ts +1 -0
  40. package/dist/types/routes/management-api/users.d.ts +10 -2
  41. package/dist/types/routes/scim/index.d.ts +6 -0
  42. package/dist/types/routes/universal-login/common.d.ts +1 -0
  43. package/dist/types/routes/universal-login/screens/types.d.ts +9 -0
  44. package/dist/types/routes/universal-login/u2-index.d.ts +5 -5
  45. package/dist/types/routes/universal-login/u2-routes.d.ts +5 -5
  46. package/dist/types/types/AuthError.d.ts +1 -1
  47. package/dist/types/utils/cookies.d.ts +11 -0
  48. package/package.json +6 -6
@@ -170,7 +170,7 @@ export declare const u2Routes: OpenAPIHono<{
170
170
  $get: {
171
171
  input: {
172
172
  param: {
173
- screen: "signup" | "consent" | "login" | "reset-password" | "account" | "enter-password" | "impersonate" | "try-connection-result" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
173
+ screen: "login" | "signup" | "consent" | "reset-password" | "account" | "enter-password" | "impersonate" | "try-connection-result" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
174
174
  };
175
175
  } & {
176
176
  query: {
@@ -186,7 +186,7 @@ export declare const u2Routes: OpenAPIHono<{
186
186
  } | {
187
187
  input: {
188
188
  param: {
189
- screen: "signup" | "consent" | "login" | "reset-password" | "account" | "enter-password" | "impersonate" | "try-connection-result" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
189
+ screen: "login" | "signup" | "consent" | "reset-password" | "account" | "enter-password" | "impersonate" | "try-connection-result" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
190
190
  };
191
191
  } & {
192
192
  query: {
@@ -202,7 +202,7 @@ export declare const u2Routes: OpenAPIHono<{
202
202
  } | {
203
203
  input: {
204
204
  param: {
205
- screen: "signup" | "consent" | "login" | "reset-password" | "account" | "enter-password" | "impersonate" | "try-connection-result" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
205
+ screen: "login" | "signup" | "consent" | "reset-password" | "account" | "enter-password" | "impersonate" | "try-connection-result" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
206
206
  };
207
207
  } & {
208
208
  query: {
@@ -222,7 +222,7 @@ export declare const u2Routes: OpenAPIHono<{
222
222
  $post: {
223
223
  input: {
224
224
  param: {
225
- screen: "signup" | "consent" | "login" | "reset-password" | "enter-password" | "impersonate" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
225
+ screen: "login" | "signup" | "consent" | "reset-password" | "enter-password" | "impersonate" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
226
226
  };
227
227
  } & {
228
228
  query: {
@@ -240,7 +240,7 @@ export declare const u2Routes: OpenAPIHono<{
240
240
  } | {
241
241
  input: {
242
242
  param: {
243
- screen: "signup" | "consent" | "login" | "reset-password" | "enter-password" | "impersonate" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
243
+ screen: "login" | "signup" | "consent" | "reset-password" | "enter-password" | "impersonate" | "reset-password/request" | "reset-password/code" | "login/identifier" | "login/email-otp-challenge" | "login/sms-otp-challenge" | "login/login-passwordless-identifier" | "mfa/login-options" | "mfa/totp-challenge" | "mfa/totp-enrollment" | "mfa/phone-challenge" | "mfa/phone-enrollment" | "passkey/challenge" | "passkey/enrollment" | "passkey/enrollment-nudge" | "account/profile" | "account/security" | "account/security/totp-enrollment" | "account/security/phone-enrollment" | "account/linked" | "account/delete" | "account/passkeys" | "connect/start" | "connect/select-tenant";
244
244
  };
245
245
  } & {
246
246
  query: {
@@ -1,6 +1,6 @@
1
1
  import { HTTPException } from "hono/http-exception";
2
2
  import { ContentfulStatusCode } from "hono/utils/http-status";
3
- export type HttpExceptionCode = "EMAIL_NOT_VERIFIED" | "INVALID_PASSWORD" | "USER_NOT_FOUND" | "TOO_MANY_FAILED_LOGINS" | "TOO_MANY_REQUESTS";
3
+ export type HttpExceptionCode = "EMAIL_NOT_VERIFIED" | "INVALID_PASSWORD" | "USER_NOT_FOUND" | "USER_BLOCKED" | "TOO_MANY_FAILED_LOGINS" | "TOO_MANY_REQUESTS";
4
4
  export type HttpExceptionOptions = {
5
5
  code: HttpExceptionCode;
6
6
  res?: Response;
@@ -26,3 +26,14 @@ export declare function clearAuthCookie(tenant_id: string, hostname?: string): s
26
26
  * Returns an array of Set-Cookie headers.
27
27
  */
28
28
  export declare function serializeAuthCookie(tenant_id: string, value: string, hostname?: string): string[];
29
+ /**
30
+ * "Last used" connection hint (opt-in via promptSettings.show_last_used_connection).
31
+ *
32
+ * Stores only the connection name — no PII, no fingerprint. Read server-side
33
+ * on the identifier/login screens to badge the matching connection button,
34
+ * so it stays `httpOnly`. SameSite=Lax (not None): it is only read on
35
+ * top-level navigations to the login page, never inside the silent-auth
36
+ * iframe, and Lax also lets it survive without `partitioned`.
37
+ */
38
+ export declare function getLastUsedConnectionCookie(tenant_id: string, cookieHeaders?: string): string | undefined;
39
+ export declare function serializeLastUsedConnectionCookie(tenant_id: string, connectionName: string, hostname?: string): string;
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "type": "git",
12
12
  "url": "https://github.com/markusahlstrand/authhero"
13
13
  },
14
- "version": "9.0.0",
14
+ "version": "9.1.0",
15
15
  "files": [
16
16
  "dist"
17
17
  ],
@@ -63,8 +63,8 @@
63
63
  "vite": "^8.0.14",
64
64
  "vite-plugin-dts": "^4.5.4",
65
65
  "vitest": "^4.1.7",
66
- "@authhero/kysely-adapter": "12.0.0",
67
- "@authhero/widget": "0.35.0"
66
+ "@authhero/kysely-adapter": "12.1.0",
67
+ "@authhero/widget": "0.36.0"
68
68
  },
69
69
  "dependencies": {
70
70
  "@peculiar/x509": "^1.14.0",
@@ -81,9 +81,9 @@
81
81
  "qrcode": "^1.5.4",
82
82
  "sanitize-html": "^2.17.4",
83
83
  "xstate": "^5.31.1",
84
- "@authhero/adapter-interfaces": "4.3.0",
85
- "@authhero/proxy": "0.10.0",
86
- "@authhero/saml": "0.5.0"
84
+ "@authhero/adapter-interfaces": "4.4.0",
85
+ "@authhero/proxy": "0.10.1",
86
+ "@authhero/saml": "0.5.1"
87
87
  },
88
88
  "peerDependencies": {
89
89
  "@authhero/widget": "^0.1.0",