@absolutejs/auth 0.55.5 → 0.55.7

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 (219) hide show
  1. package/README.md +6 -1
  2. package/dist/agents/index.js +36 -6
  3. package/dist/agents/index.js.map +6 -5
  4. package/dist/index.d.ts +3400 -8
  5. package/dist/index.js +777 -522
  6. package/dist/index.js.map +17 -13
  7. package/dist/server.d.ts +6 -6
  8. package/dist/server.js +775 -522
  9. package/dist/server.js.map +18 -14
  10. package/package.json +1 -1
  11. package/dist/abuse/captcha.d.ts +0 -11
  12. package/dist/abuse/config.d.ts +0 -29
  13. package/dist/actions.d.ts +0 -27
  14. package/dist/adaptive/config.d.ts +0 -34
  15. package/dist/adaptive/fingerprint.d.ts +0 -2
  16. package/dist/adaptive/inMemoryStores.d.ts +0 -3
  17. package/dist/adaptive/postgresStores.d.ts +0 -245
  18. package/dist/adaptive/types.d.ts +0 -62
  19. package/dist/agents/config.d.ts +0 -44
  20. package/dist/agents/context.d.ts +0 -46
  21. package/dist/agents/idJag.d.ts +0 -49
  22. package/dist/agents/inMemoryStores.d.ts +0 -4
  23. package/dist/agents/oidcAdapter.d.ts +0 -12
  24. package/dist/agents/postgresStores.d.ts +0 -569
  25. package/dist/agents/principal.d.ts +0 -4
  26. package/dist/agents/registration.d.ts +0 -162
  27. package/dist/agents/registrationClient.d.ts +0 -50
  28. package/dist/agents/routes.d.ts +0 -214
  29. package/dist/agents/types.d.ts +0 -129
  30. package/dist/apikeys/config.d.ts +0 -64
  31. package/dist/apikeys/inMemoryStores.d.ts +0 -4
  32. package/dist/apikeys/postgresStores.d.ts +0 -359
  33. package/dist/apikeys/routes.d.ts +0 -83
  34. package/dist/apikeys/types.d.ts +0 -53
  35. package/dist/audit/config.d.ts +0 -9
  36. package/dist/audit/export.d.ts +0 -2
  37. package/dist/audit/inMemoryAuditStore.d.ts +0 -2
  38. package/dist/audit/integrity.d.ts +0 -19
  39. package/dist/audit/postgresAuditStore.d.ts +0 -116
  40. package/dist/audit/siem.d.ts +0 -11
  41. package/dist/audit/types.d.ts +0 -19
  42. package/dist/audit/wrap.d.ts +0 -9
  43. package/dist/authInstance.d.ts +0 -7
  44. package/dist/authorization/config.d.ts +0 -19
  45. package/dist/authorization/protectPermission.d.ts +0 -52
  46. package/dist/compliance/cipher.d.ts +0 -5
  47. package/dist/compliance/config.d.ts +0 -18
  48. package/dist/compliance/redaction.d.ts +0 -8
  49. package/dist/compliance/routes.d.ts +0 -89
  50. package/dist/constants.d.ts +0 -10
  51. package/dist/credentials/backgroundOps.d.ts +0 -45
  52. package/dist/credentials/config.d.ts +0 -68
  53. package/dist/credentials/emailValidation.d.ts +0 -9
  54. package/dist/credentials/emailVerification.d.ts +0 -83
  55. package/dist/credentials/import.d.ts +0 -34
  56. package/dist/credentials/inMemoryCredentialStore.d.ts +0 -2
  57. package/dist/credentials/legacyHashers.d.ts +0 -3
  58. package/dist/credentials/login.d.ts +0 -76
  59. package/dist/credentials/passwordPolicy.d.ts +0 -15
  60. package/dist/credentials/passwordReset.d.ts +0 -87
  61. package/dist/credentials/postgresCredentialStore.d.ts +0 -235
  62. package/dist/credentials/register.d.ts +0 -54
  63. package/dist/credentials/routes.d.ts +0 -201
  64. package/dist/credentials/types.d.ts +0 -26
  65. package/dist/crypto.d.ts +0 -32
  66. package/dist/errors.d.ts +0 -12
  67. package/dist/federation/tokenStore.d.ts +0 -29
  68. package/dist/fga/config.d.ts +0 -53
  69. package/dist/fga/inMemoryStores.d.ts +0 -3
  70. package/dist/fga/postgresStores.d.ts +0 -116
  71. package/dist/fga/redisCheckCache.d.ts +0 -11
  72. package/dist/fga/schema.d.ts +0 -2
  73. package/dist/fga/types.d.ts +0 -28
  74. package/dist/htmx/renderers.d.ts +0 -8
  75. package/dist/htmx/routes.d.ts +0 -514
  76. package/dist/htmx/types.d.ts +0 -129
  77. package/dist/linkedProviders/inMemoryStores.d.ts +0 -9
  78. package/dist/linkedProviders/neonStores.d.ts +0 -484
  79. package/dist/linkedProviders/oauthResolver.d.ts +0 -9
  80. package/dist/linkedProviders/resolver.d.ts +0 -22
  81. package/dist/lockout/config.d.ts +0 -17
  82. package/dist/lockout/inMemoryLockoutStore.d.ts +0 -2
  83. package/dist/lockout/postgresLockoutStore.d.ts +0 -71
  84. package/dist/lockout/redisLockoutStore.d.ts +0 -3
  85. package/dist/lockout/types.d.ts +0 -12
  86. package/dist/mfa/backupCodes.d.ts +0 -5
  87. package/dist/mfa/challenge.d.ts +0 -70
  88. package/dist/mfa/config.d.ts +0 -50
  89. package/dist/mfa/gate.d.ts +0 -2
  90. package/dist/mfa/inMemoryMfaStore.d.ts +0 -2
  91. package/dist/mfa/management.d.ts +0 -106
  92. package/dist/mfa/postgresMfaStore.d.ts +0 -206
  93. package/dist/mfa/rotation.d.ts +0 -17
  94. package/dist/mfa/routes.d.ts +0 -234
  95. package/dist/mfa/secret.d.ts +0 -2
  96. package/dist/mfa/sms.d.ts +0 -105
  97. package/dist/mfa/totp.d.ts +0 -91
  98. package/dist/mfa/types.d.ts +0 -23
  99. package/dist/migrations/generate.d.ts +0 -2
  100. package/dist/migrations/index.d.ts +0 -5
  101. package/dist/migrations/runner.d.ts +0 -13
  102. package/dist/migrations/types.d.ts +0 -14
  103. package/dist/oidc/clientAuth.d.ts +0 -19
  104. package/dist/oidc/clientIdMetadata.d.ts +0 -32
  105. package/dist/oidc/config.d.ts +0 -295
  106. package/dist/oidc/dpop.d.ts +0 -23
  107. package/dist/oidc/inMemoryStores.d.ts +0 -11
  108. package/dist/oidc/inMemoryVciStores.d.ts +0 -3
  109. package/dist/oidc/jar.d.ts +0 -14
  110. package/dist/oidc/keys.d.ts +0 -25
  111. package/dist/oidc/logout.d.ts +0 -38
  112. package/dist/oidc/mtls.d.ts +0 -11
  113. package/dist/oidc/par.d.ts +0 -28
  114. package/dist/oidc/postgresStores.d.ts +0 -1187
  115. package/dist/oidc/registration.d.ts +0 -138
  116. package/dist/oidc/routes.d.ts +0 -568
  117. package/dist/oidc/types.d.ts +0 -143
  118. package/dist/oidc/userinfo.d.ts +0 -21
  119. package/dist/oidc/vci.d.ts +0 -159
  120. package/dist/oidc/vciRoutes.d.ts +0 -92
  121. package/dist/organizations/config.d.ts +0 -46
  122. package/dist/organizations/inMemoryOrganizationStore.d.ts +0 -2
  123. package/dist/organizations/operations.d.ts +0 -39
  124. package/dist/organizations/postgresOrganizationStore.d.ts +0 -340
  125. package/dist/organizations/routes.d.ts +0 -298
  126. package/dist/organizations/types.d.ts +0 -45
  127. package/dist/passwordless/config.d.ts +0 -43
  128. package/dist/passwordless/inMemoryPasswordlessTokenStore.d.ts +0 -2
  129. package/dist/passwordless/postgresPasswordlessTokenStore.d.ts +0 -56
  130. package/dist/passwordless/routes.d.ts +0 -162
  131. package/dist/passwordless/types.d.ts +0 -9
  132. package/dist/portal/config.d.ts +0 -34
  133. package/dist/portal/inMemorySetupSessionStore.d.ts +0 -2
  134. package/dist/portal/operations.d.ts +0 -10
  135. package/dist/portal/postgresSetupSessionStore.d.ts +0 -116
  136. package/dist/portal/routes.d.ts +0 -160
  137. package/dist/portal/types.d.ts +0 -16
  138. package/dist/providers/clients.d.ts +0 -1818
  139. package/dist/providersFromEnv.d.ts +0 -19
  140. package/dist/roles/config.d.ts +0 -27
  141. package/dist/roles/inMemoryRoleStore.d.ts +0 -2
  142. package/dist/roles/operations.d.ts +0 -8
  143. package/dist/roles/postgresRoleStore.d.ts +0 -86
  144. package/dist/roles/resolver.d.ts +0 -17
  145. package/dist/roles/routes.d.ts +0 -105
  146. package/dist/roles/types.d.ts +0 -14
  147. package/dist/routes/authorize.d.ts +0 -102
  148. package/dist/routes/callback.d.ts +0 -64
  149. package/dist/routes/profile.d.ts +0 -70
  150. package/dist/routes/protectRoute.d.ts +0 -51
  151. package/dist/routes/refresh.d.ts +0 -74
  152. package/dist/routes/revoke.d.ts +0 -73
  153. package/dist/routes/sessions.d.ts +0 -103
  154. package/dist/routes/signout.d.ts +0 -70
  155. package/dist/routes/stepUp.d.ts +0 -48
  156. package/dist/routes/userStatus.d.ts +0 -72
  157. package/dist/scim/config.d.ts +0 -57
  158. package/dist/scim/extensions.d.ts +0 -30
  159. package/dist/scim/inMemoryScimTokenStore.d.ts +0 -2
  160. package/dist/scim/postgresScimTokenStore.d.ts +0 -86
  161. package/dist/scim/routes.d.ts +0 -366
  162. package/dist/scim/serialize.d.ts +0 -83
  163. package/dist/scim/types.d.ts +0 -54
  164. package/dist/serverConfig.d.ts +0 -10
  165. package/dist/session/access.d.ts +0 -33
  166. package/dist/session/anonymous.d.ts +0 -12
  167. package/dist/session/cleanup.d.ts +0 -45
  168. package/dist/session/impersonation.d.ts +0 -34
  169. package/dist/session/inMemoryStore.d.ts +0 -7
  170. package/dist/session/internalData.d.ts +0 -34
  171. package/dist/session/multiSession.d.ts +0 -27
  172. package/dist/session/neonStore.d.ts +0 -513
  173. package/dist/session/promote.d.ts +0 -23
  174. package/dist/session/redisStore.d.ts +0 -6
  175. package/dist/session/sessionsConfig.d.ts +0 -9
  176. package/dist/session/state.d.ts +0 -33
  177. package/dist/session/types.d.ts +0 -20
  178. package/dist/session/userSessions.d.ts +0 -19
  179. package/dist/sso/config.d.ts +0 -149
  180. package/dist/sso/discoveryRoute.d.ts +0 -63
  181. package/dist/sso/inMemorySamlServiceProviderStore.d.ts +0 -2
  182. package/dist/sso/inMemorySsoConnectionStore.d.ts +0 -2
  183. package/dist/sso/oidcRoutes.d.ts +0 -98
  184. package/dist/sso/postgresSamlServiceProviderStore.d.ts +0 -101
  185. package/dist/sso/postgresSsoConnectionStore.d.ts +0 -116
  186. package/dist/sso/samlIdpRoutes.d.ts +0 -139
  187. package/dist/sso/samlRoutes.d.ts +0 -178
  188. package/dist/sso/types.d.ts +0 -53
  189. package/dist/stores/postgres.d.ts +0 -5
  190. package/dist/stores/redis.d.ts +0 -5
  191. package/dist/telemetry/tracing.d.ts +0 -15
  192. package/dist/tenancy.d.ts +0 -9
  193. package/dist/typeGuards.d.ts +0 -6
  194. package/dist/typebox.d.ts +0 -4
  195. package/dist/types.d.ts +0 -421
  196. package/dist/utils.d.ts +0 -45
  197. package/dist/vault/config.d.ts +0 -20
  198. package/dist/vault/inMemoryVaultStore.d.ts +0 -2
  199. package/dist/vault/postgresVaultStore.d.ts +0 -86
  200. package/dist/vault/types.d.ts +0 -14
  201. package/dist/vc/inMemoryVpStores.d.ts +0 -2
  202. package/dist/vc/openid4vp.d.ts +0 -82
  203. package/dist/vc/postgresVcStores.d.ts +0 -300
  204. package/dist/vc/sdJwt.d.ts +0 -37
  205. package/dist/vc/statusList.d.ts +0 -29
  206. package/dist/vc/statusListRoutes.d.ts +0 -63
  207. package/dist/vc/vpRoutes.d.ts +0 -120
  208. package/dist/webauthn/adapter.d.ts +0 -59
  209. package/dist/webauthn/config.d.ts +0 -36
  210. package/dist/webauthn/inMemoryWebAuthnCredentialStore.d.ts +0 -2
  211. package/dist/webauthn/postgresWebAuthnCredentialStore.d.ts +0 -146
  212. package/dist/webauthn/routes.d.ts +0 -155
  213. package/dist/webauthn/types.d.ts +0 -17
  214. package/dist/webhooks/config.d.ts +0 -34
  215. package/dist/webhooks/dispatcher.d.ts +0 -3
  216. package/dist/webhooks/inMemoryStore.d.ts +0 -2
  217. package/dist/webhooks/postgresStore.d.ts +0 -116
  218. package/dist/webhooks/sign.d.ts +0 -11
  219. package/dist/webhooks/types.d.ts +0 -25
