@nifrajs/core 1.3.1 → 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 @@
1
+ {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../src/reflection.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,14 @@ export interface RouteSchema {
29
29
  * to tooling and coding agents. Like `response`, it is **not** validated at runtime (zero hot-path cost);
30
30
  * it's a compile-time + introspection contract. Example: `{ 404: NotFound, 409: Conflict }`. */
31
31
  readonly errors?: Readonly<Record<number, StandardSchemaV1>>;
32
+ /**
33
+ * Optional **SSE event contract**: the Standard Schema of each event's `data` payload on a
34
+ * streaming route (declared via `app.sse()`). Marks the route as a typed event stream — the
35
+ * typed client grows a `.subscribe()` for it, and the schema flows into reflection. Like
36
+ * `response`, it is **not** validated at runtime (zero hot-path cost); the server-side
37
+ * `stream.send()` is compile-time-checked against it instead.
38
+ */
39
+ readonly sse?: StandardSchemaV1;
32
40
  /**
33
41
  * Hook fired when the request fails `body`/`query` validation, before the handler runs. `kind` says
34
42
  * which input failed (`"body"` | `"query"`). Its return value selects one of three outcomes (may be async):
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/server/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/server/context.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,7 @@ type RouteInfoForOp<O extends OperationDef> = {
76
76
  readonly body: OpBody<O>;
77
77
  readonly output: OpResponse<O>;
78
78
  readonly errors: OpErrors<O>;
79
+ readonly sse: never;
79
80
  };
80
81
  /** Re-key the name-keyed ops into the `path → method → RouteInfo` registry. */
81
82
  export type RegistryFor<C extends ContractShape> = {
@@ -140,6 +141,7 @@ export type RegistryFromImpl<C extends ContractShape, H extends HandlersFor<C>>
140
141
  response: infer R extends StandardSchemaV1;
141
142
  } ? InferOutput<R> : H[K] extends AnyFn ? OutputOf<H[K]> : unknown;
142
143
  readonly errors: OpErrors<C[K]>;
144
+ readonly sse: never;
143
145
  };
144
146
  };
