stables-mcp-server 2.3.0 → 2.5.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 (54) hide show
  1. package/README.md +46 -5
  2. package/build/http/handler.d.ts +9 -0
  3. package/build/http/handler.d.ts.map +1 -1
  4. package/build/http/handler.js +22 -8
  5. package/build/http/handler.js.map +1 -1
  6. package/build/lib/stables-client.d.ts +161 -9
  7. package/build/lib/stables-client.d.ts.map +1 -1
  8. package/build/lib/stables-client.js +85 -5
  9. package/build/lib/stables-client.js.map +1 -1
  10. package/build/oauth/auth0.d.ts +76 -0
  11. package/build/oauth/auth0.d.ts.map +1 -0
  12. package/build/oauth/auth0.js +163 -0
  13. package/build/oauth/auth0.js.map +1 -0
  14. package/build/oauth/handlers.d.ts +11 -0
  15. package/build/oauth/handlers.d.ts.map +1 -0
  16. package/build/oauth/handlers.js +195 -0
  17. package/build/oauth/handlers.js.map +1 -0
  18. package/build/oauth/pages.d.ts +10 -0
  19. package/build/oauth/pages.d.ts.map +1 -0
  20. package/build/oauth/pages.js +80 -0
  21. package/build/oauth/pages.js.map +1 -0
  22. package/build/oauth/provider.d.ts +21 -0
  23. package/build/oauth/provider.d.ts.map +1 -0
  24. package/build/oauth/provider.js +95 -0
  25. package/build/oauth/provider.js.map +1 -0
  26. package/build/oauth/types.d.ts +41 -0
  27. package/build/oauth/types.d.ts.map +1 -0
  28. package/build/oauth/types.js +14 -0
  29. package/build/oauth/types.js.map +1 -0
  30. package/build/server.d.ts.map +1 -1
  31. package/build/server.js +4 -0
  32. package/build/server.js.map +1 -1
  33. package/build/tools/compliance.d.ts +13 -0
  34. package/build/tools/compliance.d.ts.map +1 -0
  35. package/build/tools/compliance.js +170 -0
  36. package/build/tools/compliance.js.map +1 -0
  37. package/build/tools/documents.d.ts +12 -0
  38. package/build/tools/documents.d.ts.map +1 -0
  39. package/build/tools/documents.js +94 -0
  40. package/build/tools/documents.js.map +1 -0
  41. package/build/tools/virtual-accounts.d.ts.map +1 -1
  42. package/build/tools/virtual-accounts.js +32 -0
  43. package/build/tools/virtual-accounts.js.map +1 -1
  44. package/build/tools/webhooks.d.ts +8 -0
  45. package/build/tools/webhooks.d.ts.map +1 -1
  46. package/build/tools/webhooks.js +15 -2
  47. package/build/tools/webhooks.js.map +1 -1
  48. package/build/version.d.ts +1 -1
  49. package/build/version.js +1 -1
  50. package/build/worker.d.ts +20 -7
  51. package/build/worker.d.ts.map +1 -1
  52. package/build/worker.js +35 -7
  53. package/build/worker.js.map +1 -1
  54. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"stables-client.js","sourceRoot":"","sources":["../../src/lib/stables-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stables-client.js","sourceRoot":"","sources":["../../src/lib/stables-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Auth0 as the identity step behind the hosted server's OAuth, and the
3
+ * Stables API call that turns a signed-in user into an API key.
4
+ *
5
+ * Sandbox and production are separate Auth0 organisations with separate
6
+ * dashboard API audiences, so the environment is chosen before the redirect
7
+ * to Auth0 and decides which audience is requested and which API mints the
8
+ * key. A token for the dashboard audience is what /dashboard/v1 routes
9
+ * accept, so no api-service change is needed.
10
+ */
11
+ import type { StablesEnvironment } from "./types.js";
12
+ export declare const API_BASE: Record<StablesEnvironment, string>;
13
+ /** Auth0 API identifier the dashboard uses for this environment. */
14
+ export declare function dashboardAudience(environment: StablesEnvironment): string;
15
+ export declare function parseEnvironment(value: unknown): StablesEnvironment | null;
16
+ export declare function environmentForKey(apiKey: string): StablesEnvironment;
17
+ export interface Auth0Config {
18
+ domain: string;
19
+ clientId: string;
20
+ clientSecret: string;
21
+ }
22
+ export declare function auth0ConfigFrom(env: {
23
+ AUTH0_DOMAIN?: string;
24
+ AUTH0_CLIENT_ID?: string;
25
+ AUTH0_CLIENT_SECRET?: string;
26
+ }): Auth0Config | null;
27
+ /** A failure in one step of the sign-in, shown to the user on our own page. */
28
+ export declare class OAuthStepError extends Error {
29
+ readonly step: "auth0_token" | "identity" | "mint_key" | "callback";
30
+ readonly status?: number | undefined;
31
+ readonly detail?: string | undefined;
32
+ constructor(step: "auth0_token" | "identity" | "mint_key" | "callback", message: string, status?: number | undefined, detail?: string | undefined);
33
+ }
34
+ export declare function randomVerifier(): string;
35
+ export declare function s256(verifier: string): Promise<string>;
36
+ export declare function auth0AuthorizeUrl(config: Auth0Config, params: {
37
+ redirectUri: string;
38
+ environment: StablesEnvironment;
39
+ state: string;
40
+ codeChallenge: string;
41
+ }): string;
42
+ export interface Auth0Tokens {
43
+ access_token: string;
44
+ id_token: string;
45
+ }
46
+ export declare function exchangeAuth0Code(config: Auth0Config, params: {
47
+ code: string;
48
+ redirectUri: string;
49
+ verifier: string;
50
+ }, fetchImpl?: typeof fetch): Promise<Auth0Tokens>;
51
+ export interface Identity {
52
+ sub: string;
53
+ email?: string;
54
+ name?: string;
55
+ orgId?: string;
56
+ }
57
+ /**
58
+ * The ID token came straight from Auth0's token endpoint over TLS in the
59
+ * exchange above, so its claims are read without a signature check.
60
+ */
61
+ export declare function decodeJwtPayload(jwt: string): Record<string, unknown>;
62
+ export declare function identityFromIdToken(idToken: string): Identity;
63
+ export interface MintedKey {
64
+ apiKeyId: string;
65
+ prefix: string;
66
+ plaintextKey: string;
67
+ }
68
+ export declare function mintApiKey(params: {
69
+ environment: StablesEnvironment;
70
+ accessToken: string;
71
+ name: string;
72
+ metadata?: Record<string, string>;
73
+ }, fetchImpl?: typeof fetch): Promise<MintedKey>;
74
+ /** API keys are listed by name in the dashboard, so say which agent and who. */
75
+ export declare function apiKeyName(clientName: string, identity: Identity): string;
76
+ //# sourceMappingURL=auth0.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth0.d.ts","sourceRoot":"","sources":["../../src/oauth/auth0.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,163 @@
1
+ /**
2
+ * Auth0 as the identity step behind the hosted server's OAuth, and the
3
+ * Stables API call that turns a signed-in user into an API key.
4
+ *
5
+ * Sandbox and production are separate Auth0 organisations with separate
6
+ * dashboard API audiences, so the environment is chosen before the redirect
7
+ * to Auth0 and decides which audience is requested and which API mints the
8
+ * key. A token for the dashboard audience is what /dashboard/v1 routes
9
+ * accept, so no api-service change is needed.
10
+ */
11
+ export const API_BASE = {
12
+ sandbox: "https://api.sandbox.stables.money",
13
+ production: "https://api.stables.money",
14
+ };
15
+ /** Auth0 API identifier the dashboard uses for this environment. */
16
+ export function dashboardAudience(environment) {
17
+ return `${API_BASE[environment]}/dashboard`;
18
+ }
19
+ export function parseEnvironment(value) {
20
+ return value === "sandbox" || value === "production" ? value : null;
21
+ }
22
+ export function environmentForKey(apiKey) {
23
+ return apiKey.split("_")[1] === "live" ? "production" : "sandbox";
24
+ }
25
+ export function auth0ConfigFrom(env) {
26
+ if (!env.AUTH0_DOMAIN || !env.AUTH0_CLIENT_ID || !env.AUTH0_CLIENT_SECRET)
27
+ return null;
28
+ return {
29
+ domain: env.AUTH0_DOMAIN,
30
+ clientId: env.AUTH0_CLIENT_ID,
31
+ clientSecret: env.AUTH0_CLIENT_SECRET,
32
+ };
33
+ }
34
+ /** A failure in one step of the sign-in, shown to the user on our own page. */
35
+ export class OAuthStepError extends Error {
36
+ step;
37
+ status;
38
+ detail;
39
+ constructor(step, message, status, detail) {
40
+ super(message);
41
+ this.step = step;
42
+ this.status = status;
43
+ this.detail = detail;
44
+ this.name = "OAuthStepError";
45
+ }
46
+ }
47
+ // ---- PKCE towards Auth0 ----------------------------------------------------
48
+ function base64url(bytes) {
49
+ let binary = "";
50
+ for (const b of bytes)
51
+ binary += String.fromCharCode(b);
52
+ return btoa(binary).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
53
+ }
54
+ export function randomVerifier() {
55
+ return base64url(crypto.getRandomValues(new Uint8Array(32)));
56
+ }
57
+ export async function s256(verifier) {
58
+ const digest = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(verifier));
59
+ return base64url(new Uint8Array(digest));
60
+ }
61
+ // ---- Auth0 endpoints -------------------------------------------------------
62
+ export function auth0AuthorizeUrl(config, params) {
63
+ const url = new URL(`https://${config.domain}/authorize`);
64
+ url.searchParams.set("response_type", "code");
65
+ url.searchParams.set("client_id", config.clientId);
66
+ url.searchParams.set("redirect_uri", params.redirectUri);
67
+ url.searchParams.set("scope", "openid profile email");
68
+ url.searchParams.set("audience", dashboardAudience(params.environment));
69
+ url.searchParams.set("state", params.state);
70
+ url.searchParams.set("code_challenge", params.codeChallenge);
71
+ url.searchParams.set("code_challenge_method", "S256");
72
+ return url.toString();
73
+ }
74
+ export async function exchangeAuth0Code(config, params, fetchImpl = fetch) {
75
+ const response = await fetchImpl(`https://${config.domain}/oauth/token`, {
76
+ method: "POST",
77
+ headers: { "content-type": "application/x-www-form-urlencoded" },
78
+ body: new URLSearchParams({
79
+ grant_type: "authorization_code",
80
+ client_id: config.clientId,
81
+ client_secret: config.clientSecret,
82
+ code: params.code,
83
+ redirect_uri: params.redirectUri,
84
+ code_verifier: params.verifier,
85
+ }).toString(),
86
+ });
87
+ if (!response.ok) {
88
+ const detail = await response.text().catch(() => "");
89
+ throw new OAuthStepError("auth0_token", `Sign-in could not be completed (Auth0 answered HTTP ${response.status}).`, response.status, detail);
90
+ }
91
+ const body = (await response.json());
92
+ if (!body.access_token || !body.id_token) {
93
+ throw new OAuthStepError("auth0_token", "Sign-in returned no tokens.");
94
+ }
95
+ return { access_token: body.access_token, id_token: body.id_token };
96
+ }
97
+ /**
98
+ * The ID token came straight from Auth0's token endpoint over TLS in the
99
+ * exchange above, so its claims are read without a signature check.
100
+ */
101
+ export function decodeJwtPayload(jwt) {
102
+ const parts = jwt.split(".");
103
+ if (parts.length < 2)
104
+ throw new OAuthStepError("identity", "Malformed ID token.");
105
+ const b64 = parts[1].replace(/-/g, "+").replace(/_/g, "/");
106
+ const padded = b64 + "=".repeat((4 - (b64.length % 4)) % 4);
107
+ const bytes = Uint8Array.from(atob(padded), (c) => c.charCodeAt(0));
108
+ return JSON.parse(new TextDecoder().decode(bytes));
109
+ }
110
+ export function identityFromIdToken(idToken) {
111
+ const payload = decodeJwtPayload(idToken);
112
+ const sub = typeof payload.sub === "string" ? payload.sub : "";
113
+ if (!sub)
114
+ throw new OAuthStepError("identity", "ID token has no subject.");
115
+ return {
116
+ sub,
117
+ email: typeof payload.email === "string" ? payload.email.toLowerCase() : undefined,
118
+ name: typeof payload.name === "string" ? payload.name : undefined,
119
+ orgId: typeof payload.org_id === "string" ? payload.org_id : undefined,
120
+ };
121
+ }
122
+ function explainMintFailure(status, environment) {
123
+ switch (status) {
124
+ case 401:
125
+ return `Stables did not accept the sign-in for ${environment}. Pick an organisation that exists on ${environment}, or sign in again.`;
126
+ case 403:
127
+ return "Your role in this organisation can't create API keys. Ask an organisation admin to connect, or to grant you API-key access.";
128
+ case 404:
129
+ return `This organisation isn't set up on ${environment} yet.`;
130
+ default:
131
+ return `Stables answered HTTP ${status} while creating the agent's API key. Try again in a moment.`;
132
+ }
133
+ }
134
+ export async function mintApiKey(params, fetchImpl = fetch) {
135
+ const response = await fetchImpl(`${API_BASE[params.environment]}/dashboard/v1/api-keys`, {
136
+ method: "POST",
137
+ headers: {
138
+ authorization: `Bearer ${params.accessToken}`,
139
+ "content-type": "application/json",
140
+ "idempotency-key": crypto.randomUUID(),
141
+ },
142
+ body: JSON.stringify({ name: params.name, metadata: params.metadata }),
143
+ });
144
+ if (!response.ok) {
145
+ const detail = await response.text().catch(() => "");
146
+ throw new OAuthStepError("mint_key", explainMintFailure(response.status, params.environment), response.status, detail);
147
+ }
148
+ const body = (await response.json());
149
+ if (!body.plaintextKey || !body.apiKey?.apiKeyId) {
150
+ throw new OAuthStepError("mint_key", "Stables returned no API key.");
151
+ }
152
+ return {
153
+ apiKeyId: body.apiKey.apiKeyId,
154
+ prefix: body.apiKey.prefix ?? "",
155
+ plaintextKey: body.plaintextKey,
156
+ };
157
+ }
158
+ /** API keys are listed by name in the dashboard, so say which agent and who. */
159
+ export function apiKeyName(clientName, identity) {
160
+ const who = identity.email ?? identity.sub;
161
+ return `${clientName} via MCP (${who})`.slice(0, 255);
162
+ }
163
+ //# sourceMappingURL=auth0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth0.js","sourceRoot":"","sources":["../../src/oauth/auth0.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * The browser-facing half of the OAuth flow: the consent page at /authorize
3
+ * and the Auth0 return at /callback. The provider owns everything else
4
+ * (discovery, registration, the token endpoint) and hands requests without
5
+ * a valid token to handleDefault.
6
+ */
7
+ import { type OAuthEnv } from "./types.js";
8
+ /** The scopes a grant gets: what the client asked for, limited to ours, always the base scope. */
9
+ export declare function grantScope(requested: string[]): string[];
10
+ export declare function handleDefault(request: Request, env: OAuthEnv): Promise<Response>;
11
+ //# sourceMappingURL=handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/oauth/handlers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,OAAO,EAIL,KAAK,QAAQ,EAEd,MAAM,YAAY,CAAC;AAyBpB,kGAAkG;AAClG,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAIxD;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CA8CtF"}
@@ -0,0 +1,195 @@
1
+ /**
2
+ * The browser-facing half of the OAuth flow: the consent page at /authorize
3
+ * and the Auth0 return at /callback. The provider owns everything else
4
+ * (discovery, registration, the token endpoint) and hands requests without
5
+ * a valid token to handleDefault.
6
+ */
7
+ import { AuthorizationError, CimdFetchError, authorizationErrorRedirect, } from "@cloudflare/workers-oauth-provider";
8
+ import { MCP_PATH, handleRequest, json, withCors } from "../http/handler.js";
9
+ import { OAuthStepError, apiKeyName, auth0AuthorizeUrl, auth0ConfigFrom, exchangeAuth0Code, identityFromIdToken, mintApiKey, parseEnvironment, randomVerifier, s256, } from "./auth0.js";
10
+ import { consentPage, errorPage } from "./pages.js";
11
+ import { SCOPE, SUPPORTED_SCOPES, } from "./types.js";
12
+ function html(body, status = 200, headers) {
13
+ const h = new Headers(headers);
14
+ h.set("content-type", "text/html; charset=utf-8");
15
+ h.set("cache-control", "no-store");
16
+ return new Response(body, { status, headers: h });
17
+ }
18
+ function redirect(headers, location) {
19
+ if (location)
20
+ headers.set("Location", location);
21
+ return new Response(null, { status: 302, headers });
22
+ }
23
+ function publicOrigin(request, env) {
24
+ return (env.MCP_PUBLIC_URL ?? new URL(request.url).origin).replace(/\/$/, "");
25
+ }
26
+ /** The scopes a grant gets: what the client asked for, limited to ours, always the base scope. */
27
+ export function grantScope(requested) {
28
+ const scope = requested.filter((s) => SUPPORTED_SCOPES.includes(s));
29
+ if (!scope.includes(SCOPE))
30
+ scope.unshift(SCOPE);
31
+ return scope;
32
+ }
33
+ export async function handleDefault(request, env) {
34
+ const url = new URL(request.url);
35
+ const path = url.pathname;
36
+ if (path === "/authorize" || path === "/callback") {
37
+ const oauth = env.OAUTH_PROVIDER;
38
+ if (!oauth) {
39
+ return html(errorPage("Sign-in unavailable", "OAuth is not configured on this server."), 503);
40
+ }
41
+ try {
42
+ if (path === "/authorize" && request.method === "GET") {
43
+ return await authorizeGet(request, env, oauth);
44
+ }
45
+ if (path === "/authorize" && request.method === "POST") {
46
+ return await authorizePost(request, env, oauth);
47
+ }
48
+ if (path === "/callback" && request.method === "GET") {
49
+ return await callback(request, env, oauth);
50
+ }
51
+ return new Response("Method not allowed", { status: 405, headers: { allow: "GET, POST" } });
52
+ }
53
+ catch (error) {
54
+ return renderOAuthError(error);
55
+ }
56
+ }
57
+ // The provider sends an /mcp request here only when it carries no valid
58
+ // token. Answer with the spec's challenge so clients find the metadata.
59
+ if (path === MCP_PATH || path === `${MCP_PATH}/`) {
60
+ const origin = publicOrigin(request, env);
61
+ return withCors(json({
62
+ error: "unauthorized",
63
+ message: "Send a Stables API key as a bearer token, or connect with OAuth (see WWW-Authenticate).",
64
+ docs: "https://docs.stables.money/get-started/getting-started/quickstart/building-with-ai",
65
+ }, 401, {
66
+ "www-authenticate": `Bearer realm="OAuth", resource_metadata="${origin}/.well-known/oauth-protected-resource/mcp", scope="${SCOPE}"`,
67
+ }));
68
+ }
69
+ return handleRequest(request);
70
+ }
71
+ async function authorizeGet(request, env, oauth) {
72
+ if (!auth0ConfigFrom(env)) {
73
+ return html(errorPage("Sign-in unavailable", "This server has no identity provider configured yet."), 503);
74
+ }
75
+ const authRequest = await oauth.parseAuthRequest(request);
76
+ // describeConsent first: a failed client lookup leaves nothing in KV.
77
+ const details = await oauth.describeConsent(authRequest);
78
+ const consent = await oauth.beginConsent(authRequest);
79
+ return html(consentPage(details, consent.handle), 200, consent.headers);
80
+ }
81
+ async function authorizePost(request, env, oauth) {
82
+ const config = auth0ConfigFrom(env);
83
+ if (!config) {
84
+ return html(errorPage("Sign-in unavailable", "This server has no identity provider configured yet."), 503);
85
+ }
86
+ const form = await request.formData();
87
+ const handle = String(form.get("handle") ?? "");
88
+ if (form.get("decision") !== "approve") {
89
+ const denied = await oauth.denyConsent(request, handle);
90
+ return redirect(denied.headers);
91
+ }
92
+ const environment = parseEnvironment(form.get("environment"));
93
+ if (!environment) {
94
+ return html(errorPage("Pick an environment", "Choose Sandbox or Production and try again."), 400);
95
+ }
96
+ const approved = await oauth.approveConsent(request, handle);
97
+ const scope = grantScope(approved.request.scope);
98
+ const verifier = randomVerifier();
99
+ const data = { environment, verifier, scope };
100
+ const { state, headers } = await oauth.beginUpstream(approved.request, {
101
+ data,
102
+ headers: approved.headers,
103
+ });
104
+ const location = auth0AuthorizeUrl(config, {
105
+ redirectUri: `${publicOrigin(request, env)}/callback`,
106
+ environment,
107
+ state,
108
+ codeChallenge: await s256(verifier),
109
+ });
110
+ return redirect(headers, location);
111
+ }
112
+ async function callback(request, env, oauth) {
113
+ const config = auth0ConfigFrom(env);
114
+ if (!config) {
115
+ return html(errorPage("Sign-in unavailable", "This server has no identity provider configured yet."), 503);
116
+ }
117
+ const { request: original, data, headers } = await oauth.finishUpstream(request);
118
+ const params = new URL(request.url).searchParams;
119
+ if (params.get("error")) {
120
+ return redirect(headers, authorizationErrorRedirect(original, "access_denied"));
121
+ }
122
+ const code = params.get("code");
123
+ if (!code)
124
+ throw new OAuthStepError("callback", "Auth0 sent the user back without a code.");
125
+ const origin = publicOrigin(request, env);
126
+ const tokens = await exchangeAuth0Code(config, {
127
+ code,
128
+ redirectUri: `${origin}/callback`,
129
+ verifier: data.verifier,
130
+ });
131
+ const identity = identityFromIdToken(tokens.id_token);
132
+ const clientName = (await clientNameFor(oauth, original)) ?? "MCP client";
133
+ const minted = await mintApiKey({
134
+ environment: data.environment,
135
+ accessToken: tokens.access_token,
136
+ name: apiKeyName(clientName, identity),
137
+ metadata: {
138
+ source: "mcp_oauth",
139
+ client: clientName,
140
+ user: identity.email ?? identity.sub,
141
+ },
142
+ });
143
+ const props = {
144
+ apiKey: minted.plaintextKey,
145
+ apiKeyId: minted.apiKeyId,
146
+ environment: data.environment,
147
+ email: identity.email,
148
+ orgId: identity.orgId,
149
+ clientName,
150
+ };
151
+ const { redirectTo } = await oauth.completeAuthorization({
152
+ request: original,
153
+ // One grant per user, organisation and environment, so re-authorising
154
+ // sandbox never revokes a production grant for the same person.
155
+ userId: [data.environment, identity.orgId ?? "-", identity.sub].join("|").replace(/:/g, "_"),
156
+ metadata: {
157
+ environment: data.environment,
158
+ client: clientName,
159
+ email: identity.email,
160
+ orgId: identity.orgId,
161
+ apiKeyId: minted.apiKeyId,
162
+ keyPrefix: minted.prefix,
163
+ },
164
+ scope: data.scope,
165
+ props,
166
+ });
167
+ return redirect(headers, redirectTo);
168
+ }
169
+ async function clientNameFor(oauth, authRequest) {
170
+ try {
171
+ const client = await oauth.lookupClient(authRequest.clientId);
172
+ const name = client?.clientName?.trim();
173
+ return name ? name.slice(0, 80) : null;
174
+ }
175
+ catch {
176
+ return null;
177
+ }
178
+ }
179
+ function renderOAuthError(error) {
180
+ if (error instanceof AuthorizationError && error.redirectTo) {
181
+ return Response.redirect(error.redirectTo, 302);
182
+ }
183
+ if (error instanceof AuthorizationError) {
184
+ return html(errorPage("Connection request expired", error.description ||
185
+ "This page was already used, opened in another browser, or has expired."), 400);
186
+ }
187
+ if (error instanceof CimdFetchError) {
188
+ return html(errorPage("App could not be verified", "The app's identity document could not be fetched."), 400);
189
+ }
190
+ if (error instanceof OAuthStepError) {
191
+ return html(errorPage("Connection failed", error.message), error.status === 403 ? 403 : 400);
192
+ }
193
+ throw error;
194
+ }
195
+ //# sourceMappingURL=handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/oauth/handlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * The two pages the OAuth flow shows in a browser: consent and error.
3
+ * Everything that came from the client (its name, domain, scopes) is
4
+ * escaped, since a dynamically registered client chooses those strings.
5
+ */
6
+ import type { ConsentDescription } from "@cloudflare/workers-oauth-provider";
7
+ export declare function escapeHtml(value: string): string;
8
+ export declare function consentPage(details: ConsentDescription, handle: string): string;
9
+ export declare function errorPage(title: string, message: string, hint?: string): string;
10
+ //# sourceMappingURL=pages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../src/oauth/pages.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AA0CD,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CA6B/E;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ/E"}