@trpc/server 9.17.1 → 9.20.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.
Files changed (39) hide show
  1. package/adapters/express/dist/trpc-server-adapters-express.cjs.dev.js +3 -2
  2. package/adapters/express/dist/trpc-server-adapters-express.cjs.prod.js +3 -2
  3. package/adapters/express/dist/trpc-server-adapters-express.esm.js +3 -2
  4. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.d.ts +1 -0
  5. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.dev.js +102 -0
  6. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.js +7 -0
  7. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.prod.js +102 -0
  8. package/adapters/fastify/dist/trpc-server-adapters-fastify.esm.js +97 -0
  9. package/adapters/fastify/package.json +4 -0
  10. package/adapters/next/dist/trpc-server-adapters-next.cjs.dev.js +2 -1
  11. package/adapters/next/dist/trpc-server-adapters-next.cjs.prod.js +2 -1
  12. package/adapters/next/dist/trpc-server-adapters-next.esm.js +2 -1
  13. package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.dev.js +2 -1
  14. package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.prod.js +2 -1
  15. package/adapters/node-http/dist/trpc-server-adapters-node-http.esm.js +2 -1
  16. package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.dev.js +3 -2
  17. package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.prod.js +3 -2
  18. package/adapters/standalone/dist/trpc-server-adapters-standalone.esm.js +3 -2
  19. package/dist/declarations/src/adapters/fastify/fastifyRequestHandler.d.ts +13 -0
  20. package/dist/declarations/src/adapters/fastify/fastifyRequestHandler.d.ts.map +1 -0
  21. package/dist/declarations/src/adapters/fastify/fastifyTRPCPlugin.d.ts +12 -0
  22. package/dist/declarations/src/adapters/fastify/fastifyTRPCPlugin.d.ts.map +1 -0
  23. package/dist/declarations/src/adapters/fastify/index.d.ts +3 -0
  24. package/dist/declarations/src/adapters/fastify/index.d.ts.map +1 -0
  25. package/dist/nodeHTTPRequestHandler-2cc444d8.cjs.dev.js +108 -0
  26. package/dist/nodeHTTPRequestHandler-8ddacc19.cjs.prod.js +108 -0
  27. package/dist/nodeHTTPRequestHandler-d00c1126.esm.js +106 -0
  28. package/dist/{nodeHTTPRequestHandler-b7ff366e.cjs.dev.js → resolveHTTPResponse-3867844c.cjs.dev.js} +0 -103
  29. package/dist/{nodeHTTPRequestHandler-7325b53f.cjs.prod.js → resolveHTTPResponse-562c3d62.cjs.prod.js} +0 -103
  30. package/dist/{nodeHTTPRequestHandler-2e6cc2d7.esm.js → resolveHTTPResponse-85f3f5df.esm.js} +1 -103
  31. package/dist/trpc-server.cjs.dev.js +9 -8
  32. package/dist/trpc-server.cjs.prod.js +9 -8
  33. package/dist/trpc-server.esm.js +4 -3
  34. package/package.json +8 -3
  35. package/src/adapters/express.ts +1 -1
  36. package/src/adapters/fastify/fastifyRequestHandler.ts +79 -0
  37. package/src/adapters/fastify/fastifyTRPCPlugin.ts +48 -0
  38. package/src/adapters/fastify/index.ts +2 -0
  39. package/src/adapters/standalone.ts +1 -1
@@ -2,15 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-b7ff366e.cjs.dev.js');
5
+ var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-2cc444d8.cjs.dev.js');
6
6
  require('url');
7
+ require('../../../dist/resolveHTTPResponse-3867844c.cjs.dev.js');
7
8
  require('../../../dist/transformTRPCResponse-8248515e.cjs.dev.js');
8
9
  require('../../../dist/codes-33cef953.cjs.dev.js');
9
10
 
10
11
  /* eslint-disable @typescript-eslint/no-explicit-any */
