@trpc/server 10.0.0-alpha.43 → 10.0.0-alpha.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/adapters/aws-lambda/index.js +1 -1
  2. package/adapters/fastify/index.js +1 -1
  3. package/adapters/fetch/index.js +1 -1
  4. package/adapters/node-http/index.js +1 -1
  5. package/dist/TRPCError-6f61762c.mjs +54 -0
  6. package/dist/TRPCError-9c7830b4.js +58 -0
  7. package/dist/adapters/aws-lambda/index.d.ts.map +1 -1
  8. package/dist/adapters/aws-lambda/index.js +119 -156
  9. package/dist/adapters/aws-lambda/index.mjs +119 -156
  10. package/dist/adapters/aws-lambda/utils.d.ts.map +1 -1
  11. package/dist/adapters/express.d.ts.map +1 -1
  12. package/dist/adapters/express.js +14 -14
  13. package/dist/adapters/express.mjs +14 -14
  14. package/dist/adapters/fastify/fastifyRequestHandler.d.ts.map +1 -1
  15. package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts.map +1 -1
  16. package/dist/adapters/fastify/index.d.ts.map +1 -1
  17. package/dist/adapters/fastify/index.js +68 -89
  18. package/dist/adapters/fastify/index.mjs +68 -89
  19. package/dist/adapters/fetch/fetchRequestHandler.d.ts.map +1 -1
  20. package/dist/adapters/fetch/index.d.ts.map +1 -1
  21. package/dist/adapters/fetch/index.js +45 -57
  22. package/dist/adapters/fetch/index.mjs +45 -57
  23. package/dist/adapters/fetch/types.d.ts.map +1 -1
  24. package/dist/adapters/lambda/index.d.ts.map +1 -1
  25. package/dist/adapters/next.d.ts.map +1 -1
  26. package/dist/adapters/next.js +42 -46
  27. package/dist/adapters/next.mjs +42 -46
  28. package/dist/adapters/node-http/index.d.ts.map +1 -1
  29. package/dist/adapters/node-http/index.js +5 -5
  30. package/dist/adapters/node-http/index.mjs +5 -5
  31. package/dist/adapters/node-http/internals/getPostBody.d.ts.map +1 -1
  32. package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -1
  33. package/dist/adapters/node-http/types.d.ts.map +1 -1
  34. package/dist/adapters/standalone.d.ts.map +1 -1
  35. package/dist/adapters/standalone.js +30 -32
  36. package/dist/adapters/standalone.mjs +30 -32
  37. package/dist/adapters/ws.d.ts.map +1 -1
  38. package/dist/adapters/ws.js +272 -352
  39. package/dist/adapters/ws.mjs +272 -352
  40. package/dist/codes-1c24d919.js +47 -0
  41. package/dist/codes-aaa7d554.mjs +44 -0
  42. package/dist/core/index.d.ts.map +1 -1
  43. package/dist/core/initTRPC.d.ts.map +1 -1
  44. package/dist/core/internals/__generated__/mergeRoutersGeneric.d.ts.map +1 -1
  45. package/dist/core/internals/config.d.ts.map +1 -1
  46. package/dist/core/internals/getParseFn.d.ts.map +1 -1
  47. package/dist/core/internals/mergeRouters.d.ts.map +1 -1
  48. package/dist/core/internals/mergeWithoutOverrides.d.ts.map +1 -1
  49. package/dist/core/internals/omitPrototype.d.ts.map +1 -1
  50. package/dist/core/internals/prefixObjectKeys.d.ts.map +1 -1
  51. package/dist/core/internals/procedureBuilder.d.ts.map +1 -1
  52. package/dist/core/internals/utils.d.ts.map +1 -1
  53. package/dist/core/middleware.d.ts.map +1 -1
  54. package/dist/core/parser.d.ts.map +1 -1
  55. package/dist/core/procedure.d.ts.map +1 -1
  56. package/dist/core/router.d.ts.map +1 -1
  57. package/dist/core/types.d.ts.map +1 -1
  58. package/dist/deprecated/internals/callProcedure.d.ts.map +1 -1
  59. package/dist/deprecated/internals/middlewares.d.ts.map +1 -1
  60. package/dist/deprecated/internals/procedure.d.ts.map +1 -1
  61. package/dist/deprecated/interop.d.ts.map +1 -1
  62. package/dist/deprecated/router.d.ts.map +1 -1
  63. package/dist/error/TRPCError.d.ts.map +1 -1
  64. package/dist/error/formatter.d.ts.map +1 -1
  65. package/dist/error/utils.d.ts.map +1 -1
  66. package/dist/http/index.d.ts.map +1 -1
  67. package/dist/http/internals/getHTTPStatusCode.d.ts.map +1 -1
  68. package/dist/http/internals/types.d.ts.map +1 -1
  69. package/dist/http/resolveHTTPResponse.d.ts.map +1 -1
  70. package/dist/http/types.d.ts.map +1 -1
  71. package/dist/index-47817162.mjs +26 -0
  72. package/dist/index-9d687d33.js +28 -0
  73. package/dist/index.js +59 -95
  74. package/dist/index.mjs +60 -96
  75. package/dist/internals/invert.d.ts.map +1 -1
  76. package/dist/internals/transformTRPCResponse.d.ts.map +1 -1
  77. package/dist/internals/types.d.ts.map +1 -1
  78. package/dist/nodeHTTPRequestHandler-7c2a3037.js +82 -0
  79. package/dist/nodeHTTPRequestHandler-b37609f7.mjs +80 -0
  80. package/dist/observable/index.d.ts.map +1 -1
  81. package/dist/observable/index.js +125 -172
  82. package/dist/observable/index.mjs +125 -172
  83. package/dist/observable/internals/identity.d.ts.map +1 -1
  84. package/dist/observable/internals/observableToPromise.d.ts.map +1 -1
  85. package/dist/observable/internals/pipe.d.ts.map +1 -1
  86. package/dist/observable/observable.d.ts.map +1 -1
  87. package/dist/observable/operators/index.d.ts.map +1 -1
  88. package/dist/observable/operators/map.d.ts.map +1 -1
  89. package/dist/observable/operators/share.d.ts.map +1 -1
  90. package/dist/observable/operators/tap.d.ts.map +1 -1
  91. package/dist/observable/types.d.ts.map +1 -1
  92. package/dist/observable-b651bf11.js +84 -0
  93. package/dist/observable-e129ac9d.mjs +81 -0
  94. package/dist/resolveHTTPResponse-83703ee8.mjs +251 -0
  95. package/dist/resolveHTTPResponse-b486996d.js +255 -0
  96. package/dist/router-8372703e.js +886 -0
  97. package/dist/router-f21b6d06.mjs +876 -0
  98. package/dist/rpc/codes.d.ts.map +1 -1
  99. package/dist/rpc/envelopes.d.ts.map +1 -1
  100. package/dist/rpc/index.d.ts.map +1 -1
  101. package/dist/rpc/index.js +3 -7
  102. package/dist/rpc/index.mjs +1 -1
  103. package/dist/rpc/internals/invert.d.ts.map +1 -1
  104. package/dist/shared/createProxy/index.d.ts.map +1 -1
  105. package/dist/shared/index.d.ts.map +1 -1
  106. package/dist/shared/index.js +1 -1
  107. package/dist/shared/index.mjs +1 -1
  108. package/dist/subscription.js +24 -34
  109. package/dist/subscription.mjs +24 -34
  110. package/dist/transformTRPCResponse-11ac69cc.js +27 -0
  111. package/dist/transformTRPCResponse-c8138d5f.mjs +25 -0
  112. package/observable/index.js +1 -1
  113. package/package.json +12 -16
  114. package/rpc/index.js +1 -1
  115. package/shared/index.js +1 -1
  116. package/subscription/index.d.ts +1 -0
  117. package/subscription/index.js +1 -0
  118. package/dist/TRPCError-9050a68d.js +0 -69
  119. package/dist/TRPCError-97212592.mjs +0 -65
  120. package/dist/adapters/aws-lambda/index.ts.js +0 -1
  121. package/dist/adapters/express.ts.js +0 -1
  122. package/dist/adapters/fastify/index.ts.js +0 -1
  123. package/dist/adapters/fetch/index.ts.js +0 -1
  124. package/dist/adapters/next.ts.js +0 -1
  125. package/dist/adapters/node-http/index.ts.js +0 -1
  126. package/dist/adapters/standalone.ts.js +0 -1
  127. package/dist/adapters/ws.ts.js +0 -1
  128. package/dist/envelopes-2ae27c9f.js +0 -85
  129. package/dist/envelopes-b9f49d4d.mjs +0 -82
  130. package/dist/index-1a25ccbd.js +0 -33
  131. package/dist/index-a3bd54c7.mjs +0 -31
  132. package/dist/index.ts.js +0 -1
  133. package/dist/nodeHTTPRequestHandler-bee7aacc.js +0 -107
  134. package/dist/nodeHTTPRequestHandler-f1656eba.mjs +0 -105
  135. package/dist/observable/index.ts.js +0 -1
  136. package/dist/observable-341a0506.js +0 -109
  137. package/dist/observable-cfedfa30.mjs +0 -106
  138. package/dist/resolveHTTPResponse-455f1e51.mjs +0 -293
  139. package/dist/resolveHTTPResponse-5d90abc5.js +0 -297
  140. package/dist/router-4e50a6ac.js +0 -1104
  141. package/dist/router-a3db8f3a.mjs +0 -1094
  142. package/dist/rpc/index.ts.js +0 -1
  143. package/dist/shared/index.ts.js +0 -1
  144. package/dist/subscription.ts.js +0 -1
  145. package/dist/transformTRPCResponse-0c261655.js +0 -29
  146. package/dist/transformTRPCResponse-747b9a68.mjs +0 -27
