@trpc/server 9.23.5 → 9.25.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/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.d.ts +1 -0
- package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.dev.js +90 -0
- package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.js +7 -0
- package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.prod.js +90 -0
- package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.esm.js +86 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.d.ts +1 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.dev.js +170 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.js +7 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.prod.js +170 -0
- package/adapters/lambda/dist/trpc-server-adapters-lambda.esm.js +166 -0
- package/adapters/lambda/package.json +4 -0
- package/dist/declarations/src/adapters/lambda/index.d.ts +14 -0
- package/dist/declarations/src/adapters/lambda/index.d.ts.map +1 -0
- package/dist/declarations/src/adapters/lambda/utils.d.ts +34 -0
- package/dist/declarations/src/adapters/lambda/utils.d.ts.map +1 -0
- package/dist/declarations/src/adapters/ws.d.ts +1 -1
- package/dist/declarations/src/deprecated/{LegacyRouter.d.ts → legacyRouter.d.ts} +1 -1
- package/dist/declarations/src/deprecated/legacyRouter.d.ts.map +1 -0
- package/dist/declarations/src/http/index.d.ts +1 -1
- package/dist/declarations/src/http/internals/types.d.ts +2 -3
- package/dist/declarations/src/http/internals/types.d.ts.map +1 -1
- package/dist/declarations/src/http/{ResponseMeta.d.ts → responseMeta.d.ts} +1 -1
- package/dist/declarations/src/http/responseMeta.d.ts.map +1 -0
- package/dist/declarations/src/index.d.ts +1 -1
- package/dist/declarations/src/internals/{BaseHandlerOptions.d.ts → baseHandlerOptions.d.ts} +2 -2
- package/dist/declarations/src/internals/{BaseHandlerOptions.d.ts.map → baseHandlerOptions.d.ts.map} +1 -1
- package/dist/declarations/src/internals/middlewares.d.ts +3 -1
- package/dist/declarations/src/internals/middlewares.d.ts.map +1 -1
- package/dist/declarations/src/internals/{OnErrorFunction.d.ts → onErrorFunction.d.ts} +1 -1
- package/dist/declarations/src/internals/{OnErrorFunction.d.ts.map → onErrorFunction.d.ts.map} +1 -1
- package/dist/router-2f54c292.cjs.dev.js +507 -0
- package/dist/router-459409c8.cjs.prod.js +503 -0
- package/dist/router-93491dae.esm.js +504 -0
- package/dist/trpc-server.cjs.dev.js +5 -503
- package/dist/trpc-server.cjs.prod.js +5 -499
- package/dist/trpc-server.esm.js +3 -503
- package/package.json +4 -2
- package/src/adapters/lambda/index.ts +156 -0
- package/src/adapters/lambda/utils.ts +91 -0
- package/src/adapters/ws.ts +1 -1
- package/src/deprecated/{LegacyRouter.ts → legacyRouter.ts} +0 -0
- package/src/http/index.ts +1 -1
- package/src/http/internals/types.ts +2 -2
- package/src/http/{ResponseMeta.ts → responseMeta.ts} +0 -0
- package/src/index.ts +1 -1
- package/src/internals/{BaseHandlerOptions.ts → baseHandlerOptions.ts} +1 -1
- package/src/internals/middlewares.ts +4 -1
- package/src/internals/{OnErrorFunction.ts → onErrorFunction.ts} +0 -0
- package/dist/declarations/src/deprecated/LegacyRouter.d.ts.map +0 -1
- package/dist/declarations/src/http/ResponseMeta.d.ts.map +0 -1
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
Context as APIGWContext,
|
|
3
|
+
APIGatewayProxyEvent,
|
|
4
|
+
APIGatewayProxyEventV2,
|
|
5
|
+
APIGatewayProxyResult,
|
|
6
|
+
APIGatewayProxyStructuredResultV2,
|
|
7
|
+
} from 'aws-lambda';
|
|
8
|
+
import type { ResponseMetaFn } from '../../http/internals/types';
|
|
9
|
+
import type { AnyRouter, inferRouterContext } from '../../router';
|
|
10
|
+
|
|
11
|
+
export type APIGatewayEvent = APIGatewayProxyEvent | APIGatewayProxyEventV2;
|
|
12
|
+
export type APIGatewayResult =
|
|
13
|
+
| APIGatewayProxyResult
|
|
14
|
+
| APIGatewayProxyStructuredResultV2;
|
|
15
|
+
|
|
16
|
+
export type CreateLambdaContextOptions<T extends APIGatewayEvent> = {
|
|
17
|
+
event: T;
|
|
18
|
+
context: APIGWContext;
|
|
19
|
+
};
|
|
20
|
+
export type LambdaCreateContextFn<
|
|
21
|
+
TRouter extends AnyRouter,
|
|
22
|
+
TEvent extends APIGatewayEvent,
|
|
23
|
+
> = ({
|
|
24
|
+
event,
|
|
25
|
+
context,
|
|
26
|
+
}: CreateLambdaContextOptions<TEvent>) =>
|
|
27
|
+
| inferRouterContext<TRouter>
|
|
28
|
+
| Promise<inferRouterContext<TRouter>>;
|
|
29
|
+
|
|
30
|
+
export type AWSLambdaOptions<
|
|
31
|
+
TRouter extends AnyRouter,
|
|
32
|
+
TEvent extends APIGatewayEvent,
|
|
33
|
+
> =
|
|
34
|
+
| {
|
|
35
|
+
router: TRouter;
|
|
36
|
+
batching?: {
|
|
37
|
+
enabled: boolean;
|
|
38
|
+
};
|
|
39
|
+
onError?: (options: Record<string, unknown>) => void;
|
|
40
|
+
responseMeta?: ResponseMetaFn<TRouter>;
|
|
41
|
+
} & (
|
|
42
|
+
| {
|
|
43
|
+
/**
|
|
44
|
+
* @link https://trpc.io/docs/context
|
|
45
|
+
**/
|
|
46
|
+
createContext: LambdaCreateContextFn<TRouter, TEvent>;
|
|
47
|
+
}
|
|
48
|
+
| {
|
|
49
|
+
/**
|
|
50
|
+
* @link https://trpc.io/docs/context
|
|
51
|
+
**/
|
|
52
|
+
createContext?: LambdaCreateContextFn<TRouter, TEvent>;
|
|
53
|
+
}
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
export function isPayloadV1(
|
|
57
|
+
event: APIGatewayEvent,
|
|
58
|
+
): event is APIGatewayProxyEvent {
|
|
59
|
+
return determinePayloadFormat(event) == '1.0';
|
|
60
|
+
}
|
|
61
|
+
export function isPayloadV2(
|
|
62
|
+
event: APIGatewayEvent,
|
|
63
|
+
): event is APIGatewayProxyEventV2 {
|
|
64
|
+
return determinePayloadFormat(event) == '2.0';
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
function determinePayloadFormat(
|
|
68
|
+
event: APIGatewayEvent,
|
|
69
|
+
): APIGatewayPayloadFormatVersion {
|
|
70
|
+
// https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html
|
|
71
|
+
// According to AWS support, version is is extracted from the version property in the event.
|
|
72
|
+
// If there is no version property, then the version is implied as 1.0
|
|
73
|
+
const unknownEvent = event as { version?: string };
|
|
74
|
+
if (typeof unknownEvent.version === 'undefined') {
|
|
75
|
+
return '1.0';
|
|
76
|
+
} else {
|
|
77
|
+
if (['1.0', '2.0'].includes(unknownEvent.version)) {
|
|
78
|
+
return unknownEvent.version as APIGatewayPayloadFormatVersion;
|
|
79
|
+
} else {
|
|
80
|
+
return 'custom';
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
export type DefinedAPIGatewayPayloadFormats = '1.0' | '2.0';
|
|
85
|
+
export type APIGatewayPayloadFormatVersion =
|
|
86
|
+
| DefinedAPIGatewayPayloadFormats
|
|
87
|
+
| 'custom';
|
|
88
|
+
|
|
89
|
+
export const UNKNOWN_PAYLOAD_FORMAT_VERSION_ERROR_MESSAGE =
|
|
90
|
+
'Custom payload format version not handled by this adapter. Please use either 1.0 or 2.0. More information here' +
|
|
91
|
+
'https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html';
|
package/src/adapters/ws.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import http from 'http';
|
|
2
2
|
import ws from 'ws';
|
|
3
3
|
import { TRPCError } from '../TRPCError';
|
|
4
|
-
import { BaseHandlerOptions } from '../internals/
|
|
4
|
+
import { BaseHandlerOptions } from '../internals/baseHandlerOptions';
|
|
5
5
|
import { callProcedure } from '../internals/callProcedure';
|
|
6
6
|
import { getErrorFromUnknown } from '../internals/errors';
|
|
7
7
|
import { transformTRPCResponse } from '../internals/transformTRPCResponse';
|
|
File without changes
|
package/src/http/index.ts
CHANGED
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
inferRouterError,
|
|
9
9
|
} from '@trpc/server';
|
|
10
10
|
import { URLSearchParams } from 'url';
|
|
11
|
-
import { BaseHandlerOptions } from '../../internals/
|
|
11
|
+
import { BaseHandlerOptions } from '../../internals/baseHandlerOptions';
|
|
12
12
|
import { TRPCResponse } from '../../rpc';
|
|
13
13
|
|
|
14
14
|
export type HTTPHeaders = Dict<string | string[]>;
|
|
@@ -26,7 +26,7 @@ export interface HTTPRequest {
|
|
|
26
26
|
body: unknown;
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
type ResponseMetaFn<TRouter extends AnyRouter> = (opts: {
|
|
29
|
+
export type ResponseMetaFn<TRouter extends AnyRouter> = (opts: {
|
|
30
30
|
data: TRPCResponse<unknown, inferRouterError<TRouter>>[];
|
|
31
31
|
ctx?: inferRouterContext<TRouter>;
|
|
32
32
|
/**
|
|
File without changes
|
package/src/index.ts
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { TRPCError } from '../TRPCError';
|
|
2
2
|
import { ProcedureType } from '../router';
|
|
3
3
|
|
|
4
|
-
export const middlewareMarker =
|
|
4
|
+
export const middlewareMarker = 'middlewareMarker' as 'middlewareMarker' & {
|
|
5
|
+
__brand: 'middlewareMarker';
|
|
6
|
+
};
|
|
7
|
+
|
|
5
8
|
interface MiddlewareResultBase<TContext> {
|
|
6
9
|
/**
|
|
7
10
|
* All middlewares should pass through their `next()`'s output.
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LegacyRouter.d.ts","sourceRoot":"../../../../src/deprecated","sources":["LegacyRouter.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAE1B,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ResponseMeta.d.ts","sourceRoot":"../../../../src/http","sources":["ResponseMeta.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC"}
|