@theokit/http 1.2.0 → 2.1.0-next.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/index.js CHANGED
@@ -1,10 +1,5 @@
1
1
  import {
2
- PUBLIC_ROUTE_METADATA,
3
- Public,
4
- Reflector,
5
- SetMetadata,
6
2
  TheoApp,
7
- createDecorator,
8
3
  createStaticHandler,
9
4
  getMimeType,
10
5
  getRequestContext,
@@ -12,7 +7,7 @@ import {
12
7
  renderToStream,
13
8
  streamToResponse,
14
9
  tryGetRequestContext
15
- } from "./chunk-NFCIOKAI.js";
10
+ } from "./chunk-HN73QCHT.js";
16
11
  import {
17
12
  MiddlewareConsumerImpl,
18
13
  isControllerClass,
@@ -22,17 +17,26 @@ import {
22
17
  resolveBody,
23
18
  runMiddleware,
24
19
  transformControllerSource
25
- } from "./chunk-6CFF7Q4Z.js";
20
+ } from "./chunk-JCCZ4PHK.js";
26
21
  import {
27
22
  runExceptionFilters
28
- } from "./chunk-HC47QXZV.js";
23
+ } from "./chunk-2HJYLH4O.js";
29
24
  import {
30
25
  HttpDecoratorsConfigError,
26
+ PUBLIC_ROUTE_METADATA,
27
+ Public,
28
+ Reflector,
29
+ SetMetadata,
30
+ classifyAccess,
31
+ createDecorator,
31
32
  createExecutionContext,
32
33
  joinPath,
33
34
  resolveDtoSchema,
35
+ runGuards,
36
+ undeclaredRouteRefusal,
37
+ undeclaredRouteWarning,
34
38
  walkControllerMetadata
35
- } from "./chunk-X7Q5HPLK.js";
39
+ } from "./chunk-ERQT6ZDN.js";
36
40
  import {
37
41
  BadGatewayException,
38
42
  BadRequestException,
@@ -69,8 +73,9 @@ import {
69
73
  UnprocessableEntityException,
70
74
  UnsupportedMediaTypeException,
71
75
  getMeta,
76
+ httpExceptionToResponse,
72
77
  setMeta
73
- } from "./chunk-AJOJXZRY.js";
78
+ } from "./chunk-CRTEMKW2.js";
74
79
  import {
75
80
  createNodeAdapter
76
81
  } from "./chunk-BSS3KPGY.js";
@@ -380,12 +385,15 @@ __name(extractStack, "extractStack");
380
385
 
381
386
  // src/bridge/create-server.ts
382
387
  function createDecoratorHandler(controllersOrOpts) {
383
- const { controllers, container, configure, serveAgent } = Array.isArray(controllersOrOpts) ? {
388
+ const { controllers, container, configure, serveAgent, undeclaredRoutes } = Array.isArray(controllersOrOpts) ? {
384
389
  controllers: controllersOrOpts,
385
390
  container: void 0,
386
391
  configure: void 0,
387
- serveAgent: void 0
392
+ serveAgent: void 0,
393
+ undeclaredRoutes: void 0
388
394
  } : controllersOrOpts;
395
+ const undeclaredPolicy = undeclaredRoutes ?? "deny";
396
+ const warnedUndeclared = /* @__PURE__ */ new Set();
389
397
  const middlewareConsumer = new MiddlewareConsumerImpl(container);
390
398
  if (configure) configure(middlewareConsumer);
391
399
  const middlewareEntries = middlewareConsumer.getEntries();
@@ -425,7 +433,16 @@ function createDecoratorHandler(controllersOrOpts) {
425
433
  if (aP !== bP) return aP ? 1 : -1;
426
434
  return 0;
427
435
  });
428
- const handler = /* @__PURE__ */ __name((request) => handleRequest(routes, request, container, middlewareEntries, serveAgent), "handler");
436
+ const dispatchDeps = {
437
+ container,
438
+ middlewareEntries,
439
+ serveAgent,
440
+ undeclared: {
441
+ policy: undeclaredPolicy,
442
+ warned: warnedUndeclared
443
+ }
444
+ };
445
+ const handler = /* @__PURE__ */ __name((request) => handleRequest(routes, request, dispatchDeps), "handler");
429
446
  handler.matches = (method, pathname) => findRoute(routes, method.toUpperCase(), pathname) !== null;
430
447
  return handler;
431
448
  }
