@rudderjs/router 1.3.2 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,20 @@
1
+ import { ZodType } from 'zod';
2
+ import { type MiddlewareHandler } from '@rudderjs/contracts';
3
+ /**
4
+ * Build a middleware that validates `req.body` against a Zod schema.
5
+ *
6
+ * - On success, `req.body` is **replaced in place** with the parsed result.
7
+ * This mirrors `buildQueryValidator`'s behavior so `z.coerce.*`,
8
+ * `z.transform()`, and `.default()` work end-to-end: the handler sees
9
+ * the parsed shape, not the raw JSON.
10
+ * - On failure, throws `ValidationError` (rendered as HTTP 422 by core's
11
+ * exception handler). The error map mirrors FormRequest's shape:
12
+ * `{ [path]: string[] }`, with top-level issues under `'root'`.
13
+ *
14
+ * Used by `RouteBuilder.body(schema)` and the `{ body: schema }` opts form
15
+ * on `Router.get/post/etc`. Server adapters populate `req.body` from JSON
16
+ * and form-encoded payloads before middleware runs; this validator only
17
+ * reads + replaces the already-parsed value.
18
+ */
19
+ export declare function buildBodyValidator(schema: ZodType): MiddlewareHandler;
20
+ //# sourceMappingURL=body-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"body-validator.d.ts","sourceRoot":"","sources":["../src/body-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,KAAK,CAAA;AACvC,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAE7E;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,iBAAiB,CASrE"}
@@ -0,0 +1,37 @@
1
+ import { ValidationError } from '@rudderjs/contracts';
2
+ /**
3
+ * Build a middleware that validates `req.body` against a Zod schema.
4
+ *
5
+ * - On success, `req.body` is **replaced in place** with the parsed result.
6
+ * This mirrors `buildQueryValidator`'s behavior so `z.coerce.*`,
7
+ * `z.transform()`, and `.default()` work end-to-end: the handler sees
8
+ * the parsed shape, not the raw JSON.
9
+ * - On failure, throws `ValidationError` (rendered as HTTP 422 by core's
10
+ * exception handler). The error map mirrors FormRequest's shape:
11
+ * `{ [path]: string[] }`, with top-level issues under `'root'`.
12
+ *
13
+ * Used by `RouteBuilder.body(schema)` and the `{ body: schema }` opts form
14
+ * on `Router.get/post/etc`. Server adapters populate `req.body` from JSON
15
+ * and form-encoded payloads before middleware runs; this validator only
16
+ * reads + replaces the already-parsed value.
17
+ */
18
+ export function buildBodyValidator(schema) {
19
+ return async (req, _res, next) => {
20
+ const result = schema.safeParse(req.body);
21
+ if (!result.success) {
22
+ throw new ValidationError(zodIssuesToErrors(result.error));
23
+ }
24
+ ;
25
+ req.body = result.data;
26
+ await next();
27
+ };
28
+ }
29
+ function zodIssuesToErrors(err) {
30
+ const errors = {};
31
+ for (const issue of err.issues) {
32
+ const key = issue.path.join('.') || 'root';
33
+ errors[key] = [...(errors[key] ?? []), issue.message];
34
+ }
35
+ return errors;
36
+ }
37
+ //# sourceMappingURL=body-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"body-validator.js","sourceRoot":"","sources":["../src/body-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAA0B,MAAM,qBAAqB,CAAA;AAE7E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAe;IAChD,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACzC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAC5D,CAAC;QACD,CAAC;QAAC,GAAyB,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QAC9C,MAAM,IAAI,EAAE,CAAA;IACd,CAAC,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAa;IACtC,MAAM,MAAM,GAA6B,EAAE,CAAA;IAC3C,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAA;QAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IACvD,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,19 +1,37 @@
1
1
  import 'reflect-metadata';
2
2
  import type { ServerAdapter, RouteDefinition, RouteHandler, MiddlewareHandler, HttpMethod, RouteGroup } from '@rudderjs/contracts';
3
3
  import type { ZodType, z } from 'zod';
4
- import type { TypedHandler } from './typed-routes.js';
4
+ import type { TypedHandler, ExtractParams } from './typed-routes.js';
5
5
  export type { ExtractParams, TypedRequest, TypedHandler } from './typed-routes.js';