11
12
  function createExpressMiddleware(opts) {
12
13
  return (req, res) => {
13
- const endpoint = req.path.substr(1);
14
+ const endpoint = req.path.slice(1);
14
15
  nodeHTTPRequestHandler.nodeHTTPRequestHandler({ ...opts,
15
16
  req,
16
17
  res,
@@ -2,15 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-7325b53f.cjs.prod.js');
5
+ var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-8ddacc19.cjs.prod.js');
6
6
  require('url');
7
+ require('../../../dist/resolveHTTPResponse-562c3d62.cjs.prod.js');
7
8
  require('../../../dist/transformTRPCResponse-dcbf66c5.cjs.prod.js');
8
9
  require('../../../dist/codes-e0df67c4.cjs.prod.js');
9
10
 
10
11
  /* eslint-disable @typescript-eslint/no-explicit-any */
11
12
  function createExpressMiddleware(opts) {
12
13
  return (req, res) => {
13
- const endpoint = req.path.substr(1);
14
+ const endpoint = req.path.slice(1);
14
15
  nodeHTTPRequestHandler.nodeHTTPRequestHandler({ ...opts,
15
16
  req,
16
17
  res,
@@ -1,12 +1,13 @@
1
- import { n as nodeHTTPRequestHandler } from '../../../dist/nodeHTTPRequestHandler-2e6cc2d7.esm.js';
1
+ import { n as nodeHTTPRequestHandler } from '../../../dist/nodeHTTPRequestHandler-d00c1126.esm.js';
2
2
  import 'url';
3
+ import '../../../dist/resolveHTTPResponse-85f3f5df.esm.js';
3
4
  import '../../../dist/transformTRPCResponse-f73dc4a2.esm.js';
4
5
  import '../../../dist/codes-fe07bf82.esm.js';
5
6
 
6
7
  /* eslint-disable @typescript-eslint/no-explicit-any */
7
8
  function createExpressMiddleware(opts) {
8
9
  return (req, res) => {
9
- const endpoint = req.path.substr(1);
10
+ const endpoint = req.path.slice(1);
10
11
  nodeHTTPRequestHandler({ ...opts,
11
12
  req,
12
13
  res,
@@ -0,0 +1 @@
1
+ export * from "../../../dist/declarations/src/adapters/fastify/index";
@@ -0,0 +1,102 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var url = require('url');
6
+ var resolveHTTPResponse = require('../../../dist/resolveHTTPResponse-3867844c.cjs.dev.js');
7
+ var adapters_ws_dist_trpcServerAdaptersWs = require('../../ws/dist/trpc-server-adapters-ws.cjs.dev.js');
8
+ require('../../../dist/transformTRPCResponse-8248515e.cjs.dev.js');
9
+ require('../../../dist/codes-33cef953.cjs.dev.js');
10
+ require('../../../dist/subscription-b8831081.cjs.dev.js');
11
+ require('events');
12
+
13
+ resolveHTTPResponse.assertNotBrowser();
14
+ async function fastifyRequestHandler(opts) {
15
+ var _opts$req$body;
16
+
17
+ const createContext = async function _createContext() {
18
+ var _opts$createContext;
19
+
20
+ return (_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts);
21
+ };
22
+
23
+ const query = opts.req.query ? new url.URLSearchParams(opts.req.query) : new url.URLSearchParams(opts.req.url.split('?')[1]);
24
+ const req = {
25
+ query,
26
+ method: opts.req.method,
27
+ headers: opts.req.headers,
28
+ body: (_opts$req$body = opts.req.body) !== null && _opts$req$body !== void 0 ? _opts$req$body : 'null'
29
+ };
30
+ const result = await resolveHTTPResponse.resolveHTTPResponse({
31
+ req,
32
+ createContext,
33
+ path: opts.path,
34
+ router: opts.router,
35
+ batching: opts.batching,
36
+ responseMeta: opts.responseMeta,
37
+
38
+ onError(o) {
39
+ var _opts$onError;
40
+
41
+ opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
42
+ req: opts.req
43
+ });
44
+ }
45
+
46
+ });
47
+ const {
48
+ res
49
+ } = opts;
50
+
51
+ if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
52
+ res.statusCode = result.status;
53
+ }
54
+
55
+ for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
56
+ var _result$headers;
57
+
58
+ if (typeof value === 'undefined') {
59
+ continue;
60
+ }
61
+
62
+ res.header(key, value);
63
+ }
64
+
65
+ res.send(result.body);
66
+ }
67
+
68
+ /// <reference types="fastify-websocket" />
69
+ function fastifyTRPCPlugin(fastify, opts, done) {
70
+ var _opts$prefix;
71
+
72
+ fastify.addContentTypeParser('application/json', {
73
+ parseAs: 'string'
74
+ }, function (_, body, _done) {
75
+ _done(null, body);
76
+ });
77
+ fastify.all(`${(_opts$prefix = opts.prefix) !== null && _opts$prefix !== void 0 ? _opts$prefix : ''}/:path`, (req, res) => {
78
+ const path = req.params.path;
79
+ fastifyRequestHandler({ ...opts.trpcOptions,
80
+ req,
81
+ res,
82
+ path
83
+ });
84
+ });
85
+
86
+ if (opts.useWSS) {
87
+ var _opts$prefix2;
88
+
89
+ adapters_ws_dist_trpcServerAdaptersWs.applyWSSHandler({ ...opts.trpcOptions,
90
+ wss: fastify.websocketServer
91
+ }); // eslint-disable-next-line @typescript-eslint/no-empty-function
92
+
93
+ fastify.get((_opts$prefix2 = opts.prefix) !== null && _opts$prefix2 !== void 0 ? _opts$prefix2 : '/', {
94
+ websocket: true
95
+ }, () => {});
96
+ }
97
+
98
+ done();
99
+ }
100
+
101
+ exports.fastifyRequestHandler = fastifyRequestHandler;
102
+ exports.fastifyTRPCPlugin = fastifyTRPCPlugin;
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ if (process.env.NODE_ENV === "production") {
4
+ module.exports = require("./trpc-server-adapters-fastify.cjs.prod.js");
5
+ } else {
6
+ module.exports = require("./trpc-server-adapters-fastify.cjs.dev.js");
7
+ }
@@ -0,0 +1,102 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var url = require('url');
6
+ var resolveHTTPResponse = require('../../../dist/resolveHTTPResponse-562c3d62.cjs.prod.js');
7
+ var adapters_ws_dist_trpcServerAdaptersWs = require('../../ws/dist/trpc-server-adapters-ws.cjs.prod.js');
8
+ require('../../../dist/transformTRPCResponse-dcbf66c5.cjs.prod.js');
9
+ require('../../../dist/codes-e0df67c4.cjs.prod.js');
10
+ require('../../../dist/subscription-c2e0bfbc.cjs.prod.js');
11
+ require('events');
12
+
13
+ resolveHTTPResponse.assertNotBrowser();
14
+ async function fastifyRequestHandler(opts) {
15
+ var _opts$req$body;
16
+
17
+ const createContext = async function _createContext() {
18
+ var _opts$createContext;
19
+
20
+ return (_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts);
21
+ };
22
+
23
+ const query = opts.req.query ? new url.URLSearchParams(opts.req.query) : new url.URLSearchParams(opts.req.url.split('?')[1]);
24
+ const req = {
25
+ query,
26
+ method: opts.req.method,
27
+ headers: opts.req.headers,
28
+ body: (_opts$req$body = opts.req.body) !== null && _opts$req$body !== void 0 ? _opts$req$body : 'null'
29
+ };
30
+ const result = await resolveHTTPResponse.resolveHTTPResponse({
31
+ req,
32
+ createContext,
33
+ path: opts.path,
34
+ router: opts.router,
35
+ batching: opts.batching,
36
+ responseMeta: opts.responseMeta,
37
+
38
+ onError(o) {
39
+ var _opts$onError;
40
+
41
+ opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
42
+ req: opts.req
43
+ });
44
+ }
45
+
46
+ });
47
+ const {
48
+ res
49
+ } = opts;
50
+
51
+ if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
52
+ res.statusCode = result.status;
53
+ }
54
+
55
+ for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
56
+ var _result$headers;
57
+
58
+ if (typeof value === 'undefined') {
59
+ continue;
60
+ }
61
+
62
+ res.header(key, value);
63
+ }
64
+
65
+ res.send(result.body);
66
+ }
67
+
68
+ /// <reference types="fastify-websocket" />
69
+ function fastifyTRPCPlugin(fastify, opts, done) {
70
+ var _opts$prefix;
71
+
72
+ fastify.addContentTypeParser('application/json', {
73
+ parseAs: 'string'
74
+ }, function (_, body, _done) {
75
+ _done(null, body);
76
+ });
77
+ fastify.all(`${(_opts$prefix = opts.prefix) !== null && _opts$prefix !== void 0 ? _opts$prefix : ''}/:path`, (req, res) => {
78
+ const path = req.params.path;
79
+ fastifyRequestHandler({ ...opts.trpcOptions,
80
+ req,
81
+ res,
82
+ path
83
+ });
84
+ });
85
+
86
+ if (opts.useWSS) {
87
+ var _opts$prefix2;
88
+
89
+ adapters_ws_dist_trpcServerAdaptersWs.applyWSSHandler({ ...opts.trpcOptions,
90
+ wss: fastify.websocketServer
91
+ }); // eslint-disable-next-line @typescript-eslint/no-empty-function
92
+
93
+ fastify.get((_opts$prefix2 = opts.prefix) !== null && _opts$prefix2 !== void 0 ? _opts$prefix2 : '/', {
94
+ websocket: true
95
+ }, () => {});
96
+ }
97
+
98
+ done();
99
+ }
100
+
101
+ exports.fastifyRequestHandler = fastifyRequestHandler;
102
+ exports.fastifyTRPCPlugin = fastifyTRPCPlugin;
@@ -0,0 +1,97 @@
1
+ import { URLSearchParams } from 'url';
2
+ import { a as assertNotBrowser, r as resolveHTTPResponse } from '../../../dist/resolveHTTPResponse-85f3f5df.esm.js';
3
+ import { applyWSSHandler } from '../../ws/dist/trpc-server-adapters-ws.esm.js';
4
+ import '../../../dist/transformTRPCResponse-f73dc4a2.esm.js';
5
+ import '../../../dist/codes-fe07bf82.esm.js';
6
+ import '../../../dist/subscription-fbda2888.esm.js';
7
+ import 'events';
8
+
9
+ assertNotBrowser();
10
+ async function fastifyRequestHandler(opts) {
11
+ var _opts$req$body;
12
+
13
+ const createContext = async function _createContext() {
14
+ var _opts$createContext;
15
+
16
+ return (_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts);
17
+ };
18
+
19
+ const query = opts.req.query ? new URLSearchParams(opts.req.query) : new URLSearchParams(opts.req.url.split('?')[1]);
20
+ const req = {
21
+ query,
22
+ method: opts.req.method,
23
+ headers: opts.req.headers,
24
+ body: (_opts$req$body = opts.req.body) !== null && _opts$req$body !== void 0 ? _opts$req$body : 'null'
25
+ };
26
+ const result = await resolveHTTPResponse({
27
+ req,
28
+ createContext,
29
+ path: opts.path,
30
+ router: opts.router,
31
+ batching: opts.batching,
32
+ responseMeta: opts.responseMeta,
33
+
34
+ onError(o) {
35
+ var _opts$onError;
36
+
37
+ opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
38
+ req: opts.req
39
+ });
40
+ }
41
+
42
+ });
43
+ const {
44
+ res
45
+ } = opts;
46
+
47
+ if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
48
+ res.statusCode = result.status;
49
+ }
50
+
51
+ for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
52
+ var _result$headers;
53
+
54
+ if (typeof value === 'undefined') {
55
+ continue;
56
+ }
57
+
58
+ res.header(key, value);
59
+ }
60
+
61
+ res.send(result.body);
62
+ }
63
+
64
+ /// <reference types="fastify-websocket" />
65
+ function fastifyTRPCPlugin(fastify, opts, done) {
66
+ var _opts$prefix;
67
+
68
+ fastify.addContentTypeParser('application/json', {
69
+ parseAs: 'string'
70
+ }, function (_, body, _done) {
71
+ _done(null, body);
72
+ });
73
+ fastify.all(`${(_opts$prefix = opts.prefix) !== null && _opts$prefix !== void 0 ? _opts$prefix : ''}/:path`, (req, res) => {
74
+ const path = req.params.path;
75
+ fastifyRequestHandler({ ...opts.trpcOptions,
76
+ req,
77
+ res,
78
+ path
79
+ });
80
+ });
81
+
82
+ if (opts.useWSS) {
83
+ var _opts$prefix2;
84
+
85
+ applyWSSHandler({ ...opts.trpcOptions,
86
+ wss: fastify.websocketServer
87
+ }); // eslint-disable-next-line @typescript-eslint/no-empty-function
88
+
89
+ fastify.get((_opts$prefix2 = opts.prefix) !== null && _opts$prefix2 !== void 0 ? _opts$prefix2 : '/', {
90
+ websocket: true
91
+ }, () => {});
92
+ }
93
+
94
+ done();
95
+ }
96
+
97
+ export { fastifyRequestHandler, fastifyTRPCPlugin };
@@ -0,0 +1,4 @@
1
+ {
2
+ "main": "dist/trpc-server-adapters-fastify.cjs.js",
3
+ "module": "dist/trpc-server-adapters-fastify.esm.js"
4
+ }
@@ -3,8 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var transformTRPCResponse = require('../../../dist/transformTRPCResponse-8248515e.cjs.dev.js');
6
- var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-b7ff366e.cjs.dev.js');
6
+ var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-2cc444d8.cjs.dev.js');
7
7
  require('url');