@@ -1 +1 @@
1
- module.exports = require('../../dist/adapters/aws-lambda/index');
1
+ module.exports = require('../../dist/adapters/aws-lambda');
@@ -1 +1 @@
1
- module.exports = require('../../dist/adapters/fastify/index');
1
+ module.exports = require('../../dist/adapters/fastify');
@@ -1 +1 @@
1
- module.exports = require('../../dist/adapters/fetch/index');
1
+ module.exports = require('../../dist/adapters/fetch');
@@ -1 +1 @@
1
- module.exports = require('../../dist/adapters/node-http/index');
1
+ module.exports = require('../../dist/adapters/node-http');
@@ -0,0 +1,54 @@
1
+ function getMessageFromUnkownError(err, fallback) {
2
+ if (typeof err === 'string') {
3
+ return err;
4
+ }
5
+ if (err instanceof Error && typeof err.message === 'string') {
6
+ return err.message;
7
+ }
8
+ return fallback;
9
+ }
10
+ function getErrorFromUnknown(cause) {
11
+ // this should ideally be an `instanceof TRPCError` but for some reason that isn't working
12
+ // ref https://github.com/trpc/trpc/issues/331
13
+ if (cause instanceof Error && cause.name === 'TRPCError') {
14
+ return cause;
15
+ }
16
+ let errorCause = undefined;
17
+ let stack = undefined;
18
+ if (cause instanceof Error) {
19
+ errorCause = cause;
20
+ // take stack trace from cause
21
+ stack = cause.stack;
22
+ }
23
+ const err = new TRPCError({
24
+ code: 'INTERNAL_SERVER_ERROR',
25
+ cause: errorCause
26
+ });
27
+ err.stack = stack;
28
+ return err;
29
+ }
30
+ function getCauseFromUnknown(cause) {
31
+ if (cause instanceof Error) {
32
+ return cause;
33
+ }
34
+ return undefined;
35
+ }
36
+
37
+ class TRPCError extends Error {
38
+ constructor(opts){
39
+ const cause = opts.cause;
40
+ const code = opts.code;
41
+ const message = opts.message ?? getMessageFromUnkownError(cause, code);
42
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
43
+ // @ts-ignore https://github.com/tc39/proposal-error-cause
44
+ super(message, {
45
+ cause
46
+ });
47
+ this.code = code;
48
+ this.cause = cause;
49
+ this.name = 'TRPCError';
50
+ Object.setPrototypeOf(this, new.target.prototype);
51
+ }
52
+ }
53
+
54
+ export { TRPCError as T, getCauseFromUnknown as a, getErrorFromUnknown as g };
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+
3
+ function getMessageFromUnkownError(err, fallback) {
4
+ if (typeof err === 'string') {
5
+ return err;
6
+ }
7
+ if (err instanceof Error && typeof err.message === 'string') {
8
+ return err.message;
9
+ }
10
+ return fallback;
11
+ }
12
+ function getErrorFromUnknown(cause) {
13
+ // this should ideally be an `instanceof TRPCError` but for some reason that isn't working
14
+ // ref https://github.com/trpc/trpc/issues/331
15
+ if (cause instanceof Error && cause.name === 'TRPCError') {
16
+ return cause;
17
+ }
18
+ let errorCause = undefined;
19
+ let stack = undefined;
20
+ if (cause instanceof Error) {
21
+ errorCause = cause;
22
+ // take stack trace from cause
23
+ stack = cause.stack;
24
+ }
25
+ const err = new TRPCError({
26
+ code: 'INTERNAL_SERVER_ERROR',
27
+ cause: errorCause
28
+ });
29
+ err.stack = stack;
30
+ return err;
31
+ }
32
+ function getCauseFromUnknown(cause) {
33
+ if (cause instanceof Error) {
34
+ return cause;
35
+ }
36
+ return undefined;
37
+ }
38
+
39
+ class TRPCError extends Error {
40
+ constructor(opts){
41
+ const cause = opts.cause;
42
+ const code = opts.code;
43
+ const message = opts.message ?? getMessageFromUnkownError(cause, code);
44
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
45
+ // @ts-ignore https://github.com/tc39/proposal-error-cause
46
+ super(message, {
47
+ cause
48
+ });
49
+ this.code = code;
50
+ this.cause = cause;
51
+ this.name = 'TRPCError';
52
+ Object.setPrototypeOf(this, new.target.prototype);
53
+ }
54
+ }
55
+
56
+ exports.TRPCError = TRPCError;
57
+ exports.getCauseFromUnknown = getCauseFromUnknown;
58
+ exports.getErrorFromUnknown = getErrorFromUnknown;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/aws-lambda/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,IAAI,YAAY,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,iCAAiC,EAClC,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAsB,MAAM,YAAY,CAAC;AAG3D,OAAO,EACL,eAAe,EAEf,gBAAgB,EAIjB,MAAM,SAAS,CAAC;AAEjB,YAAY,EAAE,6BAA6B,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAkG/E;;IAEI;AACJ,aAAK,eAAe,CAClB,OAAO,SAAS,SAAS,EACzB,MAAM,SAAS,eAAe,IAC5B,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,eAAe,CAAC,SAAS,WAAW,CACxE,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,eAAe,CAAC,CACnD,GACG,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAC1E,eAAe,CAAC;AAEpB;;IAEI;AACJ,aAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,oBAAoB,GACrD,qBAAqB,GACrB,CAAC,SAAS,sBAAsB,GAChC,iCAAiC,GACjC,KAAK,CAAC;AACV,wBAAgB,uBAAuB,CACrC,OAAO,SAAS,SAAS,EACzB,MAAM,SAAS,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,EAC/C,OAAO,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAExC,IAAI,EAAE,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,GACtC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CA4B5D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/server/src/adapters/aws-lambda/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,IAAI,YAAY,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,iCAAiC,EAClC,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAsB,MAAM,YAAY,CAAC;AAG3D,OAAO,EACL,eAAe,EAEf,gBAAgB,EAIjB,MAAM,SAAS,CAAC;AAEjB,YAAY,EAAE,6BAA6B,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAkG/E;;IAEI;AACJ,aAAK,eAAe,CAClB,OAAO,SAAS,SAAS,EACzB,MAAM,SAAS,eAAe,IAC5B,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,eAAe,CAAC,SAAS,WAAW,CACxE,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,eAAe,CAAC,CACnD,GACG,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAC1E,eAAe,CAAC;AAEpB;;IAEI;AACJ,aAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,oBAAoB,GACrD,qBAAqB,GACrB,CAAC,SAAS,sBAAsB,GAChC,iCAAiC,GACjC,KAAK,CAAC;AACV,wBAAgB,uBAAuB,CACrC,OAAO,SAAS,SAAS,EACzB,MAAM,SAAS,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,EAC/C,OAAO,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAExC,IAAI,EAAE,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,GACtC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CA4B5D"}
@@ -2,189 +2,152 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../router-4e50a6ac.js');
6
- var TRPCError = require('../../TRPCError-9050a68d.js');
7
- require('../../envelopes-2ae27c9f.js');
8
- var resolveHTTPResponse = require('../../resolveHTTPResponse-5d90abc5.js');
9
- require('../../index-1a25ccbd.js');
10
- require('../../transformTRPCResponse-0c261655.js');
5
+ require('../../router-8372703e.js');
6
+ var TRPCError = require('../../TRPCError-9c7830b4.js');
7
+ var resolveHTTPResponse = require('../../resolveHTTPResponse-b486996d.js');
8
+ require('../../codes-1c24d919.js');
9
+ require('../../index-9d687d33.js');
10
+ require('../../transformTRPCResponse-11ac69cc.js');
11
11
 
