@theokit/http 1.1.1 → 1.2.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.
- package/dist/app.d.ts +76 -0
- package/dist/app.js +1 -1
- package/dist/{chunk-DI7KNIMB.js → chunk-6CFF7Q4Z.js} +33 -2
- package/dist/chunk-6CFF7Q4Z.js.map +1 -0
- package/dist/{chunk-ZMMIH3I2.js → chunk-NFCIOKAI.js} +186 -3
- package/dist/chunk-NFCIOKAI.js.map +1 -0
- package/dist/index.d.ts +30 -2
- package/dist/index.js +115 -225
- package/dist/index.js.map +1 -1
- package/dist/theokit-plugin.js +3 -30
- package/dist/theokit-plugin.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-DI7KNIMB.js.map +0 -1
- package/dist/chunk-ZMMIH3I2.js.map +0 -1
package/dist/app.d.ts
CHANGED
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
import { S as ServerHandle } from './types-CGthbcon.js';
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* Whether a route DECLARED an access decision, or nobody said (usetheokit/theokit#576).
|
|
5
|
+
*
|
|
6
|
+
* ## The ambiguity this removes
|
|
7
|
+
*
|
|
8
|
+
* `guards: []` meant two different things and the dispatcher could not tell them apart:
|
|
9
|
+
*
|
|
10
|
+
* - *this route is open on purpose*, and
|
|
11
|
+
* - *nobody said*.
|
|
12
|
+
*
|
|
13
|
+
* Faced with both readings it took the permissive one and served. For controllers that was safe
|
|
14
|
+
* only because a separate build gate (#514) refuses an undeclared controller route — which makes
|
|
15
|
+
* least privilege a property of the PIPELINE rather than of the system. Anything reaching the
|
|
16
|
+
* dispatcher without having run that build is served, and `@theokit/http` is published on its own,
|
|
17
|
+
* so "without having run that build" is an ordinary way to use it.
|
|
18
|
+
*
|
|
19
|
+
* Agent routes had neither. They are auto-wired — the app never wrote them, so there is no file for
|
|
20
|
+
* a reviewer to read — dispatched BEFORE controllers and file routes, and covered by no gate at
|
|
21
|
+
* all. An agent authored through capabilities has no class, so it takes no `@UseGuards`, so
|
|
22
|
+
* `guards` was `undefined`, so `?? []`, so served.
|
|
23
|
+
*
|
|
24
|
+
* The fix is not a new guard. It is making absence REPRESENTABLE, so a decision can be told from
|
|
25
|
+
* its residue.
|
|
26
|
+
*/
|
|
27
|
+
/** What a route says about who may call it. */
|
|
28
|
+
type AccessDecision =
|
|
29
|
+
/** Anyone may call it, on purpose. */
|
|
30
|
+
'public'
|
|
31
|
+
/** At least one guard decides. */
|
|
32
|
+
| 'guarded'
|
|
33
|
+
/** Nobody said — the state that used to be indistinguishable from `'public'`. */
|
|
34
|
+
| 'undeclared';
|
|
35
|
+
/**
|
|
36
|
+
* How an app answers a route that declared nothing.
|
|
37
|
+
*
|
|
38
|
+
* `'warn'` is the default and serves the request after saying so once, loudly, at mount. `'deny'`
|
|
39
|
+
* refuses with 403.
|
|
40
|
+
*
|
|
41
|
+
* The default is `'warn'` and not `'deny'` because flipping it silently would break every app whose
|
|
42
|
+
* agent endpoints are open today — which is precisely the population #576 is about, and breaking
|
|
43
|
+
* them inside a patch is how a security improvement becomes an outage. It becomes `'deny'` in the
|
|
44
|
+
* next major; `'deny'` is available now for anyone who wants the property before then.
|
|
45
|
+
*/
|
|
46
|
+
type UndeclaredRoutePolicy = 'warn' | 'deny';
|
|
47
|
+
|
|
3
48
|
/**
|
|
4
49
|
* TheoApp — NestJS/Spring Boot-style application bootstrap.
|
|
5
50
|
*
|
|
@@ -30,6 +75,15 @@ interface AgentAppEntry {
|
|
|
30
75
|
readonly compiled: unknown;
|
|
31
76
|
/** Guards to run before the agent routes (same shape the controller pipeline uses). */
|
|
32
77
|
readonly guards?: Function[];
|
|
78
|
+
/**
|
|
79
|
+
* The access decision for this agent's routes, said explicitly (#576).
|
|
80
|
+
*
|
|
81
|
+
* Omit it and a non-empty `guards` still counts as a declaration. Omit BOTH and the route is
|
|
82
|
+
* `'undeclared'` — which used to be indistinguishable from open, because both arrived as
|
|
83
|
+
* `guards: []`. Agent routes need this most: they are auto-wired, so the app never wrote a file a
|
|
84
|
+
* reviewer could read, and a capability-authored agent has no class to hang `@UseGuards` on.
|
|
85
|
+
*/
|
|
86
|
+
readonly access?: Exclude<AccessDecision, 'undeclared'>;
|
|
33
87
|
/** Method name reported for this agent's route (default `'run'`). */
|
|
34
88
|
readonly methodName?: string;
|
|
35
89
|
/** Optional owning class, kept only for guard resolution parity with controllers. */
|
|
@@ -85,6 +139,17 @@ interface AgentRuntime {
|
|
|
85
139
|
interface TheoAppOptions {
|
|
86
140
|
/** Controller classes decorated with @Controller. */
|
|
87
141
|
controllers: Function[];
|
|
142
|
+
/**
|
|
143
|
+
* What to do with a route that declared no access decision (#576).
|
|
144
|
+
*
|
|
145
|
+
* `'warn'` (default) serves it after saying so once at mount. `'deny'` refuses with 403.
|
|
146
|
+
*
|
|
147
|
+
* The default is not `'deny'` because flipping it here would break every app whose agent
|
|
148
|
+
* endpoints are open today — the population #576 is about — inside a non-major release. It
|
|
149
|
+
* becomes `'deny'` in the next major; `'deny'` is available now for anyone who wants the property
|
|
150
|
+
* before then.
|
|
151
|
+
*/
|
|
152
|
+
undeclaredRoutes?: UndeclaredRoutePolicy;
|
|
88
153
|
/**
|
|
89
154
|
* Agents to auto-wire (routes + SSE + tools). M53 — these are prepared ENTRIES, not decorated
|
|
90
155
|
* classes: the app no longer reads agent metadata, so authoring is free to be capability-based
|
|
@@ -164,6 +229,17 @@ declare class TheoApp {
|
|
|
164
229
|
getServerHandle(): ServerHandle;
|
|
165
230
|
close(): Promise<void>;
|
|
166
231
|
private agentRoutes;
|
|
232
|
+
/**
|
|
233
|
+
* Paths already warned about (#576).
|
|
234
|
+
*
|
|
235
|
+
* Controller routes are classified at dispatch rather than at mount — the app builds its route
|
|
236
|
+
* table from walked metadata and the public marker lives on the class, so the cheapest place to
|
|
237
|
+
* ask is where both are already in hand. The set is what keeps it to one line per route instead
|
|
238
|
+
* of one per request.
|
|
239
|
+
*/
|
|
240
|
+
private readonly warnedUndeclared;
|
|
241
|
+
/** #576 — how this app answers a route nobody declared. Set once, at create. */
|
|
242
|
+
private readonly undeclaredRoutes;
|
|
167
243
|
/**
|
|
168
244
|
* Synchronous since B-M67-21: the only `await` here was the dynamic `import('@theokit/agents')`
|
|
169
245
|
* that the inversion removed, and `AgentRuntime.generateAgentRoutes` returns routes directly.
|
package/dist/app.js
CHANGED
|
@@ -245,6 +245,36 @@ function scanControllerFiles(rootDir, pattern) {
|
|
|
245
245
|
}
|
|
246
246
|
__name(scanControllerFiles, "scanControllerFiles");
|
|
247
247
|
|
|
248
|
+
// src/bridge/resolve-body.ts
|
|
249
|
+
async function resolveBody(method, request, walk, jsonResponse) {
|
|
250
|
+
if (![
|
|
251
|
+
"POST",
|
|
252
|
+
"PUT",
|
|
253
|
+
"PATCH"
|
|
254
|
+
].includes(method)) return void 0;
|
|
255
|
+
let body;
|
|
256
|
+
try {
|
|
257
|
+
const text = await request.clone().text();
|
|
258
|
+
body = text ? JSON.parse(text) : void 0;
|
|
259
|
+
} catch {
|
|
260
|
+
body = void 0;
|
|
261
|
+
}
|
|
262
|
+
if (walk.bodySchema && body !== void 0) {
|
|
263
|
+
const result = walk.bodySchema.safeParse(body);
|
|
264
|
+
if (!result.success) {
|
|
265
|
+
return jsonResponse(422, {
|
|
266
|
+
error: {
|
|
267
|
+
code: "VALIDATION_ERROR",
|
|
268
|
+
issues: result.error.issues
|
|
269
|
+
}
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
body = result.data;
|
|
273
|
+
}
|
|
274
|
+
return body;
|
|
275
|
+
}
|
|
276
|
+
__name(resolveBody, "resolveBody");
|
|
277
|
+
|
|
248
278
|
export {
|
|
249
279
|
MiddlewareConsumerImpl,
|
|
250
280
|
middlewareMatchesPath,
|
|
@@ -252,6 +282,7 @@ export {
|
|
|
252
282
|
transformControllerSource,
|
|
253
283
|
loadControllerWithSwc,
|
|
254
284
|
loadControllersFromGlob,
|
|
255
|
-
isControllerClass
|
|
285
|
+
isControllerClass,
|
|
286
|
+
resolveBody
|
|
256
287
|
};
|
|
257
|
-
//# sourceMappingURL=chunk-
|
|
288
|
+
//# sourceMappingURL=chunk-6CFF7Q4Z.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/bridge/middleware-consumer.ts","../src/bridge/swc-loader.ts","../src/bridge/resolve-body.ts"],"mappings":"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","names":["MiddlewareConsumerImpl","entries","container","apply","middleware","resolved","map","m","resolveMiddleware","excludePatterns","proxy","exclude","routes","r","push","path","forRoutes","routePatterns","handler","getEntries","prototype","use","instance","resolveOrNew","request","next","middlewareMatchesPath","entry","requestPath","pattern","pathMatches","normPath","replace","normPattern","startsWith","runMiddleware","response","Promise","resolve","readFileSync","writeFileSync","unlinkSync","readdirSync","createRequire","resolve","dirname","join","relative","pathToFileURL","fileURLToPath","getSwcrcTarget","swcrc","jsc","target","consumerSwcrcCache","readConsumerSwcrc","startDir","undefined","dir","root","dirname","candidate","join","raw","readFileSync","parsed","JSON","parse","$schema","parent","swcCoreCache","loadSwcCore","thisDir","fileURLToPath","url","req","createRequire","resolve","resolved","pathToFileURL","href","transformControllerSource","source","filename","loadSwc","swc","HttpDecoratorsConfigError","consumerSwcrc","consumerJsc","code","transformSync","parser","syntax","decorators","transform","legacyDecorator","decoratorMetadata","module","type","sourceMaps","loadControllerWithSwc","absoluteFilePath","tmpPath","replace","writeFileSync","Date","now","unlinkSync","loadControllersFromGlob","rootDir","pattern","files","scanControllerFiles","length","console","warn","controllers","file","absPath","mod","exported","Object","values","isControllerClass","push","fn","Reflect","hasMetadata","Symbol","for","parts","split","dirParts","part","includes","baseDir","lastPart","suffix","walk","entry","readdirSync","withFileTypes","full","name","isDirectory","endsWith","relative","resolveBody","method","request","walk","jsonResponse","includes","undefined","body","text","clone","JSON","parse","bodySchema","result","safeParse","success","error","code","issues","data"]}
|
|
@@ -17,6 +17,135 @@ import {
|
|
|
17
17
|
// src/app.ts
|
|
18
18
|
import "reflect-metadata";
|
|
19
19
|
|
|
20
|
+
// src/decorators/set-metadata.ts
|
|
21
|
+
import "reflect-metadata";
|
|
22
|
+
var decoratorKeyCounter = 0;
|
|
23
|
+
function createDecorator() {
|
|
24
|
+
const key = /* @__PURE__ */ Symbol.for(`theokit:custom:${++decoratorKeyCounter}`);
|
|
25
|
+
const decorator = /* @__PURE__ */ __name((value) => {
|
|
26
|
+
return (target, propertyKey) => {
|
|
27
|
+
const metaTarget = propertyKey !== void 0 ? target.constructor : target;
|
|
28
|
+
Reflect.defineMetadata(key, value, metaTarget, propertyKey);
|
|
29
|
+
};
|
|
30
|
+
}, "decorator");
|
|
31
|
+
decorator.key = key;
|
|
32
|
+
return decorator;
|
|
33
|
+
}
|
|
34
|
+
__name(createDecorator, "createDecorator");
|
|
35
|
+
function SetMetadata(metaKey, value) {
|
|
36
|
+
return (target, propertyKey) => {
|
|
37
|
+
const metaTarget = propertyKey !== void 0 ? target.constructor : target;
|
|
38
|
+
Reflect.defineMetadata(metaKey, value, metaTarget, propertyKey);
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
__name(SetMetadata, "SetMetadata");
|
|
42
|
+
var Reflector = class {
|
|
43
|
+
static {
|
|
44
|
+
__name(this, "Reflector");
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Read metadata set by a typed decorator created via createDecorator<T>().
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```ts
|
|
51
|
+
* const Roles = createDecorator<string[]>()
|
|
52
|
+
* const reflector = new Reflector()
|
|
53
|
+
* const roles = reflector.get(Roles, handlerFn) // string[] | undefined
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
get(decorator, target, propertyKey) {
|
|
57
|
+
const key = decorator.key;
|
|
58
|
+
if (!key) return void 0;
|
|
59
|
+
if (propertyKey !== void 0) {
|
|
60
|
+
return Reflect.getMetadata(key, target, propertyKey);
|
|
61
|
+
}
|
|
62
|
+
return Reflect.getMetadata(key, target);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Read metadata set by @SetMetadata(key, value).
|
|
66
|
+
*/
|
|
67
|
+
getByKey(key, target, propertyKey) {
|
|
68
|
+
if (propertyKey !== void 0) {
|
|
69
|
+
return Reflect.getMetadata(key, target, propertyKey);
|
|
70
|
+
}
|
|
71
|
+
return Reflect.getMetadata(key, target);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Read metadata checking method-level first, then class-level.
|
|
75
|
+
* Returns the first non-undefined value found.
|
|
76
|
+
*
|
|
77
|
+
* NestJS equivalent: `reflector.getAllAndOverride(ROLES_KEY, [context.getHandler(), context.getClass()])`
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* ```ts
|
|
81
|
+
* const Roles = createDecorator<string[]>()
|
|
82
|
+
* // In a guard:
|
|
83
|
+
* const roles = reflector.getAllAndOverride(Roles, context.getClass(), context.getMethodName())
|
|
84
|
+
* // Checks method-level @Roles first, falls back to class-level @Roles
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
getAllAndOverride(decorator, target, propertyKey) {
|
|
88
|
+
if (propertyKey !== void 0) {
|
|
89
|
+
const methodLevel = this.get(decorator, target, propertyKey);
|
|
90
|
+
if (methodLevel !== void 0) return methodLevel;
|
|
91
|
+
}
|
|
92
|
+
return this.get(decorator, target);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Read metadata checking method-level first, then class-level, by raw key.
|
|
96
|
+
* Returns the first non-undefined value found.
|
|
97
|
+
*/
|
|
98
|
+
getAllAndOverrideByKey(key, target, propertyKey) {
|
|
99
|
+
if (propertyKey !== void 0) {
|
|
100
|
+
const methodLevel = this.getByKey(key, target, propertyKey);
|
|
101
|
+
if (methodLevel !== void 0) return methodLevel;
|
|
102
|
+
}
|
|
103
|
+
return this.getByKey(key, target);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Read metadata from both method-level and class-level, merging arrays.
|
|
107
|
+
* Returns all found values as a flat array.
|
|
108
|
+
*
|
|
109
|
+
* NestJS equivalent: `reflector.getAllAndMerge(ROLES_KEY, [context.getHandler(), context.getClass()])`
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* ```ts
|
|
113
|
+
* const Tags = createDecorator<string[]>()
|
|
114
|
+
*
|
|
115
|
+
* @Tags(['api'])
|
|
116
|
+
* @Controller('cats')
|
|
117
|
+
* class CatsCtrl {
|
|
118
|
+
* @Tags(['read'])
|
|
119
|
+
* @Get()
|
|
120
|
+
* findAll() {}
|
|
121
|
+
* }
|
|
122
|
+
*
|
|
123
|
+
* reflector.getAllAndMerge(Tags, CatsCtrl, 'findAll')
|
|
124
|
+
* // → ['read', 'api'] (method + class merged)
|
|
125
|
+
* ```
|
|
126
|
+
*/
|
|
127
|
+
getAllAndMerge(decorator, target, propertyKey) {
|
|
128
|
+
const result = [];
|
|
129
|
+
if (propertyKey !== void 0) {
|
|
130
|
+
const methodLevel = this.get(decorator, target, propertyKey);
|
|
131
|
+
if (methodLevel !== void 0) {
|
|
132
|
+
if (Array.isArray(methodLevel)) result.push(...methodLevel);
|
|
133
|
+
else result.push(methodLevel);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
const classLevel = this.get(decorator, target);
|
|
137
|
+
if (classLevel !== void 0) {
|
|
138
|
+
if (Array.isArray(classLevel)) result.push(...classLevel);
|
|
139
|
+
else result.push(classLevel);
|
|
140
|
+
}
|
|
141
|
+
return result;
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
// src/decorators/public.ts
|
|
146
|
+
var PUBLIC_ROUTE_METADATA = "theokit:public";
|
|
147
|
+
var Public = /* @__PURE__ */ __name(() => SetMetadata(PUBLIC_ROUTE_METADATA, true), "Public");
|
|
148
|
+
|
|
20
149
|
// src/request-context.ts
|
|
21
150
|
import { AsyncLocalStorage } from "async_hooks";
|
|
22
151
|
var storage = new AsyncLocalStorage();
|
|
@@ -37,6 +166,17 @@ async function runWithRequestContext(ctx, fn) {
|
|
|
37
166
|
}
|
|
38
167
|
__name(runWithRequestContext, "runWithRequestContext");
|
|
39
168
|
|
|
169
|
+
// src/route-access.ts
|
|
170
|
+
function classifyAccess(declared) {
|
|
171
|
+
if (declared.access !== void 0) return declared.access;
|
|
172
|
+
return declared.guards !== void 0 && declared.guards.length > 0 ? "guarded" : "undeclared";
|
|
173
|
+
}
|
|
174
|
+
__name(classifyAccess, "classifyAccess");
|
|
175
|
+
function undeclaredRouteWarning(kind, route) {
|
|
176
|
+
return `[theokit] ${kind} route ${route} declares no access decision and is served to anyone. Declare one: attach a guard, or say it is open on purpose (${kind === "agent" ? "`access: 'public'`" : "`@Public()`"}). This becomes a 403 in the next major; set \`undeclaredRoutes: 'deny'\` to refuse it now.`;
|
|
177
|
+
}
|
|
178
|
+
__name(undeclaredRouteWarning, "undeclaredRouteWarning");
|
|
179
|
+
|
|
40
180
|
// src/static.ts
|
|
41
181
|
var MIME_TYPES = {
|
|
42
182
|
// Text
|
|
@@ -324,6 +464,7 @@ var TheoApp = class _TheoApp {
|
|
|
324
464
|
readyPath;
|
|
325
465
|
readinessChecks;
|
|
326
466
|
constructor(opts) {
|
|
467
|
+
this.undeclaredRoutes = opts?.undeclaredRoutes ?? "warn";
|
|
327
468
|
const hp = opts?.healthPath ?? "/__theo/health";
|
|
328
469
|
const rp = opts?.readyPath ?? "/__theo/ready";
|
|
329
470
|
if (hp.startsWith("/api/")) throw new Error(`[TheoApp] healthPath "${hp}" must not start with /api/ \u2014 would collide with user routes`);
|
|
@@ -446,6 +587,17 @@ var TheoApp = class _TheoApp {
|
|
|
446
587
|
// ── Auto-wire agents (the "SpringApplication.run()" moment) ──
|
|
447
588
|
agentRoutes = [];
|
|
448
589
|
/**
|
|
590
|
+
* Paths already warned about (#576).
|
|
591
|
+
*
|
|
592
|
+
* Controller routes are classified at dispatch rather than at mount — the app builds its route
|
|
593
|
+
* table from walked metadata and the public marker lives on the class, so the cheapest place to
|
|
594
|
+
* ask is where both are already in hand. The set is what keeps it to one line per route instead
|
|
595
|
+
* of one per request.
|
|
596
|
+
*/
|
|
597
|
+
warnedUndeclared = /* @__PURE__ */ new Set();
|
|
598
|
+
/** #576 — how this app answers a route nobody declared. Set once, at create. */
|
|
599
|
+
undeclaredRoutes;
|
|
600
|
+
/**
|
|
449
601
|
* Synchronous since B-M67-21: the only `await` here was the dynamic `import('@theokit/agents')`
|
|
450
602
|
* that the inversion removed, and `AgentRuntime.generateAgentRoutes` returns routes directly.
|
|
451
603
|
*
|
|
@@ -475,6 +627,7 @@ var TheoApp = class _TheoApp {
|
|
|
475
627
|
}
|
|
476
628
|
const agentIdentity = entry.agentClass ?? /* @__PURE__ */ __name(function agent() {
|
|
477
629
|
}, "agent");
|
|
630
|
+
const access = classifyAccess(entry);
|
|
478
631
|
const routes = runtime.generateAgentRoutes({
|
|
479
632
|
walkResult: {
|
|
480
633
|
route: entry.route
|
|
@@ -495,9 +648,15 @@ var TheoApp = class _TheoApp {
|
|
|
495
648
|
handler: route.handler,
|
|
496
649
|
guards: entry.guards ?? [],
|
|
497
650
|
agentClass: agentIdentity,
|
|
498
|
-
methodName: entry.methodName ?? "run"
|
|
651
|
+
methodName: entry.methodName ?? "run",
|
|
652
|
+
access
|
|
499
653
|
});
|
|
500
654
|
}
|
|
655
|
+
if (access === "undeclared") {
|
|
656
|
+
for (const route of routes) {
|
|
657
|
+
console.warn(undeclaredRouteWarning("agent", route.path));
|
|
658
|
+
}
|
|
659
|
+
}
|
|
501
660
|
console.log(` \u{1F916} Agent "${entry.name}" mounted at ${entry.route}/chat (${compiled.tools.length} tools)`);
|
|
502
661
|
}
|
|
503
662
|
}
|
|
@@ -611,6 +770,10 @@ var TheoApp = class _TheoApp {
|
|
|
611
770
|
}
|
|
612
771
|
for (const route of this.agentRoutes) {
|
|
613
772
|
if (request.method.toUpperCase() === route.method && route.pattern.test(pathname)) {
|
|
773
|
+
if (route.access === "undeclared" && this.undeclaredRoutes === "deny") {
|
|
774
|
+
const ex = new ForbiddenException(`Agent route ${pathname} declares no access decision (undeclaredRoutes: 'deny')`);
|
|
775
|
+
return jsonResponse(ex.statusCode, ex.toJSON());
|
|
776
|
+
}
|
|
614
777
|
if (route.guards.length > 0) {
|
|
615
778
|
const ctx = createExecutionContext(request, route.agentClass, route.methodName);
|
|
616
779
|
for (const GuardCtor of route.guards) {
|
|
@@ -636,6 +799,21 @@ var TheoApp = class _TheoApp {
|
|
|
636
799
|
});
|
|
637
800
|
}
|
|
638
801
|
const { entry, params } = match;
|
|
802
|
+
const controllerClass = entry.instance.constructor;
|
|
803
|
+
const access = classifyAccess({
|
|
804
|
+
access: Reflect.getMetadata(PUBLIC_ROUTE_METADATA, controllerClass) === true || Reflect.getMetadata(PUBLIC_ROUTE_METADATA, controllerClass, entry.walk.propertyKey) === true ? "public" : void 0,
|
|
805
|
+
guards: entry.walk.guards
|
|
806
|
+
});
|
|
807
|
+
if (access === "undeclared") {
|
|
808
|
+
if (this.undeclaredRoutes === "deny") {
|
|
809
|
+
const ex = new ForbiddenException(`Controller route ${url.pathname} declares no access decision (undeclaredRoutes: 'deny')`);
|
|
810
|
+
return jsonResponse(ex.statusCode, ex.toJSON());
|
|
811
|
+
}
|
|
812
|
+
if (!this.warnedUndeclared.has(url.pathname)) {
|
|
813
|
+
this.warnedUndeclared.add(url.pathname);
|
|
814
|
+
console.warn(undeclaredRouteWarning("controller", url.pathname));
|
|
815
|
+
}
|
|
816
|
+
}
|
|
639
817
|
try {
|
|
640
818
|
const ctx = createExecutionContext(request, entry.instance.constructor, entry.walk.propertyKey);
|
|
641
819
|
for (const GuardCtor of entry.walk.guards) {
|
|
@@ -652,7 +830,7 @@ var TheoApp = class _TheoApp {
|
|
|
652
830
|
"PATCH"
|
|
653
831
|
].includes(method)) {
|
|
654
832
|
try {
|
|
655
|
-
const text = await request.text();
|
|
833
|
+
const text = await request.clone().text();
|
|
656
834
|
body = text ? JSON.parse(text) : void 0;
|
|
657
835
|
} catch {
|
|
658
836
|
body = void 0;
|
|
@@ -790,6 +968,11 @@ function buildResponse(result, walk, method) {
|
|
|
790
968
|
__name(buildResponse, "buildResponse");
|
|
791
969
|
|
|
792
970
|
export {
|
|
971
|
+
createDecorator,
|
|
972
|
+
SetMetadata,
|
|
973
|
+
Reflector,
|
|
974
|
+
PUBLIC_ROUTE_METADATA,
|
|
975
|
+
Public,
|
|
793
976
|
getRequestContext,
|
|
794
977
|
tryGetRequestContext,
|
|
795
978
|
getMimeType,
|
|
@@ -799,4 +982,4 @@ export {
|
|
|
799
982
|
streamToResponse,
|
|
800
983
|
TheoApp
|
|
801
984
|
};
|
|
802
|
-
//# sourceMappingURL=chunk-
|
|
985
|
+
//# sourceMappingURL=chunk-NFCIOKAI.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/app.ts","../src/decorators/set-metadata.ts","../src/decorators/public.ts","../src/request-context.ts","../src/route-access.ts","../src/static.ts","../src/stream-renderer.ts"],"mappings":"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","names":["decoratorKeyCounter","createDecorator","key","Symbol","for","decorator","value","target","propertyKey","metaTarget","undefined","Reflect","defineMetadata","SetMetadata","metaKey","Reflector","get","getMetadata","getByKey","getAllAndOverride","methodLevel","getAllAndOverrideByKey","getAllAndMerge","result","Array","isArray","push","classLevel","PUBLIC_ROUTE_METADATA","Public","SetMetadata","AsyncLocalStorage","storage","AsyncLocalStorage","getRequestContext","ctx","getStore","Error","tryGetRequestContext","runWithRequestContext","fn","run","classifyAccess","declared","access","undefined","guards","length","undeclaredRouteWarning","kind","route","MIME_TYPES","UNSAFE_PATH_RE","getMimeType","filePath","dot","lastIndexOf","ext","slice","toLowerCase","isSafePath","pathname","test","readFileBun","fullPath","g","globalThis","BunRT","Bun","file","exists","buf","arrayBuffer","content","Uint8Array","size","byteLength","readFileDeno","DenoRT","Deno","stat","isDirectory","readFile","readFileNode","fs","handle","open","close","containedRealPath","root","sep","realPath","realpath","realRoot","startsWith","safePath","resolveRoot","join","cwd","resolve","createStaticHandler","options","maxAge","resolvedRoot","request","method","toUpperCase","url","URL","decodeURIComponent","result","endsWith","includes","contentType","headers","String","Response","status","DOCTYPE","encoder","TextEncoder","renderToStream","options","root","waitForAll","reactDomServer","renderToReadableStream","renderWithReadableStream","renderToString","console","warn","renderWithString","Error","renderFn","reactStream","allReady","doctypeStream","prependDoctype","stream","html","bytes","encode","ReadableStream","start","controller","enqueue","close","Promise","resolve","source","reader","getReader","doctypeSent","pull","value","done","read","cancel","streamToResponse","result","Response","status","headers","TheoApp","serverHandle","routes","frontendHtml","streamingRoot","staticHandler","startTime","Date","now","healthPath","readyPath","readinessChecks","opts","undeclaredRoutes","hp","rp","startsWith","Error","adapter","createNodeAdapter","createServer","request","handleRequest","create","app","registry","Map","module","moduleMeta","Reflect","getMetadata","allModules","imports","Mod","meta","Prov","providers","has","set","Controller","controllers","paramTypes","args","map","pt","dep","get","name","instance","postConstruct","result","Promise","walks","walkControllerMetadata","w","push","walk","sort","a","b","aP","fullPath","includes","bP","entry","paramNames","regexStr","replace","_m","compiledPattern","RegExp","compiledParamNames","needsBody","paramEntries","some","p","source","root","streaming","renderToString","html","staticDir","createStaticHandler","agents","length","autoWireAgents","listen","port","resolve","console","log","getServerHandle","close","agentRoutes","warnedUndeclared","Set","entries","_registry","runtime","agentRuntime","undefined","HttpDecoratorsConfigError","apiKey","llmApiKey","process","env","OPENROUTER_API_KEY","compiled","createRun","agentStreamFactory","tools","model","llmModel","createSdkAgentStream","createFallbackStream","agentIdentity","agentClass","agent","access","classifyAccess","generateAgentRoutes","walkResult","route","compiledOptions","path","method","pattern","handler","guards","methodName","warn","undeclaredRouteWarning","handleReadinessCheck","jsonResponse","status","checks","results","all","check","race","setTimeout","healthy","message","err","allHealthy","every","r","agentName","msg","_message","_sessionId","events","type","runId","code","retryable","Symbol","asyncIterator","i","next","value","done","pathname","URL","url","reqCtx","params","startedAt","runWithRequestContext","handleRequestInContext","_reqCtx","uptime","timestamp","renderToStream","streamToResponse","Response","headers","staticResponse","toUpperCase","test","ex","ForbiddenException","statusCode","toJSON","ctx","createExecutionContext","GuardCtor","guard","canActivate","match","findRoute","error","controllerClass","PUBLIC_ROUTE_METADATA","propertyKey","add","body","text","clone","JSON","parse","bodySchema","safeParse","success","issues","data","buildArgs","Object","fromEntries","searchParams","redirect","location","handlerFn","interceptors","runInterceptors","apply","buildResponse","filters","runExceptionFilters","HttpException","verb","exec","forEach","query","max","Math","index","Array","from","key","toLowerCase","stringify","n","v"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -215,6 +215,29 @@ declare class Reflector {
|
|
|
215
215
|
getAllAndMerge<T>(decorator: (value: T) => MethodDecorator & ClassDecorator, target: Function, propertyKey?: string | symbol): T extends (infer U)[] ? U[] : T[];
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
+
/**
|
|
219
|
+
* The metadata key the framework reads to decide a controller route is open.
|
|
220
|
+
*
|
|
221
|
+
* @public
|
|
222
|
+
*/
|
|
223
|
+
declare const PUBLIC_ROUTE_METADATA = "theokit:public";
|
|
224
|
+
/**
|
|
225
|
+
* Declare that a controller route may be called by anyone.
|
|
226
|
+
*
|
|
227
|
+
* ```ts
|
|
228
|
+
* @Get()
|
|
229
|
+
* @Public()
|
|
230
|
+
* check() { return { status: 'ok' } }
|
|
231
|
+
* ```
|
|
232
|
+
*
|
|
233
|
+
* The controller equivalent of `.policy('public')` on the route builder. `'public'` is a decision,
|
|
234
|
+
* not the absence of one — the build refuses a controller route that declares neither. Use
|
|
235
|
+
* `@SetMetadata`/`@UseGuards` for anything this does not say.
|
|
236
|
+
*
|
|
237
|
+
* @public
|
|
238
|
+
*/
|
|
239
|
+
declare const Public: () => MethodDecorator & ClassDecorator;
|
|
240
|
+
|
|
218
241
|
interface ThrottleOptions {
|
|
219
242
|
/** Maximum requests within the TTL window. */
|
|
220
243
|
limit: number;
|
|
@@ -1277,7 +1300,12 @@ declare function tryGetRequestContext(): TheoRequestContext | null;
|
|
|
1277
1300
|
*/
|
|
1278
1301
|
interface ErrorContext {
|
|
1279
1302
|
route?: string;
|
|
1280
|
-
|
|
1303
|
+
/**
|
|
1304
|
+
* `'construction'` is the controller never coming into existence — distinct from `'handler'`,
|
|
1305
|
+
* which is its method throwing. #577: the first has no instance to blame and takes out every
|
|
1306
|
+
* route on the class, so an operator reading a digest needs to tell the two apart.
|
|
1307
|
+
*/
|
|
1308
|
+
phase?: 'construction' | 'guard' | 'interceptor' | 'handler' | 'filter' | 'agent';
|
|
1281
1309
|
source?: string;
|
|
1282
1310
|
}
|
|
1283
1311
|
interface DigestedError {
|
|
@@ -1426,4 +1454,4 @@ declare function revalidatePath(path: string): void;
|
|
|
1426
1454
|
*/
|
|
1427
1455
|
declare function getRevalidationSignals(): RevalidationSignal[];
|
|
1428
1456
|
|
|
1429
|
-
export { All, type ArgumentsHost, BadGatewayException, BadRequestException, Body, CATCH_EXCEPTIONS, CONTROLLER_PREFIX, type CanActivate, Catch, ConflictException, Controller, type ControllerMeta, type ControllerOptions, type CreateDecoratorServerOptions, type DecoratorHandler, Delete, DiContainer, type DigestedError, EXPOSE_AGENT, type ErrorContext, type ExceptionFilter, type ExecutionContext, Expose, type ExposeEntry, type ExposeOptions, ForbiddenException, GatewayTimeoutException, Get, GoneException, Head, Header, Headers, HostParam, HttpCode, HttpDecoratorsConfigError, HttpException, type HttpExceptionOptions, HttpStatus, type HttpStatusCode, type HttpVerb, HttpVersionNotSupportedException, ImATeapotException, type Interceptor, InternalServerErrorException, Ip, type MetadataKey, MethodNotAllowedException, MiddlewareConsumerImpl, NotAcceptableException, NotFoundException, NotImplementedException, Options, Param, type ParamEntry, type ParamSource, Patch, PayloadTooLargeException, Post, PreconditionFailedException, Put, Query, ROUTE_HEADERS, ROUTE_METHODS, ROUTE_PARAMS, ROUTE_REDIRECT, ROUTE_STATUS, Redirect, type RedirectMeta, Reflector, Req, RequestTimeoutException, Res, type RevalidationSignal, type RouteDefinition, type RouteMap, type RouteMethodEntry, type RouteRegistration, type RouteTree, type ServeAgent, ServiceUnavailableException, Session, SetMetadata, SkipThrottle, type StaticOptions, type StreamRenderOptions, type StreamRenderResult, type SwcCore, type TheoRequestContext, Throttle, type ThrottleOptions, TooManyRequestsException, type TypedClient, TypedClientError, USE_FILTERS, USE_GUARDS, USE_INTERCEPTORS, UnauthorizedException, UnprocessableEntityException, UnsupportedMediaTypeException, UseFilters, UseGuards, UseInterceptors, type WalkResult, composeComponentTree, contract, createDecorator, createDecoratorHandler, createDecoratorServer, createExecutionContext, createStaticHandler, createTypedClient, digestError, getMeta, getMimeType, getRequestContext, getRevalidationSignals, getThrottleOptions, isControllerClass, isSafePath, isThrottleSkipped, joinPath, loadControllerWithSwc, loadControllersFromGlob, registerControllers, renderToStream, resolveDtoSchema, revalidatePath, revalidateTag, runExceptionFilters, runInterceptors, setMeta, streamToResponse, transformControllerSource, tryGetRequestContext, walkControllerMetadata };
|
|
1457
|
+
export { All, type ArgumentsHost, BadGatewayException, BadRequestException, Body, CATCH_EXCEPTIONS, CONTROLLER_PREFIX, type CanActivate, Catch, ConflictException, Controller, type ControllerMeta, type ControllerOptions, type CreateDecoratorServerOptions, type DecoratorHandler, Delete, DiContainer, type DigestedError, EXPOSE_AGENT, type ErrorContext, type ExceptionFilter, type ExecutionContext, Expose, type ExposeEntry, type ExposeOptions, ForbiddenException, GatewayTimeoutException, Get, GoneException, Head, Header, Headers, HostParam, HttpCode, HttpDecoratorsConfigError, HttpException, type HttpExceptionOptions, HttpStatus, type HttpStatusCode, type HttpVerb, HttpVersionNotSupportedException, ImATeapotException, type Interceptor, InternalServerErrorException, Ip, type MetadataKey, MethodNotAllowedException, MiddlewareConsumerImpl, NotAcceptableException, NotFoundException, NotImplementedException, Options, PUBLIC_ROUTE_METADATA, Param, type ParamEntry, type ParamSource, Patch, PayloadTooLargeException, Post, PreconditionFailedException, Public, Put, Query, ROUTE_HEADERS, ROUTE_METHODS, ROUTE_PARAMS, ROUTE_REDIRECT, ROUTE_STATUS, Redirect, type RedirectMeta, Reflector, Req, RequestTimeoutException, Res, type RevalidationSignal, type RouteDefinition, type RouteMap, type RouteMethodEntry, type RouteRegistration, type RouteTree, type ServeAgent, ServiceUnavailableException, Session, SetMetadata, SkipThrottle, type StaticOptions, type StreamRenderOptions, type StreamRenderResult, type SwcCore, type TheoRequestContext, Throttle, type ThrottleOptions, TooManyRequestsException, type TypedClient, TypedClientError, USE_FILTERS, USE_GUARDS, USE_INTERCEPTORS, UnauthorizedException, UnprocessableEntityException, UnsupportedMediaTypeException, UseFilters, UseGuards, UseInterceptors, type WalkResult, composeComponentTree, contract, createDecorator, createDecoratorHandler, createDecoratorServer, createExecutionContext, createStaticHandler, createTypedClient, digestError, getMeta, getMimeType, getRequestContext, getRevalidationSignals, getThrottleOptions, isControllerClass, isSafePath, isThrottleSkipped, joinPath, loadControllerWithSwc, loadControllersFromGlob, registerControllers, renderToStream, resolveDtoSchema, revalidatePath, revalidateTag, runExceptionFilters, runInterceptors, setMeta, streamToResponse, transformControllerSource, tryGetRequestContext, walkControllerMetadata };
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
|
+
PUBLIC_ROUTE_METADATA,
|
|
3
|
+
Public,
|
|
4
|
+
Reflector,
|
|
5
|
+
SetMetadata,
|
|
2
6
|
TheoApp,
|
|
7
|
+
createDecorator,
|
|
3
8
|
createStaticHandler,
|
|
4
9
|
getMimeType,
|
|
5
10
|
getRequestContext,
|
|
@@ -7,16 +12,17 @@ import {
|
|
|
7
12
|
renderToStream,
|
|
8
13
|
streamToResponse,
|
|
9
14
|
tryGetRequestContext
|
|
10
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-NFCIOKAI.js";
|
|
11
16
|
import {
|
|
12
17
|
MiddlewareConsumerImpl,
|
|
13
18
|
isControllerClass,
|
|
14
19
|
loadControllerWithSwc,
|
|
15
20
|
loadControllersFromGlob,
|
|
16
21
|
middlewareMatchesPath,
|
|
22
|
+
resolveBody,
|
|
17
23
|
runMiddleware,
|
|
18
24
|
transformControllerSource
|
|
19
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-6CFF7Q4Z.js";
|
|
20
26
|
import {
|
|
21
27
|
runExceptionFilters
|
|
22
28
|
} from "./chunk-HC47QXZV.js";
|
|
@@ -262,131 +268,6 @@ function Catch(...exceptions) {
|
|
|
262
268
|
}
|
|
263
269
|
__name(Catch, "Catch");
|
|
264
270
|
|
|
265
|
-
// src/decorators/set-metadata.ts
|
|
266
|
-
import "reflect-metadata";
|
|
267
|
-
var decoratorKeyCounter = 0;
|
|
268
|
-
function createDecorator() {
|
|
269
|
-
const key = /* @__PURE__ */ Symbol.for(`theokit:custom:${++decoratorKeyCounter}`);
|
|
270
|
-
const decorator = /* @__PURE__ */ __name((value) => {
|
|
271
|
-
return (target, propertyKey) => {
|
|
272
|
-
const metaTarget = propertyKey !== void 0 ? target.constructor : target;
|
|
273
|
-
Reflect.defineMetadata(key, value, metaTarget, propertyKey);
|
|
274
|
-
};
|
|
275
|
-
}, "decorator");
|
|
276
|
-
decorator.key = key;
|
|
277
|
-
return decorator;
|
|
278
|
-
}
|
|
279
|
-
__name(createDecorator, "createDecorator");
|
|
280
|
-
function SetMetadata(metaKey, value) {
|
|
281
|
-
return (target, propertyKey) => {
|
|
282
|
-
const metaTarget = propertyKey !== void 0 ? target.constructor : target;
|
|
283
|
-
Reflect.defineMetadata(metaKey, value, metaTarget, propertyKey);
|
|
284
|
-
};
|
|
285
|
-
}
|
|
286
|
-
__name(SetMetadata, "SetMetadata");
|
|
287
|
-
var Reflector = class {
|
|
288
|
-
static {
|
|
289
|
-
__name(this, "Reflector");
|
|
290
|
-
}
|
|
291
|
-
/**
|
|
292
|
-
* Read metadata set by a typed decorator created via createDecorator<T>().
|
|
293
|
-
*
|
|
294
|
-
* @example
|
|
295
|
-
* ```ts
|
|
296
|
-
* const Roles = createDecorator<string[]>()
|
|
297
|
-
* const reflector = new Reflector()
|
|
298
|
-
* const roles = reflector.get(Roles, handlerFn) // string[] | undefined
|
|
299
|
-
* ```
|
|
300
|
-
*/
|
|
301
|
-
get(decorator, target, propertyKey) {
|
|
302
|
-
const key = decorator.key;
|
|
303
|
-
if (!key) return void 0;
|
|
304
|
-
if (propertyKey !== void 0) {
|
|
305
|
-
return Reflect.getMetadata(key, target, propertyKey);
|
|
306
|
-
}
|
|
307
|
-
return Reflect.getMetadata(key, target);
|
|
308
|
-
}
|
|
309
|
-
/**
|
|
310
|
-
* Read metadata set by @SetMetadata(key, value).
|
|
311
|
-
*/
|
|
312
|
-
getByKey(key, target, propertyKey) {
|
|
313
|
-
if (propertyKey !== void 0) {
|
|
314
|
-
return Reflect.getMetadata(key, target, propertyKey);
|
|
315
|
-
}
|
|
316
|
-
return Reflect.getMetadata(key, target);
|
|
317
|
-
}
|
|
318
|
-
/**
|
|
319
|
-
* Read metadata checking method-level first, then class-level.
|
|
320
|
-
* Returns the first non-undefined value found.
|
|
321
|
-
*
|
|
322
|
-
* NestJS equivalent: `reflector.getAllAndOverride(ROLES_KEY, [context.getHandler(), context.getClass()])`
|
|
323
|
-
*
|
|
324
|
-
* @example
|
|
325
|
-
* ```ts
|
|
326
|
-
* const Roles = createDecorator<string[]>()
|
|
327
|
-
* // In a guard:
|
|
328
|
-
* const roles = reflector.getAllAndOverride(Roles, context.getClass(), context.getMethodName())
|
|
329
|
-
* // Checks method-level @Roles first, falls back to class-level @Roles
|
|
330
|
-
* ```
|
|
331
|
-
*/
|
|
332
|
-
getAllAndOverride(decorator, target, propertyKey) {
|
|
333
|
-
if (propertyKey !== void 0) {
|
|
334
|
-
const methodLevel = this.get(decorator, target, propertyKey);
|
|
335
|
-
if (methodLevel !== void 0) return methodLevel;
|
|
336
|
-
}
|
|
337
|
-
return this.get(decorator, target);
|
|
338
|
-
}
|
|
339
|
-
/**
|
|
340
|
-
* Read metadata checking method-level first, then class-level, by raw key.
|
|
341
|
-
* Returns the first non-undefined value found.
|
|
342
|
-
*/
|
|
343
|
-
getAllAndOverrideByKey(key, target, propertyKey) {
|
|
344
|
-
if (propertyKey !== void 0) {
|
|
345
|
-
const methodLevel = this.getByKey(key, target, propertyKey);
|
|
346
|
-
if (methodLevel !== void 0) return methodLevel;
|
|
347
|
-
}
|
|
348
|
-
return this.getByKey(key, target);
|
|
349
|
-
}
|
|
350
|
-
/**
|
|
351
|
-
* Read metadata from both method-level and class-level, merging arrays.
|
|
352
|
-
* Returns all found values as a flat array.
|
|
353
|
-
*
|
|
354
|
-
* NestJS equivalent: `reflector.getAllAndMerge(ROLES_KEY, [context.getHandler(), context.getClass()])`
|
|
355
|
-
*
|
|
356
|
-
* @example
|
|
357
|
-
* ```ts
|
|
358
|
-
* const Tags = createDecorator<string[]>()
|
|
359
|
-
*
|
|
360
|
-
* @Tags(['api'])
|
|
361
|
-
* @Controller('cats')
|
|
362
|
-
* class CatsCtrl {
|
|
363
|
-
* @Tags(['read'])
|
|
364
|
-
* @Get()
|
|
365
|
-
* findAll() {}
|
|
366
|
-
* }
|
|
367
|
-
*
|
|
368
|
-
* reflector.getAllAndMerge(Tags, CatsCtrl, 'findAll')
|
|
369
|
-
* // → ['read', 'api'] (method + class merged)
|
|
370
|
-
* ```
|
|
371
|
-
*/
|
|
372
|
-
getAllAndMerge(decorator, target, propertyKey) {
|
|
373
|
-
const result = [];
|
|
374
|
-
if (propertyKey !== void 0) {
|
|
375
|
-
const methodLevel = this.get(decorator, target, propertyKey);
|
|
376
|
-
if (methodLevel !== void 0) {
|
|
377
|
-
if (Array.isArray(methodLevel)) result.push(...methodLevel);
|
|
378
|
-
else result.push(methodLevel);
|
|
379
|
-
}
|
|
380
|
-
}
|
|
381
|
-
const classLevel = this.get(decorator, target);
|
|
382
|
-
if (classLevel !== void 0) {
|
|
383
|
-
if (Array.isArray(classLevel)) result.push(...classLevel);
|
|
384
|
-
else result.push(classLevel);
|
|
385
|
-
}
|
|
386
|
-
return result;
|
|
387
|
-
}
|
|
388
|
-
};
|
|
389
|
-
|
|
390
271
|
// src/decorators/throttle.ts
|
|
391
272
|
var THROTTLE_KEY = /* @__PURE__ */ Symbol.for("theokit:http-decorators:throttle");
|
|
392
273
|
var SKIP_THROTTLE_KEY = /* @__PURE__ */ Symbol.for("theokit:http-decorators:skip-throttle");
|
|
@@ -438,6 +319,66 @@ __name(registerControllers, "registerControllers");
|
|
|
438
319
|
|
|
439
320
|
// src/bridge/create-server.ts
|
|
440
321
|
import "reflect-metadata";
|
|
322
|
+
|
|
323
|
+
// src/error-digest.ts
|
|
324
|
+
function djb2(input) {
|
|
325
|
+
let hash = 5381;
|
|
326
|
+
for (let i = 0; i < input.length; i++) {
|
|
327
|
+
hash = (hash << 5) + hash + input.charCodeAt(i) | 0;
|
|
328
|
+
}
|
|
329
|
+
return (hash >>> 0).toString(16);
|
|
330
|
+
}
|
|
331
|
+
__name(djb2, "djb2");
|
|
332
|
+
function digestError(err, context = {}) {
|
|
333
|
+
const message = extractMessage(err);
|
|
334
|
+
const status = extractStatus(err);
|
|
335
|
+
const rawStack = extractStack(err);
|
|
336
|
+
const digest = djb2(message);
|
|
337
|
+
const isProduction = process.env.NODE_ENV === "production";
|
|
338
|
+
return {
|
|
339
|
+
digest,
|
|
340
|
+
message,
|
|
341
|
+
status,
|
|
342
|
+
context,
|
|
343
|
+
...rawStack && !isProduction ? {
|
|
344
|
+
stack: rawStack
|
|
345
|
+
} : {}
|
|
346
|
+
};
|
|
347
|
+
}
|
|
348
|
+
__name(digestError, "digestError");
|
|
349
|
+
function extractMessage(err) {
|
|
350
|
+
if (err instanceof Error) {
|
|
351
|
+
return err.message;
|
|
352
|
+
}
|
|
353
|
+
if (typeof err === "string") {
|
|
354
|
+
return err;
|
|
355
|
+
}
|
|
356
|
+
if (typeof err === "number") {
|
|
357
|
+
return String(err);
|
|
358
|
+
}
|
|
359
|
+
try {
|
|
360
|
+
return JSON.stringify(err);
|
|
361
|
+
} catch {
|
|
362
|
+
return "Unknown error";
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
__name(extractMessage, "extractMessage");
|
|
366
|
+
function extractStatus(err) {
|
|
367
|
+
if (err instanceof HttpException) {
|
|
368
|
+
return err.statusCode;
|
|
369
|
+
}
|
|
370
|
+
return 500;
|
|
371
|
+
}
|
|
372
|
+
__name(extractStatus, "extractStatus");
|
|
373
|
+
function extractStack(err) {
|
|
374
|
+
if (err instanceof Error) {
|
|
375
|
+
return err.stack;
|
|
376
|
+
}
|
|
377
|
+
return void 0;
|
|
378
|
+
}
|
|
379
|
+
__name(extractStack, "extractStack");
|
|
380
|
+
|
|
381
|
+
// src/bridge/create-server.ts
|
|
441
382
|
function createDecoratorHandler(controllersOrOpts) {
|
|
442
383
|
const { controllers, container, configure, serveAgent } = Array.isArray(controllersOrOpts) ? {
|
|
443
384
|
controllers: controllersOrOpts,
|
|
@@ -457,12 +398,24 @@ function createDecoratorHandler(controllersOrOpts) {
|
|
|
457
398
|
}
|
|
458
399
|
const routes = [];
|
|
459
400
|
for (const Ctor of unique) {
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
401
|
+
let built;
|
|
402
|
+
try {
|
|
403
|
+
built = {
|
|
404
|
+
instance: resolveOrNew(Ctor, container)
|
|
405
|
+
};
|
|
406
|
+
} catch (error) {
|
|
407
|
+
built = {
|
|
408
|
+
failure: {
|
|
409
|
+
controllerName: Ctor.name,
|
|
410
|
+
error
|
|
411
|
+
}
|
|
412
|
+
};
|
|
413
|
+
console.error(`[theokit] controller ${Ctor.name} failed to construct \u2014 its routes will answer 500:`, error instanceof Error ? error.message : String(error));
|
|
414
|
+
}
|
|
415
|
+
for (const walk of walkControllerMetadata(Ctor)) {
|
|
463
416
|
routes.push({
|
|
464
|
-
walk
|
|
465
|
-
|
|
417
|
+
walk,
|
|
418
|
+
...built
|
|
466
419
|
});
|
|
467
420
|
}
|
|
468
421
|
}
|
|
@@ -499,7 +452,29 @@ async function handleRequest(routes, request, container, middlewareEntries = [],
|
|
|
499
452
|
const pathname = url.pathname;
|
|
500
453
|
const match = findRoute(routes, method, pathname);
|
|
501
454
|
if (!match) return null;
|
|
502
|
-
const { walk,
|
|
455
|
+
const { walk, params } = match;
|
|
456
|
+
if ("failure" in match) {
|
|
457
|
+
const { controllerName, error } = match.failure;
|
|
458
|
+
const digested = digestError(error, {
|
|
459
|
+
route: `${method} ${pathname}`,
|
|
460
|
+
phase: "construction",
|
|
461
|
+
source: controllerName
|
|
462
|
+
});
|
|
463
|
+
return jsonResponse(500, {
|
|
464
|
+
error: {
|
|
465
|
+
code: "CONTROLLER_CONSTRUCTION_FAILED",
|
|
466
|
+
// The cause, named, with the controller that failed: an operator has to be able to act on
|
|
467
|
+
// this without attaching a debugger. `digestError` is what keeps the stack out of a
|
|
468
|
+
// production response — the same redaction every other error path here gets.
|
|
469
|
+
message: `Controller ${controllerName} failed to construct: ${digested.message}`,
|
|
470
|
+
digest: digested.digest,
|
|
471
|
+
...digested.stack === void 0 ? {} : {
|
|
472
|
+
stack: digested.stack
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
});
|
|
476
|
+
}
|
|
477
|
+
const { instance } = match;
|
|
503
478
|
try {
|
|
504
479
|
const mwResponse = await runMiddleware(middlewareEntries, request, pathname);
|
|
505
480
|
if (mwResponse) return mwResponse;
|
|
@@ -517,7 +492,7 @@ async function handleRequest(routes, request, container, middlewareEntries = [],
|
|
|
517
492
|
}
|
|
518
493
|
return await serveAgent(walk.agent.module, request, walk.agent.opts);
|
|
519
494
|
}
|
|
520
|
-
const body = await resolveBody(method, request, walk);
|
|
495
|
+
const body = await resolveBody(method, request, walk, jsonResponse);
|
|
521
496
|
if (body instanceof Response) return body;
|
|
522
497
|
const args = buildArgs(walk.paramEntries, {
|
|
523
498
|
request,
|
|
@@ -554,34 +529,6 @@ async function runGuards(guards, context, container) {
|
|
|
554
529
|
return null;
|
|
555
530
|
}
|
|
556
531
|
__name(runGuards, "runGuards");
|
|
557
|
-
async function resolveBody(method, request, walk) {
|
|
558
|
-
if (![
|
|
559
|
-
"POST",
|
|
560
|
-
"PUT",
|
|
561
|
-
"PATCH"
|
|
562
|
-
].includes(method)) return void 0;
|
|
563
|
-
let body;
|
|
564
|
-
try {
|
|
565
|
-
const text = await request.text();
|
|
566
|
-
body = text ? JSON.parse(text) : void 0;
|
|
567
|
-
} catch {
|
|
568
|
-
body = void 0;
|
|
569
|
-
}
|
|
570
|
-
if (walk.bodySchema && body !== void 0) {
|
|
571
|
-
const result = walk.bodySchema.safeParse(body);
|
|
572
|
-
if (!result.success) {
|
|
573
|
-
return jsonResponse(422, {
|
|
574
|
-
error: {
|
|
575
|
-
code: "VALIDATION_ERROR",
|
|
576
|
-
issues: result.error.issues
|
|
577
|
-
}
|
|
578
|
-
});
|
|
579
|
-
}
|
|
580
|
-
body = result.data;
|
|
581
|
-
}
|
|
582
|
-
return body;
|
|
583
|
-
}
|
|
584
|
-
__name(resolveBody, "resolveBody");
|
|
585
532
|
function buildResponse(result, walk, method) {
|
|
586
533
|
const status = walk.status ?? (method === "POST" ? 201 : 200);
|
|
587
534
|
const headers = {
|
|
@@ -619,12 +566,11 @@ function jsonResponse(status, body) {
|
|
|
619
566
|
}
|
|
620
567
|
__name(jsonResponse, "jsonResponse");
|
|
621
568
|
function findRoute(routes, method, pathname) {
|
|
622
|
-
for (const
|
|
623
|
-
if (walk.verb !== "ALL" && walk.verb !== method) continue;
|
|
624
|
-
const params = matchPath(walk.fullPath, pathname);
|
|
569
|
+
for (const entry of routes) {
|
|
570
|
+
if (entry.walk.verb !== "ALL" && entry.walk.verb !== method) continue;
|
|
571
|
+
const params = matchPath(entry.walk.fullPath, pathname);
|
|
625
572
|
if (params !== null) return {
|
|
626
|
-
|
|
627
|
-
instance,
|
|
573
|
+
...entry,
|
|
628
574
|
params
|
|
629
575
|
};
|
|
630
576
|
}
|
|
@@ -736,64 +682,6 @@ function contract(routes) {
|
|
|
736
682
|
}
|
|
737
683
|
__name(contract, "contract");
|
|
738
684
|
|
|
739
|
-
// src/error-digest.ts
|
|
740
|
-
function djb2(input) {
|
|
741
|
-
let hash = 5381;
|
|
742
|
-
for (let i = 0; i < input.length; i++) {
|
|
743
|
-
hash = (hash << 5) + hash + input.charCodeAt(i) | 0;
|
|
744
|
-
}
|
|
745
|
-
return (hash >>> 0).toString(16);
|
|
746
|
-
}
|
|
747
|
-
__name(djb2, "djb2");
|
|
748
|
-
function digestError(err, context = {}) {
|
|
749
|
-
const message = extractMessage(err);
|
|
750
|
-
const status = extractStatus(err);
|
|
751
|
-
const rawStack = extractStack(err);
|
|
752
|
-
const digest = djb2(message);
|
|
753
|
-
const isProduction = process.env.NODE_ENV === "production";
|
|
754
|
-
return {
|
|
755
|
-
digest,
|
|
756
|
-
message,
|
|
757
|
-
status,
|
|
758
|
-
context,
|
|
759
|
-
...rawStack && !isProduction ? {
|
|
760
|
-
stack: rawStack
|
|
761
|
-
} : {}
|
|
762
|
-
};
|
|
763
|
-
}
|
|
764
|
-
__name(digestError, "digestError");
|
|
765
|
-
function extractMessage(err) {
|
|
766
|
-
if (err instanceof Error) {
|
|
767
|
-
return err.message;
|
|
768
|
-
}
|
|
769
|
-
if (typeof err === "string") {
|
|
770
|
-
return err;
|
|
771
|
-
}
|
|
772
|
-
if (typeof err === "number") {
|
|
773
|
-
return String(err);
|
|
774
|
-
}
|
|
775
|
-
try {
|
|
776
|
-
return JSON.stringify(err);
|
|
777
|
-
} catch {
|
|
778
|
-
return "Unknown error";
|
|
779
|
-
}
|
|
780
|
-
}
|
|
781
|
-
__name(extractMessage, "extractMessage");
|
|
782
|
-
function extractStatus(err) {
|
|
783
|
-
if (err instanceof HttpException) {
|
|
784
|
-
return err.statusCode;
|
|
785
|
-
}
|
|
786
|
-
return 500;
|
|
787
|
-
}
|
|
788
|
-
__name(extractStatus, "extractStatus");
|
|
789
|
-
function extractStack(err) {
|
|
790
|
-
if (err instanceof Error) {
|
|
791
|
-
return err.stack;
|
|
792
|
-
}
|
|
793
|
-
return void 0;
|
|
794
|
-
}
|
|
795
|
-
__name(extractStack, "extractStack");
|
|
796
|
-
|
|
797
685
|
// src/component-tree.ts
|
|
798
686
|
function createErrorBoundary(React, FallbackComponent) {
|
|
799
687
|
return class ErrorBoundary extends React.Component {
|
|
@@ -916,11 +804,13 @@ export {
|
|
|
916
804
|
NotFoundException,
|
|
917
805
|
NotImplementedException,
|
|
918
806
|
Options,
|
|
807
|
+
PUBLIC_ROUTE_METADATA,
|
|
919
808
|
Param,
|
|
920
809
|
Patch,
|
|
921
810
|
PayloadTooLargeException,
|
|
922
811
|
Post,
|
|
923
812
|
PreconditionFailedException,
|
|
813
|
+
Public,
|
|
924
814
|
Put,
|
|
925
815
|
Query,
|
|
926
816
|
ROUTE_HEADERS,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/decorators/controller.ts","../src/decorators/methods.ts","../src/decorators/params.ts","../src/decorators/expose.ts","../src/decorators/response.ts","../src/decorators/middleware.ts","../src/decorators/set-metadata.ts","../src/decorators/throttle.ts","../src/bridge/register-controllers.ts","../src/bridge/create-server.ts","../src/typed-client.ts","../src/contract.ts","../src/error-digest.ts","../src/component-tree.ts","../src/cache-signal.ts"],"mappings":"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","names":["inferPrefix","className","stripped","replace","kebab","toLowerCase","Controller","prefixOrOpts","maybeOpts","target","prefix","opts","name","setMeta","CONTROLLER_PREFIX","host","makeVerbDecorator","verb","path","target","propertyKey","existing","getMeta","ROUTE_METHODS","push","setMeta","Get","Post","Put","Patch","Delete","Options","Head","All","isZodSchema","v","undefined","safeParse","makeParamDecorator","source","keyOrSchema","target","propertyKey","parameterIndex","map","getMeta","ROUTE_PARAMS","Map","entries","get","entry","index","key","schema","push","set","setMeta","Req","Body","Param","Query","Headers","Session","Ip","HostParam","Res","opts","passthrough","Expose","agent","opts","target","propertyKey","existing","getMeta","EXPOSE_AGENT","push","setMeta","HttpCode","status","target","propertyKey","setMeta","ROUTE_STATUS","Header","name","value","existing","getMeta","ROUTE_HEADERS","push","Redirect","url","ROUTE_REDIRECT","UseGuards","guards","target","propertyKey","actualTarget","existing","getMeta","USE_GUARDS","setMeta","UseInterceptors","interceptors","USE_INTERCEPTORS","UseFilters","filters","USE_FILTERS","Catch","exceptions","CATCH_EXCEPTIONS","decoratorKeyCounter","createDecorator","key","Symbol","for","decorator","value","target","propertyKey","metaTarget","undefined","Reflect","defineMetadata","SetMetadata","metaKey","Reflector","get","getMetadata","getByKey","getAllAndOverride","methodLevel","getAllAndOverrideByKey","getAllAndMerge","result","Array","isArray","push","classLevel","THROTTLE_KEY","Symbol","for","SKIP_THROTTLE_KEY","Throttle","options","target","propertyKey","actualTarget","undefined","setMeta","SkipThrottle","skip","getThrottleOptions","getMeta","isThrottleSkipped","registerControllers","controllers","seen","Set","unique","Ctor","has","console","warn","name","add","push","flatMap","walks","walkControllerMetadata","map","w","verb","fullPath","walkResult","createDecoratorHandler","controllersOrOpts","controllers","container","configure","serveAgent","Array","isArray","undefined","middlewareConsumer","MiddlewareConsumerImpl","middlewareEntries","getEntries","seen","Set","unique","Ctor","has","add","push","routes","instance","resolveOrNew","walks","walkControllerMetadata","w","walk","sort","a","b","aP","fullPath","includes","bP","handler","request","handleRequest","matches","method","pathname","findRoute","toUpperCase","createDecoratorServer","handle","adapter","createNodeAdapter","createServer","res","URL","url","jsonResponse","error","code","message","match","params","mwResponse","runMiddleware","ctx","createExecutionContext","propertyKey","guardResponse","runGuards","guards","agent","String","module","opts","body","resolveBody","Response","args","buildArgs","paramEntries","query","Object","fromEntries","searchParams","redirect","status","headers","location","handlerFn","result","runInterceptors","interceptors","apply","buildResponse","err","runExceptionFilters","filters","context","GuardCtor","guard","allowed","canActivate","ex","ForbiddenException","statusCode","toJSON","text","JSON","parse","bodySchema","safeParse","success","issues","data","name","value","toLowerCase","stringify","verb","matchPath","pattern","paramNames","regexStr","replace","_m","RegExp","exec","forEach","i","length","maxIndex","Math","max","map","p","index","from","source","key","get","entries","createTypedClient","baseUrl","defaultHeaders","request","method","path","body","opts","url","URL","query","k","v","Object","entries","searchParams","set","headers","undefined","res","fetch","toString","JSON","stringify","ok","error","json","catch","message","statusText","TypedClientError","status","get","post","put","delete","Error","name","contract","routes","djb2","input","hash","i","length","charCodeAt","toString","digestError","err","context","message","extractMessage","status","extractStatus","rawStack","extractStack","digest","isProduction","process","env","NODE_ENV","stack","Error","String","JSON","stringify","HttpException","statusCode","undefined","createErrorBoundary","React","FallbackComponent","ErrorBoundary","Component","props","state","hasError","getDerivedStateFromError","render","createElement","Fragment","children","composeComponentTree","tree","composeNode","node","layout","Layout","page","Page","loading","Loading","error","ErrorFallback","element","Suspense","fallback","Boundary","revalidateTag","tag","collectSignal","kind","value","timestamp","Date","now","revalidatePath","path","getRevalidationSignals","ctx","tryGetRequestContext","_revalidationSignals","signal","console","warn","extended","push"]}
|
|
1
|
+
{"version":3,"sources":["../src/decorators/controller.ts","../src/decorators/methods.ts","../src/decorators/params.ts","../src/decorators/expose.ts","../src/decorators/response.ts","../src/decorators/middleware.ts","../src/decorators/throttle.ts","../src/bridge/register-controllers.ts","../src/bridge/create-server.ts","../src/error-digest.ts","../src/typed-client.ts","../src/contract.ts","../src/component-tree.ts","../src/cache-signal.ts"],"mappings":"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","names":["inferPrefix","className","stripped","replace","kebab","toLowerCase","Controller","prefixOrOpts","maybeOpts","target","prefix","opts","name","setMeta","CONTROLLER_PREFIX","host","makeVerbDecorator","verb","path","target","propertyKey","existing","getMeta","ROUTE_METHODS","push","setMeta","Get","Post","Put","Patch","Delete","Options","Head","All","isZodSchema","v","undefined","safeParse","makeParamDecorator","source","keyOrSchema","target","propertyKey","parameterIndex","map","getMeta","ROUTE_PARAMS","Map","entries","get","entry","index","key","schema","push","set","setMeta","Req","Body","Param","Query","Headers","Session","Ip","HostParam","Res","opts","passthrough","Expose","agent","opts","target","propertyKey","existing","getMeta","EXPOSE_AGENT","push","setMeta","HttpCode","status","target","propertyKey","setMeta","ROUTE_STATUS","Header","name","value","existing","getMeta","ROUTE_HEADERS","push","Redirect","url","ROUTE_REDIRECT","UseGuards","guards","target","propertyKey","actualTarget","existing","getMeta","USE_GUARDS","setMeta","UseInterceptors","interceptors","USE_INTERCEPTORS","UseFilters","filters","USE_FILTERS","Catch","exceptions","CATCH_EXCEPTIONS","THROTTLE_KEY","Symbol","for","SKIP_THROTTLE_KEY","Throttle","options","target","propertyKey","actualTarget","undefined","setMeta","SkipThrottle","skip","getThrottleOptions","getMeta","isThrottleSkipped","registerControllers","controllers","seen","Set","unique","Ctor","has","console","warn","name","add","push","flatMap","walks","walkControllerMetadata","map","w","verb","fullPath","walkResult","djb2","input","hash","i","length","charCodeAt","toString","digestError","err","context","message","extractMessage","status","extractStatus","rawStack","extractStack","digest","isProduction","process","env","NODE_ENV","stack","Error","String","JSON","stringify","HttpException","statusCode","undefined","createDecoratorHandler","controllersOrOpts","controllers","container","configure","serveAgent","Array","isArray","undefined","middlewareConsumer","MiddlewareConsumerImpl","middlewareEntries","getEntries","seen","Set","unique","Ctor","has","add","push","routes","built","instance","resolveOrNew","error","failure","controllerName","name","console","Error","message","String","walk","walkControllerMetadata","sort","a","b","aP","fullPath","includes","bP","handler","request","handleRequest","matches","method","pathname","findRoute","toUpperCase","createDecoratorServer","handle","adapter","createNodeAdapter","createServer","res","URL","url","jsonResponse","code","match","params","digested","digestError","route","phase","source","digest","stack","mwResponse","runMiddleware","ctx","createExecutionContext","propertyKey","guardResponse","runGuards","guards","agent","module","opts","body","resolveBody","Response","args","buildArgs","paramEntries","query","Object","fromEntries","searchParams","redirect","status","headers","location","handlerFn","result","runInterceptors","interceptors","apply","buildResponse","err","runExceptionFilters","filters","context","GuardCtor","guard","allowed","canActivate","ex","ForbiddenException","statusCode","toJSON","value","toLowerCase","JSON","stringify","entry","verb","matchPath","pattern","paramNames","regexStr","replace","_m","RegExp","exec","forEach","i","length","maxIndex","Math","max","map","p","index","from","key","get","entries","createTypedClient","baseUrl","defaultHeaders","request","method","path","body","opts","url","URL","query","k","v","Object","entries","searchParams","set","headers","undefined","res","fetch","toString","JSON","stringify","ok","error","json","catch","message","statusText","TypedClientError","status","get","post","put","delete","Error","name","contract","routes","createErrorBoundary","React","FallbackComponent","ErrorBoundary","Component","props","state","hasError","getDerivedStateFromError","render","createElement","Fragment","children","composeComponentTree","tree","composeNode","node","layout","Layout","page","Page","loading","Loading","error","ErrorFallback","element","Suspense","fallback","Boundary","revalidateTag","tag","collectSignal","kind","value","timestamp","Date","now","revalidatePath","path","getRevalidationSignals","ctx","tryGetRequestContext","_revalidationSignals","signal","console","warn","extended","push"]}
|
package/dist/theokit-plugin.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
MiddlewareConsumerImpl,
|
|
3
3
|
loadControllersFromGlob,
|
|
4
|
+
resolveBody,
|
|
4
5
|
runMiddleware
|
|
5
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6CFF7Q4Z.js";
|
|
6
7
|
import {
|
|
7
8
|
runExceptionFilters
|
|
8
9
|
} from "./chunk-HC47QXZV.js";
|
|
@@ -108,7 +109,7 @@ async function handleDecoratorRoute(routes, request, container, mwEntries = [])
|
|
|
108
109
|
const ctx = createExecutionContext(request, instance.constructor, walk.propertyKey);
|
|
109
110
|
const guardResponse = await runGuards(walk.guards, ctx, container);
|
|
110
111
|
if (guardResponse) return guardResponse;
|
|
111
|
-
const body = await resolveBody(method, request, walk);
|
|
112
|
+
const body = await resolveBody(method, request, walk, jsonResponse);
|
|
112
113
|
if (body instanceof Response) return body;
|
|
113
114
|
const args = buildArgs(walk.paramEntries, {
|
|
114
115
|
request,
|
|
@@ -143,34 +144,6 @@ async function runGuards(guards, context, container) {
|
|
|
143
144
|
return null;
|
|
144
145
|
}
|
|
145
146
|
__name(runGuards, "runGuards");
|
|
146
|
-
async function resolveBody(method, request, walk) {
|
|
147
|
-
if (![
|
|
148
|
-
"POST",
|
|
149
|
-
"PUT",
|
|
150
|
-
"PATCH"
|
|
151
|
-
].includes(method)) return void 0;
|
|
152
|
-
let body;
|
|
153
|
-
try {
|
|
154
|
-
const text = await request.text();
|
|
155
|
-
body = text ? JSON.parse(text) : void 0;
|
|
156
|
-
} catch {
|
|
157
|
-
body = void 0;
|
|
158
|
-
}
|
|
159
|
-
if (walk.bodySchema && body !== void 0) {
|
|
160
|
-
const result = walk.bodySchema.safeParse(body);
|
|
161
|
-
if (!result.success) {
|
|
162
|
-
return jsonResponse(422, {
|
|
163
|
-
error: {
|
|
164
|
-
code: "VALIDATION_ERROR",
|
|
165
|
-
issues: result.error.issues
|
|
166
|
-
}
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
body = result.data;
|
|
170
|
-
}
|
|
171
|
-
return body;
|
|
172
|
-
}
|
|
173
|
-
__name(resolveBody, "resolveBody");
|
|
174
147
|
function buildResponse(result, walk, method) {
|
|
175
148
|
const status = walk.status ?? (method === "POST" ? 201 : 200);
|
|
176
149
|
const headers = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/theokit-plugin.ts"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/theokit-plugin.ts"],"mappings":"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","names":["httpDecoratorsPlugin","opts","routes","initialized","initPromise","middlewareConsumer","MiddlewareConsumerImpl","container","configure","middlewareEntries","getEntries","controllers","length","buildRouteTable","controllersGlob","glob","rootDir","process","cwd","loadControllersFromGlob","console","log","name","register","app","addHook","pluginCtx","_nodeHttp","request","nodeIncomingToRequest","response","handleDecoratorRoute","writeResponseToNode","seen","Set","unique","Ctor","has","add","push","instance","resolveOrNew","walks","walkControllerMetadata","w","regex","paramNames","compilePattern","fullPath","walk","sort","a","b","aHasParam","includes","bHasParam","mwEntries","url","URL","method","toUpperCase","match","findMatch","pathname","entry","params","mwResponse","runMiddleware","ctx","createExecutionContext","propertyKey","guardResponse","runGuards","guards","body","resolveBody","jsonResponse","Response","args","buildArgs","paramEntries","query","Object","fromEntries","searchParams","redirect","status","headers","location","handlerFn","result","runInterceptors","interceptors","apply","buildResponse","err","runExceptionFilters","filters","context","GuardCtor","guard","canActivate","ex","ForbiddenException","statusCode","toJSON","n","v","toLowerCase","undefined","JSON","stringify","verb","forEach","i","pattern","regexStr","replace","_m","RegExp","maxIndex","Math","max","map","p","index","Array","from","source","key","get","entries"]}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/bridge/middleware-consumer.ts","../src/bridge/swc-loader.ts"],"mappings":"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","names":["MiddlewareConsumerImpl","entries","container","apply","middleware","resolved","map","m","resolveMiddleware","excludePatterns","proxy","exclude","routes","r","push","path","forRoutes","routePatterns","handler","getEntries","prototype","use","instance","resolveOrNew","request","next","middlewareMatchesPath","entry","requestPath","pattern","pathMatches","normPath","replace","normPattern","startsWith","runMiddleware","response","Promise","resolve","readFileSync","writeFileSync","unlinkSync","readdirSync","createRequire","resolve","dirname","join","relative","pathToFileURL","fileURLToPath","getSwcrcTarget","swcrc","jsc","target","consumerSwcrcCache","readConsumerSwcrc","startDir","undefined","dir","root","dirname","candidate","join","raw","readFileSync","parsed","JSON","parse","$schema","parent","swcCoreCache","loadSwcCore","thisDir","fileURLToPath","url","req","createRequire","resolve","resolved","pathToFileURL","href","transformControllerSource","source","filename","loadSwc","swc","HttpDecoratorsConfigError","consumerSwcrc","consumerJsc","code","transformSync","parser","syntax","decorators","transform","legacyDecorator","decoratorMetadata","module","type","sourceMaps","loadControllerWithSwc","absoluteFilePath","tmpPath","replace","writeFileSync","Date","now","unlinkSync","loadControllersFromGlob","rootDir","pattern","files","scanControllerFiles","length","console","warn","controllers","file","absPath","mod","exported","Object","values","isControllerClass","push","fn","Reflect","hasMetadata","Symbol","for","parts","split","dirParts","part","includes","baseDir","lastPart","suffix","walk","entry","readdirSync","withFileTypes","full","name","isDirectory","endsWith","relative"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/app.ts","../src/request-context.ts","../src/static.ts","../src/stream-renderer.ts"],"mappings":"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","names":["AsyncLocalStorage","storage","AsyncLocalStorage","getRequestContext","ctx","getStore","Error","tryGetRequestContext","runWithRequestContext","fn","run","MIME_TYPES","UNSAFE_PATH_RE","getMimeType","filePath","dot","lastIndexOf","ext","slice","toLowerCase","isSafePath","pathname","test","readFileBun","fullPath","g","globalThis","BunRT","Bun","file","exists","buf","arrayBuffer","content","Uint8Array","size","byteLength","readFileDeno","DenoRT","Deno","stat","isDirectory","readFile","readFileNode","fs","handle","open","close","containedRealPath","root","sep","realPath","realpath","realRoot","startsWith","safePath","resolveRoot","join","cwd","resolve","createStaticHandler","options","maxAge","resolvedRoot","request","method","toUpperCase","url","URL","decodeURIComponent","result","endsWith","includes","contentType","headers","String","Response","status","DOCTYPE","encoder","TextEncoder","renderToStream","options","root","waitForAll","reactDomServer","renderToReadableStream","renderWithReadableStream","renderToString","console","warn","renderWithString","Error","renderFn","reactStream","allReady","doctypeStream","prependDoctype","stream","html","bytes","encode","ReadableStream","start","controller","enqueue","close","Promise","resolve","source","reader","getReader","doctypeSent","pull","value","done","read","cancel","streamToResponse","result","Response","status","headers","TheoApp","serverHandle","routes","frontendHtml","streamingRoot","staticHandler","startTime","Date","now","healthPath","readyPath","readinessChecks","opts","hp","rp","startsWith","Error","adapter","createNodeAdapter","createServer","request","handleRequest","create","app","registry","Map","module","moduleMeta","Reflect","getMetadata","allModules","imports","Mod","meta","Prov","providers","has","set","Controller","controllers","paramTypes","args","map","pt","dep","get","name","instance","postConstruct","result","Promise","walks","walkControllerMetadata","w","push","walk","sort","a","b","aP","fullPath","includes","bP","entry","paramNames","regexStr","replace","_m","compiledPattern","RegExp","compiledParamNames","needsBody","paramEntries","some","p","source","root","streaming","renderToString","html","staticDir","createStaticHandler","agents","length","autoWireAgents","listen","port","resolve","console","log","getServerHandle","close","agentRoutes","entries","_registry","runtime","agentRuntime","undefined","HttpDecoratorsConfigError","apiKey","llmApiKey","process","env","OPENROUTER_API_KEY","compiled","createRun","agentStreamFactory","tools","model","llmModel","createSdkAgentStream","createFallbackStream","agentIdentity","agentClass","agent","generateAgentRoutes","walkResult","route","compiledOptions","path","method","pattern","handler","guards","methodName","handleReadinessCheck","jsonResponse","status","checks","results","all","check","race","setTimeout","healthy","message","err","allHealthy","every","r","agentName","msg","_message","_sessionId","events","type","runId","code","retryable","Symbol","asyncIterator","i","next","value","done","pathname","URL","url","reqCtx","params","startedAt","runWithRequestContext","handleRequestInContext","_reqCtx","uptime","timestamp","renderToStream","streamToResponse","Response","headers","staticResponse","toUpperCase","test","ctx","createExecutionContext","GuardCtor","guard","canActivate","ex","ForbiddenException","statusCode","toJSON","match","findRoute","error","propertyKey","body","text","JSON","parse","bodySchema","safeParse","success","issues","data","buildArgs","Object","fromEntries","searchParams","redirect","location","handlerFn","interceptors","runInterceptors","apply","buildResponse","filters","runExceptionFilters","HttpException","verb","exec","forEach","query","max","Math","index","Array","from","key","toLowerCase","stringify","n","v"]}
|