@c9up/ream 0.1.24 → 0.1.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/dist/ConfigLoader.d.ts +46 -5
  2. package/dist/ConfigLoader.d.ts.map +1 -1
  3. package/dist/ConfigLoader.js +60 -9
  4. package/dist/ConfigLoader.js.map +1 -1
  5. package/dist/HttpKernel.d.ts.map +1 -1
  6. package/dist/HttpKernel.js +46 -6
  7. package/dist/HttpKernel.js.map +1 -1
  8. package/dist/Ignitor.d.ts.map +1 -1
  9. package/dist/Ignitor.js +21 -3
  10. package/dist/Ignitor.js.map +1 -1
  11. package/dist/container/Container.d.ts +23 -3
  12. package/dist/container/Container.d.ts.map +1 -1
  13. package/dist/container/Container.js +139 -60
  14. package/dist/container/Container.js.map +1 -1
  15. package/dist/env/Env.d.ts +29 -4
  16. package/dist/env/Env.d.ts.map +1 -1
  17. package/dist/env/Env.js +27 -4
  18. package/dist/env/Env.js.map +1 -1
  19. package/dist/env/Secret.d.ts +11 -0
  20. package/dist/env/Secret.d.ts.map +1 -0
  21. package/dist/env/Secret.js +36 -0
  22. package/dist/env/Secret.js.map +1 -0
  23. package/dist/env/interpolate.d.ts +26 -0
  24. package/dist/env/interpolate.d.ts.map +1 -0
  25. package/dist/env/interpolate.js +48 -0
  26. package/dist/env/interpolate.js.map +1 -0
  27. package/dist/env/loadEnvFiles.d.ts.map +1 -1
  28. package/dist/env/loadEnvFiles.js +14 -4
  29. package/dist/env/loadEnvFiles.js.map +1 -1
  30. package/dist/env/schema.d.ts +23 -6
  31. package/dist/env/schema.d.ts.map +1 -1
  32. package/dist/env/schema.js +67 -33
  33. package/dist/env/schema.js.map +1 -1
  34. package/dist/events/Emitter.d.ts +1 -1
  35. package/dist/events/Emitter.d.ts.map +1 -1
  36. package/dist/events/Emitter.js +1 -1
  37. package/dist/events/Emitter.js.map +1 -1
  38. package/dist/events/EventsProvider.d.ts +2 -2
  39. package/dist/events/EventsProvider.d.ts.map +1 -1
  40. package/dist/events/EventsProvider.js +3 -3
  41. package/dist/events/EventsProvider.js.map +1 -1
  42. package/dist/graphql/GraphQLEngine.d.ts +1 -1
  43. package/dist/graphql/GraphQLEngine.d.ts.map +1 -1
  44. package/dist/graphql/GraphQLEngine.js +2 -2
  45. package/dist/graphql/GraphQLEngine.js.map +1 -1
  46. package/dist/graphql/GraphQLProvider.d.ts.map +1 -1
  47. package/dist/graphql/GraphQLProvider.js +7 -3
  48. package/dist/graphql/GraphQLProvider.js.map +1 -1
  49. package/dist/http/Exception.d.ts +63 -1
  50. package/dist/http/Exception.d.ts.map +1 -1
  51. package/dist/http/Exception.js +185 -48
  52. package/dist/http/Exception.js.map +1 -1
  53. package/dist/http/HttpContext.d.ts +56 -9
  54. package/dist/http/HttpContext.d.ts.map +1 -1
  55. package/dist/http/HttpContext.js +56 -15
  56. package/dist/http/HttpContext.js.map +1 -1
  57. package/dist/http/RedirectBuilder.d.ts.map +1 -1
  58. package/dist/http/RedirectBuilder.js +4 -1
  59. package/dist/http/RedirectBuilder.js.map +1 -1
  60. package/dist/http/Request.d.ts +141 -10
  61. package/dist/http/Request.d.ts.map +1 -1
  62. package/dist/http/Request.js +244 -34
  63. package/dist/http/Request.js.map +1 -1
  64. package/dist/http/Response.d.ts +176 -9
  65. package/dist/http/Response.d.ts.map +1 -1
  66. package/dist/http/Response.js +431 -19
  67. package/dist/http/Response.js.map +1 -1
  68. package/dist/index.d.ts +5 -4
  69. package/dist/index.d.ts.map +1 -1
  70. package/dist/index.js +4 -3
  71. package/dist/index.js.map +1 -1
  72. package/dist/middleware/Pipeline.js +1 -1
  73. package/dist/middleware/Pipeline.js.map +1 -1
  74. package/dist/openapi/OpenApiProvider.js +4 -4
  75. package/dist/openapi/OpenApiProvider.js.map +1 -1
  76. package/dist/router/Router.d.ts +223 -31
  77. package/dist/router/Router.d.ts.map +1 -1
  78. package/dist/router/Router.js +520 -102
  79. package/dist/router/Router.js.map +1 -1
  80. package/dist/rpc/RpcProvider.d.ts +1 -0
  81. package/dist/rpc/RpcProvider.d.ts.map +1 -1
  82. package/dist/rpc/RpcProvider.js +7 -3
  83. package/dist/rpc/RpcProvider.js.map +1 -1
  84. package/dist/rpc/RpcRouter.d.ts +2 -2
  85. package/dist/rpc/RpcRouter.d.ts.map +1 -1
  86. package/dist/rpc/RpcRouter.js +5 -4
  87. package/dist/rpc/RpcRouter.js.map +1 -1
  88. package/dist/scheduler/ScheduleProvider.d.ts.map +1 -1
  89. package/dist/scheduler/ScheduleProvider.js +7 -15
  90. package/dist/scheduler/ScheduleProvider.js.map +1 -1
  91. package/dist/server/Server.d.ts +17 -4
  92. package/dist/server/Server.d.ts.map +1 -1
  93. package/dist/server/Server.js +41 -7
  94. package/dist/server/Server.js.map +1 -1
  95. package/dist/session/SessionMiddleware.js +3 -3
  96. package/dist/session/SessionMiddleware.js.map +1 -1
  97. package/dist/storage/StaticProvider.js +1 -1
  98. package/dist/storage/StaticProvider.js.map +1 -1
  99. package/dist/testing/RequestBuilder.d.ts +60 -0
  100. package/dist/testing/RequestBuilder.d.ts.map +1 -1
  101. package/dist/testing/RequestBuilder.js +180 -1
  102. package/dist/testing/RequestBuilder.js.map +1 -1
  103. package/dist/testing/TestClient.d.ts +22 -1
  104. package/dist/testing/TestClient.d.ts.map +1 -1
  105. package/dist/testing/TestClient.js +40 -0
  106. package/dist/testing/TestClient.js.map +1 -1
  107. package/dist/utils/Macroable.d.ts +30 -0
  108. package/dist/utils/Macroable.d.ts.map +1 -0
  109. package/dist/utils/Macroable.js +43 -0
  110. package/dist/utils/Macroable.js.map +1 -0
  111. package/dist/utils/inflect.d.ts +17 -0
  112. package/dist/utils/inflect.d.ts.map +1 -0
  113. package/dist/utils/inflect.js +32 -0
  114. package/dist/utils/inflect.js.map +1 -0
  115. package/dist/utils/objectPath.d.ts +57 -0
  116. package/dist/utils/objectPath.d.ts.map +1 -0
  117. package/dist/utils/objectPath.js +141 -0
  118. package/dist/utils/objectPath.js.map +1 -0
  119. package/events.darwin-arm64.node +0 -0
  120. package/events.darwin-x64.node +0 -0
  121. package/events.linux-arm64-gnu.node +0 -0
  122. package/events.linux-x64-gnu.node +0 -0
  123. package/events.win32-x64-msvc.node +0 -0
  124. package/index.darwin-arm64.node +0 -0
  125. package/index.darwin-x64.node +0 -0
  126. package/index.linux-arm64-gnu.node +0 -0
  127. package/index.linux-x64-gnu.node +0 -0
  128. package/index.win32-x64-msvc.node +0 -0
  129. package/package.json +6 -1
  130. package/scheduler.darwin-arm64.node +0 -0
  131. package/scheduler.darwin-x64.node +0 -0
  132. package/scheduler.linux-arm64-gnu.node +0 -0
  133. package/scheduler.linux-x64-gnu.node +0 -0
  134. package/scheduler.win32-x64-msvc.node +0 -0
  135. package/src/ConfigLoader.ts +72 -9
  136. package/src/HttpKernel.ts +53 -15
  137. package/src/Ignitor.ts +24 -3
  138. package/src/container/Container.ts +145 -61
  139. package/src/env/Env.ts +49 -5
  140. package/src/env/Secret.ts +41 -0
  141. package/src/env/interpolate.ts +54 -0
  142. package/src/env/loadEnvFiles.ts +12 -4
  143. package/src/env/schema.ts +109 -35
  144. package/src/events/Emitter.ts +2 -2
  145. package/src/events/EventsProvider.ts +5 -5
  146. package/src/graphql/GraphQLEngine.ts +4 -4
  147. package/src/graphql/GraphQLProvider.ts +7 -3
  148. package/src/http/Exception.ts +214 -37
  149. package/src/http/HttpContext.ts +93 -20
  150. package/src/http/RedirectBuilder.ts +4 -1
  151. package/src/http/Request.ts +264 -34
  152. package/src/http/Response.ts +504 -30
  153. package/src/index.ts +11 -2
  154. package/src/middleware/Pipeline.ts +1 -1
  155. package/src/openapi/OpenApiProvider.ts +4 -4
  156. package/src/router/Router.ts +631 -113
  157. package/src/rpc/RpcProvider.ts +6 -2
  158. package/src/rpc/RpcRouter.ts +7 -6
  159. package/src/scheduler/ScheduleProvider.ts +7 -15
  160. package/src/server/Server.ts +49 -10
  161. package/src/session/SessionMiddleware.ts +4 -4
  162. package/src/storage/StaticProvider.ts +1 -1
  163. package/src/testing/RequestBuilder.ts +218 -1
  164. package/src/testing/TestClient.ts +57 -1
  165. package/src/utils/Macroable.ts +54 -0
  166. package/src/utils/inflect.ts +29 -0
  167. package/src/utils/objectPath.ts +142 -0
  168. package/dist/decorators/Lazy.d.ts +0 -19
  169. package/dist/decorators/Lazy.d.ts.map +0 -1
  170. package/dist/decorators/Lazy.js +0 -53
  171. package/dist/decorators/Lazy.js.map +0 -1
  172. package/src/decorators/Lazy.ts +0 -57