8
+ require('../../../dist/resolveHTTPResponse-3867844c.cjs.dev.js');
8
9
  require('../../../dist/codes-33cef953.cjs.dev.js');
9
10
 
10
11
  /* eslint-disable @typescript-eslint/no-explicit-any */
@@ -3,8 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var transformTRPCResponse = require('../../../dist/transformTRPCResponse-dcbf66c5.cjs.prod.js');
6
- var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-7325b53f.cjs.prod.js');
6
+ var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-8ddacc19.cjs.prod.js');
7
7
  require('url');
8
+ require('../../../dist/resolveHTTPResponse-562c3d62.cjs.prod.js');
8
9
  require('../../../dist/codes-e0df67c4.cjs.prod.js');
9
10
 
10
11
  /* eslint-disable @typescript-eslint/no-explicit-any */
@@ -1,6 +1,7 @@
1
1
  import { T as TRPCError } from '../../../dist/transformTRPCResponse-f73dc4a2.esm.js';
2
- import { n as nodeHTTPRequestHandler } from '../../../dist/nodeHTTPRequestHandler-2e6cc2d7.esm.js';
2
+ import { n as nodeHTTPRequestHandler } from '../../../dist/nodeHTTPRequestHandler-d00c1126.esm.js';
3
3
  import 'url';
