@adonis-agora/authkit-server 0.75.0 → 0.76.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 (69) hide show
  1. package/README.md +3 -0
  2. package/build/host/views/account/apps.edge +30 -0
  3. package/build/host/views/agents/consent.edge +60 -0
  4. package/build/host/views/agents/done.edge +24 -0
  5. package/build/host/views/consent.edge +9 -1
  6. package/build/host/views/partials/styles.edge +1 -1
  7. package/build/index.d.ts +9 -0
  8. package/build/index.js +4 -0
  9. package/build/providers/authkit_server_provider.js +75 -50
  10. package/build/src/agents/agent_identity.d.ts +33 -0
  11. package/build/src/agents/agent_identity.js +156 -0
  12. package/build/src/agents/config.d.ts +99 -0
  13. package/build/src/agents/config.js +101 -0
  14. package/build/src/agents/delegation_service.d.ts +154 -0
  15. package/build/src/agents/delegation_service.js +394 -0
  16. package/build/src/agents/delegation_store.d.ts +93 -0
  17. package/build/src/agents/delegation_store.js +222 -0
  18. package/build/src/agents/middleware.d.ts +73 -0
  19. package/build/src/agents/middleware.js +113 -0
  20. package/build/src/agents/protocol.d.ts +62 -0
  21. package/build/src/agents/protocol.js +51 -0
  22. package/build/src/agents/runtime.d.ts +36 -0
  23. package/build/src/agents/runtime.js +65 -0
  24. package/build/src/agents/signer.d.ts +34 -0
  25. package/build/src/agents/signer.js +70 -0
  26. package/build/src/audit/audit_sink.d.ts +1 -1
  27. package/build/src/audit/audit_sink.js +5 -0
  28. package/build/src/controllers/authorization_server_metadata_controller.d.ts +10 -0
  29. package/build/src/controllers/authorization_server_metadata_controller.js +20 -0
  30. package/build/src/define_config.d.ts +26 -3
  31. package/build/src/define_config.js +34 -1
  32. package/build/src/host/account_api/account_api_controller.d.ts +12 -0
  33. package/build/src/host/account_api/account_api_controller.js +40 -0
  34. package/build/src/host/admin_api/dto.d.ts +1 -1
  35. package/build/src/host/admin_sessions_service.d.ts +2 -0
  36. package/build/src/host/admin_sessions_service.js +18 -0
  37. package/build/src/host/auth_host_config.d.ts +4 -0
  38. package/build/src/host/client_names.d.ts +11 -0
  39. package/build/src/host/client_names.js +12 -0
  40. package/build/src/host/controllers/account_apps_controller.d.ts +2 -0
  41. package/build/src/host/controllers/account_apps_controller.js +39 -3
  42. package/build/src/host/controllers/account_orgs_controller.js +2 -1
  43. package/build/src/host/controllers/account_session_controller.js +2 -1
  44. package/build/src/host/controllers/agent_consent_controller.d.ts +17 -0
  45. package/build/src/host/controllers/agent_consent_controller.js +138 -0
  46. package/build/src/host/controllers/agent_oauth_controller.d.ts +23 -0
  47. package/build/src/host/controllers/agent_oauth_controller.js +110 -0
  48. package/build/src/host/controllers/interaction_controller.js +28 -0
  49. package/build/src/host/csrf.d.ts +8 -18
  50. package/build/src/host/csrf.js +28 -2
  51. package/build/src/host/i18n.d.ts +54 -0
  52. package/build/src/host/i18n.js +54 -0
  53. package/build/src/host/redirect_exact.d.ts +12 -0
  54. package/build/src/host/redirect_exact.js +17 -0
  55. package/build/src/host/register_auth_host.js +48 -7
  56. package/build/src/host/request_url.d.ts +10 -0
  57. package/build/src/host/request_url.js +17 -0
  58. package/build/src/host/sudo/methods/magic_link.js +2 -1
  59. package/build/src/host/sudo/runtime.js +3 -2
  60. package/build/src/host/sudo_mode.js +4 -4
  61. package/build/src/mcp/mcp_oauth.d.ts +85 -0
  62. package/build/src/mcp/mcp_oauth.js +154 -0
  63. package/build/src/provider/build_provider.js +15 -1
  64. package/build/src/provider/oidc_service.d.ts +8 -0
  65. package/build/src/provider/oidc_service.js +10 -0
  66. package/build/src/schema/ensure.js +92 -0
  67. package/build/stubs/ui/react/pages/consent.tsx +17 -1
  68. package/package.json +1 -1
  69. package/stubs/ui/react/pages/consent.tsx +17 -1