package/dist/index.js CHANGED
@@ -6,17 +6,19 @@
6
6
  import 'reflect-metadata';
7
7
  // ─── Core ───────────────────────────────────────────────────
8
8
  export { Application } from './Application.js';
9
- export { ConfigStore, defineModuleConfig, env } from './ConfigLoader.js';
9
+ export { ConfigStore, configProvider, defineModuleConfig, env } from './ConfigLoader.js';
10
10
  export { Container } from './container/Container.js';
11
11
  export { Env, EnvValidationException } from './env/Env.js';
12
12
  export { loadEnvFiles } from './env/loadEnvFiles.js';
13
+ export { Secret } from './env/Secret.js';
13
14
  export { EnvVarError, } from './env/schema.js';
14
15
  // ─── HTTP (new — AdonisJS-compatible) ───────────────────────
15
- export { E_FORBIDDEN, E_HTTP_EXCEPTION, E_ROUTE_NOT_FOUND, E_ROW_NOT_FOUND, E_UNAUTHORIZED, E_VALIDATION_ERROR, Exception, ExceptionHandler, } from './http/Exception.js';
16
+ export { createError, E_FORBIDDEN, E_HTTP_EXCEPTION, E_ROUTE_NOT_FOUND, E_ROW_NOT_FOUND, E_UNAUTHORIZED, E_VALIDATION_ERROR, Exception, ExceptionHandler, InvalidArgumentsException, RuntimeException, } from './http/Exception.js';
16
17
  export { HttpContext } from './http/HttpContext.js';