6
+ /** Augment this interface to type-check `route(name, params)` calls. */
7
+ export interface RouteRegistry {
8
+ }
9
+ /**
10
+ * Params type for a given route name. When the name is in the registry and
11
+ * its value is a string path, extract `:params` and widen each to
12
+ * `string | number`. Otherwise fall through to a loose record so
13
+ * runtime-registered names + unaugmented apps keep working.
14
+ *
15
+ * Always intersected with `Record<string, string | number>` so callers can
16
+ * pass extra keys that become query-string parameters.
17
+ */
18
+ export type ParamsForName<N> = N extends keyof RouteRegistry ? RouteRegistry[N] extends string ? {
19
+ [K in keyof ExtractParams<RouteRegistry[N]>]: string | number;
20
+ } & Record<string, string | number> : Record<string, string | number> : Record<string, string | number>;
6
21
  /**
7
22
  * Per-route options accepted in the 3-arg form of `Router.get/post/etc`.
8
23
  *
9
24
  * The 3-arg form exists so the handler closure can be typed against the
10
- * Zod-inferred query shape *at write time* — the bare 2-arg form types
11
- * `req.query` as `Record<string, string>`, and chaining `.query(schema)`
12
- * after that can't go back and re-type the closure.
25
+ * Zod-inferred query/body shapes *at write time* — the bare 2-arg form
26
+ * types `req.query` as `Record<string, string>` and `req.body` as
27
+ * `unknown`, and chaining `.query()` / `.body()` after that can't go back
28
+ * and re-type the closure.
13
29
  */