@@ -9,14 +9,20 @@ export default function AuthkitConsent({
9
9
  params,
10
10
  csrfToken,
11
11
  brand,
12
+ clientName,
13
+ scopes = [],
12
14
  }: {
13
15
  uid: string;
14
16
  params: { client_id: string };
15
17
  csrfToken: string;
16
18
  brand?: AuthBrand;
19
+ /** O nome que o client registrou (ex.: "Claude Code"); sem ele, o `client_id`. */
20
+ clientName?: string;
21
+ /** Os escopos pedidos, com o rótulo de cada um. */
22
+ scopes?: { id: string; label: string }[];
17
23
  }) {
18
24
  const accent = brand?.accent ?? '#111827';
19
- const appName = brand?.appName ?? params.client_id;
25
+ const appName = clientName ?? params.client_id;
20
26
 
21
27
  return (
22
28
  <AuthShell brand={brand}>
@@ -26,6 +32,16 @@ export default function AuthkitConsent({
26
32
  <p className="mt-2 text-sm text-gray-600">
27
33
  O app <strong>{appName}</strong> quer acessar sua conta.
28
34
  </p>
35
+ {scopes.length > 0 && (
36
+ <>
37
+ <p className="mt-4 text-sm font-medium text-gray-900">Ele vai poder:</p>
38
+ <ul className="mt-2 list-inside list-disc space-y-1 text-sm text-gray-600">
39
+ {scopes.map((scope) => (
40
+ <li key={scope.id}>{scope.label}</li>
41
+ ))}
42
+ </ul>
43
+ </>
44
+ )}
29
45
 
30
46
  <button
31
47
  type="submit"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adonis-agora/authkit-server",
3
- "version": "0.75.0",
3
+ "version": "0.76.0",
4
4
  "description": "AdonisJS OIDC/OAuth2 provider (Identity Provider) toolkit: ejectable auth server with sessions, rate-limiting, MFA/TOTP, audit log, federated logout and OpenTelemetry metrics.",
5
5
  "license": "MIT",
6
6
  "author": "dudousxd",
@@ -9,14 +9,20 @@ export default function AuthkitConsent({
9
9
  params,
10
10
  csrfToken,
11
11
  brand,
12
+ clientName,
13
+ scopes = [],
12
14
  }: {
13
15
  uid: string;
14
16
  params: { client_id: string };
15
17
  csrfToken: string;
16
18
  brand?: AuthBrand;
19
+ /** O nome que o client registrou (ex.: "Claude Code"); sem ele, o `client_id`. */
20
+ clientName?: string;
21
+ /** Os escopos pedidos, com o rótulo de cada um. */
22
+ scopes?: { id: string; label: string }[];
17
23
  }) {
18
24
  const accent = brand?.accent ?? '#111827';
19
- const appName = brand?.appName ?? params.client_id;
25
+ const appName = clientName ?? params.client_id;
20
26
 
21
27
  return (
22
28
  <AuthShell brand={brand}>
@@ -26,6 +32,16 @@ export default function AuthkitConsent({
26
32
  <p className="mt-2 text-sm text-gray-600">
27
33
  O app <strong>{appName}</strong> quer acessar sua conta.
28
34
  </p>
35
+ {scopes.length > 0 && (
36
+ <>
37
+ <p className="mt-4 text-sm font-medium text-gray-900">Ele vai poder:</p>
38
+ <ul className="mt-2 list-inside list-disc space-y-1 text-sm text-gray-600">
39
+ {scopes.map((scope) => (
40
+ <li key={scope.id}>{scope.label}</li>
41
+ ))}
42
+ </ul>
43
+ </>
44
+ )}
29
45
 
30
46
  <button
31
47
  type="submit"