17
18
  export { RedirectBuilder } from './http/RedirectBuilder.js';
18
19
  export { Request } from './http/Request.js';
19
20
  export { Response } from './http/Response.js';
21
+ export { Macroable } from './utils/Macroable.js';
20
22
  // ─── Session ────────────────────────────────────────────────
21
23
  export { CookieDriver as SessionCookieDriver } from './session/drivers/CookieDriver.js';
22
24
  export { MemoryDriver as SessionMemoryDriver } from './session/drivers/MemoryDriver.js';
@@ -39,7 +41,6 @@ export { CookieSigner } from './security/CookieSigner.js';
39
41
  export { constantTimeEq, hasNativeCrypto, hmacSign, hmacVerify, randomBytesBase64, randomHex, setNapi, } from './security/crypto.js';
40
42
  export { SignedUrl } from './security/SignedUrl.js';
41
43
  // ─── Decorators ─────────────────────────────────────────────
42
- export { createLazyProxy, getLazyParams, Lazy } from './decorators/Lazy.js';
43
44
  export { clearServiceRegistry, getServiceMetadata, getServiceRegistry, Inject, inject, Service, } from './decorators/Service.js';
44
45
  export { GroupBuilder, matchers, OnRouteBuilder, RouteBuilder, Router } from './router/Router.js';
45
46
  export { compose, MiddlewareRegistry } from './middleware/Pipeline.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -93,7 +93,7 @@ function compose(middleware) {