4
+ import '../../../dist/resolveHTTPResponse-85f3f5df.esm.js';
4
5
  import '../../../dist/codes-fe07bf82.esm.js';
5
6
 
6
7
  /* eslint-disable @typescript-eslint/no-explicit-any */
@@ -2,8 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-b7ff366e.cjs.dev.js');
5
+ var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-2cc444d8.cjs.dev.js');
6
6
  require('url');
7
+ require('../../../dist/resolveHTTPResponse-3867844c.cjs.dev.js');
7
8
  require('../../../dist/transformTRPCResponse-8248515e.cjs.dev.js');
8
9
  require('../../../dist/codes-33cef953.cjs.dev.js');
9
10
 
@@ -2,8 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-7325b53f.cjs.prod.js');
5
+ var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-8ddacc19.cjs.prod.js');
6
6
  require('url');
7
+ require('../../../dist/resolveHTTPResponse-562c3d62.cjs.prod.js');
7
8
  require('../../../dist/transformTRPCResponse-dcbf66c5.cjs.prod.js');
8
9
  require('../../../dist/codes-e0df67c4.cjs.prod.js');
9
10
 
@@ -1,4 +1,5 @@
1
- export { n as nodeHTTPRequestHandler } from '../../../dist/nodeHTTPRequestHandler-2e6cc2d7.esm.js';
1
+ export { n as nodeHTTPRequestHandler } from '../../../dist/nodeHTTPRequestHandler-d00c1126.esm.js';
2
2
  import 'url';