145
147
  };
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/server/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/server/contract.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/server/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAe,MAAM,qBAAqB,CAAA;AAI1D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAmIpC,MAAM,UAAU,GAAwB,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;AAExD;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAgC,QAAW;IACvE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAA;QACtC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,gBAAgB,CACxB,gBAAgB,EAChB,cAAc,IAAI,0BAA0B,EAAE,CAAC,MAAM,GAAG,CACzD,CAAA;QACH,CAAC;QACD,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,CAAC;YACnE,MAAM,IAAI,gBAAgB,CACxB,cAAc,EACd,cAAc,IAAI,iCAAiC,EAAE,CAAC,IAAI,GAAG,CAC9D,CAAA;QACH,CAAC;QACD,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,EAAE,CAAC,IAAI,EAAE,CAAA;QAClC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,EAAE,8BAA8B,GAAG,EAAE,CAAC,CAAA;QACpF,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACf,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AA4BD;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CACvB,QAAW,EACX,QAAW;IAEX,MAAM,GAAG,GAAG,IAAI,MAAM,EAAE,CAAA;IACxB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClD,kGAAkG;QAClG,gGAAgG;QAChG,qGAAqG;QACrG,qGAAqG;QACrG,yEAAyE;QACzE,MAAM,MAAM,GACV,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,CAAC,QAAQ,KAAK,SAAS;YAC1E,CAAC,CAAC;gBACE,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtD,GAAG,CAAC,EAAE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChE;YACH,CAAC,CAAC,SAAS,CAAA;QACf,GAAG,CAAC,QAAQ,CACV,EAAE,CAAC,MAAM,EACT,EAAE,CAAC,IAAI,EACP,MAAM,EACN,QAAQ,CAAC,IAAe,CAAgC,CACzD,CAAA;IACH,CAAC;IACD,gFAAgF;IAChF,6EAA6E;IAC7E,OAAO,GAAgD,CAAA;AACzD,CAAC"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/server/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAe,MAAM,qBAAqB,CAAA;AAI1D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAsIpC,MAAM,UAAU,GAAwB,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;AAExD;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAgC,QAAW;IACvE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAA;QACtC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,gBAAgB,CACxB,gBAAgB,EAChB,cAAc,IAAI,0BAA0B,EAAE,CAAC,MAAM,GAAG,CACzD,CAAA;QACH,CAAC;QACD,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,CAAC;YACnE,MAAM,IAAI,gBAAgB,CACxB,cAAc,EACd,cAAc,IAAI,iCAAiC,EAAE,CAAC,IAAI,GAAG,CAC9D,CAAA;QACH,CAAC;QACD,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,EAAE,CAAC,IAAI,EAAE,CAAA;QAClC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,EAAE,8BAA8B,GAAG,EAAE,CAAC,CAAA;QACpF,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACf,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AA8BD;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CACvB,QAAW,EACX,QAAW;IAEX,MAAM,GAAG,GAAG,IAAI,MAAM,EAAE,CAAA;IACxB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClD,kGAAkG;QAClG,gGAAgG;QAChG,qGAAqG;QACrG,qGAAqG;QACrG,yEAAyE;QACzE,MAAM,MAAM,GACV,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,CAAC,QAAQ,KAAK,SAAS;YAC1E,CAAC,CAAC;gBACE,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtD,GAAG,CAAC,EAAE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChE;YACH,CAAC,CAAC,SAAS,CAAA;QACf,GAAG,CAAC,QAAQ,CACV,EAAE,CAAC,MAAM,EACT,EAAE,CAAC,IAAI,EACP,MAAM,EACN,QAAQ,CAAC,IAAe,CAAgC,CACzD,CAAA;IACH,CAAC;IACD,gFAAgF;IAChF,6EAA6E;IAC7E,OAAO,GAAgD,CAAA;AACzD,CAAC"}
@@ -14,6 +14,9 @@ export interface RouteInfo {
14
14
  /** Union of the route's declared error-response body types (from `schema.errors`); `unknown` when the
15
15
  * route declares none. Surfaced by the typed client as the failure `errorData`. */
16
16
  readonly errors?: unknown;
17
+ /** The SSE event payload type (from `schema.sse`, declared via `app.sse()`); `never` for ordinary
18
+ * routes. The typed client keys `.subscribe()` availability and its event type off this. */
19
+ readonly sse?: unknown;
17
20
  }
18
21
  /** The accumulated, type-level map of every route on a Server: path → method → RouteInfo. */
19
22
  export type Registry = Record<string, Record<string, RouteInfo>>;
@@ -37,6 +40,10 @@ type RegistryErrors<S extends RouteSchema> = S extends {
37
40
  } ? {
38
41
  [K in keyof E]: E[K] extends StandardSchemaV1 ? InferOutput<E[K]> : never;
39
42
  }[keyof E] : unknown;
43
+ /** The SSE event payload type from a route's `sse` schema; `never` for ordinary routes. */
44
+ type RegistrySse<S extends RouteSchema> = S extends {
45
+ sse: infer E extends StandardSchemaV1;
46
+ } ? InferOutput<E> : never;
40
47
  /** Build a {@link RouteInfo} from a route's path, schema, and handler output type. */