93
93
  function createGuardMiddleware(guards, roles, permissions) {
94
94
  return async (ctx, next) => {
95
95
  const needsAuth = guards.length > 0 || (roles && roles.length > 0) || (permissions && permissions.length > 0);
96
- if (needsAuth && !ctx.auth.authenticated) {
96
+ if (needsAuth && !ctx.auth.isAuthenticated) {
97
97
  throw new E_UNAUTHORIZED();
98
98
  }
99
99
  // Auth providers may expose roles/permissions at the top level OR nested
@@ -1 +1 @@
1
- {"version":3,"file":"Pipeline.js","sourceRoot":"","sources":["../../src/middleware/Pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Pipeline.js","sourceRoot":"","sources":["../../src/middleware/Pipeline.ts"],"names":[],"mappings":"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"}
@@ -22,8 +22,8 @@ export class OpenApiProvider extends Provider {
22
22
  const config = this.app.config.get('openapi') ?? {};
23
23
  if (config.enabled === false)
24
24
  return;
25
- const generator = this.#override ?? this.#buildGenerator(config);
26
- const server = this.app.container.make('server');
25
+ const generator = this.#override ?? (await this.#buildGenerator(config));
26
+ const server = await this.app.container.make('server');
27
27
  const middleware = new OpenApiMiddleware({
28
28
  specPath: config.specPath,
29
29
  docsPath: config.docsPath,
@@ -31,8 +31,8 @@ export class OpenApiProvider extends Provider {
31
31
  });
32
32
  server.use([(ctx, next) => middleware.handle(ctx, next)]);
33
33
  }
34
- #buildGenerator(config) {
35
- const router = this.app.container.make('router');
34
+ async #buildGenerator(config) {
35
+ const router = await this.app.container.make('router');
36
36
  return new OpenApiGenerator(router, {
37
37
  title: config.title ?? 'API',
38
38
  version: config.version ?? '1.0.0',
@@ -1 +1 @@
1
- {"version":3,"file":"OpenApiProvider.js","sourceRoot":"","sources":["../../src/openapi/OpenApiProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAoB1D,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAClC,SAAS,CAAmB;IAErC,YAAY,GAAe,EAAE,UAAkC,EAAE;QAC/D,KAAK,CAAC,GAAG,CAAC,CAAA;QACV,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;IACpC,CAAC;IAEQ,KAAK,CAAC,IAAI;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAoB,SAAS,CAAC,IAAI,EAAE,CAAA;QACtE,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,OAAM;QAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QAChE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAS,QAAQ,CAAC,CAAA;QACxD,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC;YACvC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE;SACjC,CAAC,CAAA;QACF,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,eAAe,CAAC,MAAyB;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAS,QAAQ,CAAC,CAAA;QACxD,OAAO,IAAI,gBAAgB,CAAC,MAAM,EAAE;YAClC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK;YAC5B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,OAAO;SACnC,CAAC,CAAA;IACJ,CAAC;CACF;AAED,2KAA2K;AAC3K,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"OpenApiProvider.js","sourceRoot":"","sources":["../../src/openapi/OpenApiProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAoB1D,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAClC,SAAS,CAAmB;IAErC,YAAY,GAAe,EAAE,UAAkC,EAAE;QAC/D,KAAK,CAAC,GAAG,CAAC,CAAA;QACV,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;IACpC,CAAC;IAEQ,KAAK,CAAC,IAAI;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAoB,SAAS,CAAC,IAAI,EAAE,CAAA;QACtE,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,OAAM;QAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;QACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAS,QAAQ,CAAC,CAAA;QAC9D,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC;YACvC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE;SACjC,CAAC,CAAA;QACF,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAyB;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAS,QAAQ,CAAC,CAAA;QAC9D,OAAO,IAAI,gBAAgB,CAAC,MAAM,EAAE;YAClC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK;YAC5B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,OAAO;SACnC,CAAC,CAAA;IACJ,CAAC;CACF;AAED,2KAA2K;AAC3K,eAAe,eAAe,CAAA"}
@@ -5,7 +5,18 @@
5
5
  */
6
6
  import type { HttpContext } from '../http/HttpContext.js';
7
7
  import type { MiddlewareFunction } from '../middleware/Pipeline.js';
8
+ import type { SignedUrl } from '../security/SignedUrl.js';
8
9
  import type { MiddlewareEntry } from '../server/Server.js';
10
+ import { Macroable } from '../utils/Macroable.js';
11
+ /** Options for {@link Router.makeSignedUrl}. */
12
+ export interface SignedUrlOptions {
13
+ /** Extra query-string params folded into the signature. */
14
+ qs?: Record<string, string>;
15
+ /** Lifetime before the link expires — seconds (number) or a `'30m'`/`'2h'`/`'1d'` string. */
16
+ expiresIn?: string | number;
17
+ /** Namespaces the signature so a URL signed for one purpose can't be reused for another. */
18
+ purpose?: string;
19
+ }
9
20
  export type RouteHandlerFunction = (ctx: HttpContext) => Promise<void> | void;
10
21
  /**
11
22
  * Controller tuple: [ControllerClass, 'methodName'].
@@ -13,8 +24,20 @@ export type RouteHandlerFunction = (ctx: HttpContext) => Promise<void> | void;
13
24
  * same pattern as AdonisJS (@poppinss/utils Constructor type).
14
25
  */
15
26
  export type ControllerAction = [target: new (...args: any[]) => any, method: string];
16
- /** A route handler is either a closure or a controller tuple. */
17
- export type RouteHandler = RouteHandlerFunction | ControllerAction;
27
+ /** Any controller class (derived from {@link ControllerAction} — no fresh `any`). */
28
+ export type ControllerConstructor = ControllerAction[0];
29
+ /** A lazy controller import: `() => import('#controllers/users_controller')`. */
30
+ export type LazyControllerImport = () => Promise<{
31
+ default: ControllerConstructor;
32
+ }>;
33
+ /** Lazy controller tuple: [() => import(...), 'methodName']. */
34
+ export type LazyControllerAction = [loader: LazyControllerImport, method: string];
35
+ /**
36
+ * A route handler is a closure, a controller tuple, a lazy-import tuple, or a
37
+ * magic string reference `'ControllerName.method'` resolved through the
38
+ * router's controller registry ({@link Router.controllers}).
39
+ */
40
+ export type RouteHandler = RouteHandlerFunction | ControllerAction | LazyControllerAction | string;
18
41
  /** Param matcher — regex or predefined matcher. */
19
42
  export type ParamMatcher = RegExp | {
20
43
  pattern: RegExp;
@@ -41,6 +64,33 @@ export interface RouteDefinition {
41
64
  version: string;
42
65
  sunset?: string;
43
66
  };
67
+ /**
68
+ * Soft-delete flag (AdonisJS `route.markAsDeleted()`). A resource's
69
+ * `.only()`/`.except()`/`.apiOnly()` mark filtered-out routes deleted rather
70
+ * than splicing them, so the builder chain stays intact. Deleted routes are
71
+ * skipped by the match index and `getRoutes()`.
72
+ */
73
+ deleted?: boolean;
74
+ /**
75
+ * Lazily-imported controller (from a `[() => import(...), 'method']` tuple or
76
+ * a resolved string reference). The HttpKernel awaits the loader on first
77
+ * request and promotes it to {@link controller}, so @Guard metadata + DI
78
+ * resolution flow through the normal controller path.
79
+ */
80
+ lazyController?: {
81
+ loader: LazyControllerImport;
82
+ method: string;
83
+ };
84
+ /**
85
+ * Unresolved `'ControllerName.method'` string reference. Resolved to
86
+ * {@link lazyController} against the router's controller registry when the
87
+ * route index is (re)built — a reference to an unregistered controller is a
88
+ * hard error there.
89
+ */
90
+ stringRef?: {
91
+ controller: string;
92
+ method: string;
93
+ };
44
94
  }
45
95
  export interface MatchResult {
46
96
  route: RouteDefinition;
@@ -54,12 +104,19 @@ export declare const matchers: {
54
104
  /** Match slug params only (lowercase alphanumeric + hyphens). */
55
105
  slug(): ParamMatcher;
56
106
  };
57
- /** Fluent route builder — mutates the already-registered route definition. */
58
- export declare class RouteBuilder {
107
+ /**
108
+ * Fluent route builder — mutates the already-registered route definition(s).
109
+ * Backed by an array so a multi-verb `router.route(['GET','POST'], …)` returns
110
+ * ONE builder that fans every mutation across all its verbs; the single-verb
111
+ * helpers (`get`/`post`/…) back it with a one-element array.
112
+ */
113
+ export declare class RouteBuilder extends Macroable {
59
114
  #private;
60
- constructor(route: RouteDefinition);
115
+ constructor(routes: RouteDefinition | RouteDefinition[]);
61
116
  /** Name this route (for URL generation and redirects). */
62
117
  as(name: string): this;
118
+ /** Prepend a URL prefix to this single route (AdonisJS route-level `prefix`). */
119
+ prefix(prefix: string): this;
63
120
  /** Add named middleware. */
64
121
  middleware(...names: string[]): this;
65
122
  /** Add inline middleware functions. */
@@ -70,8 +127,8 @@ export declare class RouteBuilder {
70
127
  role(...roles: string[]): this;
71
128
  /** Require specific permissions. */
72
129
  permission(...permissions: string[]): this;
73
- /** Add a param constraint. */
74
- where(param: string, matcher: ParamMatcher | RegExp): this;
130
+ /** Add a param constraint — RegExp, predefined matcher, or a string pattern. */
131
+ where(param: string, matcher: ParamMatcher | RegExp | string): this;
75
132
  /**
76
133
  * Validate the request body against a named validator. At request time the
77
134
  * kernel resolves the validator from the IoC container under the token
@@ -96,11 +153,21 @@ export declare class RouteBuilder {
96
153
  deprecates(version: string, options?: {
97
154
  sunset?: string;
98
155
  }): this;
99
- /** @internal Get the underlying definition. */
156
+ /** The route's name, or undefined when unnamed (AdonisJS `route.getName`). */
157
+ getName(): string | undefined;
158
+ /** The route's URL pattern (AdonisJS `route.getPattern`). */
159
+ getPattern(): string;
160
+ /** Replace the route's URL pattern (AdonisJS `route.setPattern`). */
161
+ setPattern(pattern: string): this;
162
+ /** Soft-delete this route so it stops matching (AdonisJS `route.markAsDeleted`). */
163
+ markAsDeleted(): this;
164
+ /** True when the route has been soft-deleted (AdonisJS `route.isDeleted`). */
165
+ isDeleted(): boolean;
166
+ /** @internal Get the underlying (primary) definition. */
100
167
  getDefinition(): RouteDefinition;
101
168
  }
102
169
  /** Fluent group builder — returned by router.group(callback). */
103
- export declare class GroupBuilder {
170
+ export declare class GroupBuilder extends Macroable {
104
171
  #private;
105
172
  constructor(routes: RouteDefinition[]);
106
173
  /** Set URL prefix for all routes in the group. */
@@ -111,26 +178,88 @@ export declare class GroupBuilder {
111
178
  use(...mw: MiddlewareFunction[]): this;
112
179
  /** Add guards to all routes in the group. */
113
180
  guard(...guards: string[]): this;
114
- /** Prefix route names for all routes in the group. */
181
+ /**
182
+ * Prefix route names for all routes in the group (AdonisJS `group.as`).
183
+ * Every route MUST already be named — prefixing an unnamed route is
184
+ * meaningless, so it throws rather than silently skipping (AdonisJS parity).
185
+ */
115
186
  as(namePrefix: string): this;
116
187
  /** Set domain for all routes in the group. */
117
188
  domain(d: string): this;
118
189
  /** Add param matcher to all routes in the group. */
119
- where(param: string, matcher: ParamMatcher | RegExp): this;
190
+ where(param: string, matcher: ParamMatcher | RegExp | string): this;
120
191
  }
121
- /** Builder for on(path).render(view) and on(path).redirect(target). */
192
+ /** Resourceful action names (AdonisJS resource). */
193
+ export type ResourceAction = 'index' | 'create' | 'store' | 'show' | 'edit' | 'update' | 'destroy';
194
+ /** Middleware accepted per-action on a resource: a named string or an inline fn. */
195
+ type ResourceMiddleware = string | MiddlewareFunction;
196
+ /**
197
+ * Resourceful route builder — returned by `router.resource()` /
198
+ * `router.shallowResource()` (AdonisJS `RouteResource` parity).
199
+ *
200
+ * Generates the seven RESTful routes (index, create, store, show, edit,
201
+ * update, destroy — `update` registered for both PUT and PATCH) and exposes
202
+ * the fluent filtering/config API: `only`/`except`/`apiOnly`/`params`/`tap`/
203
+ * `where`/`use`/`middleware`/`as`. Nested resources use dot-notation
204
+ * (`posts.comments` → `/posts/:post_id/comments/:id`).
205
+ */
206
+ export declare class RouteResource extends Macroable {
207
+ #private;
208
+ /** The generated routes, in declaration order (AdonisJS `resource.routes`). */
209
+ readonly routes: RouteBuilder[];
210
+ constructor(options: {
211
+ resource: string;
212
+ controller: ControllerAction[0];
213
+ shallow: boolean;
214
+ register: (def: RouteDefinition) => void;
215
+ markDirty: () => void;
216
+ });
217
+ /** Keep only the given actions; soft-delete the rest (AdonisJS `only`). */
218
+ only(names: ResourceAction[]): this;
219
+ /** Register all actions except the given ones (AdonisJS `except`). */
220
+ except(names: ResourceAction[]): this;
221
+ /** Drop the form-rendering `create` + `edit` actions (AdonisJS `apiOnly`). */
222
+ apiOnly(): this;
223
+ /** Constrain a param across every action route (AdonisJS `resource.where`). */
224
+ where(key: string, matcher: ParamMatcher | RegExp | string): this;
225
+ /**
226
+ * Configure the resource's routes. `tap(cb)` runs `cb` for every non-deleted
227
+ * route; `tap(actions, cb)` only for routes matching `actions` (AdonisJS `tap`).
228
+ */
229
+ tap(callback: (route: RouteBuilder) => void): this;
230
+ tap(actions: ResourceAction | ResourceAction[], callback: (route: RouteBuilder) => void): this;
231
+ /** Rename the `:id` param of one or more resources (AdonisJS `params`). */
232
+ params(resources: Record<string, string>): this;
233
+ /**
234
+ * Attach middleware to specific actions (or `'*'` for all) — AdonisJS `use`.
235
+ * Named middleware are strings; inline middleware are functions.
236
+ */
237
+ use(actions: ResourceAction | ResourceAction[] | '*', middleware: ResourceMiddleware | ResourceMiddleware[]): this;
238
+ /** Alias for {@link RouteResource.use} (AdonisJS `middleware`). */
239
+ middleware(actions: ResourceAction | ResourceAction[] | '*', middleware: ResourceMiddleware | ResourceMiddleware[]): this;
240
+ /**
241
+ * Rename the base of every route name (AdonisJS `as`). `normalizeName`
242
+ * snake_cases the new base by default.
243
+ */
244
+ as(name: string, normalizeName?: boolean): this;
245
+ }
246
+ /** Builder for on(path).render(view) and on(path).redirect(namedRoute). */
122
247
  export declare class OnRouteBuilder {
123
248
  #private;
124
249
  constructor(router: Router, path: string);
125
250
  /** Render a view (requires Photon/view provider). */
126
251
  render(view: string, data?: Record<string, unknown>): RouteBuilder;
127
- /** Redirect to a path. */
128
- redirect(target: string, status?: number): RouteBuilder;
129
- /** Redirect to a named route. */
130
- redirectToRoute(name: string, params?: Record<string, string>, status?: number): RouteBuilder;
252
+ /**
253
+ * Redirect to a NAMED route (AdonisJS brisk `redirect`). Mirrors AdonisJS:
254
+ * the first argument is a route name, not a path — use {@link redirectToPath}
255
+ * for a fixed URL.
256
+ */
257
+ redirect(name: string, params?: Record<string, string>, status?: number): RouteBuilder;
258
+ /** Redirect to a fixed path/URL (AdonisJS brisk `redirectToPath`). */
259
+ redirectToPath(target: string, status?: number): RouteBuilder;
131
260
  }
132
261
  /** Main Router. */
133
- export declare class Router {
262
+ export declare class Router extends Macroable {
134
263
  #private;
135
264
  /** Predefined param matchers. */
136
265
  readonly matchers: {
@@ -147,18 +276,42 @@ export declare class Router {
147
276
  */
148
277
  use(middleware: MiddlewareEntry[]): this;
149
278
  /**
150
- * Register named middleware collection.
279
+ * Register a named middleware collection and return per-name FACTORIES
280
+ * (AdonisJS `defineNamedMiddleware`). Call a factory to bind per-route
281
+ * arguments, then attach the result inline:
282
+ *
151
283
  * export const middleware = router.named({
152
284
  * auth: () => import('#middleware/auth_middleware'),
153
285
  * })
286
+ * router.get('/admin', [AdminController, 'index']).use([middleware.auth({ guards: ['web'] })])
287
+ *
288
+ * By-name usage (`route.middleware('auth')`) still runs the middleware with
289
+ * no arguments — the factory form is only needed to pass `args` to `handle`.
290
+ */
291
+ named(collection: Record<string, MiddlewareEntry>): Record<string, (args?: unknown) => MiddlewareFunction>;
292
+ /**
293
+ * Register controllers for magic string handler references (AdonisJS lazy
294
+ * controller pattern). Each entry maps a controller name to a lazy import:
295
+ *
296
+ * router.controllers({ UsersController: () => import('#controllers/users_controller') })
297
+ * router.get('/users', 'UsersController.index')
298
+ *
299
+ * The class is imported on first request and resolved through the IoC
300
+ * container (so @inject + @Guard/@Role decorators work). A string reference
301
+ * to a name that was never registered fails loudly when the route index is
302
+ * built.
154
303
  */
155
- named(collection: Record<string, MiddlewareEntry>): Record<string, MiddlewareFunction>;
304
+ controllers(map: Record<string, LazyControllerImport>): this;
156
305
  /** Get the router-level middleware stack. */
157
306
  getRouterMiddleware(): MiddlewareFunction[];
158
307
  /** Get a named middleware by name. */
159
308
  getNamedMiddleware(name: string): MiddlewareFunction | undefined;
160
- /** Register a route with any HTTP method. */
161
- route(method: string, path: string, handler: RouteHandler): RouteBuilder;
309
+ /**
310
+ * Register a route for one verb or several (AdonisJS `route(pattern, methods)`
311
+ * accepts an array). A multi-verb call returns a single builder that
312
+ * configures every verb at once.
313
+ */
314
+ route(method: string | string[], path: string, handler: RouteHandler): RouteBuilder;
162
315
  get(path: string, handler: RouteHandler): RouteBuilder;
163
316
  post(path: string, handler: RouteHandler): RouteBuilder;
164
317
  put(path: string, handler: RouteHandler): RouteBuilder;
@@ -169,18 +322,28 @@ export declare class Router {
169
322
  /** Register a route for all HTTP methods. */
170
323
  any(path: string, handler: RouteHandler): RouteBuilder;
171
324
  /**
172
- * Register resourceful routes for a controller.
173
- * Generates: index, store, show, update, destroy
325
+ * Register resourceful routes for a controller (AdonisJS `resource`).
326
+ *
327
+ * Generates index / create / store / show / edit / update / destroy —
328
+ * `update` for both PUT and PATCH. Returns a {@link RouteResource} for
329
+ * fluent filtering: `.only()`, `.except()`, `.apiOnly()`, `.params()`,
330
+ * `.tap()`, `.where()`, `.use()`, `.as()`.
331
+ *
332
+ * Nested resources use dot-notation (`posts.comments` →
333
+ * `/posts/:post_id/comments/:id`).
174
334
  *
175
335
  * Usage:
176
336
  * router.resource('posts', PostsController)
177
- * // GET /posts → PostsController.index
178
- * // POST /posts → PostsController.store
179
- * // GET /posts/:id → PostsController.show
180
- * // PUT /posts/:id → PostsController.update
181
- * // DELETE /posts/:id → PostsController.destroy
337
+ * router.resource('posts', PostsController).apiOnly()
182
338
  */
183
- resource(path: string, controller: new (...args: any[]) => any): GroupBuilder;
339
+ resource(path: string, controller: ControllerAction[0]): RouteResource;
340
+ /**
341
+ * Register a shallow resource (AdonisJS `shallowResource`). Member routes
342
+ * (show/edit/update/destroy) drop the parent prefix, since the record id
343
+ * alone identifies it: `posts.comments` → `/comments/:id` for members but
344
+ * `/posts/:post_id/comments` for the collection.
345
+ */
346
+ shallowResource(path: string, controller: ControllerAction[0]): RouteResource;
184
347
  /**
185
348
  * Create a route group with shared configuration.
186
349
  *
@@ -205,7 +368,7 @@ export declare class Router {
205
368
  /** Create a view/redirect route shortcut. */
206
369
  on(path: string): OnRouteBuilder;
207
370
  /** Set a global param matcher (applied to all routes). */
208
- where(param: string, matcher: ParamMatcher | RegExp): this;
371
+ where(param: string, matcher: ParamMatcher | RegExp | string): this;
209
372
  /** Find a matching route, extracting :param values and validating matchers. */
210
373
  match(method: string, path: string, host?: string): MatchResult | undefined;
211
374
  /**
@@ -219,6 +382,17 @@ export declare class Router {
219
382
  * Retained as a thin alias so existing callers keep working.
220
383
  */
221
384
  makeUrl(name: string, params?: Record<string, string>): string;
385
+ /** @internal Inject the APP_KEY-backed signed-URL helper (wired by the Ignitor). */
386
+ setSignedUrl(signedUrl: SignedUrl): void;
387
+ /**
388
+ * Generate a tamper-proof signed URL for a named route (AdonisJS
389
+ * `makeSignedUrl`). Delegates to the {@link SignedUrl} helper: appends an HMAC
390
+ * `signature`, plus a signed `expires` timestamp when `expiresIn` is given.
391
+ * Verified on the request side by `request.hasValidSignature()`.
392
+ *
393
+ * Requires an APP_KEY-backed signer (registered when `APP_KEY` is set).
394
+ */
395
+ makeSignedUrl(name: string, params?: Record<string, string>, options?: SignedUrlOptions): string;
222
396
  /**
223
397
  * Map of every NAMED route's `name` → path pattern, e.g.
224
398
  * `{ 'users.show': '/users/:id' }`. Serialize this into a page so a
@@ -227,7 +401,24 @@ export declare class Router {
227
401
  * the server. Powers the aurora client URL helper.
228
402
  */
229
403
  namedManifest(): Record<string, string>;
230
- /** Get all registered routes (for OpenAPI generation, introspection). */
404
+ /**
405
+ * Generate a TypeScript source string typing every named route and its
406
+ * params (AdonisJS `generateTypes`) — a `RouteName` union plus a
407
+ * `RouteParams` map inferred from each pattern's `:param` segments. Write it
408
+ * to a `.d.ts` so `urlFor(name, params)` is type-checked. Returns the source;
409
+ * the caller decides where to persist it.
410
+ */
411
+ generateTypes(): string;
412
+ /**
413
+ * Find a registered route by name or exact pattern (AdonisJS `router.find`).
414
+ * Returns null when nothing matches. Soft-deleted routes are ignored.
415
+ */
416
+ find(identifier: string): RouteDefinition | null;
417
+ /** Like {@link find} but throws when the route is absent (AdonisJS `findOrFail`). */
418
+ findOrFail(identifier: string): RouteDefinition;
419
+ /** True when a route with the given name or pattern exists (AdonisJS `router.has`). */
420
+ has(identifier: string): boolean;
421
+ /** Get all registered (non-deleted) routes (for OpenAPI generation, introspection). */
231
422
  getRoutes(): RouteDefinition[];
232
423
  /**
233
424
  * Clear all registered routes AND registries (used by hot-reload). Router
@@ -238,4 +429,5 @@ export declare class Router {
238
429
  clear(): void;
239
430
  get routeCount(): number;
240
431
  }
432
+ export {};
241
433
  //# sourceMappingURL=Router.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/router/Router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/router/Router.ts"],"names":[],"mappings":"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"}