@@ -446,7 +463,8 @@ function createDecoratorServer(controllersOrOpts) {
446
463
  });
447
464
  }
448
465
  __name(createDecoratorServer, "createDecoratorServer");
449
- async function handleRequest(routes, request, container, middlewareEntries = [], serveAgent) {
466
+ async function handleRequest(routes, request, deps) {
467
+ const { container, middlewareEntries, serveAgent, undeclared } = deps;
450
468
  const url = new URL(request.url);
451
469
  const method = request.method.toUpperCase();
452
470
  const pathname = url.pathname;
@@ -478,8 +496,18 @@ async function handleRequest(routes, request, container, middlewareEntries = [],
478
496
  try {
479
497
  const mwResponse = await runMiddleware(middlewareEntries, request, pathname);
480
498
  if (mwResponse) return mwResponse;
499
+ if (walk.access === "undeclared") {
500
+ if (undeclared.policy === "deny") {
501
+ const ex = new ForbiddenException(undeclaredRouteRefusal("controller", pathname));
502
+ return httpExceptionToResponse(ex);
503
+ }
504
+ if (!undeclared.warned.has(pathname)) {
505
+ undeclared.warned.add(pathname);
506
+ console.warn(undeclaredRouteWarning("controller", pathname));
507
+ }
508
+ }
481
509
  const ctx = createExecutionContext(request, instance.constructor, walk.propertyKey);
482
- const guardResponse = await runGuards(walk.guards, ctx, container);
510
+ const guardResponse = await runGuards(walk.guards, ctx, (Ctor) => resolveOrNew(Ctor, container));
483
511
  if (guardResponse) return guardResponse;
484
512
  if (walk.agent) {
485
513
  if (!serveAgent) {
@@ -517,18 +545,6 @@ async function handleRequest(routes, request, container, middlewareEntries = [],
517
545
  }
518
546
  }
519
547
  __name(handleRequest, "handleRequest");
520
- async function runGuards(guards, context, container) {
521
- for (const GuardCtor of guards) {
522
- const guard = resolveOrNew(GuardCtor, container);
523
- const allowed = await guard.canActivate(context);
524
- if (!allowed) {
525
- const ex = new ForbiddenException("Forbidden resource");
526
- return jsonResponse(ex.statusCode, ex.toJSON());
527
- }
528
- }
529
- return null;
530
- }
531
- __name(runGuards, "runGuards");
532
548
  function buildResponse(result, walk, method) {
533
549
  const status = walk.status ?? (method === "POST" ? 201 : 200);
534
550
  const headers = {
@@ -840,6 +856,7 @@ export {
840
856
  UseFilters,
841
857
  UseGuards,
842
858
  UseInterceptors,
859
+ classifyAccess,
843
860
  composeComponentTree,
844
861
  contract,
845
862
  createDecorator,
@@ -854,6 +871,7 @@ export {
854
871
  getRequestContext,
855
872
  getRevalidationSignals,
856
873
  getThrottleOptions,
874
+ httpExceptionToResponse,
857
875
  isControllerClass,
858
876
  isSafePath,
859
877
  isThrottleSkipped,
@@ -874,6 +892,8 @@ export {
874
892
  streamToResponse,
875
893
  transformControllerSource,
876
894
  tryGetRequestContext,
895
+ undeclaredRouteRefusal,
896
+ undeclaredRouteWarning,
877
897
  walkControllerMetadata
878
898
  };
879
899
  //# sourceMappingURL=index.js.map
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/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"]}
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","undeclaredRoutes","Array","isArray","undefined","undeclaredPolicy","warnedUndeclared","Set","middlewareConsumer","MiddlewareConsumerImpl","middlewareEntries","getEntries","seen","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","dispatchDeps","undeclared","policy","warned","handler","request","handleRequest","matches","method","pathname","findRoute","toUpperCase","createDecoratorServer","handle","adapter","createNodeAdapter","createServer","res","URL","url","jsonResponse","code","deps","match","params","digested","digestError","route","phase","source","digest","stack","mwResponse","runMiddleware","access","ex","ForbiddenException","undeclaredRouteRefusal","httpExceptionToResponse","warn","undeclaredRouteWarning","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","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"]}
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Whether a route DECLARED an access decision, or nobody said (usetheokit/theokit#576).
3
+ *
4
+ * ## The ambiguity this removes
5
+ *
6
+ * `guards: []` meant two different things and the dispatcher could not tell them apart:
7
+ *
8
+ * - *this route is open on purpose*, and
9
+ * - *nobody said*.
10
+ *
11
+ * Faced with both readings it took the permissive one and served. For controllers that was safe
12
+ * only because a separate build gate (#514) refuses an undeclared controller route — which makes
13
+ * least privilege a property of the PIPELINE rather than of the system. Anything reaching a
14
+ * dispatcher without having run that build is served, and `@theokit/http` is published on its own,
15
+ * so "without having run that build" is an ordinary way to use it.
16
+ *
17
+ * Agent routes had neither. They are auto-wired — the app never wrote them, so there is no file for
18
+ * a reviewer to read — dispatched BEFORE controllers and file routes, and covered by no gate at
19
+ * all. An agent authored through capabilities has no class, so it takes no `@UseGuards`, so
20
+ * `guards` was `undefined`, so `?? []`, so served.
21
+ *
22
+ * The fix is not a new guard. It is making absence REPRESENTABLE, so a decision can be told from
23
+ * its residue — and then REFUSING it, so the property belongs to the system rather than to
24
+ * whichever command happened to run the build gate.
25
+ */
26
+ /** What a route says about who may call it. */
27
+ type AccessDecision =
28
+ /** Anyone may call it, on purpose. */
29
+ 'public'
30
+ /** At least one guard decides. */
31
+ | 'guarded'
32
+ /** Nobody said — the state that used to be indistinguishable from `'public'`. */
33
+ | 'undeclared';
34
+ /**
35
+ * How an app answers a route that declared nothing.
36
+ *
37
+ * `'deny'` is the default and refuses with 403. `'warn'` serves the request after saying so once,
38
+ * loudly, at the first dispatch — the migration escape, and nothing else.
39
+ *
40
+ * The default was `'warn'` for one release, so that flipping it did not break every app whose
41
+ * agent endpoints were open, inside a patch. It is `'deny'` from `@theokit/http@2.0.0`, which is
42
+ * the major that release bought: a safe default an app has to switch on is not a safe default, and
43
+ * the population that never reads the warning is exactly the population #576 is about.
44
+ */
45
+ type UndeclaredRoutePolicy = 'warn' | 'deny';
46
+ /**
47
+ * Classify one route from what its author declared.
48
+ *
49
+ * `access` is the explicit answer and wins. Otherwise a NON-EMPTY `guards` IS a declaration — the
50
+ * author named who decides — and an empty or absent one is nobody having said.
51
+ *
52
+ * "Non-empty" and not "present" is deliberate, and it is the one place this can drift from the
53
+ * build gate: `@UseGuards()` with no arguments writes `[]`, which reads as a declaration to anyone
54
+ * skimming the file and decides nothing at dispatch. Both gates refuse it (#576).
55
+ */
56
+ declare function classifyAccess(declared: {
57
+ access?: Exclude<AccessDecision, 'undeclared'>;
58
+ guards?: readonly unknown[];
59
+ }): AccessDecision;
60
+ /**
61
+ * The line printed once per undeclared route that is nonetheless served.
62
+ *
63
+ * Only reachable under an explicit `undeclaredRoutes: 'warn'`, which is the whole point: the
64
+ * default refuses, and an app that opted back into being served is told what it opted into. It
65
+ * names the route, because a warning that does not say WHICH route sends the reader grepping.
66
+ */
67
+ declare function undeclaredRouteWarning(kind: 'agent' | 'controller', route: string): string;
68
+ /**
69
+ * The 403 body for a route nobody declared.
70
+ *
71
+ * Separate from a guard REFUSING a caller, which is the system working, and it must read that way:
72
+ * an operator meeting this has a route to fix, not a caller to authenticate. It names both
73
+ * declarations and the escape, so the fix does not require finding this file.
74
+ */
75
+ declare function undeclaredRouteRefusal(kind: 'agent' | 'controller', route: string): string;
76
+
77
+ export { type AccessDecision as A, type UndeclaredRoutePolicy as U, undeclaredRouteWarning as a, classifyAccess as c, undeclaredRouteRefusal as u };
@@ -1,4 +1,5 @@
1
1
  import { D as DiContainer, M as MiddlewareConsumerImpl } from './middleware-consumer-DcaksawH.js';
2
+ import { U as UndeclaredRoutePolicy } from './route-access-Bq7eKXIc.js';
2
3
 
3
4
  /**
4
5
  * TheoKit integration plugin for @theokit/http.
@@ -45,6 +46,15 @@ interface HttpDecoratorsPluginOptions {
45
46
  container?: DiContainer;
46
47
  /** NestJS-style middleware configuration callback. */
47
48
  configure?: (consumer: MiddlewareConsumerImpl) => void;
49
+ /**
50
+ * What to do with a controller route that declared no access decision (#576).
51
+ *
52
+ * `'deny'` (default) refuses with 403. `'warn'` serves it after saying so once per route.
53
+ *
54
+ * Present here for the same reason it is on `TheoApp` and `createDecoratorHandler`: this is a
55
+ * third dispatcher over the same `WalkResult`, and a gate that holds in two of three is a lint.
56
+ */
57
+ undeclaredRoutes?: UndeclaredRoutePolicy;
48
58
  }
49
59
  /**
50
60
  * TheoKit plugin that mounts decorated controllers into the `theokit dev`
@@ -3,17 +3,21 @@ import {
3
3
  loadControllersFromGlob,
4
4
  resolveBody,
5
5
  runMiddleware
6
- } from "./chunk-6CFF7Q4Z.js";
6
+ } from "./chunk-JCCZ4PHK.js";
7
7
  import {
8
8
  runExceptionFilters
9
- } from "./chunk-HC47QXZV.js";
9
+ } from "./chunk-2HJYLH4O.js";
10
10
  import {
11
11
  createExecutionContext,
12
+ runGuards,
13
+ undeclaredRouteRefusal,
14
+ undeclaredRouteWarning,
12
15
  walkControllerMetadata
13
- } from "./chunk-X7Q5HPLK.js";
16
+ } from "./chunk-ERQT6ZDN.js";
14
17
  import {
15
- ForbiddenException
16
- } from "./chunk-AJOJXZRY.js";
18
+ ForbiddenException,
19
+ httpExceptionToResponse
20
+ } from "./chunk-CRTEMKW2.js";
17
21
  import {
18
22
  nodeIncomingToRequest,
19
23
  writeResponseToNode
@@ -37,6 +41,11 @@ function httpDecoratorsPlugin(opts) {
37
41
  const middlewareConsumer = new MiddlewareConsumerImpl(opts.container);
38
42
  if (opts.configure) opts.configure(middlewareConsumer);
39
43
  const middlewareEntries = middlewareConsumer.getEntries();
44
+ const undeclared = {
45
+ policy: opts.undeclaredRoutes ?? "deny",
46
+ // Warned once per route, never per request — see `create-server.ts`.
47
+ warned: /* @__PURE__ */ new Set()
48
+ };
40
49
  if (opts.controllers && opts.controllers.length > 0) {
41
50
  buildRouteTable(routes, opts.controllers, opts.container);
42
51
  initialized = true;
@@ -58,7 +67,7 @@ function httpDecoratorsPlugin(opts) {
58
67
  if (initPromise && !initialized) await initPromise;
59
68
  const _nodeHttp = await import("http");
60
69
  const request = nodeIncomingToRequest(pluginCtx.request);
61
- const response = await handleDecoratorRoute(routes, request, opts.container, middlewareEntries);
70
+ const response = await handleDecoratorRoute(routes, request, undeclared, opts.container, middlewareEntries);
62
71
  if (response) {
63
72
  await writeResponseToNode(response, pluginCtx.response);
64
73
  }
@@ -96,7 +105,7 @@ function buildRouteTable(routes, controllers, container) {
96
105
  });
97
106
  }
98
107
  __name(buildRouteTable, "buildRouteTable");
99
- async function handleDecoratorRoute(routes, request, container, mwEntries = []) {
108
+ async function handleDecoratorRoute(routes, request, undeclared, container, mwEntries = []) {
100
109
  const url = new URL(request.url);
101
110
  const method = request.method.toUpperCase();
102
111
  const match = findMatch(routes, method, url.pathname);
@@ -106,8 +115,18 @@ async function handleDecoratorRoute(routes, request, container, mwEntries = [])
106
115
  try {
107
116
  const mwResponse = await runMiddleware(mwEntries, request, url.pathname);
108
117
  if (mwResponse) return mwResponse;
118
+ if (walk.access === "undeclared") {
119
+ if (undeclared.policy === "deny") {
120
+ const ex = new ForbiddenException(undeclaredRouteRefusal("controller", url.pathname));
121
+ return httpExceptionToResponse(ex);
122
+ }
123
+ if (!undeclared.warned.has(url.pathname)) {
124
+ undeclared.warned.add(url.pathname);
125
+ console.warn(undeclaredRouteWarning("controller", url.pathname));
126
+ }
127
+ }
109
128
  const ctx = createExecutionContext(request, instance.constructor, walk.propertyKey);
110
- const guardResponse = await runGuards(walk.guards, ctx, container);
129
+ const guardResponse = await runGuards(walk.guards, ctx, (Ctor) => resolveOrNew(Ctor, container));
111
130
  if (guardResponse) return guardResponse;
112
131
  const body = await resolveBody(method, request, walk, jsonResponse);
113
132
  if (body instanceof Response) return body;
@@ -133,17 +152,6 @@ async function handleDecoratorRoute(routes, request, container, mwEntries = [])
133
152
  }
134
153
  }
135
154
  __name(handleDecoratorRoute, "handleDecoratorRoute");
136
- async function runGuards(guards, context, container) {
137
- for (const GuardCtor of guards) {
138
- const guard = resolveOrNew(GuardCtor, container);
139
- if (!await guard.canActivate(context)) {
140
- const ex = new ForbiddenException("Forbidden resource");
141
- return jsonResponse(ex.statusCode, ex.toJSON());
142
- }
143
- }
144
- return null;
145
- }
146
- __name(runGuards, "runGuards");
147
155
  function buildResponse(result, walk, method) {
148
156
  const status = walk.status ?? (method === "POST" ? 201 : 200);
149
157
  const headers = {
@@ -1 +1 @@
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"]}
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","undeclared","policy","undeclaredRoutes","warned","Set","controllers","length","buildRouteTable","controllersGlob","glob","rootDir","process","cwd","loadControllersFromGlob","console","log","name","register","app","addHook","pluginCtx","_nodeHttp","request","nodeIncomingToRequest","response","handleDecoratorRoute","writeResponseToNode","seen","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","access","ex","ForbiddenException","undeclaredRouteRefusal","httpExceptionToResponse","warn","undeclaredRouteWarning","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","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,6 +1,6 @@
1
1
  {
2
2
  "name": "@theokit/http",
3
- "version": "1.2.0",
3
+ "version": "2.1.0-next.0",
4
4
  "description": "NestJS-style decorators (@Controller, @Get, @Post, @Body, @UseGuards) over Web Standards, compiling to TheoKit route registrations.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -43,7 +43,8 @@
43
43
  "./css-resource": {
44
44
  "types": "./dist/css-resource.d.ts",
45
45
  "import": "./dist/css-resource.js"
46
- }
46
+ },
47
+ "./package.json": "./package.json"
47
48
  },
48
49
  "files": [
49
50
  "dist",
@@ -84,6 +85,16 @@
84
85
  "access": "public",
85
86
  "provenance": true
86
87
  },
88
+ "keywords": [
89
+ "theokit",
90
+ "http",
91
+ "nestjs-style",
92
+ "decorators",
93
+ "controller",
94
+ "get",
95
+ "post",
96
+ "body"
97
+ ],
87
98
  "scripts": {
88
99
  "build": "tsup",
89
100
  "test": "vitest run",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/metadata/keys.ts","../src/metadata/storage.ts","../src/exceptions/http-exception.ts"],"mappings":";;;;;AAYO,IAAMA,oBAAoBC,uBAAOC,IAAI,2CAAA;AACrC,IAAMC,gBAAgBF,uBAAOC,IAAI,uCAAA;AACjC,IAAME,eAAeH,uBAAOC,IAAI,sCAAA;AAChC,IAAMG,eAAeJ,uBAAOC,IAAI,sCAAA;AAChC,IAAMI,gBAAgBL,uBAAOC,IAAI,uCAAA;AACjC,IAAMK,iBAAiBN,uBAAOC,IAAI,wCAAA;AAClC,IAAMM,aAAaP,uBAAOC,IAAI,oCAAA;AAC9B,IAAMO,mBAAmBR,uBAAOC,IAAI,0CAAA;AACpC,IAAMQ,cAAcT,uBAAOC,IAAI,qCAAA;AAC/B,IAAMS,mBAAmBV,uBAAOC,IAAI,0CAAA;AACpC,IAAMU,eAAeX,uBAAOC,IAAI,sCAAA;;;ACtBvC,OAAO;AAQA,SAASW,QACdC,KACAC,QACAC,OACAC,aAA6B;AAE7B,MAAIA,gBAAgBC,QAAW;AAC7BC,YAAQC,eAAeN,KAAKE,OAAOD,QAAQE,WAAAA;EAC7C,OAAO;AACLE,YAAQC,eAAeN,KAAKE,OAAOD,MAAAA;EACrC;AACF;AAXgBF;AAaT,SAASQ,QACdP,KACAC,QACAE,aAA6B;AAE7B,MAAIA,gBAAgBC,QAAW;AAC7B,WAAOC,QAAQG,YAAYR,KAAKC,QAAQE,WAAAA;EAC1C;AACA,SAAOE,QAAQG,YAAYR,KAAKC,MAAAA;AAClC;AATgBM;;;ACdhB,IAAME,eAAuC;EAC3C,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;AACP;AAOO,IAAMC,gBAAN,cAA4BC,MAAAA;EApCnC,OAoCmCA;;;EACjBC;EACAC;EACAC;EAEhB,YAAYC,SAAiBH,YAAoBI,SAAgC;AAC/E,UAAMD,SAASC,SAASC,QAAQ;MAAEA,OAAOD,QAAQC;IAAM,IAAIC,MAAAA;AAC3D,SAAKC,OAAO,KAAK,YAAYA;AAC7B,SAAKP,aAAaA;AAClB,SAAKC,OAAOJ,aAAaG,UAAAA,KAAe;AACxC,SAAKE,cAAcE,SAASF;EAC9B;EAEAM,SAAS;AACP,WAAO;MACLC,OAAO;QACLR,MAAM,KAAKA;QACXE,SAAS,KAAKA;QACdH,YAAY,KAAKA;QACjB,GAAI,KAAKE,cAAc;UAAEA,aAAa,KAAKA;QAAY,IAAI,CAAC;MAC9D;IACF;EACF;AACF;AAEA,SAASQ,QAAQC,QAAgBC,YAAkB;AACjD,SAAO,cAAcd,cAAAA;IACnB,YAAYK,UAAUS,YAAYR,SAAgC;AAChE,YAAMD,SAASQ,QAAQP,OAAAA;AACvB,WAAKG,OAAO,KAAK,YAAYA;IAC/B;EACF;AACF;AAPSG;AASF,IAAMG,sBAAN,cAAkCH,QAAQ,KAAK,aAAA,EAAA;EAtEtD,OAsEsD;;;AAAgB;AAC/D,IAAMI,wBAAN,cAAoCJ,QAAQ,KAAK,cAAA,EAAA;EAvExD,OAuEwD;;;AAAiB;AAClE,IAAMK,qBAAN,cAAiCL,QAAQ,KAAK,WAAA,EAAA;EAxErD,OAwEqD;;;AAAc;AAC5D,IAAMM,oBAAN,cAAgCN,QAAQ,KAAK,WAAA,EAAA;EAzEpD,OAyEoD;;;AAAc;AAC3D,IAAMO,4BAAN,cAAwCP,QAAQ,KAAK,oBAAA,EAAA;EA1E5D,OA0E4D;;;AAAuB;AAC5E,IAAMQ,yBAAN,cAAqCR,QAAQ,KAAK,gBAAA,EAAA;EA3EzD,OA2EyD;;;AAAmB;AACrE,IAAMS,0BAAN,cAAsCT,QAAQ,KAAK,iBAAA,EAAA;EA5E1D,OA4E0D;;;AAAoB;AACvE,IAAMU,oBAAN,cAAgCV,QAAQ,KAAK,UAAA,EAAA;EA7EpD,OA6EoD;;;AAAa;AAC1D,IAAMW,gBAAN,cAA4BX,QAAQ,KAAK,MAAA,EAAA;EA9EhD,OA8EgD;;;AAAS;AAClD,IAAMY,8BAAN,cAA0CZ,QAAQ,KAAK,qBAAA,EAAA;EA/E9D,OA+E8D;;;AAAwB;AAC/E,IAAMa,2BAAN,cAAuCb,QAAQ,KAAK,mBAAA,EAAA;EAhF3D,OAgF2D;;;AAAsB;AAC1E,IAAMc,gCAAN,cAA4Cd,QAAQ,KAAK,wBAAA,EAAA;EAjFhE,OAiFgE;;;AAA2B;AACpF,IAAMe,qBAAN,cAAiCf,QAAQ,KAAK,cAAA,EAAA;EAlFrD,OAkFqD;;;AAAiB;AAC/D,IAAMgB,+BAAN,cAA2ChB,QAAQ,KAAK,sBAAA,EAAA;EAnF/D,OAmF+D;;;AAAyB;AACjF,IAAMiB,+BAAN,cAA2CjB,QAAQ,KAAK,uBAAA,EAAA;EApF/D,OAoF+D;;;AAA0B;AAClF,IAAMkB,0BAAN,cAAsClB,QAAQ,KAAK,iBAAA,EAAA;EArF1D,OAqF0D;;;AAAoB;AACvE,IAAMmB,sBAAN,cAAkCnB,QAAQ,KAAK,aAAA,EAAA;EAtFtD,OAsFsD;;;AAAgB;AAC/D,IAAMoB,8BAAN,cAA0CpB,QAAQ,KAAK,qBAAA,EAAA;EAvF9D,OAuF8D;;;AAAwB;AAC/E,IAAMqB,0BAAN,cAAsCrB,QAAQ,KAAK,iBAAA,EAAA;EAxF1D,OAwF0D;;;AAAoB;AACvE,IAAMsB,mCAAN,cAA+CtB,QAAQ,KAAK,4BAAA,EAAA;EAzFnE,OAyFmE;;;AAA+B;AAC3F,IAAMuB,2BAAN,cAAuCvB,QAAQ,KAAK,mBAAA,EAAA;EA1F3D,OA0F2D;;;AAAsB;AAgB1E,IAAMwB,aAAa;;EAExBC,IAAI;EACJC,SAAS;EACTC,UAAU;EACVC,YAAY;;EAGZC,mBAAmB;EACnBC,OAAO;EACPC,cAAc;EACdC,oBAAoB;EACpBC,oBAAoB;;EAGpBC,aAAa;EACbC,cAAc;EACdC,kBAAkB;EAClBC,WAAW;EACXC,WAAW;EACXC,oBAAoB;EACpBC,gBAAgB;EAChBC,iBAAiB;EACjBC,UAAU;EACVC,MAAM;EACNC,qBAAqB;EACrBC,mBAAmB;EACnBC,wBAAwB;EACxBC,aAAa;EACbC,sBAAsB;EACtBC,mBAAmB;;EAGnBC,uBAAuB;EACvBC,iBAAiB;EACjBC,aAAa;EACbC,qBAAqB;EACrBC,iBAAiB;AACnB;","names":["CONTROLLER_PREFIX","Symbol","for","ROUTE_METHODS","ROUTE_PARAMS","ROUTE_STATUS","ROUTE_HEADERS","ROUTE_REDIRECT","USE_GUARDS","USE_INTERCEPTORS","USE_FILTERS","CATCH_EXCEPTIONS","EXPOSE_AGENT","setMeta","key","target","value","propertyKey","undefined","Reflect","defineMetadata","getMeta","getMetadata","STATUS_CODES","HttpException","Error","statusCode","code","description","message","options","cause","undefined","name","toJSON","error","factory","status","defaultMsg","BadRequestException","UnauthorizedException","ForbiddenException","NotFoundException","MethodNotAllowedException","NotAcceptableException","RequestTimeoutException","ConflictException","GoneException","PreconditionFailedException","PayloadTooLargeException","UnsupportedMediaTypeException","ImATeapotException","UnprocessableEntityException","InternalServerErrorException","NotImplementedException","BadGatewayException","ServiceUnavailableException","GatewayTimeoutException","HttpVersionNotSupportedException","TooManyRequestsException","HttpStatus","OK","CREATED","ACCEPTED","NO_CONTENT","MOVED_PERMANENTLY","FOUND","NOT_MODIFIED","TEMPORARY_REDIRECT","PERMANENT_REDIRECT","BAD_REQUEST","UNAUTHORIZED","PAYMENT_REQUIRED","FORBIDDEN","NOT_FOUND","METHOD_NOT_ALLOWED","NOT_ACCEPTABLE","REQUEST_TIMEOUT","CONFLICT","GONE","PRECONDITION_FAILED","PAYLOAD_TOO_LARGE","UNSUPPORTED_MEDIA_TYPE","IM_A_TEAPOT","UNPROCESSABLE_ENTITY","TOO_MANY_REQUESTS","INTERNAL_SERVER_ERROR","NOT_IMPLEMENTED","BAD_GATEWAY","SERVICE_UNAVAILABLE","GATEWAY_TIMEOUT"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/bridge/exception-filter-chain.ts"],"mappings":";;;;;;;;;;;;;AAyBA,eAAsBA,oBACpBC,WACAC,SACAC,SACAC,WAAuB;AAEvB,QAAMC,OAAsB;IAC1BC,YAAY,6BAAMH,SAAN;EACd;AAEA,aAAWI,cAAcL,SAAS;AAChC,UAAMM,aAAaC,QAAoBC,kBAAkBH,UAAAA,KAAe,CAAA;AACxE,QAAII,iBAAiBV,WAAWO,UAAAA,GAAa;AAC3C,YAAMI,SAASC,aAAaN,YAAYH,SAAAA;AACxC,UAAI;AACF,eAAO,MAAMQ,OAAOE,MAAMb,WAAWI,IAAAA;MACvC,SAASU,aAAa;AAEpBC,gBAAQC,MAAM,2CAA2CF,WAAAA;AACzD,eAAOG,eAAejB,SAAAA;MACxB;IACF;EACF;AAEA,SAAOkB,gBAAgBlB,SAAAA;AACzB;AAzBsBD;AA2BtB,SAASW,iBAAiBV,WAAoBO,YAAsB;AAClE,MAAIA,WAAWY,WAAW,EAAG,QAAO;AACpC,SAAOZ,WAAWa,KAAK,CAACC,SAASrB,qBAAqBqB,IAAAA;AACxD;AAHSX;AAKT,SAASQ,gBAAgBlB,WAAkB;AACzC,MAAIA,qBAAqBsB,eAAe;AACtC,WAAO,IAAIC,SAASC,KAAKC,UAAUzB,UAAU0B,OAAM,CAAA,GAAK;MACtDC,QAAQ3B,UAAU4B;MAClBC,SAAS;QAAE,gBAAgB;MAAmB;IAChD,CAAA;EACF;AACA,SAAOZ,eAAejB,SAAAA;AACxB;AARSkB;AAUT,SAASD,eAAejB,WAAkB;AACxC,QAAM8B,UAAU9B,qBAAqB+B,QAAQ/B,UAAU8B,UAAU;AACjEf,UAAQC,MAAM,wCAAwChB,SAAAA;AACtD,SAAO,IAAIuB,SACTC,KAAKC,UAAU;IAAET,OAAO;MAAEgB,MAAM;MAAyBF;MAASF,YAAY;IAAI;EAAE,CAAA,GACpF;IAAED,QAAQ;IAAKE,SAAS;MAAE,gBAAgB;IAAmB;EAAE,CAAA;AAEnE;AAPSZ;","names":["runExceptionFilters","exception","filters","request","container","host","getRequest","FilterCtor","catchTypes","getMeta","CATCH_EXCEPTIONS","matchesException","filter","resolveOrNew","catch","filterError","console","error","globalFallback","builtInResponse","length","some","Type","HttpException","Response","JSON","stringify","toJSON","status","statusCode","headers","message","Error","code"]}