package/README.md CHANGED
@@ -5,7 +5,12 @@ Server applications should import the primary authentication contract from
5
5
  session types, route protection, provider configuration, and the other core
6
6
  server utilities without loading declarations for every optional Auth feature.
7
7
  The root entry point remains available for applications that need the complete
8
- feature export surface.
8
+ feature export surface. `auth()` exposes the complete reusable request context
9
+ (`protectRoute`, `requireRecentAuth`, optional `protectPermission`, and
10
+ `protectAgent`) while keeping its declaration bounded. Consumers that need the
11
+ typed configurable route applications themselves can call
12
+ `createAuthApplications()` from the root entry point and compose its
13
+ `coreRoutes`, `featureRoutes`, and `authContext` applications independently.
9
14
 
10
15
  ## Overview
11
16
 
@@ -1425,6 +1425,23 @@ var resolveAgentPrincipal = async (request, config) => {
1425
1425
  };
1426
1426
  // src/agents/context.ts
1427
1427
  import { Elysia } from "elysia";
1428
+
1429
+ // src/pluginIdentity.ts
1430
+ var dependencyIds = new WeakMap;
1431
+ var nextDependencyId = 1;
1432
+ var pluginDependencySeed = (dependency) => {
1433
+ if (dependency === undefined)
1434
+ return "default";
1435
+ const existing = dependencyIds.get(dependency);
1436
+ if (existing !== undefined)
1437
+ return existing;
1438
+ const identity = nextDependencyId;
1439
+ nextDependencyId += 1;
1440
+ dependencyIds.set(dependency, identity);
1441
+ return identity;
1442
+ };
1443
+
1444
+ // src/agents/context.ts
1428
1445
  var DELETE_CODE_POINT = 127;