41
48
  export type RouteInfoFor<Path extends string, S extends RouteSchema, Output> = {
42
49
  readonly params: Params<Path>;
@@ -44,6 +51,7 @@ export type RouteInfoFor<Path extends string, S extends RouteSchema, Output> = {
44
51
  readonly body: RegistryBody<S>;
45
52
  readonly output: RegistryOutput<S, Output>;
46
53
  readonly errors: RegistryErrors<S>;
54
+ readonly sse: RegistrySse<S>;
47
55
  };
48
56
  /** The client-visible output of a handler: its awaited return, minus raw `Response`. */
49
57
  export type OutputOf<H extends (...args: never[]) => unknown> = Exclude<Awaited<ReturnType<H>>, Response>;
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/server/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC1E,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAEvD;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IAKxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB;uFACmF;IACnF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,6FAA6F;AAC7F,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;AAEhE,qGAAqG;AACrG,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;AAEhD,KAAK,YAAY,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,SAAS,gBAAgB,CAAA;CAAE,GAC3F,WAAW,CAAC,CAAC,CAAC,GACd,KAAK,CAAA;AAET,KAAK,aAAa,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC,SAAS,gBAAgB,CAAA;CAAE,GAC7F,WAAW,CAAC,CAAC,CAAC,GACd,KAAK,CAAA;AAET;4FAC4F;AAC5F,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,EAAE,MAAM,IAAI,CAAC,SAAS;IAC7D,QAAQ,EAAE,MAAM,CAAC,SAAS,gBAAgB,CAAA;CAC3C,GACG,WAAW,CAAC,CAAC,CAAC,GACd,MAAM,CAAA;AAEV;+FAC+F;AAC/F,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS;IACrD,MAAM,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CACzD,GACG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK;CAAE,CAAC,MAAM,CAAC,CAAC,GACtF,OAAO,CAAA;AAEX,sFAAsF;AACtF,MAAM,MAAM,YAAY,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,SAAS,WAAW,EAAE,MAAM,IAAI;IAC7E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IAChC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;IAC9B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IAC1C,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;CACnC,CAAA;AAED,wFAAwF;AACxF,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,IAAI,OAAO,CACrE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACtB,QAAQ,CACT,CAAA;AAED,gFAAgF;AAChF,MAAM,MAAM,QAAQ,CAClB,CAAC,SAAS,QAAQ,EAClB,MAAM,SAAS,MAAM,EACrB,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,SAAS,IACpB,CAAC,GAAG;KAAG,CAAC,IAAI,IAAI,GAAG;SAAG,CAAC,IAAI,MAAM,GAAG,IAAI;KAAE;CAAE,CAAA"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/server/registry.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { InferOutput, StandardSchemaV1 } from "../schema/standard.js";
3
3
  import type { Context, Platform, RouteSchema } from "./context.js";
4
4
  import { type Logger } from "./logger.js";
5
5
  import type { AddRoute, EmptyRegistry, OutputOf, Registry, RouteInfoFor } from "./registry.js";
6
+ import { type SSEInit, type TypedSSEStream } from "./sse.js";
6
7
  import type { WebSocketHandler, WebSocketUpgradeOutcome } from "./websocket.js";
7
8
  type MaybePromise<T> = T | Promise<T>;
8
9
  /**
@@ -167,8 +168,16 @@ export interface Middleware {
167
168
  readonly beforeHandle?: (context: Context) => MaybePromise<unknown>;
168
169
  readonly afterHandle?: (result: unknown, context: Context) => MaybePromise<unknown>;
169
170
  readonly onResponse?: (response: Response, req: Request) => MaybePromise<Response>;
171
+ readonly onResponseFinalized?: (outcome: ResponseFinalization, req: Request) => MaybePromise<void>;
170
172
  readonly onError?: (error: unknown, context: Context) => MaybePromise<unknown>;
171
173
  }
174
+ /** The terminal response-pipeline outcome observed after every transforming `onResponse` hook. */
175
+ export interface ResponseFinalization {
176
+ /** The final response, or the last response available when a transformation failed. */
177
+ readonly response: Response;
178
+ /** A response-hook failure. Terminal observers run fail-open before the error is rethrown. */
179
+ readonly error?: unknown;
180
+ }
172
181
  export type AnyServer = Server<any, any>;
173
182
  /**
174
183
  * A nifra **plugin**: a function that augments an app — calling `use`/`derive`/`decorate` and/or
@@ -314,6 +323,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
314
323
  private readonly aroundHooks;
315
324
  private readonly onRequestHooks;
316
325
  private readonly onResponseHooks;
326
+ private readonly onResponseFinalizedHooks;
317
327
  private readonly responseRequests;
318
328
  /** Names of plugins/middleware already applied via `use` — for idempotent dedupe. */
319
329
  private readonly appliedPlugins;
@@ -344,6 +354,8 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
344
354
  onError(fn: (error: unknown, context: Context & Ctx) => MaybePromise<unknown>): this;
345
355
  /** Transform every outgoing response — success, error, 404, 405, short-circuit. Global. */
346
356
  onResponse(fn: (response: Response, req: Request) => MaybePromise<Response>): this;
357
+ /** Observe the terminal response after all transformations. Observers are ordered and fail-open. */
358
+ onResponseFinalized(fn: (outcome: ResponseFinalization, req: Request) => MaybePromise<void>): this;
347
359
  /**
348
360
  * Apply a type-**identity** plugin ({@link IdentityPlugin}, from {@link defineIdentityPlugin}) — it
349
361
  * registers routes/hooks but doesn't change the types, so this returns `this` with the route registry
@@ -368,6 +380,29 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
368
380
  use(mw: Middleware): this;
369
381
  get<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
370
382
  get<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>>>, Ctx>;
383
+ /**
384
+ * Register a **typed SSE route** — a GET endpoint streaming `text/event-stream` whose event
385
+ * payloads are contracted by `schema.sse`. The handler receives the validated context plus a
386
+ * {@link TypedSSEStream}: `stream.send(event)` is compile-time-checked against the schema and
387
+ * JSON-serialized into the SSE `data:` field. The typed client sees the marker and grows a
388
+ * `.subscribe(onEvent)` for the route with the same payload type — end-to-end typed streaming.
389
+ *
390
+ * const app = server().sse("/feed", { sse: t.object({ id: t.integer(), title: t.string() }) },
391
+ * async (c, stream) => {
392
+ * stream.send({ id: 1, title: "hello" }) // typed
393
+ * await waitForDisconnect(stream.signal)
394
+ * },
395
+ * { keepAlive: 15_000 })
396
+ *
397
+ * // client: const off = api.feed.subscribe((post) => console.log(post.title))
398
+ *
399
+ * `init` passes through to the underlying {@link sse} helper (`keepAlive`, extra headers). The
400
+ * connection closes when the handler resolves, `stream.close()` runs, or the client disconnects
401
+ * (`stream.signal`). Query/body schemas validate exactly as on any other route.
402
+ */
403
+ sse<Path extends string, S extends RouteSchema & {
404
+ sse: StandardSchemaV1;
405
+ }>(path: Path, schema: S, run: (context: Context<Path, S> & Ctx, stream: TypedSSEStream<InferOutput<S["sse"]>>) => void | Promise<void>, init?: SSEInit): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, S, Response>>, Ctx>;
371
406
  post<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "POST", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
372
407
  post<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "POST", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>>>, Ctx>;
373
408
  put<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "PUT", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
@@ -542,6 +577,11 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
542
577
  * rest to {@link continueOnResponse}.
543
578
  */
544
579
  private applyOnResponse;
580
+ private applyOnResponseAndFinalize;
581
+ private completeResponseFinalization;
582
+ private failResponseFinalization;
583
+ /** Notify terminal observers in order while isolating both sync and async failures. */
584
+ private notifyResponseFinalized;
545
585
  /** Async tail of {@link applyOnResponse}: runs the remaining hooks once one has gone async. */
546
586
  private continueOnResponse;
547
587
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { EMPTY_PARAMS, Router } from "../router/router.js";
3
3
  import { drainCapped, parseContentLength, readBoundedBytes } from "./body.js";
4
4
  import { parseCookies, serializeCookie } from "./cookies.js";
5
5
  import { jsonLogger } from "./logger.js";
6
+ import { sse, typedSSEStream } from "./sse.js";
6
7
  import { getWsRuntime } from "./ws-hook.js";
7
8
  /** The concrete `Request` for a source — itself when a real `Request` was passed (the Web path), or the
8
9
  * lazily-built one (the Node adapter). A real `Request` IS a `RequestSource`, so no wrapper is allocated
@@ -645,6 +646,7 @@ export class Server {
645
646
  aroundHooks;
646
647
  onRequestHooks;
647
648
  onResponseHooks;
649
+ onResponseFinalizedHooks;
648
650
  responseRequests;
649
651
  /** Names of plugins/middleware already applied via `use` — for idempotent dedupe. */
650
652
  appliedPlugins;
@@ -672,6 +674,7 @@ export class Server {
672
674
  this.aroundHooks = [];
673
675
  this.onRequestHooks = [];
674
676
  this.onResponseHooks = [];
677
+ this.onResponseFinalizedHooks = [];
675
678
  this.responseRequests = new WeakMap();
676
679
  this.appliedPlugins = new Set();
677
680
  this.mcpResourceList = [];
@@ -724,6 +727,11 @@ export class Server {
724
727
  this.onResponseHooks.push(fn);
725
728
  return this;
726
729
  }
730
+ /** Observe the terminal response after all transformations. Observers are ordered and fail-open. */
731
+ onResponseFinalized(fn) {
732
+ this.onResponseFinalizedHooks.push(fn);
733
+ return this;
734
+ }
727
735
  use(arg) {
728
736
  if (typeof arg === "function") {
729
737
  const name = arg.pluginName;
@@ -749,6 +757,8 @@ export class Server {
749
757
  this.afterHandle(arg.afterHandle);
750
758
  if (arg.onResponse !== undefined)
751
759
  this.onResponse(arg.onResponse);
760
+ if (arg.onResponseFinalized !== undefined)
761
+ this.onResponseFinalized(arg.onResponseFinalized);
752
762
  if (arg.onError !== undefined)
753
763
  this.onError(arg.onError);
754
764
  return this;
@@ -756,6 +766,30 @@ export class Server {
756
766
  get(path, schemaOrHandler, handler) {
757
767
  return this.route("GET", path, schemaOrHandler, handler);
758
768
  }
769
+ /**
770
+ * Register a **typed SSE route** — a GET endpoint streaming `text/event-stream` whose event
771
+ * payloads are contracted by `schema.sse`. The handler receives the validated context plus a
772
+ * {@link TypedSSEStream}: `stream.send(event)` is compile-time-checked against the schema and
773
+ * JSON-serialized into the SSE `data:` field. The typed client sees the marker and grows a
774
+ * `.subscribe(onEvent)` for the route with the same payload type — end-to-end typed streaming.
775
+ *
776
+ * const app = server().sse("/feed", { sse: t.object({ id: t.integer(), title: t.string() }) },
777
+ * async (c, stream) => {
778
+ * stream.send({ id: 1, title: "hello" }) // typed
779
+ * await waitForDisconnect(stream.signal)
780
+ * },
781
+ * { keepAlive: 15_000 })
782
+ *
783
+ * // client: const off = api.feed.subscribe((post) => console.log(post.title))
784
+ *
785
+ * `init` passes through to the underlying {@link sse} helper (`keepAlive`, extra headers). The
786
+ * connection closes when the handler resolves, `stream.close()` runs, or the client disconnects
787
+ * (`stream.signal`). Query/body schemas validate exactly as on any other route.
788
+ */
789
+ sse(path, schema, run, init) {
790
+ const handler = (context) => sse(context, (stream) => run(context, typedSSEStream(stream)), init);
791
+ return this.route("GET", path, schema, handler);
792
+ }
759
793
  post(path, schemaOrHandler, handler) {
760
794
  return this.route("POST", path, schemaOrHandler, handler);
761
795
  }
@@ -947,14 +981,14 @@ export class Server {
947
981
  // promise + microtask. Returning `Response | Promise<Response>` matches Web/edge handlers, while
948
982
  // `await app.fetch(...)` continues to work exactly as before.
949
983
  const outcome = this.dispatch(source, platform, toResponse, IDENTITY_RESPONSE, RESPONSE_TIMEOUT, true);
950
- if (this.onResponseHooks.length === 0) {
984
+ if (this.onResponseHooks.length === 0 && this.onResponseFinalizedHooks.length === 0) {
951
985
  return outcome;
952
986
  }
953
987
  // onResponse sees every response — success, validation error, 404/405, timeout, onRequest
954
988
  // short-circuit; normalize to a promise, then thread through the hooks.
955
989
  return outcome instanceof Promise
956
- ? outcome.then((response) => this.applyOnResponse(response, this.takeResponseRequest(source)))
957
- : this.applyOnResponse(outcome, this.takeResponseRequest(source));
990
+ ? outcome.then((response) => this.applyOnResponseAndFinalize(response, this.takeResponseRequest(source)))
991
+ : this.applyOnResponseAndFinalize(outcome, this.takeResponseRequest(source));
958
992
  }
959
993
  /**
960
994
  * Like {@link fetch}, but renders a plain-data result **without** building a Web `Response` — the
@@ -970,7 +1004,7 @@ export class Server {
970
1004
  }
971
1005
  resolveNodeSource(source, platform) {
972
1006
  // onResponse hooks transform a Response, so they force the Web path; wrap its result.
973
- if (this.onResponseHooks.length > 0) {
1007
+ if (this.onResponseHooks.length > 0 || this.onResponseFinalizedHooks.length > 0) {
974
1008
  const response = this.fetchSource(source, platform);
975
1009
  return response instanceof Promise
976
1010
  ? response.then((settled) => ({ kind: "response", response: settled }))
@@ -1541,6 +1575,56 @@ export class Server {
1541
1575
  }
1542
1576
  return current;
1543
1577
  }
1578
+ applyOnResponseAndFinalize(response, req) {
1579
+ try {
1580
+ const transformed = this.applyOnResponse(response, req);
1581
+ return transformed instanceof Promise
1582
+ ? transformed.then((settled) => this.completeResponseFinalization({ response: settled }, req), (error) => this.failResponseFinalization(response, error, req))
1583
+ : this.completeResponseFinalization({ response: transformed }, req);
1584
+ }
1585
+ catch (error) {
1586
+ return this.failResponseFinalization(response, error, req);
1587
+ }
1588
+ }
1589
+ completeResponseFinalization(outcome, req) {
1590
+ const notified = this.notifyResponseFinalized(outcome, req);
1591
+ return notified instanceof Promise ? notified.then(() => outcome.response) : outcome.response;
1592
+ }
1593
+ failResponseFinalization(response, error, req) {
1594
+ const notified = this.notifyResponseFinalized({ response, error }, req);
1595
+ if (notified instanceof Promise) {
1596
+ return notified.then(() => {
1597
+ throw error;
1598
+ });
1599
+ }
1600
+ throw error;
1601
+ }
1602
+ /** Notify terminal observers in order while isolating both sync and async failures. */
1603
+ notifyResponseFinalized(outcome, req) {
1604
+ let pending;
1605
+ for (const hook of this.onResponseFinalizedHooks) {
1606
+ if (pending !== undefined) {
1607
+ pending = pending.then(async () => {
1608
+ try {
1609
+ await hook(outcome, req);
1610
+ }
1611
+ catch {
1612
+ // Terminal observation must never change request behavior.
1613
+ }
1614
+ });
1615
+ continue;
1616
+ }
1617
+ try {
1618
+ const result = hook(outcome, req);
1619
+ if (result instanceof Promise)
1620
+ pending = result.catch(() => { });
1621
+ }
1622
+ catch {
1623
+ // Terminal observation must never change request behavior.
1624
+ }
1625
+ }
1626
+ return pending;
1627
+ }
1544
1628
  /** Async tail of {@link applyOnResponse}: runs the remaining hooks once one has gone async. */
1545
1629
  async continueOnResponse(response, nextIndex, req) {
1546
1630
  let current = response;