opinionated-machine 9.0.0 → 10.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +85 -0
- package/README.md +222 -7
- package/dist/lib/DIContext.js +33 -27
- package/dist/lib/DIContext.js.map +1 -1
- package/dist/lib/routes/fastifyRouteBuilder.js +79 -21
- package/dist/lib/routes/fastifyRouteBuilder.js.map +1 -1
- package/dist/lib/routes/fastifyRouteTypes.d.ts +97 -12
- package/dist/lib/routes/fastifyRouteTypes.js.map +1 -1
- package/dist/lib/routes/fastifyRouteUtils.js +15 -5
- package/dist/lib/routes/fastifyRouteUtils.js.map +1 -1
- package/dist/lib/routes/index.d.ts +2 -1
- package/dist/lib/routes/index.js +2 -0
- package/dist/lib/routes/index.js.map +1 -1
- package/dist/lib/routes/sseResponseSchema.d.ts +35 -0
- package/dist/lib/routes/sseResponseSchema.js +115 -0
- package/dist/lib/routes/sseResponseSchema.js.map +1 -0
- package/dist/lib/sse/SSESessionSpy.d.ts +35 -7
- package/dist/lib/sse/SSESessionSpy.js +30 -1
- package/dist/lib/sse/SSESessionSpy.js.map +1 -1
- package/dist/lib/sse/index.d.ts +1 -1
- package/dist/lib/sse/index.js.map +1 -1
- package/dist/lib/testing/apiSseInjectHelpers.d.ts +64 -0
- package/dist/lib/testing/apiSseInjectHelpers.js +212 -0
- package/dist/lib/testing/apiSseInjectHelpers.js.map +1 -0
- package/dist/lib/testing/apiSseTestTypes.d.ts +202 -0
- package/dist/lib/testing/apiSseTestTypes.js +2 -0
- package/dist/lib/testing/apiSseTestTypes.js.map +1 -0
- package/dist/lib/testing/index.d.ts +4 -1
- package/dist/lib/testing/index.js +2 -0
- package/dist/lib/testing/index.js.map +1 -1
- package/dist/lib/testing/sseHttpClient.d.ts +36 -4
- package/dist/lib/testing/sseHttpClient.js +29 -6
- package/dist/lib/testing/sseHttpClient.js.map +1 -1
- package/dist/lib/testing/sseInjectHelpers.js +1 -12
- package/dist/lib/testing/sseInjectHelpers.js.map +1 -1
- package/dist/lib/testing/sseInjectShared.d.ts +7 -0
- package/dist/lib/testing/sseInjectShared.js +19 -0
- package/dist/lib/testing/sseInjectShared.js.map +1 -0
- package/dist/lib/testing/sseSessionSpyFactory.d.ts +109 -0
- package/dist/lib/testing/sseSessionSpyFactory.js +100 -0
- package/dist/lib/testing/sseSessionSpyFactory.js.map +1 -0
- package/package.json +1 -1
|
@@ -2,22 +2,54 @@ import { InternalError } from '@lokalise/node-core';
|
|
|
2
2
|
import { ZodObject } from 'zod';
|
|
3
3
|
import { isErrorLike } from "../errorUtils.js";
|
|
4
4
|
import { createSSEContext, determineMode, extractPathTemplate, handleSSEError, hasHttpStatusCode, } from "./fastifyRouteUtils.js";
|
|
5
|
+
import { buildSseResponseSchemas } from "./sseResponseSchema.js";
|
|
5
6
|
// Re-export for convenience
|
|
6
7
|
export { extractPathTemplate };
|
|
8
|
+
/**
|
|
9
|
+
* Default `@fastify/sse` route kind used by both SSE-only and dual-mode routes.
|
|
10
|
+
*
|
|
11
|
+
* `'manual'` disables the plugin's `Accept` header negotiation entirely: `reply.sse` is
|
|
12
|
+
* always attached and the route handler decides at runtime whether to stream or to send a
|
|
13
|
+
* regular HTTP response. That matches what the handlers this builder produces already do,
|
|
14
|
+
* and it is the only kind that is safe for every shape of route:
|
|
15
|
+
*
|
|
16
|
+
* - SSE-only handlers have a single code path that calls `sse.start()`. Under the plugin's
|
|
17
|
+
* `sse: true` default (`kind: 'legacy'`) a client that does not send an explicit
|
|
18
|
+
* `text/event-stream` token - a wildcard `Accept` header, `Accept: application/json`, or
|
|
19
|
+
* no `Accept` header at all, which is what most non-browser clients and OpenAPI-generated
|
|
20
|
+
* clients send - leaves `reply.sse` undefined while still running the handler, so the
|
|
21
|
+
* first `sse.start()` throws and the request 500s.
|
|
22
|
+
* - Dual-mode handlers negotiate themselves via `determineMode()`, which honours
|
|
23
|
+
* `defaultMode`. Under a plugin-side gate, `defaultMode: 'sse'` combined with a
|
|
24
|
+
* non-specific `Accept` header hits the same 500.
|
|
25
|
+
* - `sse.respond()` (an early HTTP response before streaming starts) stays reachable for
|
|
26
|
+
* every client. `kind: 'only'` would cut that off for JSON clients: its gate admits a
|
|
27
|
+
* missing `Accept` header plus the `*\/*` and `text/*` wildcards, but answers `406` to
|
|
28
|
+
* every other concrete media type, `application/json` included.
|
|
29
|
+
*
|
|
30
|
+
* Override per route with the `kind` route option when different semantics are wanted -
|
|
31
|
+
* `'only'` on an SSE-only route for `406 Not Acceptable` content negotiation, or `'dual'`
|
|
32
|
+
* on a dual-mode route to let the plugin gate before the handler runs.
|
|
33
|
+
*/
|
|
34
|
+
const DEFAULT_SSE_ROUTE_KIND = 'manual';
|
|
7
35
|
/**
|
|
8
36
|
* Build the SSE config object for route options.
|
|
9
|
-
*
|
|
37
|
+
*
|
|
38
|
+
* Always returns the object form with an explicit `kind`: omitting it (or passing
|
|
39
|
+
* `sse: true`) makes `@fastify/sse` fall back to its `'legacy'` kind, which applies a
|
|
40
|
+
* strict `Accept` gate and leaves `reply.sse` undefined for clients that do not ask
|
|
41
|
+
* for `text/event-stream` explicitly.
|
|
42
|
+
*
|
|
43
|
+
* `heartbeat` is a boolean: the plugin only supports turning the heartbeat on or off per
|
|
44
|
+
* route, while the interval is set once for all routes at plugin registration.
|
|
10
45
|
*/
|
|
11
46
|
function buildSSEConfig(options) {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
const sseConfig = {};
|
|
16
|
-
if (options.serializer) {
|
|
47
|
+
const sseConfig = { kind: options?.kind ?? DEFAULT_SSE_ROUTE_KIND };
|
|
48
|
+
if (options?.serializer) {
|
|
17
49
|
sseConfig.serializer = options.serializer;
|
|
18
50
|
}
|
|
19
|
-
if (options
|
|
20
|
-
sseConfig.
|
|
51
|
+
if (options?.heartbeat !== undefined) {
|
|
52
|
+
sseConfig.heartbeat = options.heartbeat;
|
|
21
53
|
}
|
|
22
54
|
return sseConfig;
|
|
23
55
|
}
|
|
@@ -232,11 +264,13 @@ request, reply, options) {
|
|
|
232
264
|
// Respect httpStatusCode from errors like PublicNonRecoverableError
|
|
233
265
|
const statusCode = hasHttpStatusCode(err) ? err.httpStatusCode : 500;
|
|
234
266
|
const statusText = statusCode >= 500 ? 'Internal Server Error' : 'Error';
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
267
|
+
// Sent pre-serialized: Fastify skips the response serializer for string payloads, so this
|
|
268
|
+
// envelope reaches the client intact even when the contract declares a different body for
|
|
269
|
+
// `statusCode`. Serializing it against that schema would drop `message`.
|
|
270
|
+
reply
|
|
271
|
+
.code(statusCode)
|
|
272
|
+
.type('application/json')
|
|
273
|
+
.send(JSON.stringify({ statusCode, error: statusText, message }));
|
|
240
274
|
}
|
|
241
275
|
}
|
|
242
276
|
/**
|
|
@@ -262,6 +296,24 @@ function buildDualModeRouteInternal(controller, config) {
|
|
|
262
296
|
});
|
|
263
297
|
}
|
|
264
298
|
const url = extractPathTemplate(contract.pathResolver, contract.requestPathParamsSchema);
|
|
299
|
+
// `kind: 'dual'` hands Accept negotiation to @fastify/sse, which admits SSE only for an
|
|
300
|
+
// explicit `text/event-stream` token. `determineMode()` then negotiates a second time
|
|
301
|
+
// inside the handler and falls back to `defaultMode` for anything non-specific, so with
|
|
302
|
+
// `defaultMode: 'sse'` a wildcard or absent Accept header takes the SSE branch after the
|
|
303
|
+
// plugin already declined to attach `reply.sse` - a guaranteed 500 on every such request.
|
|
304
|
+
// The two negotiators only agree when the fallback is JSON, so reject the combination at
|
|
305
|
+
// route-build time rather than letting it fail per request. `kind: 'manual'` (the default)
|
|
306
|
+
// performs no plugin-side gating and supports `defaultMode: 'sse'` fine.
|
|
307
|
+
if (options?.kind === 'dual' && defaultMode === 'sse') {
|
|
308
|
+
throw new InternalError({
|
|
309
|
+
message: `Dual-mode route ${contract.method.toUpperCase()} ${url} cannot combine kind: "dual" ` +
|
|
310
|
+
'with defaultMode: "sse": @fastify/sse would decline to attach reply.sse for ' +
|
|
311
|
+
'wildcard or absent Accept headers while the handler still selects SSE mode. ' +
|
|
312
|
+
'Use kind: "manual" (the default) instead.',
|
|
313
|
+
errorCode: 'INVALID_SSE_ROUTE_KIND',
|
|
314
|
+
details: { url, method: contract.method, defaultMode, kind: options.kind },
|
|
315
|
+
});
|
|
316
|
+
}
|
|
265
317
|
const schema = {
|
|
266
318
|
params: contract.requestPathParamsSchema,
|
|
267
319
|
querystring: contract.requestQuerySchema,
|
|
@@ -271,13 +323,16 @@ function buildDualModeRouteInternal(controller, config) {
|
|
|
271
323
|
tags: contract.tags,
|
|
272
324
|
hide: contract.visibility !== 'public',
|
|
273
325
|
...(contract.requestBodySchema && { body: contract.requestBodySchema }),
|
|
274
|
-
//
|
|
326
|
+
// 200 describes both branches: the JSON sync body and the SSE event stream.
|
|
327
|
+
// `isEmptyResponseExpected` contracts have no sync body to describe, so they get the
|
|
328
|
+
// stream alone rather than a schema that would serialize an empty response.
|
|
329
|
+
response: buildSseResponseSchemas(contract.serverSentEventSchemas, contract.responseBodySchemasByStatusCode, contract.isEmptyResponseExpected ? undefined : contract.successResponseBodySchema),
|
|
275
330
|
};
|
|
276
331
|
const routeOptions = {
|
|
277
332
|
...(options?.contractMetadataToRouteMapper?.(contract.metadata) ?? {}),
|
|
278
333
|
method: contract.method,
|
|
279
334
|
url,
|
|
280
|
-
sse: buildSSEConfig(options), // Enable SSE support with optional per-route config
|
|
335
|
+
sse: buildSSEConfig(options), // Enable SSE support with explicit kind + optional per-route config
|
|
281
336
|
schema,
|
|
282
337
|
handler: async (request, reply) => {
|
|
283
338
|
// Determine mode based on Accept header
|
|
@@ -323,12 +378,13 @@ function buildSSERouteInternal(controller, config) {
|
|
|
323
378
|
tags: contract.tags,
|
|
324
379
|
hide: contract.visibility !== 'public',
|
|
325
380
|
...(contract.requestBodySchema && { body: contract.requestBodySchema }),
|
|
381
|
+
response: buildSseResponseSchemas(contract.serverSentEventSchemas, contract.responseBodySchemasByStatusCode),
|
|
326
382
|
};
|
|
327
383
|
const routeOptions = {
|
|
328
384
|
...(options?.contractMetadataToRouteMapper?.(contract.metadata) ?? {}),
|
|
329
385
|
method: contract.method,
|
|
330
386
|
url,
|
|
331
|
-
sse: buildSSEConfig(options), // Enable SSE support with optional per-route config
|
|
387
|
+
sse: buildSSEConfig(options), // Enable SSE support with explicit kind + optional per-route config
|
|
332
388
|
schema,
|
|
333
389
|
// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: Core SSE route handler must coordinate context, error handling, and result processing
|
|
334
390
|
handler: async (request, reply) => {
|
|
@@ -367,11 +423,13 @@ function buildSSERouteInternal(controller, config) {
|
|
|
367
423
|
// Respect httpStatusCode from errors like PublicNonRecoverableError
|
|
368
424
|
const statusCode = hasHttpStatusCode(err) ? err.httpStatusCode : 500;
|
|
369
425
|
const statusText = statusCode >= 500 ? 'Internal Server Error' : 'Error';
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
426
|
+
// Sent pre-serialized: Fastify skips the response serializer for string payloads, so
|
|
427
|
+
// this envelope reaches the client intact even when the contract declares a different
|
|
428
|
+
// body for `statusCode`. Serializing it against that schema would drop `message`.
|
|
429
|
+
reply
|
|
430
|
+
.code(statusCode)
|
|
431
|
+
.type('application/json')
|
|
432
|
+
.send(JSON.stringify({ statusCode, error: statusText, message }));
|
|
375
433
|
}
|
|
376
434
|
},
|
|
377
435
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastifyRouteBuilder.js","sourceRoot":"","sources":["../../../lib/routes/fastifyRouteBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fastifyRouteBuilder.js","sourceRoot":"","sources":["../../../lib/routes/fastifyRouteBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SSERouteKind } from '@fastify/sse';
|
|
1
2
|
import type { AnyDualModeContractDefinition, AnySSEContractDefinition, HttpStatusCode } from '@lokalise/api-contracts';
|
|
2
3
|
import type { ApiContractMetadataToRouteMapper } from '@lokalise/fastify-api-contracts';
|
|
3
4
|
import type { FastifyReply, FastifyRequest } from 'fastify';
|
|
@@ -331,10 +332,51 @@ export type SSEContext<Events extends SSEEventSchemas = SSEEventSchemas, Respons
|
|
|
331
332
|
* ```
|
|
332
333
|
*/
|
|
333
334
|
export type FastifySSEPreHandler = (request: FastifyRequest, reply: FastifyReply) => Promise<unknown>;
|
|
335
|
+
/**
|
|
336
|
+
* Constrains a route kind we expose to the set `@fastify/sse` actually accepts.
|
|
337
|
+
*
|
|
338
|
+
* Used purely as a compile-time guard on the aliases below: if the plugin ever renames or
|
|
339
|
+
* drops a kind, the alias stops compiling instead of silently degrading (which is what
|
|
340
|
+
* `Extract<SSERouteKind, ...>` would do - it would quietly resolve to `never`).
|
|
341
|
+
*/
|
|
342
|
+
type SupportedSSERouteKind<Kind extends SSERouteKind> = Kind;
|
|
343
|
+
/**
|
|
344
|
+
* `@fastify/sse` route kinds that are sound for an **SSE-only** route.
|
|
345
|
+
*
|
|
346
|
+
* The plugin also has `'dual'` (and the `sse: true` `'legacy'` default), but neither is
|
|
347
|
+
* usable here: both leave `reply.sse` undefined for clients that do not send an explicit
|
|
348
|
+
* `text/event-stream` token, while still invoking the handler - and an SSE-only handler
|
|
349
|
+
* has a single code path that calls `sse.start()`, so it can only fail.
|
|
350
|
+
*/
|
|
351
|
+
export type SSEOnlyRouteKind = SupportedSSERouteKind<'manual' | 'only'>;
|
|
352
|
+
/**
|
|
353
|
+
* `@fastify/sse` route kinds that are sound for a **dual-mode** route.
|
|
354
|
+
*
|
|
355
|
+
* `'only'` is excluded: it answers non-SSE clients with `406 Not Acceptable` before the
|
|
356
|
+
* handler runs, which makes the JSON half of a dual-mode route unreachable.
|
|
357
|
+
*/
|
|
358
|
+
export type DualModeRouteKind = SupportedSSERouteKind<'manual' | 'dual'>;
|
|
334
359
|
/**
|
|
335
360
|
* Options for configuring an SSE route.
|
|
336
361
|
*/
|
|
337
362
|
export type FastifySSERouteOptions = {
|
|
363
|
+
/**
|
|
364
|
+
* `@fastify/sse` route kind, controlling how the plugin negotiates the `Accept` header.
|
|
365
|
+
*
|
|
366
|
+
* - `'manual'` (default): no negotiation at all. `reply.sse` is always attached and the
|
|
367
|
+
* route handler decides at runtime whether to stream or to send a regular HTTP response.
|
|
368
|
+
* This keeps the route working for clients that send a wildcard `Accept` header,
|
|
369
|
+
* `Accept: application/json` or no `Accept` header at all, and keeps `sse.respond()`
|
|
370
|
+
* early returns available to every client.
|
|
371
|
+
* - `'only'`: the plugin gates on `Accept` and answers `406 Not Acceptable` before the
|
|
372
|
+
* handler runs unless the client accepts `text/event-stream`. A missing `Accept` header
|
|
373
|
+
* and the wildcards `*\/*` and `text/*` pass the gate; every other concrete media type
|
|
374
|
+
* is rejected - including `Accept: application/json`, which means `sse.respond()` early
|
|
375
|
+
* returns become unreachable for JSON clients.
|
|
376
|
+
*
|
|
377
|
+
* @default 'manual'
|
|
378
|
+
*/
|
|
379
|
+
kind?: SSEOnlyRouteKind;
|
|
338
380
|
/**
|
|
339
381
|
* Async preHandler hook for authentication/authorization.
|
|
340
382
|
* Runs BEFORE the SSE connection is established.
|
|
@@ -380,12 +422,18 @@ export type FastifySSERouteOptions = {
|
|
|
380
422
|
*/
|
|
381
423
|
serializer?: (data: unknown) => string;
|
|
382
424
|
/**
|
|
383
|
-
*
|
|
384
|
-
*
|
|
385
|
-
* Set to
|
|
386
|
-
*
|
|
425
|
+
* Whether the SSE keep-alive heartbeat is enabled for this route.
|
|
426
|
+
*
|
|
427
|
+
* Set to `false` to suppress heartbeat comments on this route entirely.
|
|
428
|
+
*
|
|
429
|
+
* The heartbeat *interval* is not configurable per route: `@fastify/sse`
|
|
430
|
+
* only exposes a boolean at route level. Configure the interval once for all
|
|
431
|
+
* routes when registering the plugin:
|
|
432
|
+
* `app.register(fastifySSE, { heartbeatInterval: 30000 })`.
|
|
433
|
+
*
|
|
434
|
+
* @default true
|
|
387
435
|
*/
|
|
388
|
-
|
|
436
|
+
heartbeat?: boolean;
|
|
389
437
|
/**
|
|
390
438
|
* Maps contract metadata to additional Fastify route options.
|
|
391
439
|
*
|
|
@@ -574,12 +622,29 @@ export type DualModeHandlers<Params = unknown, Query = unknown, Headers = unknow
|
|
|
574
622
|
* Options for configuring a dual-mode route.
|
|
575
623
|
* Extends SSE route options with JSON-specific options.
|
|
576
624
|
*/
|
|
577
|
-
export type FastifyDualModeRouteOptions = FastifySSERouteOptions & {
|
|
625
|
+
export type FastifyDualModeRouteOptions = Omit<FastifySSERouteOptions, 'kind'> & {
|
|
578
626
|
/**
|
|
579
627
|
* Default mode when Accept header doesn't specify preference.
|
|
580
628
|
* @default 'json'
|
|
581
629
|
*/
|
|
582
630
|
defaultMode?: DualModeType;
|
|
631
|
+
/**
|
|
632
|
+
* `@fastify/sse` route kind, controlling how the plugin negotiates the `Accept` header.
|
|
633
|
+
*
|
|
634
|
+
* - `'manual'` (default): no plugin-side negotiation. `reply.sse` is always attached and
|
|
635
|
+
* the route's own `determineMode()` picks the mode, honouring {@link defaultMode}.
|
|
636
|
+
* - `'dual'`: the plugin gates first, and only an explicit `text/event-stream` token
|
|
637
|
+
* admits SSE. Everything else reaches the handler with `reply.sse` undefined, so this
|
|
638
|
+
* is only sound with `defaultMode: 'json'` - the two negotiators would otherwise
|
|
639
|
+
* disagree and the SSE branch would run without a stream. `buildFastifyRoute` rejects
|
|
640
|
+
* that combination at route-build time.
|
|
641
|
+
*
|
|
642
|
+
* `'only'` is not offered: it answers non-SSE clients with `406` before the handler runs,
|
|
643
|
+
* which would make the JSON half of the route unreachable.
|
|
644
|
+
*
|
|
645
|
+
* @default 'manual'
|
|
646
|
+
*/
|
|
647
|
+
kind?: DualModeRouteKind;
|
|
583
648
|
};
|
|
584
649
|
/**
|
|
585
650
|
* Infer handlers type based on contract type.
|
|
@@ -752,12 +817,22 @@ export declare function buildHandler<Contract extends AnyDualModeContractDefinit
|
|
|
752
817
|
*/
|
|
753
818
|
export type RegisterSSERoutesOptions = {
|
|
754
819
|
/**
|
|
755
|
-
*
|
|
756
|
-
*
|
|
820
|
+
* Whether the SSE keep-alive heartbeat is enabled for the registered routes.
|
|
821
|
+
*
|
|
822
|
+
* Set to `false` to suppress heartbeat comments. Routes that set `heartbeat`
|
|
823
|
+
* themselves keep their own value.
|
|
824
|
+
*
|
|
825
|
+
* The heartbeat *interval* is not configurable per route: `@fastify/sse`
|
|
826
|
+
* only exposes a boolean at route level. Configure the interval once for all
|
|
827
|
+
* routes when registering the plugin:
|
|
828
|
+
* `app.register(fastifySSE, { heartbeatInterval: 30000 })`.
|
|
829
|
+
*
|
|
830
|
+
* @default true
|
|
757
831
|
*/
|
|
758
|
-
|
|
832
|
+
heartbeat?: boolean;
|
|
759
833
|
/**
|
|
760
834
|
* Custom serializer for SSE message data.
|
|
835
|
+
* Routes that set `serializer` themselves keep their own value.
|
|
761
836
|
* @default JSON.stringify
|
|
762
837
|
*/
|
|
763
838
|
serializer?: (data: unknown) => string;
|
|
@@ -787,12 +862,22 @@ export type RegisterSSERoutesOptions = {
|
|
|
787
862
|
*/
|
|
788
863
|
export type RegisterDualModeRoutesOptions = {
|
|
789
864
|
/**
|
|
790
|
-
*
|
|
791
|
-
*
|
|
865
|
+
* Whether the SSE keep-alive heartbeat is enabled for the registered routes.
|
|
866
|
+
*
|
|
867
|
+
* Set to `false` to suppress heartbeat comments in SSE mode. Routes that set
|
|
868
|
+
* `heartbeat` themselves keep their own value.
|
|
869
|
+
*
|
|
870
|
+
* The heartbeat *interval* is not configurable per route: `@fastify/sse`
|
|
871
|
+
* only exposes a boolean at route level. Configure the interval once for all
|
|
872
|
+
* routes when registering the plugin:
|
|
873
|
+
* `app.register(fastifySSE, { heartbeatInterval: 30000 })`.
|
|
874
|
+
*
|
|
875
|
+
* @default true
|
|
792
876
|
*/
|
|
793
|
-
|
|
877
|
+
heartbeat?: boolean;
|
|
794
878
|
/**
|
|
795
879
|
* Custom serializer for SSE message data.
|
|
880
|
+
* Routes that set `serializer` themselves keep their own value.
|
|
796
881
|
* @default JSON.stringify
|
|
797
882
|
*/
|
|
798
883
|
serializer?: (data: unknown) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastifyRouteTypes.js","sourceRoot":"","sources":["../../../lib/routes/fastifyRouteTypes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fastifyRouteTypes.js","sourceRoot":"","sources":["../../../lib/routes/fastifyRouteTypes.ts"],"names":[],"mappings":"AAmgCA,MAAM,UAAU,YAAY,CAG1B,QAAkB,EAClB,QAAuC,EACvC,OAA8D;IAE9D,6FAA6F;IAC7F,IAAI,YAAY,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;QACpD,OAAO;YACL,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,QAAyC;YACnD,QAAQ,EAAE,QAAgE;YAC1E,OAAO,EAAE,OAAsC;SAChD,CAAA;IACH,CAAC;IAED,oBAAoB;IACpB,OAAO;QACL,MAAM,EAAE,iBAAiB;QACzB,QAAQ,EAAE,QAAoC;QAC9C,4GAA4G;QAC5G,QAAQ,EAAE,QAAe;QACzB,OAAO,EAAE,OAAiC;KAC3C,CAAA;AACH,CAAC"}
|
|
@@ -135,8 +135,12 @@ function closeSSESession(sseReply, controller, connectionId, logger) {
|
|
|
135
135
|
sseReply.sse.close();
|
|
136
136
|
}
|
|
137
137
|
catch (err) {
|
|
138
|
-
|
|
139
|
-
|
|
138
|
+
// Never let the recovery path throw: this runs from error handling, and an exception
|
|
139
|
+
// raised here would replace the error we are recovering from with a far less useful one.
|
|
140
|
+
// `sseReply.sse` itself can be undefined - the plugin only attaches it when its Accept
|
|
141
|
+
// gate admits SSE - so read `isConnected` defensively rather than dereferencing blind.
|
|
142
|
+
if (sseReply.sse?.isConnected !== false) {
|
|
143
|
+
// Log error if connection closure failed and the connection is not known to be closed
|
|
140
144
|
logger?.error({
|
|
141
145
|
connectionId,
|
|
142
146
|
error: isErrorLike(err) ? err.message : 'Internal server error',
|
|
@@ -283,12 +287,18 @@ export function createSSEContext(controller, request, reply, eventSchemas, optio
|
|
|
283
287
|
if (responseSent) {
|
|
284
288
|
throw new Error('Cannot start streaming after sending a response.');
|
|
285
289
|
}
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
//
|
|
290
|
+
// Register callback for when server explicitly closes via reply.sse.close().
|
|
291
|
+
// This is the first `reply.sse` dereference, and it runs before `started` flips: if
|
|
292
|
+
// the plugin never attached the SSE context (its Accept gate refused, which the
|
|
293
|
+
// supported route kinds prevent but a JavaScript caller can still reach), the route
|
|
294
|
+
// handler's catch then takes the not-yet-streaming branch and reports the real error
|
|
295
|
+
// instead of trying to tear down a stream that was never set up. Everything after
|
|
296
|
+
// this point may have written to the socket, so it stays inside `started`.
|
|
289
297
|
sseReply.sse.onClose(async () => {
|
|
290
298
|
await callOnClose('server');
|
|
291
299
|
});
|
|
300
|
+
started = true;
|
|
301
|
+
sessionMode = mode;
|
|
292
302
|
// Send headers if not already sent via sendHeaders()
|
|
293
303
|
if (!headersSent) {
|
|
294
304
|
// Tell @fastify/sse to keep the connection open after handler returns
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastifyRouteUtils.js","sourceRoot":"","sources":["../../../lib/routes/fastifyRouteUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fastifyRouteUtils.js","sourceRoot":"","sources":["../../../lib/routes/fastifyRouteUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { buildFastifyRoute, extractPathTemplate } from './fastifyRouteBuilder.js';
|
|
2
|
-
export { type BuildFastifyDualModeRoutesReturnType, type BuildFastifySSERoutesReturnType, buildHandler, type DualModeHandlers, type DualModeRouteHandler, type FastifyDualModeHandlerConfig, type FastifyDualModeRouteOptions, type FastifySSEHandlerConfig, type FastifySSEPreHandler, type FastifySSERouteOptions, type InferDualModeHandlers, type InferHandlers, type InferSSERequest, type RegisterDualModeRoutesOptions, type RegisterSSERoutesOptions, type SSEContext, type SSEHandlerResult, type SSEModeHandler, type SSEOnlyHandlers, type SSERespondResult, type SSERouteHandler, type SSESession, type SSESessionMode, type SSEStartOptions, type SSEStreamMessage, type SyncModeHandler, type SyncModeReply, } from './fastifyRouteTypes.js';
|
|
2
|
+
export { type BuildFastifyDualModeRoutesReturnType, type BuildFastifySSERoutesReturnType, buildHandler, type DualModeHandlers, type DualModeRouteHandler, type DualModeRouteKind, type FastifyDualModeHandlerConfig, type FastifyDualModeRouteOptions, type FastifySSEHandlerConfig, type FastifySSEPreHandler, type FastifySSERouteOptions, type InferDualModeHandlers, type InferHandlers, type InferSSERequest, type RegisterDualModeRoutesOptions, type RegisterSSERoutesOptions, type SSEContext, type SSEHandlerResult, type SSEModeHandler, type SSEOnlyHandlers, type SSEOnlyRouteKind, type SSERespondResult, type SSERouteHandler, type SSESession, type SSESessionMode, type SSEStartOptions, type SSEStreamMessage, type SyncModeHandler, type SyncModeReply, } from './fastifyRouteTypes.js';
|
|
3
3
|
export { createSSEContext, determineMode, determineSyncFormat, handleReconnection, handleSSEError, type SSECloseReason, type SSEContextResult, type SSEControllerLike, type SSELifecycleOptions, type SSEReply, type SSESessionSetupResult, type SyncFormatResult, sendReplayEvents, setupSSESession, } from './fastifyRouteUtils.js';
|
|
4
|
+
export { buildSseEventSchema, buildSseResponseSchemas, type ResponseSchemasByStatusCode, } from './sseResponseSchema.js';
|
package/dist/lib/routes/index.js
CHANGED
|
@@ -6,4 +6,6 @@ export {
|
|
|
6
6
|
buildHandler, } from './fastifyRouteTypes.js';
|
|
7
7
|
// Route utilities
|
|
8
8
|
export { createSSEContext, determineMode, determineSyncFormat, handleReconnection, handleSSEError, sendReplayEvents, setupSSESession, } from './fastifyRouteUtils.js';
|
|
9
|
+
// Response schema helpers
|
|
10
|
+
export { buildSseEventSchema, buildSseResponseSchemas, } from './sseResponseSchema.js';
|
|
9
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/routes/index.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAEjF,cAAc;AACd,OAAO;AAGL,0BAA0B;AAC1B,YAAY,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/routes/index.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAEjF,cAAc;AACd,OAAO;AAGL,0BAA0B;AAC1B,YAAY,GAkCb,MAAM,wBAAwB,CAAA;AAE/B,kBAAkB;AAClB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EAQd,gBAAgB,EAChB,eAAe,GAChB,MAAM,wBAAwB,CAAA;AAE/B,0BAA0B;AAC1B,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GAExB,MAAM,wBAAwB,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { HttpStatusCode, SSEEventSchemas } from '@lokalise/api-contracts';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
/**
|
|
4
|
+
* Fastify response schemas keyed by status code. Values are either a bare Zod schema (JSON)
|
|
5
|
+
* or Fastify's per-media-type form (`{ content: { '<mediaType>': { schema } } }`).
|
|
6
|
+
*/
|
|
7
|
+
export type ResponseSchemasByStatusCode = Record<string, unknown>;
|
|
8
|
+
/**
|
|
9
|
+
* Describe an SSE stream as the union of its event envelopes, following the OpenAPI 3.x
|
|
10
|
+
* convention for `text/event-stream`: one object schema per event type (`{ id?, event, data,
|
|
11
|
+
* retry? }`), discriminated on the `event` name so the contract's event payloads show up in
|
|
12
|
+
* the generated spec as a `oneOf` of envelopes with a `const` event name.
|
|
13
|
+
*
|
|
14
|
+
* Mirrors what `@lokalise/fastify-api-contracts` produces for an `sseBody()` response, so
|
|
15
|
+
* legacy SSE / dual-mode contracts and `ApiContract` ones document the same way.
|
|
16
|
+
*
|
|
17
|
+
* @returns The event envelope schema, or `undefined` when the contract declares no events
|
|
18
|
+
*/
|
|
19
|
+
export declare function buildSseEventSchema(serverSentEventSchemas: SSEEventSchemas): z.ZodTypeAny | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* Build the `schema.response` map for an SSE or dual-mode route from its contract.
|
|
22
|
+
*
|
|
23
|
+
* The 200 entry uses Fastify's per-media-type form so a single status can describe both the
|
|
24
|
+
* event stream and the JSON body: `text/event-stream` carries the event envelopes, and
|
|
25
|
+
* `application/json` carries the sync body (dual-mode), the body the contract declares for
|
|
26
|
+
* 200 (an SSE route that answers `sse.respond(200, ...)` before streaming starts), or both.
|
|
27
|
+
*
|
|
28
|
+
* Populating this drives both the OpenAPI spec and Fastify's serializer, so a status code the
|
|
29
|
+
* contract declares is now serialized against its schema instead of plain `JSON.stringify`.
|
|
30
|
+
*
|
|
31
|
+
* @param serverSentEventSchemas - Contract's event name to payload schema map
|
|
32
|
+
* @param responseBodySchemasByStatusCode - Contract's per-status response schemas, if any
|
|
33
|
+
* @param syncSuccessSchema - Dual-mode sync 2xx body schema; omit for SSE-only contracts
|
|
34
|
+
*/
|
|
35
|
+
export declare function buildSseResponseSchemas(serverSentEventSchemas: SSEEventSchemas, responseBodySchemasByStatusCode: Partial<Record<HttpStatusCode, z.ZodTypeAny>> | undefined, syncSuccessSchema?: z.ZodTypeAny): ResponseSchemasByStatusCode;
|