12
12
  function isPayloadV1(event) {
13
- return determinePayloadFormat(event) == '1.0';
13
+ return determinePayloadFormat(event) == '1.0';
14
14
  }
15
15
  function isPayloadV2(event) {
16
- return determinePayloadFormat(event) == '2.0';
16
+ return determinePayloadFormat(event) == '2.0';
17
17
  }
18
-
19
18
  function determinePayloadFormat(event) {
20
- // https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html
21
- // According to AWS support, version is is extracted from the version property in the event.
22
- // If there is no version property, then the version is implied as 1.0
23
- const unknownEvent = event;
24
-
25
- if (typeof unknownEvent.version === 'undefined') {
26
- return '1.0';
27
- } else {
28
- if (['1.0', '2.0'].includes(unknownEvent.version)) {
29
- return unknownEvent.version;
19
+ // https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html
20
+ // According to AWS support, version is is extracted from the version property in the event.
21
+ // If there is no version property, then the version is implied as 1.0
22
+ const unknownEvent = event;
23
+ if (typeof unknownEvent.version === 'undefined') {
24
+ return '1.0';
30
25
  } else {
31
- return 'custom';
26
+ if ([
27
+ '1.0',
28
+ '2.0'
29
+ ].includes(unknownEvent.version)) {
30
+ return unknownEvent.version;
31
+ } else {
32
+ return 'custom';
33
+ }
32
34
  }
33
- }
34
35
  }
35
-
36
36
  const UNKNOWN_PAYLOAD_FORMAT_VERSION_ERROR_MESSAGE = 'Custom payload format version not handled by this adapter. Please use either 1.0 or 2.0. More information here' + 'https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html';
37
37
 
38
38
  function lambdaEventToHTTPRequest(event) {
39
- const query = new URLSearchParams();
40
-
41
- for (const [key, value] of Object.entries((_event$queryStringPar = event.queryStringParameters) !== null && _event$queryStringPar !== void 0 ? _event$queryStringPar : {})) {
42
- var _event$queryStringPar;
43
-
44
- if (typeof value !== 'undefined') {
45
- query.append(key, value);
39
+ const query = new URLSearchParams();
40
+ for (const [key, value] of Object.entries(event.queryStringParameters ?? {})){
41
+ if (typeof value !== 'undefined') {
42
+ query.append(key, value);
43
+ }
46
44
  }
47
- }
48
-
49
- return {
50
- method: getHTTPMethod(event),
51
- query: query,
52
- headers: event.headers,
53
- body: event.body
54
- };
45
+ return {
46
+ method: getHTTPMethod(event),
47
+ query: query,
48
+ headers: event.headers,
49
+ body: event.body
50
+ };
55
51
  }
56
-
57
52
  function getHTTPMethod(event) {
58
- if (isPayloadV1(event)) {
59
- return event.httpMethod;
60
- }
61
-
62
- if (isPayloadV2(event)) {
63
- return event.requestContext.http.method;
64
- }
65
-
66
- throw new TRPCError.TRPCError({
67
- code: 'INTERNAL_SERVER_ERROR',
68
- message: UNKNOWN_PAYLOAD_FORMAT_VERSION_ERROR_MESSAGE
69
- });
53
+ if (isPayloadV1(event)) {
54
+ return event.httpMethod;
55
+ }
56
+ if (isPayloadV2(event)) {
57
+ return event.requestContext.http.method;
58
+ }
59
+ throw new TRPCError.TRPCError({
60
+ code: 'INTERNAL_SERVER_ERROR',
61
+ message: UNKNOWN_PAYLOAD_FORMAT_VERSION_ERROR_MESSAGE
62
+ });
70
63
  }
71
-
72
64
  function getPath(event) {
73
- if (isPayloadV1(event)) {
74
- const matches = event.resource.matchAll(/\{(.*?)\}/g);
75
-
76
- for (const match of matches) {
77
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
78
- const group = match[1];
79
-
80
- if (group.includes('+') && event.pathParameters) {
81
- return event.pathParameters[group.replace('+', '')] || '';
82
- }
65
+ if (isPayloadV1(event)) {
66
+ const matches = event.resource.matchAll(/\{(.*?)\}/g);
67
+ for (const match of matches){
68
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
69
+ const group = match[1];
70
+ if (group.includes('+') && event.pathParameters) {
71
+ return event.pathParameters[group.replace('+', '')] || '';
72
+ }
73
+ }
74
+ return event.path.slice(1);
83
75
  }
84
-
85
- return event.path.slice(1);
86
- }
87
-
88
- if (isPayloadV2(event)) {
89
- const matches = event.routeKey.matchAll(/\{(.*?)\}/g);
90
-
91
- for (const match of matches) {
92
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
93
- const group = match[1];
94
-
95
- if (group.includes('+') && event.pathParameters) {
96
- return event.pathParameters[group.replace('+', '')] || '';
97
- }
76
+ if (isPayloadV2(event)) {
77
+ const matches1 = event.routeKey.matchAll(/\{(.*?)\}/g);
78
+ for (const match1 of matches1){
79
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
80
+ const group1 = match1[1];
81
+ if (group1.includes('+') && event.pathParameters) {
82
+ return event.pathParameters[group1.replace('+', '')] || '';
83
+ }
84
+ }
85
+ return event.rawPath.slice(1);
98
86
  }
99
-
100
- return event.rawPath.slice(1);
101
- }
102
-
103
- throw new TRPCError.TRPCError({
104
- code: 'INTERNAL_SERVER_ERROR',
105
- message: UNKNOWN_PAYLOAD_FORMAT_VERSION_ERROR_MESSAGE
106
- });
87
+ throw new TRPCError.TRPCError({
88
+ code: 'INTERNAL_SERVER_ERROR',
89
+ message: UNKNOWN_PAYLOAD_FORMAT_VERSION_ERROR_MESSAGE
90
+ });
107
91
  }
108
-
109
92
  function transformHeaders(headers) {
110
- const obj = {};
111
-
112
- for (const [key, value] of Object.entries(headers)) {
113
- if (typeof value === 'undefined') {
114
- continue;
93
+ const obj = {};
94
+ for (const [key, value] of Object.entries(headers)){
95
+ if (typeof value === 'undefined') {
96
+ continue;
97
+ }
98
+ obj[key] = Array.isArray(value) ? value.join(',') : value;
115
99
  }
116
-
117
- obj[key] = Array.isArray(value) ? value.join(',') : value;
118
- }
119
-
120
- return obj;
100
+ return obj;
121
101
  }
122
-
123
102
  function tRPCOutputToAPIGatewayOutput(event, response) {
124
- if (isPayloadV1(event)) {
125
- var _response$body, _response$headers;
126
-
127
- const resp = {
128
- statusCode: response.status,
129
- body: (_response$body = response.body) !== null && _response$body !== void 0 ? _response$body : '',
130
- headers: transformHeaders((_response$headers = response.headers) !== null && _response$headers !== void 0 ? _response$headers : {})
131
- };
132
- return resp;
133
- } else if (isPayloadV2(event)) {
134
- var _response$body2, _response$headers2;
135
-
136
- const resp = {
137
- statusCode: response.status,
138
- body: (_response$body2 = response.body) !== null && _response$body2 !== void 0 ? _response$body2 : undefined,
139
- headers: transformHeaders((_response$headers2 = response.headers) !== null && _response$headers2 !== void 0 ? _response$headers2 : {})
140
- };
141
- return resp;
142
- } else {
143
- throw new TRPCError.TRPCError({
144
- code: 'INTERNAL_SERVER_ERROR',
145
- message: UNKNOWN_PAYLOAD_FORMAT_VERSION_ERROR_MESSAGE
146
- });
147
- }
103
+ if (isPayloadV1(event)) {
104
+ const resp = {
105
+ statusCode: response.status,
106
+ body: response.body ?? '',
107
+ headers: transformHeaders(response.headers ?? {})
108
+ };
109
+ return resp;
110
+ } else if (isPayloadV2(event)) {
111
+ const resp1 = {
112
+ statusCode: response.status,
113
+ body: response.body ?? undefined,
114
+ headers: transformHeaders(response.headers ?? {})
115
+ };
116
+ return resp1;
117
+ } else {
118
+ throw new TRPCError.TRPCError({
119
+ code: 'INTERNAL_SERVER_ERROR',
120
+ message: UNKNOWN_PAYLOAD_FORMAT_VERSION_ERROR_MESSAGE
121
+ });
122
+ }
148
123
  }
149
- /** Will check the createContext of the TRouter and get the parameter of event.
150
- * @internal
151
- **/
152
-
153
-
154
124
  function awsLambdaRequestHandler(opts) {
155
- return async (event, context) => {
156
- const req = lambdaEventToHTTPRequest(event);
157
- const path = getPath(event);
158
-
159
- const createContext = async function _createContext() {
160
- var _opts$createContext;
161
-
162
- return await ((_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, {
163
- event,
164
- context
165
- }));
166
- };
167
-
168
- const response = await resolveHTTPResponse.resolveHTTPResponse({
169
- router: opts.router,
170
- batching: opts.batching,
171
- responseMeta: opts === null || opts === void 0 ? void 0 : opts.responseMeta,
172
- createContext,
173
- req,
174
- path,
175
- error: null,
176
-
177
- onError(o) {
178
- var _opts$onError;
179
-
180
- opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
181
- req: event
125
+ return async (event, context)=>{
126
+ const req = lambdaEventToHTTPRequest(event);
127
+ const path = getPath(event);
128
+ const createContext = async function _createContext() {
129
+ return await opts.createContext?.({
130
+ event,
131
+ context
132
+ });
133
+ };
134
+ const response = await resolveHTTPResponse.resolveHTTPResponse({
135
+ router: opts.router,
136
+ batching: opts.batching,
137
+ responseMeta: opts?.responseMeta,
138
+ createContext,
139
+ req,
140
+ path,
141
+ error: null,
142
+ onError (o) {
143
+ opts?.onError?.({
144
+ ...o,
145
+ req: event
146
+ });
147
+ }
182
148
  });
183
- }
184
-
185
- });
186
- return tRPCOutputToAPIGatewayOutput(event, response);
187
- };
149
+ return tRPCOutputToAPIGatewayOutput(event, response);
150
+ };
188
151
  }
189
152
 
190
153
  exports.awsLambdaRequestHandler = awsLambdaRequestHandler;