3
+ import '../../../dist/resolveHTTPResponse-85f3f5df.esm.js';
3
4
  import '../../../dist/transformTRPCResponse-f73dc4a2.esm.js';
4
5
  import '../../../dist/codes-fe07bf82.esm.js';
@@ -4,7 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var http = require('http');
6
6
  var url = require('url');
7
- var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-b7ff366e.cjs.dev.js');
7
+ var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-2cc444d8.cjs.dev.js');
8
+ require('../../../dist/resolveHTTPResponse-3867844c.cjs.dev.js');
8
9
  require('../../../dist/transformTRPCResponse-8248515e.cjs.dev.js');
9
10
  require('../../../dist/codes-33cef953.cjs.dev.js');
10
11
 
@@ -16,7 +17,7 @@ var url__default = /*#__PURE__*/_interopDefault(url);
16
17
  /* eslint-disable @typescript-eslint/no-non-null-assertion */
17
18
  function createHTTPHandler(opts) {
18
19
  return async (req, res) => {
19
- const endpoint = url__default['default'].parse(req.url).pathname.substr(1);
20
+ const endpoint = url__default['default'].parse(req.url).pathname.slice(1);
20
21
  await nodeHTTPRequestHandler.nodeHTTPRequestHandler({ ...opts,
21
22
  req,
22
23
  res,
@@ -4,7 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var http = require('http');
6
6
  var url = require('url');
7
- var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-7325b53f.cjs.prod.js');
7
+ var nodeHTTPRequestHandler = require('../../../dist/nodeHTTPRequestHandler-8ddacc19.cjs.prod.js');
8
+ require('../../../dist/resolveHTTPResponse-562c3d62.cjs.prod.js');
8
9
  require('../../../dist/transformTRPCResponse-dcbf66c5.cjs.prod.js');
9
10
  require('../../../dist/codes-e0df67c4.cjs.prod.js');
10
11
 
@@ -16,7 +17,7 @@ var url__default = /*#__PURE__*/_interopDefault(url);
16
17
  /* eslint-disable @typescript-eslint/no-non-null-assertion */
17
18
  function createHTTPHandler(opts) {
18
19
  return async (req, res) => {
19
- const endpoint = url__default['default'].parse(req.url).pathname.substr(1);
20
+ const endpoint = url__default['default'].parse(req.url).pathname.slice(1);
20
21
  await nodeHTTPRequestHandler.nodeHTTPRequestHandler({ ...opts,
21
22
  req,
22
23
  res,
@@ -1,13 +1,14 @@
1
1
  import http from 'http';
2
2
  import url from 'url';
3
- import { n as nodeHTTPRequestHandler } from '../../../dist/nodeHTTPRequestHandler-2e6cc2d7.esm.js';
3
+ import { n as nodeHTTPRequestHandler } from '../../../dist/nodeHTTPRequestHandler-d00c1126.esm.js';
4
+ import '../../../dist/resolveHTTPResponse-85f3f5df.esm.js';
4
5
  import '../../../dist/transformTRPCResponse-f73dc4a2.esm.js';
5
6
  import '../../../dist/codes-fe07bf82.esm.js';
6
7
 
7
8
  /* eslint-disable @typescript-eslint/no-non-null-assertion */
8
9
  function createHTTPHandler(opts) {
9
10
  return async (req, res) => {
10
- const endpoint = url.parse(req.url).pathname.substr(1);
11
+ const endpoint = url.parse(req.url).pathname.slice(1);
11
12
  await nodeHTTPRequestHandler({ ...opts,
12
13
  req,
13
14
  res,
@@ -0,0 +1,13 @@
1
+ import { FastifyReply, FastifyRequest } from 'fastify';
2
+ import { NodeHTTPCreateContextOption } from '../node-http';
3
+ import { AnyRouter } from '../../router';
4
+ import { HTTPBaseHandlerOptions } from '../../http/internals/types';
5
+ export declare type FastifyHandlerOptions<TRouter extends AnyRouter, TRequest extends FastifyRequest, TResponse extends FastifyReply> = HTTPBaseHandlerOptions<TRouter, TRequest> & NodeHTTPCreateContextOption<TRouter, TRequest, TResponse>;
6
+ declare type FastifyRequestHandlerOptions<TRouter extends AnyRouter, TRequest extends FastifyRequest, TResponse extends FastifyReply> = {
7
+ req: TRequest;
8
+ res: TResponse;
9
+ path: string;
10
+ } & FastifyHandlerOptions<TRouter, TRequest, TResponse>;
11
+ export declare function fastifyRequestHandler<TRouter extends AnyRouter, TRequest extends FastifyRequest, TResponse extends FastifyReply>(opts: FastifyRequestHandlerOptions<TRouter, TRequest, TResponse>): Promise<void>;
12
+ export {};
13
+ //# sourceMappingURL=fastifyRequestHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fastifyRequestHandler.d.ts","sourceRoot":"../../../../../src/adapters/fastify","sources":["fastifyRequestHandler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAsB,MAAM,cAAc,CAAC;AAE7D,OAAO,EACL,sBAAsB,EAEvB,MAAM,4BAA4B,CAAC;AAIpC,oBAAY,qBAAqB,CAC/B,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,cAAc,EAC/B,SAAS,SAAS,YAAY,IAC5B,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAC3C,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE5D,aAAK,4BAA4B,CAC/B,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,cAAc,EAC/B,SAAS,SAAS,YAAY,IAC5B;IACF,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,SAAS,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,qBAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAExD,wBAAsB,qBAAqB,CACzC,OAAO,SAAS,SAAS,EACzB,QAAQ,SAAS,cAAc,EAC/B,SAAS,SAAS,YAAY,EAC9B,IAAI,EAAE,4BAA4B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,iBA4CjE"}
@@ -0,0 +1,12 @@
1
+ import { FastifyInstance, FastifyReply, FastifyRequest } from 'fastify';
2
+ import { NodeHTTPCreateContextFnOptions } from '../node-http';
3
+ import { FastifyHandlerOptions } from '.';
4
+ import { AnyRouter } from '../..';
5
+ export interface FastifyTRPCPluginOptions<TRouter extends AnyRouter> {
6
+ prefix?: string;
7
+ useWSS?: boolean;
8
+ trpcOptions: FastifyHandlerOptions<TRouter, FastifyRequest, FastifyReply>;
9
+ }
10
+ export declare type CreateFastifyContextOptions = NodeHTTPCreateContextFnOptions<FastifyRequest, FastifyReply>;
11
+ export declare function fastifyTRPCPlugin<TRouter extends AnyRouter>(fastify: FastifyInstance, opts: FastifyTRPCPluginOptions<TRouter>, done: (err?: Error) => void): void;
12
+ //# sourceMappingURL=fastifyTRPCPlugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fastifyTRPCPlugin.d.ts","sourceRoot":"../../../../../src/adapters/fastify","sources":["fastifyTRPCPlugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAExE,OAAO,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAE9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,GAAG,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,MAAM,WAAW,wBAAwB,CAAC,OAAO,SAAS,SAAS;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,qBAAqB,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;CAC3E;AAED,oBAAY,2BAA2B,GAAG,8BAA8B,CACtE,cAAc,EACd,YAAY,CACb,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,OAAO,SAAS,SAAS,EACzD,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACvC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,QAyB5B"}
@@ -0,0 +1,3 @@
1
+ export * from './fastifyRequestHandler';
2
+ export * from './fastifyTRPCPlugin';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"../../../../../src/adapters/fastify","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,108 @@
1
+ 'use strict';
2
+
3
+ var url = require('url');
4
+ var resolveHTTPResponse = require('./resolveHTTPResponse-3867844c.cjs.dev.js');
5
+ var transformTRPCResponse = require('./transformTRPCResponse-8248515e.cjs.dev.js');
6
+
7
+ async function getPostBody({
8
+ req,
9
+ maxBodySize
10
+ }) {
11
+ return new Promise(resolve => {
12
+ if ('body' in req) {
13
+ resolve({
14
+ ok: true,
15
+ data: req.body
16
+ });
17
+ return;
18
+ }
19
+
20
+ let body = '';
21
+ let hasBody = false;
22
+ req.on('data', function (data) {
23
+ body += data;
24
+ hasBody = true;
25
+
26
+ if (typeof maxBodySize === 'number' && body.length > maxBodySize) {
27
+ resolve({
28
+ ok: false,
29
+ error: new transformTRPCResponse.TRPCError({
30
+ code: 'PAYLOAD_TOO_LARGE'
31
+ })
32
+ });
33
+ req.socket.destroy();
34
+ }
35
+ });
36
+ req.on('end', () => {
37
+ resolve({
38
+ ok: true,
39
+ data: hasBody ? body : undefined
40
+ });
41
+ });
42
+ });
43
+ }
44
+
45
+ /* eslint-disable @typescript-eslint/no-non-null-assertion */
46
+ resolveHTTPResponse.assertNotBrowser();
47
+ async function nodeHTTPRequestHandler(opts) {
48
+ var _opts$teardown;
49
+
50
+ const createContext = async function _createContext() {
51
+ var _opts$createContext;
52
+
53
+ return await ((_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, opts));
54
+ };
55
+
56
+ const {
57
+ path,
58
+ router
59
+ } = opts;
60
+ const bodyResult = await getPostBody(opts);
61
+ const query = opts.req.query ? new url.URLSearchParams(opts.req.query) : new url.URLSearchParams(opts.req.url.split('?')[1]);
62
+ const req = {
63
+ method: opts.req.method,
64
+ headers: opts.req.headers,
65
+ query,
66
+ body: bodyResult.ok ? bodyResult.data : undefined
67
+ };
68
+ const result = await resolveHTTPResponse.resolveHTTPResponse({
69
+ batching: opts.batching,
70
+ responseMeta: opts.responseMeta,
71
+ path,
72
+ createContext,
73
+ router,
74
+ req,
75
+ error: bodyResult.ok ? null : bodyResult.error,
76
+
77
+ onError(o) {
78
+ var _opts$onError;
79
+
80
+ opts === null || opts === void 0 ? void 0 : (_opts$onError = opts.onError) === null || _opts$onError === void 0 ? void 0 : _opts$onError.call(opts, { ...o,
81
+ req: opts.req
82
+ });
83
+ }
84
+
85
+ });
86
+ const {
87
+ res
88
+ } = opts;
89
+
90
+ if ('status' in result && (!res.statusCode || res.statusCode === 200)) {
91
+ res.statusCode = result.status;
92
+ }
93
+
94
+ for (const [key, value] of Object.entries((_result$headers = result.headers) !== null && _result$headers !== void 0 ? _result$headers : {})) {
95
+ var _result$headers;
96
+
97
+ if (typeof value === 'undefined') {
98
+ continue;
99
+ }
100
+
101
+ res.setHeader(key, value);
102
+ }
103
+
104
+ res.end(result.body);
105
+ await ((_opts$teardown = opts.teardown) === null || _opts$teardown === void 0 ? void 0 : _opts$teardown.call(opts));
106
+ }
107
+
108
+ exports.nodeHTTPRequestHandler = nodeHTTPRequestHandler;