14
- export interface RouteOptions<S extends ZodType = ZodType> {
30
+ export interface RouteOptions<Q extends ZodType = ZodType, B extends ZodType = ZodType> {
15
31
  /** Zod schema to validate `req.query` against. Parsed result replaces `req.query`. */
16
- query?: S;
32
+ query?: Q;
33
+ /** Zod schema to validate `req.body` against. Parsed result replaces `req.body`. */
34
+ body?: B;
17
35
  /** Per-route middleware (prepended before the handler). */
18
36
  middleware?: MiddlewareHandler[];
19
37
  }
@@ -75,12 +93,14 @@ export declare const ROUTE_PATTERN_ULID = "[0-7][0-9A-HJKMNP-TV-Z]{25}";
75
93
  * router.get('/users/:id', handler).name('users.show').whereNumber('id')
76
94
  * route('users.show', { id: 1 }) // → '/users/1'
77
95
  */
78
- export declare class RouteBuilder<P extends string = string, // path literal — preserved for .query() / future .body() chains
79
- Q = Record<string, string>> {
96
+ export declare class RouteBuilder<P extends string = string, // path literal — preserved for .query() / .body() chains
97
+ Q = Record<string, string>, // query shape — replaced by .query(schema) overload
98
+ B = unknown> {
80
99
  private readonly definition;
81
100
  private readonly _router;
82
101
  readonly _path: P;
83
102
  readonly _query: Q;
103
+ readonly _body: B;
84
104
  constructor(definition: RouteDefinition, _router: Router);
85
105
  /** Assign a name to this route for use with `route()` and `Url.signedRoute()`. */
86
106
  name(n: string): this;
@@ -157,7 +177,28 @@ Q = Record<string, string>> {
157
177
  * // Runtime-only (validation runs, but `req.query.page` is still typed string)
158
178
  * Route.get('/users', (req) => req.query.page).query(z.object({ page: z.coerce.number() }))
159
179
  */
160
- query<S extends ZodType>(schema: S): RouteBuilder<P, z.infer<S>>;
180
+ query<S extends ZodType>(schema: S): RouteBuilder<P, z.infer<S>, B>;
181
+ /**
182
+ * Install a Zod validator on `req.body` for this route. Mirrors `.query()`:
183
+ * the parsed result replaces `req.body` so the handler sees the inferred
184
+ * shape end-to-end (including `z.coerce.*` / `z.transform()` / `.default()`).
185
+ *
186
+ * **Note on typing:** the handler was already passed (and typed) when this
187
+ * route was registered. Chaining `.body(schema)` AFTER cannot re-type a
188
+ * closure that's already been bound. The returned `RouteBuilder<P, Q, z.infer<S>>`
189
+ * carries the inferred body for downstream chain methods, but the
190
+ * already-registered handler still sees its original body typing.
191
+ *
192
+ * For type-safe body at the handler closure, use the opts-object form:
193
+ *
194
+ * @example
195
+ * // Type-safe (handler closure sees `req.body.title: string`)
196
+ * Route.post('/posts', { body: z.object({ title: z.string() }) }, (req) => req.body.title)
197
+ *
198
+ * // Runtime-only (validation runs, but `req.body` is still typed unknown)
199
+ * Route.post('/posts', (req) => req.body).body(z.object({ title: z.string() }))
200
+ */
201
+ body<S extends ZodType>(schema: S): RouteBuilder<P, Q, z.infer<S>>;
161
202
  }
162
203
  /**
163
204
  * Options accepted by `router.group(opts, fn)`. Each route registered inside
@@ -279,32 +320,79 @@ export declare class Router {
279
320
  /** Manually register a route. Returns `this` for bulk registration. */
280
321
  add(method: HttpMethod, path: string, handler: RouteHandler, middleware?: MiddlewareHandler[]): this;
281
322
  get<P extends string>(path: P, handler: TypedHandler<P>, middleware?: MiddlewareHandler[]): RouteBuilder<P>;
282
- get<P extends string, S extends ZodType>(path: P, opts: RouteOptions<S> & {
283
- query: S;
284
- }, handler: TypedHandler<P, z.infer<S>>): RouteBuilder<P, z.infer<S>>;
323
+ get<P extends string, Q extends ZodType, B extends ZodType>(path: P, opts: RouteOptions<Q, B> & {
324
+ query: Q;
325
+ body: B;
326
+ }, handler: TypedHandler<P, z.infer<Q>, z.infer<B>>): RouteBuilder<P, z.infer<Q>, z.infer<B>>;
327
+ get<P extends string, Q extends ZodType>(path: P, opts: RouteOptions<Q> & {
328
+ query: Q;
329
+ }, handler: TypedHandler<P, z.infer<Q>>): RouteBuilder<P, z.infer<Q>>;
330
+ get<P extends string, B extends ZodType>(path: P, opts: RouteOptions<ZodType, B> & {
331
+ body: B;
332
+ }, handler: TypedHandler<P, Record<string, string>, z.infer<B>>): RouteBuilder<P, Record<string, string>, z.infer<B>>;
285
333
  post<P extends string>(path: P, handler: TypedHandler<P>, middleware?: MiddlewareHandler[]): RouteBuilder<P>;
286
- post<P extends string, S extends ZodType>(path: P, opts: RouteOptions<S> & {
287
- query: S;
288
- }, handler: TypedHandler<P, z.infer<S>>): RouteBuilder<P, z.infer<S>>;
334
+ post<P extends string, Q extends ZodType, B extends ZodType>(path: P, opts: RouteOptions<Q, B> & {
335
+ query: Q;
336
+ body: B;
337
+ }, handler: TypedHandler<P, z.infer<Q>, z.infer<B>>): RouteBuilder<P, z.infer<Q>, z.infer<B>>;
338
+ post<P extends string, Q extends ZodType>(path: P, opts: RouteOptions<Q> & {
339
+ query: Q;
340
+ }, handler: TypedHandler<P, z.infer<Q>>): RouteBuilder<P, z.infer<Q>>;
341
+ post<P extends string, B extends ZodType>(path: P, opts: RouteOptions<ZodType, B> & {
342
+ body: B;
343
+ }, handler: TypedHandler<P, Record<string, string>, z.infer<B>>): RouteBuilder<P, Record<string, string>, z.infer<B>>;
289
344
  put<P extends string>(path: P, handler: TypedHandler<P>, middleware?: MiddlewareHandler[]): RouteBuilder<P>;
290
- put<P extends string, S extends ZodType>(path: P, opts: RouteOptions<S> & {
291
- query: S;
292
- }, handler: TypedHandler<P, z.infer<S>>): RouteBuilder<P, z.infer<S>>;
345
+ put<P extends string, Q extends ZodType, B extends ZodType>(path: P, opts: RouteOptions<Q, B> & {
346
+ query: Q;
347
+ body: B;
348
+ }, handler: TypedHandler<P, z.infer<Q>, z.infer<B>>): RouteBuilder<P, z.infer<Q>, z.infer<B>>;
349
+ put<P extends string, Q extends ZodType>(path: P, opts: RouteOptions<Q> & {
350
+ query: Q;
351
+ }, handler: TypedHandler<P, z.infer<Q>>): RouteBuilder<P, z.infer<Q>>;
352
+ put<P extends string, B extends ZodType>(path: P, opts: RouteOptions<ZodType, B> & {
353
+ body: B;
354
+ }, handler: TypedHandler<P, Record<string, string>, z.infer<B>>): RouteBuilder<P, Record<string, string>, z.infer<B>>;
293
355
  patch<P extends string>(path: P, handler: TypedHandler<P>, middleware?: MiddlewareHandler[]): RouteBuilder<P>;
294
- patch<P extends string, S extends ZodType>(path: P, opts: RouteOptions<S> & {
295
- query: S;
296
- }, handler: TypedHandler<P, z.infer<S>>): RouteBuilder<P, z.infer<S>>;
356
+ patch<P extends string, Q extends ZodType, B extends ZodType>(path: P, opts: RouteOptions<Q, B> & {
357
+ query: Q;
358
+ body: B;
359
+ }, handler: TypedHandler<P, z.infer<Q>, z.infer<B>>): RouteBuilder<P, z.infer<Q>, z.infer<B>>;
360
+ patch<P extends string, Q extends ZodType>(path: P, opts: RouteOptions<Q> & {
361
+ query: Q;
362
+ }, handler: TypedHandler<P, z.infer<Q>>): RouteBuilder<P, z.infer<Q>>;
363
+ patch<P extends string, B extends ZodType>(path: P, opts: RouteOptions<ZodType, B> & {
364
+ body: B;
365
+ }, handler: TypedHandler<P, Record<string, string>, z.infer<B>>): RouteBuilder<P, Record<string, string>, z.infer<B>>;
297
366
  delete<P extends string>(path: P, handler: TypedHandler<P>, middleware?: MiddlewareHandler[]): RouteBuilder<P>;
298
- delete<P extends string, S extends ZodType>(path: P, opts: RouteOptions<S> & {
299
- query: S;
300
- }, handler: TypedHandler<P, z.infer<S>>): RouteBuilder<P, z.infer<S>>;
367
+ delete<P extends string, Q extends ZodType, B extends ZodType>(path: P, opts: RouteOptions<Q, B> & {
368
+ query: Q;
369
+ body: B;
370
+ }, handler: TypedHandler<P, z.infer<Q>, z.infer<B>>): RouteBuilder<P, z.infer<Q>, z.infer<B>>;
371
+ delete<P extends string, Q extends ZodType>(path: P, opts: RouteOptions<Q> & {
372
+ query: Q;
373
+ }, handler: TypedHandler<P, z.infer<Q>>): RouteBuilder<P, z.infer<Q>>;
374
+ delete<P extends string, B extends ZodType>(path: P, opts: RouteOptions<ZodType, B> & {
375
+ body: B;
376
+ }, handler: TypedHandler<P, Record<string, string>, z.infer<B>>): RouteBuilder<P, Record<string, string>, z.infer<B>>;
301
377
  all<P extends string>(path: P, handler: TypedHandler<P>, middleware?: MiddlewareHandler[]): RouteBuilder<P>;
302
- all<P extends string, S extends ZodType>(path: P, opts: RouteOptions<S> & {
303
- query: S;
304
- }, handler: TypedHandler<P, z.infer<S>>): RouteBuilder<P, z.infer<S>>;
378
+ all<P extends string, Q extends ZodType, B extends ZodType>(path: P, opts: RouteOptions<Q, B> & {
379
+ query: Q;
380
+ body: B;
381
+ }, handler: TypedHandler<P, z.infer<Q>, z.infer<B>>): RouteBuilder<P, z.infer<Q>, z.infer<B>>;
382
+ all<P extends string, Q extends ZodType>(path: P, opts: RouteOptions<Q> & {
383
+ query: Q;
384
+ }, handler: TypedHandler<P, z.infer<Q>>): RouteBuilder<P, z.infer<Q>>;
385
+ all<P extends string, B extends ZodType>(path: P, opts: RouteOptions<ZodType, B> & {
386
+ body: B;
387
+ }, handler: TypedHandler<P, Record<string, string>, z.infer<B>>): RouteBuilder<P, Record<string, string>, z.infer<B>>;
305
388
  /**
306
- * Internal dispatcher for the two-overload shorthand methods. Decides
389
+ * Internal dispatcher for the four-overload shorthand methods. Decides
307
390
  * between bare and opts form by whether the second arg is callable.
391
+ *
392
+ * Middleware order in the opts form: query validator (if any) → body
393
+ * validator (if any) → user middleware. Validators run first so the
394
+ * handler's typed `req.query` / `req.body` are parsed before any
395
+ * user-supplied middleware runs.
308
396
  */
309
397
  private _verb;
310
398
  /**
@@ -383,7 +471,34 @@ export declare const Route: Router;
383
471
  * @example
384
472
  * route('users.show', { id: 42 }) // '/users/42'
385
473
  * route('search', { q: 'hello', page: 2 }) // '/search?q=hello&page=2'
474
+ *
475
+ * ## Type-safe names (opt-in)
476
+ *
477
+ * Augment the `RouteRegistry` interface in a `.d.ts` somewhere in your app:
478
+ *
479
+ * ```ts
480
+ * declare module '@rudderjs/router' {
481
+ * interface RouteRegistry {
482
+ * 'users.show': '/users/:id'
483
+ * 'comments.show': '/posts/:slug/comments/:cid'
484
+ * }
485
+ * }
486
+ * ```
487
+ *
488
+ * Calls to `route()` now type-check against the registered paths:
489
+ *
490
+ * ```ts
491
+ * route('users.show', { id: 1 }) // ✓
492
+ * route('users.show', { id: 1, page: 2 }) // ✓ — extras allowed (query string)
493
+ * route('users.show', {}) // ✗ TS: missing 'id'
494
+ * route('comments.show', { slug: 'x' }) // ✗ TS: missing 'cid'
495
+ * route('users.shwo', { id: 1 }) // ✗ TS: unknown route name
496
+ * ```
497
+ *
498
+ * When `RouteRegistry` is empty (default, no augmentation), `route()` accepts any
499
+ * `string` name with a loose `Record<string, string | number>` params object —
500
+ * today's behavior, fully backward compatible.
386
501
  */
387
- export declare function route(name: string, params?: Record<string, string | number>): string;
502
+ export declare function route<N extends string>(name: N, params?: ParamsForName<N>): string;
388
503
  export { Url, ValidateSignature } from './url-signing.js';
389
504
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import 'reflect-metadata';
2
2
  import { buildQueryValidator } from './query-validator.js';
3
+ import { buildBodyValidator } from './body-validator.js';
3
4
  // ─── Route Group Context ──────────────────────────────────
4
5
  //
5
6
  // `runWithGroup(group, fn)` sets the current group for the duration of `fn`.
@@ -340,6 +341,31 @@ export class RouteBuilder {
340
341
  this.definition.middleware.unshift(buildQueryValidator(schema));
341
342
  return this;
342
343
  }
344
+ /**
345
+ * Install a Zod validator on `req.body` for this route. Mirrors `.query()`:
346
+ * the parsed result replaces `req.body` so the handler sees the inferred
347
+ * shape end-to-end (including `z.coerce.*` / `z.transform()` / `.default()`).
348
+ *
349
+ * **Note on typing:** the handler was already passed (and typed) when this
350
+ * route was registered. Chaining `.body(schema)` AFTER cannot re-type a
351
+ * closure that's already been bound. The returned `RouteBuilder<P, Q, z.infer<S>>`
352
+ * carries the inferred body for downstream chain methods, but the
353
+ * already-registered handler still sees its original body typing.
354
+ *
355
+ * For type-safe body at the handler closure, use the opts-object form:
356
+ *
357
+ * @example
358
+ * // Type-safe (handler closure sees `req.body.title: string`)
359
+ * Route.post('/posts', { body: z.object({ title: z.string() }) }, (req) => req.body.title)
360
+ *
361
+ * // Runtime-only (validation runs, but `req.body` is still typed unknown)
362
+ * Route.post('/posts', (req) => req.body).body(z.object({ title: z.string() }))
363
+ */
364
+ body(schema) {
365
+ // Prepend so the validator runs before any other per-route middleware.
366
+ this.definition.middleware.unshift(buildBodyValidator(schema));
367
+ return this;
368
+ }
343
369
  }
344
370
  // ─── Route Model Binding ───────────────────────────────────
345
371
  import { buildBindingMiddleware, } from './binding-middleware.js';
@@ -522,6 +548,9 @@ export class Router {
522
548
  this.routes.push(def);
523
549
  return this;
524
550
  }
551
+ // Impl signature — `b` is intentionally `unknown` so all four typed
552
+ // overload-handler shapes (bare / query / body / both) are assignment-
553
+ // compatible. The runtime cast back to `RouteHandler` happens in `_verb`.
525
554
  get(path, a, b) { return this._verb('GET', path, a, b); }
526
555
  post(path, a, b) { return this._verb('POST', path, a, b); }
527
556
  put(path, a, b) { return this._verb('PUT', path, a, b); }
@@ -529,20 +558,27 @@ export class Router {
529
558
  delete(path, a, b) { return this._verb('DELETE', path, a, b); }
530
559
  all(path, a, b) { return this._verb('ALL', path, a, b); }
531
560
  /**
532
- * Internal dispatcher for the two-overload shorthand methods. Decides
561
+ * Internal dispatcher for the four-overload shorthand methods. Decides
533
562
  * between bare and opts form by whether the second arg is callable.
563
+ *
564
+ * Middleware order in the opts form: query validator (if any) → body
565
+ * validator (if any) → user middleware. Validators run first so the
566
+ * handler's typed `req.query` / `req.body` are parsed before any
567
+ * user-supplied middleware runs.
534
568
  */
535
569
  _verb(method, path, a, b) {
536
570
  if (typeof a === 'function') {
537
571
  // Bare form: (path, handler, middleware?)
538
572
  return this._rb(method, path, a, b);
539
573
  }
540
- // Opts form: (path, { query, middleware }, handler)
574
+ // Opts form: (path, { query, body, middleware }, handler)
541
575
  const opts = a;
542
576
  const handler = b;
543
577
  const mw = [];
544
578
  if (opts.query)
545
579
  mw.push(buildQueryValidator(opts.query));
580
+ if (opts.body)
581
+ mw.push(buildBodyValidator(opts.body));
546
582
  if (opts.middleware)
547
583
  mw.push(...opts.middleware);
548
584
  return this._rb(method, path, handler, mw);
@@ -733,18 +769,6 @@ export const router = _routerGlobal[ROUTER_KEY] ?? (() => {
733
769
  })();
734
770
  /** Alias for router — Laravel-style capitalised name */
735
771
  export const Route = router;
736
- // ─── route() helper ────────────────────────────────────────
737
- /**
738
- * Generate a URL from a named route.
739
- *
740
- * - Route parameters (`:id`) are substituted from `params`.
741
- * - Optional parameters (`:id?`) are omitted when not provided.
742
- * - Unused params are appended as a query string.
743
- *
744
- * @example
745
- * route('users.show', { id: 42 }) // '/users/42'
746
- * route('search', { q: 'hello', page: 2 }) // '/search?q=hello&page=2'
747
- */
748
772
  export function route(name, params = {}) {
749
773
  const path = router.getNamedRoute(name);
750
774
  if (path === undefined)
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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"}
@@ -0,0 +1,10 @@
1
+ declare module './index.js' {
2
+ interface RouteRegistry {
3
+ 'users.show': '/users/:id';
4
+ 'comments.show': '/posts/:slug/comments/:cid';
5
+ 'files.show': '/files/:name?';
6
+ 'health': '/health';
7
+ }
8
+ }
9
+ export {};
10
+ //# sourceMappingURL=typed-route-gen.test-d.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-route-gen.test-d.d.ts","sourceRoot":"","sources":["../src/typed-route-gen.test-d.ts"],"names":[],"mappings":"AAuBA,OAAO,QAAQ,YAAY,CAAC;IAC1B,UAAU,aAAa;QACrB,YAAY,EAAU,YAAY,CAAA;QAClC,eAAe,EAAO,4BAA4B,CAAA;QAClD,YAAY,EAAU,eAAe,CAAA;QACrC,QAAQ,EAAc,SAAS,CAAA;KAChC;CACF;AAwCD,OAAO,EAAE,CAAA"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Type-only tests for the type-safe `route()` URL generator (Phase 3 of the
3
+ * DX-completion roadmap). The runtime behavior is covered by existing
4
+ * `index.test.ts` and `query-validator.test.ts` cases — this file verifies
5
+ * the TS inference path.
6
+ *
7
+ * Compiled by `pnpm typecheck`; failing assertions surface as tsc errors.
8
+ * Excluded from `node --test` by the `*.test-d.js` glob.
9
+ *
10
+ * The `declare module` block below populates the registry for the duration
11
+ * of the package's typecheck pass. Apps populate it the same way in their
12
+ * own `env.d.ts`.
13
+ *
14
+ * **Soft name strictness**: the name argument is typed `string`, so the
15
+ * framework's own runtime-registered routes (`rb.users.show` in
16
+ * `index.test.ts`) still compile. When the supplied name matches a key in
17
+ * `RouteRegistry`, the params arg narrows to the typed shape — that's the
18
+ * Laravel-parity DX win. Names not in the registry get the loose params
19
+ * record; typos fall through to that path and surface at runtime instead
20
+ * of compile time. See the design note in `index.ts` for why.
21
+ */
22
+ import { route } from './index.js';
23
+ // ─── Positive cases — required + optional + extras ─────────
24
+ route('users.show', { id: 1 });
25
+ route('users.show', { id: '42' }); // string OK
26
+ route('users.show', { id: 1, page: 2 }); // extras → query string
27
+ route('users.show', { id: 1, q: 'hello', sort: 'desc' }); // multiple extras
28
+ route('comments.show', { slug: 'hello-world', cid: 7 }); // two required params
29
+ route('files.show', { name: 'avatar.png' }); // optional name supplied
30
+ route('files.show', {}); // optional name omitted — OK
31
+ route('health', {}); // no params — empty obj OK
32
+ route('health'); // no params — omit entirely
33
+ // Names not in the registry compile (framework-internal + dev-loop reality).
34
+ // Typos in registered names fall through to this loose path — caught at
35
+ // runtime by the `getNamedRoute(name) === undefined` check, not by TS.
36
+ route('admin.dashboard');
37
+ route('admin.dashboard', { tab: 'overview' });
38
+ route('users.shwo', { id: 1 }); // typo — runtime-only failure
39
+ // ─── Negative cases — declared via @ts-expect-error ────────
40
+ //
41
+ // These all use REGISTERED names, where TS narrows params strictly.
42
+ // @ts-expect-error missing required param `id`
43
+ route('users.show', {});
44
+ // @ts-expect-error missing required param `cid` on a 2-param path
45
+ route('comments.show', { slug: 'x' });
46
+ // @ts-expect-error `id` is `string | number`, not `boolean`
47
+ route('users.show', { id: true });
48
+ // @ts-expect-error `id` is `string | number`, not `null`
49
+ route('users.show', { id: null });
50
+ // @ts-expect-error param must be number/string, not object
51
+ route('users.show', { id: { nested: 1 } });
52
+ //# sourceMappingURL=typed-route-gen.test-d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-route-gen.test-d.js","sourceRoot":"","sources":["../src/typed-route-gen.test-d.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAWlC,8DAA8D;AAE9D,KAAK,CAAC,YAAY,EAAK,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;AACjC,KAAK,CAAC,YAAY,EAAK,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA,CAA4B,YAAY;AAC5E,KAAK,CAAC,YAAY,EAAK,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA,CAAuB,wBAAwB;AACzF,KAAK,CAAC,YAAY,EAAK,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA,CAAM,kBAAkB;AACnF,KAAK,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA,CAAU,sBAAsB;AACvF,KAAK,CAAC,YAAY,EAAK,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA,CAAmB,yBAAyB;AAC1F,KAAK,CAAC,YAAY,EAAK,EAAE,CAAC,CAAA,CAAuC,6BAA6B;AAC9F,KAAK,CAAC,QAAQ,EAAS,EAAE,CAAC,CAAA,CAAuC,2BAA2B;AAC5F,KAAK,CAAC,QAAQ,CAAC,CAAA,CAAkD,4BAA4B;AAE7F,6EAA6E;AAC7E,wEAAwE;AACxE,uEAAuE;AACvE,KAAK,CAAC,iBAAiB,CAAC,CAAA;AACxB,KAAK,CAAC,iBAAiB,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAA;AAC7C,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA,CAAmC,8BAA8B;AAE/F,8DAA8D;AAC9D,EAAE;AACF,oEAAoE;AAEpE,+CAA+C;AAC/C,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;AAEvB,kEAAkE;AAClE,KAAK,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;AAErC,4DAA4D;AAC5D,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AAEjC,yDAAyD;AACzD,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AAEjC,2DAA2D;AAC3D,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA"}
@@ -65,19 +65,21 @@ type Prettify<T> = {
65
65
  [K in keyof T]: T[K];
66
66
  } & {};
67
67
  /**
68
- * `AppRequest` with `params` and `query` overridden to the inferred shapes.
69
- * All other fields (including module-augmented `user`, `session`, `token`)
70
- * are inherited via `Omit + extend`.
68
+ * `AppRequest` with `params`, `query`, and `body` overridden to the inferred
69
+ * shapes. All other fields (including module-augmented `user`, `session`,
70
+ * `token`) are inherited via `Omit + extend`.
71
71
  */
72
- export interface TypedRequest<P extends Record<string, string | undefined> = Record<string, string>, Q = Record<string, string>> extends Omit<AppRequest, 'params' | 'query'> {
72
+ export interface TypedRequest<P extends Record<string, string | undefined> = Record<string, string>, Q = Record<string, string>, B = unknown> extends Omit<AppRequest, 'params' | 'query' | 'body'> {
73
73
  params: P;
74
74
  query: Q;
75
+ body: B;
75
76
  }
76
77
  /**
77
- * Handler whose `req.params` is derived from the literal path `P`, and whose
78
+ * Handler whose `req.params` is derived from the literal path `P`, whose
78
79
  * `req.query` is `Q` (defaulted to `Record<string, string>`; replaced via
79
- * `{ query: schema }` opts in the route declaration).
80
+ * `{ query: schema }` opts), and whose `req.body` is `B` (defaulted to
81
+ * `unknown`; replaced via `{ body: schema }` opts).
80
82
  */
81
- export type TypedHandler<P extends string, Q = Record<string, string>> = (req: TypedRequest<ExtractParams<P>, Q>, res: AppResponse) => unknown | Promise<unknown>;
83
+ export type TypedHandler<P extends string, Q = Record<string, string>, B = unknown> = (req: TypedRequest<ExtractParams<P>, Q, B>, res: AppResponse) => unknown | Promise<unknown>;
82
84
  export {};
83
85
  //# sourceMappingURL=typed-routes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typed-routes.d.ts","sourceRoot":"","sources":["../src/typed-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typed-routes.d.ts","sourceRoot":"","sources":["../src/typed-routes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"typed-routes.test-d.d.ts","sourceRoot":"","sources":["../src/typed-routes.test-d.ts"],"names":[],"mappings":"AAgHA,OAAO,EAAE,CAAA"}
1
+ {"version":3,"file":"typed-routes.test-d.d.ts","sourceRoot":"","sources":["../src/typed-routes.test-d.ts"],"names":[],"mappings":"AA+KA,OAAO,EAAE,CAAA"}
@@ -66,6 +66,43 @@ router.get('/search', { query: z.object({ q: z.string() }) }, (req) => {
66
66
  const q = req.query.q;
67
67
  return q;
68
68
  });
69
+ // ─── Opts form: req.body inferred from Zod schema ──────────
70
+ router.post('/posts', { body: z.object({ title: z.string(), views: z.coerce.number() }) }, (req) => {
71
+ const title = req.body.title;
72
+ const views = req.body.views;
73
+ return { title, views };
74
+ });
75
+ router.post('/posts', { body: z.object({ title: z.string() }) }, (req) => {
76
+ // @ts-expect-error `slug` is not in the body schema
77
+ return req.body.slug;
78
+ });
79
+ router.post('/posts', { body: z.object({ title: z.string() }) }, (req) => {
80
+ // @ts-expect-error `title` is `string`, not `number`
81
+ const title = req.body.title;
82
+ return title;
83
+ });
84
+ // ─── Opts form: query + body together — both inferred ──────
85
+ router.post('/posts', {
86
+ query: z.object({ draft: z.coerce.boolean() }),
87
+ body: z.object({ title: z.string() }),
88
+ }, (req) => {
89
+ const draft = req.query.draft;
90
+ const title = req.body.title;
91
+ return { draft, title };
92
+ });
93
+ // ─── .body() chain — narrows the returned RouteBuilder's B ─
94
+ const _bodyChained = router
95
+ .post('/posts', () => null)
96
+ .body(z.object({ title: z.string() }));
97
+ // Just confirm the chain compiles; runtime semantics covered by body-validator.test.ts.
98
+ void _bodyChained;
99
+ // ─── Bare form: req.body remains `unknown` ─────────────────
100
+ router.post('/posts', (req) => {
101
+ const body = req.body;
102
+ // @ts-expect-error `req.body` is `unknown`; can't dot-access without narrowing
103
+ void req.body.title;
104
+ return body;
105
+ });
69
106
  // ─── Other AppRequest fields still accessible ──────────────
70
107
  router.get('/health', (req) => {
71
108
  const method = req.method;
@@ -1 +1 @@
1
- {"version":3,"file":"typed-routes.test-d.js","sourceRoot":"","sources":["../src/typed-routes.test-d.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typed-routes.test-d.js","sourceRoot":"","sources":["../src/typed-routes.test-d.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rudderjs/router",
3
- "version": "1.3.2",
3
+ "version": "1.5.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -46,6 +46,6 @@
46
46
  "typecheck": "tsc --noEmit",
47
47
  "lint": "eslint src",
48
48
  "clean": "rm -rf dist",
49
- "test": "tsc -p tsconfig.test.json && node --test dist-test/index.test.js dist-test/resource.test.js dist-test/query-validator.test.js"
49
+ "test": "tsc -p tsconfig.test.json && node --test dist-test/index.test.js dist-test/resource.test.js dist-test/query-validator.test.js dist-test/body-validator.test.js"
50
50
  }
51
51
  }