@aotter/mantle-cloudflare 0.1.0-alpha.7 → 0.1.0-alpha.8
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.
- package/README.md +15 -8
- package/dist/auth/conventionalAuth.d.ts +3 -0
- package/dist/auth/conventionalAuth.d.ts.map +1 -1
- package/dist/auth/conventionalAuth.js +23 -6
- package/dist/auth/conventionalAuth.js.map +1 -1
- package/dist/auth/createAuth.d.ts +30 -13
- package/dist/auth/createAuth.d.ts.map +1 -1
- package/dist/auth/createAuth.js +173 -154
- package/dist/auth/createAuth.js.map +1 -1
- package/dist/bindings/AssetsAssetServer.d.ts +4 -4
- package/dist/bindings/AssetsAssetServer.d.ts.map +1 -1
- package/dist/bindings/AssetsAssetServer.js +2 -2
- package/dist/bindings/D1DatabaseDriver.d.ts +3 -4
- package/dist/bindings/D1DatabaseDriver.d.ts.map +1 -1
- package/dist/bindings/D1DatabaseDriver.js +4 -91
- package/dist/bindings/D1DatabaseDriver.js.map +1 -1
- package/dist/bindings/WorkersQueueHookDispatcher.d.ts +2 -2
- package/dist/bindings/WorkersQueueHookDispatcher.d.ts.map +1 -1
- package/dist/bindings/WorkersQueueHookDispatcher.js +1 -1
- package/dist/bindings/WorkersQueueHookDispatcher.js.map +1 -1
- package/dist/bindings/conventionalBindings.d.ts +2 -3
- package/dist/bindings/conventionalBindings.d.ts.map +1 -1
- package/dist/bindings/conventionalBindings.js +1 -3
- package/dist/bindings/conventionalBindings.js.map +1 -1
- package/dist/handlers/turnstile.d.ts +1 -1
- package/dist/handlers/turnstile.d.ts.map +1 -1
- package/dist/handlers/turnstile.js +3 -1
- package/dist/handlers/turnstile.js.map +1 -1
- package/dist/mount/bootRuntimeOnce.d.ts +15 -8
- package/dist/mount/bootRuntimeOnce.d.ts.map +1 -1
- package/dist/mount/bootRuntimeOnce.js +36 -21
- package/dist/mount/bootRuntimeOnce.js.map +1 -1
- package/dist/mount/cmsConfig.d.ts +17 -9
- package/dist/mount/cmsConfig.d.ts.map +1 -1
- package/dist/mount/index.d.ts +4 -4
- package/dist/mount/index.d.ts.map +1 -1
- package/dist/mount/index.js +3 -3
- package/dist/mount/index.js.map +1 -1
- package/dist/mount/mountAdmin.d.ts +6 -0
- package/dist/mount/mountAdmin.d.ts.map +1 -0
- package/dist/mount/mountAdmin.js +16 -0
- package/dist/mount/mountAdmin.js.map +1 -0
- package/dist/mount/mountMcp.d.ts +7 -10
- package/dist/mount/mountMcp.d.ts.map +1 -1
- package/dist/mount/mountMcp.js +57 -49
- package/dist/mount/mountMcp.js.map +1 -1
- package/dist/mount/mountPublicRoutes.d.ts +4 -4
- package/dist/mount/mountPublicRoutes.d.ts.map +1 -1
- package/dist/mount/mountPublicRoutes.js +31 -24
- package/dist/mount/mountPublicRoutes.js.map +1 -1
- package/dist/mount/mountRuntimeEndpoints.d.ts +7 -0
- package/dist/mount/mountRuntimeEndpoints.d.ts.map +1 -0
- package/dist/mount/mountRuntimeEndpoints.js +49 -0
- package/dist/mount/mountRuntimeEndpoints.js.map +1 -0
- package/dist/mount/resolveCaller.d.ts.map +1 -1
- package/dist/mount/resolveCaller.js +0 -33
- package/dist/mount/resolveCaller.js.map +1 -1
- package/dist/oauth/cachePolicy.d.ts.map +1 -1
- package/dist/oauth/cachePolicy.js +2 -4
- package/dist/oauth/cachePolicy.js.map +1 -1
- package/dist/oauth/consentHtml.d.ts +2 -2
- package/dist/oauth/consentHtml.d.ts.map +1 -1
- package/dist/oauth/consentHtml.js +5 -5
- package/dist/oauth/consentHtml.js.map +1 -1
- package/dist/oauth/index.d.ts +0 -2
- package/dist/oauth/index.d.ts.map +1 -1
- package/dist/oauth/index.js +0 -2
- package/dist/oauth/index.js.map +1 -1
- package/dist/oauth/mountOAuth.d.ts +2 -16
- package/dist/oauth/mountOAuth.d.ts.map +1 -1
- package/dist/oauth/mountOAuth.js +24 -99
- package/dist/oauth/mountOAuth.js.map +1 -1
- package/dist/worker/createMantleWorker.d.ts +12 -13
- package/dist/worker/createMantleWorker.d.ts.map +1 -1
- package/dist/worker/createMantleWorker.js +31 -24
- package/dist/worker/createMantleWorker.js.map +1 -1
- package/package.json +12 -11
- package/dist/mount/mountServerEndpoints.d.ts +0 -9
- package/dist/mount/mountServerEndpoints.d.ts.map +0 -1
- package/dist/mount/mountServerEndpoints.js +0 -1625
- package/dist/mount/mountServerEndpoints.js.map +0 -1
- package/dist/mount/runMantleUseCase.d.ts +0 -3
- package/dist/mount/runMantleUseCase.d.ts.map +0 -1
- package/dist/mount/runMantleUseCase.js +0 -41
- package/dist/mount/runMantleUseCase.js.map +0 -1
- package/dist/oauth/oauthConstants.d.ts +0 -15
- package/dist/oauth/oauthConstants.d.ts.map +0 -1
- package/dist/oauth/oauthConstants.js +0 -15
- package/dist/oauth/oauthConstants.js.map +0 -1
- package/dist/oauth/oauthSingleton.d.ts +0 -33
- package/dist/oauth/oauthSingleton.d.ts.map +0 -1
- package/dist/oauth/oauthSingleton.js +0 -39
- package/dist/oauth/oauthSingleton.js.map +0 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { inferLocaleFromPath, toUrlLocale, } from "@aotter/mantle-runtime";
|
|
2
|
+
import { absoluteUrl, composePageSeoMeta, serializeEntryAsMarkdown, } from "@aotter/mantle-web";
|
|
2
3
|
import { STAFF_ROLE_SET } from "../auth/createAuth.js";
|
|
3
4
|
import { PUBLIC_CACHE_TAG } from "../oauth/cachePolicy.js";
|
|
4
5
|
const PUBLIC_CACHE_CONTROL = "public, max-age=0, s-maxage=300";
|
|
@@ -39,23 +40,25 @@ export function mountPublicRoutes(app, ref, options) {
|
|
|
39
40
|
// `:locale = "llms.txt"` if the literal route registers later.
|
|
40
41
|
app.get("/llms.txt", async () => {
|
|
41
42
|
const runtime = await ref.get();
|
|
42
|
-
const
|
|
43
|
+
const web = ref.web(runtime);
|
|
44
|
+
const body = await composeRootLlmsTxt(runtime, web, await runtime.siteConfig.load(), options);
|
|
43
45
|
if (!body)
|
|
44
46
|
return textNotFound();
|
|
45
47
|
return new Response(body, { status: 200, headers: TEXT_PUBLIC });
|
|
46
48
|
});
|
|
47
49
|
app.get("/sitemap.xml", async (c) => {
|
|
48
50
|
const runtime = await ref.get();
|
|
51
|
+
const web = ref.web(runtime);
|
|
49
52
|
const site = await runtime.siteConfig.load();
|
|
50
|
-
if (!
|
|
53
|
+
if (!web.paths) {
|
|
51
54
|
return new Response("sitemap unavailable: no publicPathResolver configured", {
|
|
52
55
|
status: 500,
|
|
53
56
|
});
|
|
54
57
|
}
|
|
55
|
-
const xml = await
|
|
58
|
+
const xml = await web.composeSitemap.execute({
|
|
56
59
|
site,
|
|
57
60
|
pathFor: (entry) => {
|
|
58
|
-
const resolved =
|
|
61
|
+
const resolved = web.paths.forEntry(entry);
|
|
59
62
|
if (entry.locale || !resolved)
|
|
60
63
|
return resolved;
|
|
61
64
|
const route = options.collectionRoutes.find((candidate) => candidate.collection === entry.collection);
|
|
@@ -116,11 +119,12 @@ export function mountPublicRoutes(app, ref, options) {
|
|
|
116
119
|
}
|
|
117
120
|
app.get("/:locale/llms.txt", async (c) => {
|
|
118
121
|
const runtime = await ref.get();
|
|
122
|
+
const web = ref.web(runtime);
|
|
119
123
|
const locale = canonicalLocaleParam(c.req.param("locale"), await runtime.siteConfig.readLocales());
|
|
120
124
|
if (locale === null)
|
|
121
125
|
return textNotFound();
|
|
122
126
|
const site = await runtime.siteConfig.load();
|
|
123
|
-
const body = await composeLocaleLlmsTxt(runtime, site, locale, options);
|
|
127
|
+
const body = await composeLocaleLlmsTxt(runtime, web, site, locale, options);
|
|
124
128
|
if (!body)
|
|
125
129
|
return textNotFound();
|
|
126
130
|
return new Response(body, { status: 200, headers: TEXT_PUBLIC });
|
|
@@ -141,21 +145,23 @@ function mountCollection(app, ref, options, route, liveDev, overrides) {
|
|
|
141
145
|
if (route.markdownMirror !== false && route.segment) {
|
|
142
146
|
app.get(`/:locale${segPath}.md`, async (c) => {
|
|
143
147
|
const runtime = await ref.get();
|
|
148
|
+
const web = ref.web(runtime);
|
|
144
149
|
const locale = canonicalLocaleParam(c.req.param("locale") ?? "", await runtime.siteConfig.readLocales());
|
|
145
150
|
if (locale === null)
|
|
146
151
|
return textNotFound();
|
|
147
152
|
const site = await runtime.siteConfig.load();
|
|
148
|
-
const body = await
|
|
153
|
+
const body = await web.composeLlmsTxt.execute({
|
|
149
154
|
site,
|
|
150
155
|
locale: contentLocale(runtime, route.collection, locale),
|
|
151
156
|
collection: route.collection,
|
|
152
|
-
pathFor: (entry) => entryPathForLocale(
|
|
157
|
+
pathFor: (entry) => entryPathForLocale(web, options.collectionRoutes, entry, locale),
|
|
153
158
|
});
|
|
154
159
|
return body ? new Response(body, { status: 200, headers: MD_PUBLIC }) : textNotFound();
|
|
155
160
|
});
|
|
156
161
|
}
|
|
157
162
|
app.get(`/:locale${segPath}`, async (c) => {
|
|
158
163
|
const runtime = await ref.get();
|
|
164
|
+
const web = ref.web(runtime);
|
|
159
165
|
const site = await runtime.siteConfig.load();
|
|
160
166
|
const locale = canonicalLocaleParam(c.req.param("locale"), site.locales);
|
|
161
167
|
const notFound = () => {
|
|
@@ -165,7 +171,7 @@ function mountCollection(app, ref, options, route, liveDev, overrides) {
|
|
|
165
171
|
if (locale === null)
|
|
166
172
|
return notFound();
|
|
167
173
|
const publicPath = localizedPath(locale, route.segment);
|
|
168
|
-
const schemaTitle = runtime.
|
|
174
|
+
const schemaTitle = runtime.schemas.get(route.collection)?.spec.title;
|
|
169
175
|
const seo = composePageSeoMeta({
|
|
170
176
|
site,
|
|
171
177
|
locale,
|
|
@@ -174,7 +180,7 @@ function mountCollection(app, ref, options, route, liveDev, overrides) {
|
|
|
174
180
|
markdown: route.markdownMirror !== false,
|
|
175
181
|
pathForLocale: (candidate) => localizedPath(candidate, route.segment),
|
|
176
182
|
});
|
|
177
|
-
const html = await
|
|
183
|
+
const html = await web.renderListLive.execute({
|
|
178
184
|
collection: route.collection,
|
|
179
185
|
locale,
|
|
180
186
|
contentLocale: contentLocale(runtime, route.collection, locale),
|
|
@@ -204,7 +210,7 @@ function mountCollection(app, ref, options, route, liveDev, overrides) {
|
|
|
204
210
|
const notFound = () => textNotFound();
|
|
205
211
|
if (locale === null)
|
|
206
212
|
return notFound();
|
|
207
|
-
const entry = await runtime.
|
|
213
|
+
const entry = await runtime.entries.readBySlug({
|
|
208
214
|
collection: route.collection,
|
|
209
215
|
slug,
|
|
210
216
|
locale: contentLocale(runtime, route.collection, locale),
|
|
@@ -223,6 +229,7 @@ function mountCollection(app, ref, options, route, liveDev, overrides) {
|
|
|
223
229
|
}
|
|
224
230
|
app.get(`/:locale${segPath}/:slug`, async (c) => {
|
|
225
231
|
const runtime = await ref.get();
|
|
232
|
+
const web = ref.web(runtime);
|
|
226
233
|
const locale = canonicalLocaleParam(c.req.param("locale"), await runtime.siteConfig.readLocales());
|
|
227
234
|
const slug = c.req.param("slug");
|
|
228
235
|
const loadSite = lazySite(runtime);
|
|
@@ -243,7 +250,7 @@ function mountCollection(app, ref, options, route, liveDev, overrides) {
|
|
|
243
250
|
return denied;
|
|
244
251
|
const site = await loadSite();
|
|
245
252
|
const seoRoute = entrySeoRoute(site, route, locale, slug, contentLocale(runtime, route.collection, locale) === null);
|
|
246
|
-
const html = await
|
|
253
|
+
const html = await web.previewEntry.execute({
|
|
247
254
|
collection: route.collection,
|
|
248
255
|
slug,
|
|
249
256
|
locale,
|
|
@@ -256,7 +263,7 @@ function mountCollection(app, ref, options, route, liveDev, overrides) {
|
|
|
256
263
|
return new Response(html, { status: 200, headers: HTML_NO_STORE });
|
|
257
264
|
}
|
|
258
265
|
const site = await loadSite();
|
|
259
|
-
const html = await
|
|
266
|
+
const html = await web.renderEntryLive.execute({
|
|
260
267
|
collection: route.collection,
|
|
261
268
|
slug,
|
|
262
269
|
locale,
|
|
@@ -310,26 +317,26 @@ async function assertStaffSession(ref, req) {
|
|
|
310
317
|
* header in localized mode, so the sections self-separate without a
|
|
311
318
|
* custom delimiter.
|
|
312
319
|
*/
|
|
313
|
-
async function composeRootLlmsTxt(runtime, site, options) {
|
|
320
|
+
async function composeRootLlmsTxt(runtime, web, site, options) {
|
|
314
321
|
const parts = [];
|
|
315
322
|
if (site.locales.length === 0) {
|
|
316
|
-
return
|
|
323
|
+
return web.composeLlmsTxt.execute({ site, locale: null });
|
|
317
324
|
}
|
|
318
325
|
for (const locale of site.locales) {
|
|
319
|
-
const body = await composeLocaleLlmsTxt(runtime, site, locale, options);
|
|
326
|
+
const body = await composeLocaleLlmsTxt(runtime, web, site, locale, options);
|
|
320
327
|
if (body)
|
|
321
328
|
parts.push(body);
|
|
322
329
|
}
|
|
323
330
|
return parts.length > 0 ? parts.join("\n---\n\n") : null;
|
|
324
331
|
}
|
|
325
|
-
async function composeLocaleLlmsTxt(runtime, site, locale, options) {
|
|
332
|
+
async function composeLocaleLlmsTxt(runtime, web, site, locale, options) {
|
|
326
333
|
const parts = [];
|
|
327
334
|
if (options.homeMarkdown) {
|
|
328
335
|
if (await options.homeMarkdown({ runtime, site, locale })) {
|
|
329
336
|
parts.push(`# ${site.title}\n\nLocale: ${locale}\n\n## Pages\n\n- [${site.title}](${absoluteUrl(site.origin, `${localizedPath(locale)}.md`)})\n`);
|
|
330
337
|
}
|
|
331
338
|
}
|
|
332
|
-
const entries = await
|
|
339
|
+
const entries = await web.composeLlmsTxt.execute({
|
|
333
340
|
site,
|
|
334
341
|
locale,
|
|
335
342
|
includeUnlocalized: true,
|
|
@@ -338,7 +345,7 @@ async function composeLocaleLlmsTxt(runtime, site, locale, options) {
|
|
|
338
345
|
const slug = typeof entry.data["slug"] === "string" ? entry.data["slug"] : entry.id;
|
|
339
346
|
if (options.homeMarkdown && route?.homeSlug === slug)
|
|
340
347
|
return null;
|
|
341
|
-
return entryPathForLocale(
|
|
348
|
+
return entryPathForLocale(web, options.collectionRoutes, entry, locale);
|
|
342
349
|
},
|
|
343
350
|
});
|
|
344
351
|
if (entries)
|
|
@@ -379,14 +386,14 @@ function entrySeoRoute(site, route, locale, slug, sharedAcrossLocales) {
|
|
|
379
386
|
};
|
|
380
387
|
}
|
|
381
388
|
function contentLocale(runtime, collection, locale) {
|
|
382
|
-
return runtime.
|
|
389
|
+
return runtime.schemas.get(collection)?.spec.localized ? locale : null;
|
|
383
390
|
}
|
|
384
|
-
function entryPathForLocale(
|
|
391
|
+
function entryPathForLocale(web, routes, entry, locale) {
|
|
385
392
|
if (entry.locale)
|
|
386
|
-
return
|
|
393
|
+
return web.paths?.forEntry(entry) ?? null;
|
|
387
394
|
const route = routes.find((candidate) => candidate.collection === entry.collection);
|
|
388
395
|
if (!route)
|
|
389
|
-
return
|
|
396
|
+
return web.paths?.forEntry(entry) ?? null;
|
|
390
397
|
const slug = typeof entry.data["slug"] === "string" ? entry.data["slug"] : entry.id;
|
|
391
398
|
return localizedPath(locale, route.homeSlug === slug
|
|
392
399
|
? ""
|
|
@@ -396,7 +403,7 @@ async function readHomeMarkdown(runtime, routes, locale) {
|
|
|
396
403
|
const route = routes.find((candidate) => candidate.homeSlug && candidate.markdownMirror !== false);
|
|
397
404
|
if (!route?.homeSlug)
|
|
398
405
|
return null;
|
|
399
|
-
const entry = await runtime.
|
|
406
|
+
const entry = await runtime.entries.readBySlug({
|
|
400
407
|
collection: route.collection,
|
|
401
408
|
slug: route.homeSlug,
|
|
402
409
|
locale: contentLocale(runtime, route.collection, locale),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mountPublicRoutes.js","sourceRoot":"","sources":["../../src/mount/mountPublicRoutes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mountPublicRoutes.js","sourceRoot":"","sources":["../../src/mount/mountPublicRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Context, Env, Hono } from "hono";
|
|
2
|
+
import type { MantleRuntimeRef } from "./bootRuntimeOnce.js";
|
|
3
|
+
/** Mount manifest-declared HTTP Triggers and public Views only. */
|
|
4
|
+
export declare function mountRuntimeEndpoints<E extends Env>(app: Hono<E>, ref: MantleRuntimeRef): void;
|
|
5
|
+
/** Hono throws outside a Workers execution context; other runtimes await inline. */
|
|
6
|
+
export declare function readWaitUntil(context: Context): ((promise: Promise<unknown>) => void) | undefined;
|
|
7
|
+
//# sourceMappingURL=mountRuntimeEndpoints.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mountRuntimeEndpoints.d.ts","sourceRoot":"","sources":["../../src/mount/mountRuntimeEndpoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG7D,mEAAmE;AACnE,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,GAAG,EACjD,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EACZ,GAAG,EAAE,gBAAgB,GACpB,IAAI,CAiCN;AAMD,oFAAoF;AACpF,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,GACf,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAOnD"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { createMantleRequestHandler } from "@aotter/mantle-runtime";
|
|
2
|
+
import { rejectCrossOriginMutation } from "../auth/rejectCrossOriginMutation.js";
|
|
3
|
+
import { resolveCaller } from "./resolveCaller.js";
|
|
4
|
+
/** Mount manifest-declared HTTP Triggers and public Views only. */
|
|
5
|
+
export function mountRuntimeEndpoints(app, ref) {
|
|
6
|
+
const handle = createMantleRequestHandler({ plan: ref.plan, getRuntime: () => ref.get() });
|
|
7
|
+
const dispatch = async (c) => {
|
|
8
|
+
const waitUntil = readWaitUntil(c);
|
|
9
|
+
const caller = await resolveCaller(c.req.raw, {
|
|
10
|
+
auth: ref.auth,
|
|
11
|
+
credentialResolver: ref.credentialResolver,
|
|
12
|
+
jwtBearer: ref.jwtBearer,
|
|
13
|
+
env: c.env,
|
|
14
|
+
waitUntil,
|
|
15
|
+
});
|
|
16
|
+
if (caller.kind === "invalid") {
|
|
17
|
+
return Response.json({ ok: false, diagnostic: caller.diagnostic }, { status: caller.status });
|
|
18
|
+
}
|
|
19
|
+
if (caller.context.auth?.credential === "session" && c.req.method !== "GET") {
|
|
20
|
+
const rejected = rejectCrossOriginMutation(c.req.raw);
|
|
21
|
+
if (rejected)
|
|
22
|
+
return rejected;
|
|
23
|
+
}
|
|
24
|
+
return await handle(c.req.raw, caller.context)
|
|
25
|
+
?? new Response("not found", { status: 404 });
|
|
26
|
+
};
|
|
27
|
+
for (const route of ref.plan.httpRoutes) {
|
|
28
|
+
app.on(route.method, openApiToHono(route.path), dispatch);
|
|
29
|
+
}
|
|
30
|
+
for (const view of Object.values(ref.plan.views)) {
|
|
31
|
+
if (view.manifest.spec.surface === "public") {
|
|
32
|
+
app.get(`/api/views/${view.name}`, dispatch);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function openApiToHono(path) {
|
|
37
|
+
return path.replace(/\{([^}]+)\}/g, ":$1");
|
|
38
|
+
}
|
|
39
|
+
/** Hono throws outside a Workers execution context; other runtimes await inline. */
|
|
40
|
+
export function readWaitUntil(context) {
|
|
41
|
+
try {
|
|
42
|
+
const execution = context.executionCtx;
|
|
43
|
+
return execution.waitUntil.bind(execution);
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=mountRuntimeEndpoints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mountRuntimeEndpoints.js","sourceRoot":"","sources":["../../src/mount/mountRuntimeEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAEjF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,mEAAmE;AACnE,MAAM,UAAU,qBAAqB,CACnC,GAAY,EACZ,GAAqB;IAErB,MAAM,MAAM,GAAG,0BAA0B,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC3F,MAAM,QAAQ,GAAG,KAAK,EAAE,CAAU,EAAqB,EAAE;QACvD,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE;YAC5C,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;YAC1C,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,SAAS;SACV,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,QAAQ,CAAC,IAAI,CAClB,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,EAC5C,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAC1B,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC5E,MAAM,QAAQ,GAAG,yBAAyB,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtD,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAC;QAChC,CAAC;QACD,OAAO,MAAM,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC;eACzC,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAClD,CAAC,CAAC;IAEF,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,GAAG,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;AAC7C,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,aAAa,CAC3B,OAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;QACvC,OAAO,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveCaller.d.ts","sourceRoot":"","sources":["../../src/mount/resolveCaller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"resolveCaller.d.ts","sourceRoot":"","sources":["../../src/mount/resolveCaller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAEL,KAAK,UAAU,EAEhB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAkB,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAElE,MAAM,MAAM,4BAA4B,GACpC;IAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;CAAE,GAChC;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,CAAC,UAAU,EAAE,SAAS,GAAG,gBAAgB,CAAC;QAClD,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KACrC,CAAC;CACH,CAAC;AAEN;oEACoE;AACpE,MAAM,MAAM,0BAA0B,GAAG,CACvC,OAAO,EAAE,OAAO,KACb,4BAA4B,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAE1E,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IACzD,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE;QACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B;mEAC2D;QAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KACrC,CAAC;IACF,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;CAC1D;AAED,MAAM,MAAM,gBAAgB,GACxB;IACE,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,eAAe,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACjC,CAAC;AAEN;;2CAE2C;AAC3C,wBAAsB,aAAa,CACjC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA6E3B;AAED,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,WAAW,EAAE,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,EAChD,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,GAAG,WAAW,CAAC,GAC9C,OAAO,CAAC,cAAc,CAAC,CAYzB"}
|
|
@@ -31,22 +31,6 @@ export async function resolveCaller(request, options) {
|
|
|
31
31
|
if (!token) {
|
|
32
32
|
return invalidCredential(401);
|
|
33
33
|
}
|
|
34
|
-
if (token.split(":").length === 3) {
|
|
35
|
-
const helpers = options.env?.OAUTH_PROVIDER;
|
|
36
|
-
const verified = await helpers?.unwrapToken(token);
|
|
37
|
-
if (!verified || !audienceAllows(request.url, verified.audience)) {
|
|
38
|
-
return invalidCredential(401);
|
|
39
|
-
}
|
|
40
|
-
return {
|
|
41
|
-
kind: "authenticated",
|
|
42
|
-
context: await contextForVerifiedUser(verified.userId, {
|
|
43
|
-
credential: "oauth",
|
|
44
|
-
credentialId: verified.id,
|
|
45
|
-
clientId: verified.grant.clientId,
|
|
46
|
-
scopes: verified.scope,
|
|
47
|
-
}, options.auth, base),
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
34
|
if (!options.jwtBearer)
|
|
51
35
|
return invalidCredential(401);
|
|
52
36
|
const verified = await options.auth.verifyOAuthAccessToken(request, {
|
|
@@ -82,23 +66,6 @@ export async function resolveCaller(request, options) {
|
|
|
82
66
|
}, options.auth, base),
|
|
83
67
|
};
|
|
84
68
|
}
|
|
85
|
-
function audienceAllows(requestUrl, audience) {
|
|
86
|
-
if (!audience)
|
|
87
|
-
return true;
|
|
88
|
-
const request = new URL(requestUrl);
|
|
89
|
-
return (Array.isArray(audience) ? audience : [audience]).some((value) => {
|
|
90
|
-
try {
|
|
91
|
-
const allowed = new URL(value);
|
|
92
|
-
return request.origin === allowed.origin &&
|
|
93
|
-
(allowed.pathname === "/" ||
|
|
94
|
-
request.pathname === allowed.pathname ||
|
|
95
|
-
request.pathname.startsWith(`${allowed.pathname}/`));
|
|
96
|
-
}
|
|
97
|
-
catch {
|
|
98
|
-
return false;
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
69
|
export async function contextForVerifiedUser(userId, authContext, auth, base) {
|
|
103
70
|
const role = userId ? await auth.getUserRole(userId) : null;
|
|
104
71
|
const staff = userId && role && STAFF_ROLE_SET.has(role)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveCaller.js","sourceRoot":"","sources":["../../src/mount/resolveCaller.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolveCaller.js","sourceRoot":"","sources":["../../src/mount/resolveCaller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cachePolicy.d.ts","sourceRoot":"","sources":["../../src/oauth/cachePolicy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cachePolicy.d.ts","sourceRoot":"","sources":["../../src/oauth/cachePolicy.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAEhD,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAmC/E"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { OAUTH_AUTHORIZE_PATH, OAUTH_REGISTER_PATH, OAUTH_TOKEN_PATH, } from "./oauthConstants.js";
|
|
2
1
|
export const PUBLIC_CACHE_TAG = "mantle-public";
|
|
3
2
|
/** Apply the Worker's final cache decision after OAuth/default dispatch. */
|
|
4
3
|
export function applyCachePolicy(request, response) {
|
|
@@ -39,9 +38,8 @@ function isPrivateSurfacePath(pathname) {
|
|
|
39
38
|
|| pathname.startsWith("/admin/")
|
|
40
39
|
|| pathname === "/api/auth"
|
|
41
40
|
|| pathname.startsWith("/api/auth/")
|
|
42
|
-
|| pathname ===
|
|
43
|
-
|| pathname
|
|
44
|
-
|| pathname === OAUTH_REGISTER_PATH
|
|
41
|
+
|| pathname === "/oauth"
|
|
42
|
+
|| pathname.startsWith("/oauth/")
|
|
45
43
|
|| pathname.startsWith("/.well-known/oauth")
|
|
46
44
|
|| pathname === "/mcp"
|
|
47
45
|
|| pathname.startsWith("/mcp/");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cachePolicy.js","sourceRoot":"","sources":["../../src/oauth/cachePolicy.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"cachePolicy.js","sourceRoot":"","sources":["../../src/oauth/cachePolicy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* OAuth consent UI renderer. Self-contained HTML — no external assets,
|
|
3
|
-
* no framework
|
|
3
|
+
* no framework and no Admin UI dependency.
|
|
4
4
|
* Supports zh-TW and en locales.
|
|
5
5
|
*/
|
|
6
6
|
export interface ConsentModel {
|
|
7
7
|
readonly clientName: string;
|
|
8
8
|
readonly redirectUri: string;
|
|
9
9
|
readonly scopes: readonly string[];
|
|
10
|
-
readonly
|
|
10
|
+
readonly oauthQuery: string;
|
|
11
11
|
}
|
|
12
12
|
/** Detect consent UI locale from Accept-Language header. */
|
|
13
13
|
export declare function detectConsentLocale(acceptLanguage: string | null): "zh-TW" | "en";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consentHtml.d.ts","sourceRoot":"","sources":["../../src/oauth/consentHtml.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"consentHtml.d.ts","sourceRoot":"","sources":["../../src/oauth/consentHtml.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,4DAA4D;AAC5D,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,CAKjF;AA0DD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,GAAG,MAAM,CA4B5F"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* OAuth consent UI renderer. Self-contained HTML — no external assets,
|
|
3
|
-
* no framework
|
|
3
|
+
* no framework and no Admin UI dependency.
|
|
4
4
|
* Supports zh-TW and en locales.
|
|
5
5
|
*/
|
|
6
|
-
import { systemTokensCss } from "@aotter/mantle-admin-ui";
|
|
7
6
|
/** Detect consent UI locale from Accept-Language header. */
|
|
8
7
|
export function detectConsentLocale(acceptLanguage) {
|
|
9
8
|
if (!acceptLanguage)
|
|
@@ -46,6 +45,7 @@ function escapeHtml(s) {
|
|
|
46
45
|
.replace(/'/g, "'");
|
|
47
46
|
}
|
|
48
47
|
const CSS = `
|
|
48
|
+
:root{--mantle-blue-deep:#1a3062;--app-background:#f6f8fc;--foreground:#172033;--card:#fff;--card-foreground:#172033;--border:#d7dce7;--muted:#f1f3f8;--muted-foreground:#596579;--primary:#1a3062;--primary-foreground:#fff;--secondary:#edf1fa;--secondary-foreground:#1a3062;--accent:#e2e8f5;--ring:#4d6aac;--radius:.625rem}
|
|
49
49
|
*{box-sizing:border-box}
|
|
50
50
|
body{margin:0;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:1rem;font-family:ui-sans-serif,system-ui,sans-serif;color:var(--foreground);background:var(--app-background)}
|
|
51
51
|
.card{max-width:32rem;width:100%;padding:2rem;border-radius:calc(var(--radius) + .125rem);color:var(--card-foreground);background:var(--card);border:1px solid var(--border);box-shadow:0 12px 36px color-mix(in srgb,var(--mantle-blue-deep) 8%,transparent);backdrop-filter:blur(48px) saturate(135%)}
|
|
@@ -68,7 +68,7 @@ const CSS = `
|
|
|
68
68
|
export function renderConsentHtml(locale, model) {
|
|
69
69
|
const t = STRINGS[locale];
|
|
70
70
|
const lang = locale === "zh-TW" ? "zh-Hant-TW" : "en";
|
|
71
|
-
const head = `<!doctype html><html lang="${lang}"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1"/><title>${t.title}</title><style>${
|
|
71
|
+
const head = `<!doctype html><html lang="${lang}"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1"/><title>${t.title}</title><style>${CSS}</style></head><body><main class="card">`;
|
|
72
72
|
const tail = `</main></body></html>`;
|
|
73
73
|
if (!model) {
|
|
74
74
|
return `${head}<p class="eyebrow">${t.eyebrow}</p><h1>${t.invalidTitle}</h1><p class="muted">${t.invalidBody}</p>${tail}`;
|
|
@@ -81,8 +81,8 @@ export function renderConsentHtml(locale, model) {
|
|
|
81
81
|
`<h1>${t.heading(escapeHtml(model.clientName))}</h1>` +
|
|
82
82
|
`<p class="muted">${t.redirectLabel} <code>${escapeHtml(model.redirectUri)}</code></p>` +
|
|
83
83
|
`${scopesBlock}` +
|
|
84
|
-
`<form method="post" action="/oauth/
|
|
85
|
-
`<input type="hidden" name="
|
|
84
|
+
`<form method="post" action="/oauth/consent">` +
|
|
85
|
+
`<input type="hidden" name="oauth_query" value="${escapeHtml(model.oauthQuery)}"/>` +
|
|
86
86
|
`<button type="submit" name="decision" value="approve">${t.approve}</button>` +
|
|
87
87
|
`<button type="submit" name="decision" value="deny">${t.deny}</button>` +
|
|
88
88
|
`</form>` +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consentHtml.js","sourceRoot":"","sources":["../../src/oauth/consentHtml.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"consentHtml.js","sourceRoot":"","sources":["../../src/oauth/consentHtml.ts"],"names":[],"mappings":"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"}
|
package/dist/oauth/index.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
export { OAUTH_AUTHORIZE_PATH, OAUTH_TOKEN_PATH, OAUTH_REGISTER_PATH, } from "./oauthConstants.js";
|
|
2
|
-
export { createOAuthProvider, type CreateOAuthProviderArgs, } from "./oauthSingleton.js";
|
|
3
1
|
export { mountAuthorize, type MountAuthorizeOptions, } from "./mountOAuth.js";
|
|
4
2
|
export { applyCachePolicy } from "./cachePolicy.js";
|
|
5
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/oauth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/oauth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/oauth/index.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
export { OAUTH_AUTHORIZE_PATH, OAUTH_TOKEN_PATH, OAUTH_REGISTER_PATH, } from "./oauthConstants.js";
|
|
2
|
-
export { createOAuthProvider, } from "./oauthSingleton.js";
|
|
3
1
|
export { mountAuthorize, } from "./mountOAuth.js";
|
|
4
2
|
export { applyCachePolicy } from "./cachePolicy.js";
|
|
5
3
|
//# sourceMappingURL=index.js.map
|
package/dist/oauth/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/oauth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/oauth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,GAEf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -1,23 +1,9 @@
|
|
|
1
1
|
import type { Env, Hono } from "hono";
|
|
2
2
|
import type { Auth } from "../auth/createAuth.js";
|
|
3
3
|
export interface MountAuthorizeOptions {
|
|
4
|
-
/** Better Auth-backed identity used to gate the consent UI. */
|
|
5
4
|
readonly auth: Auth;
|
|
6
|
-
/** Path that anonymous /authorize visitors get redirected to.
|
|
7
|
-
* Defaults to `/admin/sign-in`. The original `/authorize?...` URL
|
|
8
|
-
* is appended as `?return=...` so the sign-in page can bounce
|
|
9
|
-
* back after Better Auth completes. */
|
|
10
|
-
readonly loginPath?: string;
|
|
11
5
|
}
|
|
12
|
-
/**
|
|
13
|
-
*
|
|
14
|
-
* Hono app must be passed to `createOAuthProvider({ defaultHandler })`;
|
|
15
|
-
* the lib injects `OAUTH_PROVIDER` helpers onto env BEFORE forwarding
|
|
16
|
-
* the request here, so we read `c.env.OAUTH_PROVIDER` directly.
|
|
17
|
-
*
|
|
18
|
-
* `/token` + `/register` + `/.well-known/oauth-*` are intercepted by
|
|
19
|
-
* the OAuthProvider itself and never reach defaultHandler — do not
|
|
20
|
-
* mount them here.
|
|
21
|
-
*/
|
|
6
|
+
/** Mount Mantle's small server-rendered consent page. Better Auth owns the
|
|
7
|
+
* signed authorization query, client lookup, decision, and redirect. */
|
|
22
8
|
export declare function mountAuthorize<E extends Env>(app: Hono<E>, options: MountAuthorizeOptions): void;
|
|
23
9
|
//# sourceMappingURL=mountOAuth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mountOAuth.d.ts","sourceRoot":"","sources":["../../src/oauth/mountOAuth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"mountOAuth.d.ts","sourceRoot":"","sources":["../../src/oauth/mountOAuth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACtC,OAAO,KAAK,EAAE,IAAI,EAAuB,MAAM,uBAAuB,CAAC;AAOvE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;CACrB;AAED;wEACwE;AACxE,wBAAgB,cAAc,CAAC,CAAC,SAAS,GAAG,EAC1C,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EACZ,OAAO,EAAE,qBAAqB,GAC7B,IAAI,CAiCN"}
|