1429
1446
  var HTTP_FORBIDDEN = 403;
1430
1447
  var HTTP_UNAUTHORIZED = 401;
@@ -1467,14 +1484,19 @@ var failureResponse = (config, failure, requiredScopes) => new Response(JSON.str
1467
1484
  },
1468
1485
  status: failure.code === "Forbidden" ? HTTP_FORBIDDEN : HTTP_UNAUTHORIZED
1469
1486
  });
1470
- var agentAuthContextPlugin = (config) => new Elysia().derive(({ request }) => ({
1487
+ var agentAuthContextPlugin = (config) => new Elysia({
1488
+ name: "@absolutejs/auth/agent-context",
1489
+ seed: pluginDependencySeed(config)
1490
+ }).derive(({ request }) => ({
1471
1491
  protectAgent: async (requiredScopes, handleAuth, handleAuthFail) => {
1472
1492
  if (config === undefined) {
1473
1493
  const failure = {
1474
1494
  code: "Unauthorized",
1475
1495
  message: "Agent is not authenticated"
1476
1496
  };
1477
- return await handleAuthFail?.(failure) ?? new Response(failure.message, { status: HTTP_UNAUTHORIZED });
1497
+ return await handleAuthFail?.(failure) ?? new Response(failure.message, {
1498
+ status: HTTP_UNAUTHORIZED
1499
+ });
1478
1500
  }
1479
1501
  const principal = await resolveAgentPrincipal(request, config);
1480
1502
  if (principal === undefined) {
@@ -1493,8 +1515,9 @@ var agentAuthContextPlugin = (config) => new Elysia().derive(({ request }) => ({
1493
1515
  }
1494
1516
  return handleAuth(principal);
1495
1517
  }
1496
- }));
1518
+ })).as("global");
1497
1519
  // src/agents/routes.ts
1520
+ import { Elysia as Elysia2 } from "elysia";
1498
1521
  var HTTP_BAD_REQUEST = 400;
1499
1522
  var HTTP_OK = 200;
1500
1523
  var HTTP_UNAUTHORIZED2 = 401;
@@ -1559,8 +1582,15 @@ var parseRegistrationInput = (value) => {
1559
1582
  return input;
1560
1583
  };
1561
1584
  var escapeHtml = (value) => value.replaceAll("&", "&amp;").replaceAll("<", "&lt;").replaceAll(">", "&gt;").replaceAll('"', "&quot;");
1562
- var agentAuthPlugin = (config) => {
1563
- const plugin = agentAuthContextPlugin(config);
1585
+ var agentAuthPlugin = (config) => new Elysia2({
1586
+ name: "@absolutejs/auth/agent",
1587
+ seed: pluginDependencySeed(config)
1588
+ }).use(agentAuthContextPlugin(config)).use(agentAuthRoutes(config)).as("global");
1589
+ var agentAuthRoutes = (config) => {
1590
+ const plugin = new Elysia2({
1591
+ name: "@absolutejs/auth/agent-routes",
1592
+ seed: pluginDependencySeed(config)
1593
+ });
1564
1594
  if (config === undefined)
1565
1595
  return plugin.as("global");
1566
1596
  if (config.agentRegistration === undefined) {
@@ -12836,5 +12866,5 @@ export {
12836
12866
  AGENT_CLAIM_GRANT_TYPE
12837
12867
  };
12838
12868
 
12839
- //# debugId=35BBF77DF315307D64756E2164756E21
12869
+ //# debugId=0C42692E8F64E63E64756E2164756E21
12840
12870
  //# sourceMappingURL=index.js.map