@dokploy/trpc-openapi 0.0.9 → 0.0.11

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 (241) hide show
  1. package/LICENSE +4 -16
  2. package/README.md +164 -86
  3. package/dist/cjs/adapters/express.d.ts +6 -0
  4. package/dist/cjs/adapters/express.d.ts.map +1 -0
  5. package/dist/{adapters → cjs/adapters}/express.js +2 -2
  6. package/dist/cjs/adapters/express.js.map +1 -0
  7. package/dist/cjs/adapters/fastify.d.ts +9 -0
  8. package/dist/cjs/adapters/fastify.d.ts.map +1 -0
  9. package/dist/cjs/adapters/fastify.js +65 -0
  10. package/dist/cjs/adapters/fastify.js.map +1 -0
  11. package/dist/cjs/adapters/fetch.d.ts +8 -0
  12. package/dist/cjs/adapters/fetch.d.ts.map +1 -0
  13. package/dist/cjs/adapters/fetch.js +100 -0
  14. package/dist/cjs/adapters/fetch.js.map +1 -0
  15. package/dist/cjs/adapters/index.d.ts +9 -0
  16. package/dist/cjs/adapters/index.d.ts.map +1 -0
  17. package/dist/cjs/adapters/index.js +25 -0
  18. package/dist/cjs/adapters/index.js.map +1 -0
  19. package/dist/cjs/adapters/koa.d.ts +9 -0
  20. package/dist/cjs/adapters/koa.d.ts.map +1 -0
  21. package/dist/cjs/adapters/koa.js +12 -0
  22. package/dist/cjs/adapters/koa.js.map +1 -0
  23. package/dist/cjs/adapters/next.d.ts +6 -0
  24. package/dist/cjs/adapters/next.d.ts.map +1 -0
  25. package/dist/{adapters → cjs/adapters}/next.js +15 -10
  26. package/dist/cjs/adapters/next.js.map +1 -0
  27. package/dist/{adapters → cjs/adapters}/node-http/core.d.ts +4 -3
  28. package/dist/cjs/adapters/node-http/core.d.ts.map +1 -0
  29. package/dist/{adapters → cjs/adapters}/node-http/core.js +72 -49
  30. package/dist/cjs/adapters/node-http/core.js.map +1 -0
  31. package/dist/cjs/adapters/node-http/errors.d.ts +6 -0
  32. package/dist/cjs/adapters/node-http/errors.d.ts.map +1 -0
  33. package/dist/cjs/adapters/node-http/errors.js +94 -0
  34. package/dist/cjs/adapters/node-http/errors.js.map +1 -0
  35. package/dist/cjs/adapters/node-http/index.d.ts +5 -0
  36. package/dist/cjs/adapters/node-http/index.d.ts.map +1 -0
  37. package/dist/cjs/adapters/node-http/index.js +21 -0
  38. package/dist/cjs/adapters/node-http/index.js.map +1 -0
  39. package/dist/{adapters → cjs/adapters}/node-http/input.d.ts +2 -2
  40. package/dist/cjs/adapters/node-http/input.d.ts.map +1 -0
  41. package/dist/{adapters → cjs/adapters}/node-http/input.js +7 -10
  42. package/dist/cjs/adapters/node-http/input.js.map +1 -0
  43. package/dist/{adapters → cjs/adapters}/node-http/procedures.d.ts +2 -2
  44. package/dist/cjs/adapters/node-http/procedures.d.ts.map +1 -0
  45. package/dist/{adapters → cjs/adapters}/node-http/procedures.js +10 -21
  46. package/dist/cjs/adapters/node-http/procedures.js.map +1 -0
  47. package/dist/cjs/adapters/nuxt.d.ts +6 -0
  48. package/dist/cjs/adapters/nuxt.d.ts.map +1 -0
  49. package/dist/cjs/adapters/nuxt.js +50 -0
  50. package/dist/cjs/adapters/nuxt.js.map +1 -0
  51. package/dist/{adapters → cjs/adapters}/standalone.d.ts +3 -3
  52. package/dist/cjs/adapters/standalone.d.ts.map +1 -0
  53. package/dist/{adapters → cjs/adapters}/standalone.js +5 -1
  54. package/dist/cjs/adapters/standalone.js.map +1 -0
  55. package/dist/cjs/generator/index.d.ts +40 -0
  56. package/dist/cjs/generator/index.d.ts.map +1 -0
  57. package/dist/cjs/generator/index.js +33 -0
  58. package/dist/cjs/generator/index.js.map +1 -0
  59. package/dist/cjs/generator/paths.d.ts +16 -0
  60. package/dist/cjs/generator/paths.d.ts.map +1 -0
  61. package/dist/cjs/generator/paths.js +122 -0
  62. package/dist/cjs/generator/paths.js.map +1 -0
  63. package/dist/cjs/generator/schema.d.ts +15 -0
  64. package/dist/cjs/generator/schema.d.ts.map +1 -0
  65. package/dist/cjs/generator/schema.js +195 -0
  66. package/dist/cjs/generator/schema.js.map +1 -0
  67. package/dist/cjs/index.d.ts +6 -0
  68. package/dist/cjs/index.d.ts.map +1 -0
  69. package/dist/cjs/index.js +24 -0
  70. package/dist/cjs/index.js.map +1 -0
  71. package/dist/cjs/types.d.ts +55 -0
  72. package/dist/cjs/types.d.ts.map +1 -0
  73. package/dist/cjs/types.js.map +1 -0
  74. package/dist/cjs/utils/index.d.ts +5 -0
  75. package/dist/cjs/utils/index.d.ts.map +1 -0
  76. package/dist/{adapters → cjs/utils}/index.js +4 -3
  77. package/dist/cjs/utils/index.js.map +1 -0
  78. package/dist/cjs/utils/method.d.ts +6 -0
  79. package/dist/cjs/utils/method.d.ts.map +1 -0
  80. package/dist/cjs/utils/method.js +29 -0
  81. package/dist/cjs/utils/method.js.map +1 -0
  82. package/dist/cjs/utils/path.d.ts.map +1 -0
  83. package/dist/{utils → cjs/utils}/path.js +1 -1
  84. package/dist/cjs/utils/path.js.map +1 -0
  85. package/dist/cjs/utils/procedure.d.ts +18 -0
  86. package/dist/cjs/utils/procedure.d.ts.map +1 -0
  87. package/dist/cjs/utils/procedure.js +83 -0
  88. package/dist/cjs/utils/procedure.js.map +1 -0
  89. package/dist/cjs/utils/zod.d.ts +16 -0
  90. package/dist/cjs/utils/zod.d.ts.map +1 -0
  91. package/dist/cjs/utils/zod.js +96 -0
  92. package/dist/cjs/utils/zod.js.map +1 -0
  93. package/dist/esm/adapters/express.d.ts +6 -0
  94. package/dist/esm/adapters/express.d.ts.map +1 -0
  95. package/dist/esm/adapters/express.js +8 -0
  96. package/dist/esm/adapters/express.js.map +1 -0
  97. package/dist/esm/adapters/fastify.d.ts +9 -0
  98. package/dist/esm/adapters/fastify.d.ts.map +1 -0
  99. package/dist/esm/adapters/fastify.js +61 -0
  100. package/dist/esm/adapters/fastify.js.map +1 -0
  101. package/dist/esm/adapters/fetch.d.ts +8 -0
  102. package/dist/esm/adapters/fetch.d.ts.map +1 -0
  103. package/dist/esm/adapters/fetch.js +95 -0
  104. package/dist/esm/adapters/fetch.js.map +1 -0
  105. package/dist/esm/adapters/index.d.ts +9 -0
  106. package/dist/esm/adapters/index.d.ts.map +1 -0
  107. package/dist/esm/adapters/index.js +9 -0
  108. package/dist/esm/adapters/index.js.map +1 -0
  109. package/dist/esm/adapters/koa.d.ts +9 -0
  110. package/dist/esm/adapters/koa.d.ts.map +1 -0
  111. package/dist/esm/adapters/koa.js +8 -0
  112. package/dist/esm/adapters/koa.js.map +1 -0
  113. package/dist/esm/adapters/next.d.ts +6 -0
  114. package/dist/esm/adapters/next.d.ts.map +1 -0
  115. package/dist/esm/adapters/next.js +45 -0
  116. package/dist/esm/adapters/next.js.map +1 -0
  117. package/dist/esm/adapters/node-http/core.d.ts +7 -0
  118. package/dist/esm/adapters/node-http/core.d.ts.map +1 -0
  119. package/dist/esm/adapters/node-http/core.js +166 -0
  120. package/dist/esm/adapters/node-http/core.js.map +1 -0
  121. package/dist/esm/adapters/node-http/errors.d.ts +6 -0
  122. package/dist/esm/adapters/node-http/errors.d.ts.map +1 -0
  123. package/dist/esm/adapters/node-http/errors.js +90 -0
  124. package/dist/esm/adapters/node-http/errors.js.map +1 -0
  125. package/dist/esm/adapters/node-http/index.d.ts +5 -0
  126. package/dist/esm/adapters/node-http/index.d.ts.map +1 -0
  127. package/dist/esm/adapters/node-http/index.js +5 -0
  128. package/dist/esm/adapters/node-http/index.js.map +1 -0
  129. package/dist/esm/adapters/node-http/input.d.ts +4 -0
  130. package/dist/esm/adapters/node-http/input.d.ts.map +1 -0
  131. package/dist/esm/adapters/node-http/input.js +65 -0
  132. package/dist/esm/adapters/node-http/input.js.map +1 -0
  133. package/dist/esm/adapters/node-http/procedures.d.ts +12 -0
  134. package/dist/esm/adapters/node-http/procedures.d.ts.map +1 -0
  135. package/dist/esm/adapters/node-http/procedures.js +34 -0
  136. package/dist/esm/adapters/node-http/procedures.js.map +1 -0
  137. package/dist/esm/adapters/nuxt.d.ts +6 -0
  138. package/dist/esm/adapters/nuxt.d.ts.map +1 -0
  139. package/dist/esm/adapters/nuxt.js +45 -0
  140. package/dist/esm/adapters/nuxt.js.map +1 -0
  141. package/dist/esm/adapters/standalone.d.ts +6 -0
  142. package/dist/esm/adapters/standalone.d.ts.map +1 -0
  143. package/dist/esm/adapters/standalone.js +11 -0
  144. package/dist/esm/adapters/standalone.js.map +1 -0
  145. package/dist/esm/generator/index.d.ts +40 -0
  146. package/dist/esm/generator/index.d.ts.map +1 -0
  147. package/dist/esm/generator/index.js +31 -0
  148. package/dist/esm/generator/index.js.map +1 -0
  149. package/dist/esm/generator/paths.d.ts +16 -0
  150. package/dist/esm/generator/paths.d.ts.map +1 -0
  151. package/dist/esm/generator/paths.js +129 -0
  152. package/dist/esm/generator/paths.js.map +1 -0
  153. package/dist/esm/generator/schema.d.ts +15 -0
  154. package/dist/esm/generator/schema.d.ts.map +1 -0
  155. package/dist/esm/generator/schema.js +203 -0
  156. package/dist/esm/generator/schema.js.map +1 -0
  157. package/dist/esm/index.d.ts +6 -0
  158. package/dist/esm/index.d.ts.map +1 -0
  159. package/dist/esm/index.js +6 -0
  160. package/dist/esm/index.js.map +1 -0
  161. package/dist/esm/types.d.ts +55 -0
  162. package/dist/esm/types.d.ts.map +1 -0
  163. package/dist/esm/types.js +2 -0
  164. package/dist/esm/types.js.map +1 -0
  165. package/dist/esm/utils/index.d.ts +5 -0
  166. package/dist/esm/utils/index.d.ts.map +1 -0
  167. package/dist/esm/utils/index.js +5 -0
  168. package/dist/esm/utils/index.js.map +1 -0
  169. package/dist/esm/utils/method.d.ts +6 -0
  170. package/dist/esm/utils/method.d.ts.map +1 -0
  171. package/dist/esm/utils/method.js +22 -0
  172. package/dist/esm/utils/method.js.map +1 -0
  173. package/dist/esm/utils/path.d.ts +4 -0
  174. package/dist/esm/utils/path.d.ts.map +1 -0
  175. package/dist/esm/utils/path.js +11 -0
  176. package/dist/esm/utils/path.js.map +1 -0
  177. package/dist/esm/utils/procedure.d.ts +18 -0
  178. package/dist/esm/utils/procedure.d.ts.map +1 -0
  179. package/dist/esm/utils/procedure.js +79 -0
  180. package/dist/esm/utils/procedure.js.map +1 -0
  181. package/dist/esm/utils/zod.d.ts +16 -0
  182. package/dist/esm/utils/zod.d.ts.map +1 -0
  183. package/dist/esm/utils/zod.js +82 -0
  184. package/dist/esm/utils/zod.js.map +1 -0
  185. package/package.json +52 -46
  186. package/dist/adapters/express.d.ts +0 -8
  187. package/dist/adapters/express.d.ts.map +0 -1
  188. package/dist/adapters/express.js.map +0 -1
  189. package/dist/adapters/index.d.ts +0 -4
  190. package/dist/adapters/index.d.ts.map +0 -1
  191. package/dist/adapters/index.js.map +0 -1
  192. package/dist/adapters/next.d.ts +0 -6
  193. package/dist/adapters/next.d.ts.map +0 -1
  194. package/dist/adapters/next.js.map +0 -1
  195. package/dist/adapters/node-http/core.d.ts.map +0 -1
  196. package/dist/adapters/node-http/core.js.map +0 -1
  197. package/dist/adapters/node-http/errors.d.ts +0 -4
  198. package/dist/adapters/node-http/errors.d.ts.map +0 -1
  199. package/dist/adapters/node-http/errors.js +0 -43
  200. package/dist/adapters/node-http/errors.js.map +0 -1
  201. package/dist/adapters/node-http/input.d.ts.map +0 -1
  202. package/dist/adapters/node-http/input.js.map +0 -1
  203. package/dist/adapters/node-http/procedures.d.ts.map +0 -1
  204. package/dist/adapters/node-http/procedures.js.map +0 -1
  205. package/dist/adapters/standalone.d.ts.map +0 -1
  206. package/dist/adapters/standalone.js.map +0 -1
  207. package/dist/generator/index.d.ts +0 -14
  208. package/dist/generator/index.d.ts.map +0 -1
  209. package/dist/generator/index.js +0 -39
  210. package/dist/generator/index.js.map +0 -1
  211. package/dist/generator/paths.d.ts +0 -4
  212. package/dist/generator/paths.d.ts.map +0 -1
  213. package/dist/generator/paths.js +0 -76
  214. package/dist/generator/paths.js.map +0 -1
  215. package/dist/generator/schema.d.ts +0 -7
  216. package/dist/generator/schema.d.ts.map +0 -1
  217. package/dist/generator/schema.js +0 -185
  218. package/dist/generator/schema.js.map +0 -1
  219. package/dist/index.d.ts +0 -6
  220. package/dist/index.d.ts.map +0 -1
  221. package/dist/index.js +0 -11
  222. package/dist/index.js.map +0 -1
  223. package/dist/types.d.ts +0 -55
  224. package/dist/types.d.ts.map +0 -1
  225. package/dist/types.js.map +0 -1
  226. package/dist/utils/method.d.ts +0 -3
  227. package/dist/utils/method.d.ts.map +0 -1
  228. package/dist/utils/method.js +0 -11
  229. package/dist/utils/method.js.map +0 -1
  230. package/dist/utils/path.d.ts.map +0 -1
  231. package/dist/utils/path.js.map +0 -1
  232. package/dist/utils/procedure.d.ts +0 -14
  233. package/dist/utils/procedure.d.ts.map +0 -1
  234. package/dist/utils/procedure.js +0 -62
  235. package/dist/utils/procedure.js.map +0 -1
  236. package/dist/utils/zod.d.ts +0 -14
  237. package/dist/utils/zod.d.ts.map +0 -1
  238. package/dist/utils/zod.js +0 -115
  239. package/dist/utils/zod.js.map +0 -1
  240. /package/dist/{types.js → cjs/types.js} +0 -0
  241. /package/dist/{utils → cjs/utils}/path.d.ts +0 -0
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createOpenApiFetchHandler = void 0;
4
+ const server_1 = require("@trpc/server");
5
+ const node_http_1 = require("./node-http");
6
+ const getUrlEncodedBody = async (req) => {
7
+ const params = new URLSearchParams(await req.text());
8
+ const data = {};
9
+ for (const key of params.keys()) {
10
+ data[key] = params.getAll(key);
11
+ }
12
+ return data;
13
+ };
14
+ // co-body does not parse Request body correctly
15
+ const getRequestBody = async (req) => {
16
+ var _a, _b;
17
+ try {
18
+ if ((_a = req.headers.get('content-type')) === null || _a === void 0 ? void 0 : _a.includes('application/json')) {
19
+ return {
20
+ isValid: true,
21
+ // use JSON.parse instead of req.json() because req.json() does not throw on invalid JSON
22
+ data: JSON.parse(await req.text()),
23
+ };
24
+ }
25
+ if ((_b = req.headers.get('content-type')) === null || _b === void 0 ? void 0 : _b.includes('application/x-www-form-urlencoded')) {
26
+ return {
27
+ isValid: true,
28
+ data: await getUrlEncodedBody(req),
29
+ };
30
+ }
31
+ return {
32
+ isValid: true,
33
+ data: req.body,
34
+ };
35
+ }
36
+ catch (err) {
37
+ return {
38
+ isValid: false,
39
+ cause: err,
40
+ };
41
+ }
42
+ };
43
+ const createRequestProxy = async (req, url) => {
44
+ const body = await getRequestBody(req);
45
+ return new Proxy(req, {
46
+ get: (target, prop) => {
47
+ if (prop === 'url') {
48
+ return url ? url : target.url;
49
+ }
50
+ if (prop === 'body') {
51
+ if (!body.isValid) {
52
+ throw new server_1.TRPCError({
53
+ code: 'PARSE_ERROR',
54
+ message: 'Failed to parse request body',
55
+ cause: body.cause,
56
+ });
57
+ }
58
+ return body.data;
59
+ }
60
+ return target[prop];
61
+ },
62
+ });
63
+ };
64
+ const createOpenApiFetchHandler = async (opts) => {
65
+ const resHeaders = new Headers();
66
+ const url = new URL(opts.req.url.replace(opts.endpoint, ''));
67
+ const req = await createRequestProxy(opts.req, url.toString());
68
+ // @ts-expect-error FIXME
69
+ const openApiHttpHandler = (0, node_http_1.createOpenApiNodeHttpHandler)(opts);
70
+ return new Promise((resolve) => {
71
+ let statusCode;
72
+ const res = {
73
+ setHeader: (key, value) => {
74
+ if (typeof value === 'string') {
75
+ resHeaders.set(key, value);
76
+ }
77
+ else {
78
+ for (const v of value) {
79
+ resHeaders.append(key, v);
80
+ }
81
+ }
82
+ },
83
+ get statusCode() {
84
+ return statusCode;
85
+ },
86
+ set statusCode(code) {
87
+ statusCode = code;
88
+ },
89
+ end: (body) => {
90
+ resolve(new Response(body, {
91
+ headers: resHeaders,
92
+ status: statusCode,
93
+ }));
94
+ },
95
+ };
96
+ return openApiHttpHandler(req, res);
97
+ });
98
+ };
99
+ exports.createOpenApiFetchHandler = createOpenApiFetchHandler;
100
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/adapters/fetch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export * from './standalone';
2
+ export * from './express';
3
+ export * from './next';
4
+ export * from './fastify';
5
+ export * from './fetch';
6
+ export * from './nuxt';
7
+ export * from './node-http';
8
+ export * from './koa';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./standalone"), exports);
18
+ __exportStar(require("./express"), exports);
19
+ __exportStar(require("./next"), exports);
20
+ __exportStar(require("./fastify"), exports);
21
+ __exportStar(require("./fetch"), exports);
22
+ __exportStar(require("./nuxt"), exports);
23
+ __exportStar(require("./node-http"), exports);
24
+ __exportStar(require("./koa"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,4CAA0B;AAC1B,yCAAuB;AACvB,4CAA0B;AAC1B,0CAAwB;AACxB,yCAAuB;AACvB,8CAA4B;AAC5B,wCAAsB"}
@@ -0,0 +1,9 @@
1
+ import { ParameterizedContext, Middleware } from 'koa';
2
+ import { OpenApiRouter } from '../types';
3
+ import { CreateOpenApiNodeHttpHandlerOptions } from './node-http';
4
+ type Request = ParameterizedContext['req'];
5
+ type Response = ParameterizedContext['res'];
6
+ export type CreateOpenApiKoaMiddlewareOptions<TRouter extends OpenApiRouter> = CreateOpenApiNodeHttpHandlerOptions<TRouter, Request, Response>;
7
+ export declare const createOpenApiKoaMiddleware: <TRouter extends OpenApiRouter>(opts: CreateOpenApiKoaMiddlewareOptions<TRouter>) => Middleware;
8
+ export {};
9
+ //# sourceMappingURL=koa.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"koa.d.ts","sourceRoot":"","sources":["../../../src/adapters/koa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,mCAAmC,EAAgC,MAAM,aAAa,CAAC;AAEhG,KAAK,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AAC3C,KAAK,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AAE5C,MAAM,MAAM,iCAAiC,CAAC,OAAO,SAAS,aAAa,IACzE,mCAAmC,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;AAElE,eAAO,MAAM,0BAA0B,GAAI,OAAO,SAAS,aAAa,EACtE,MAAM,iCAAiC,CAAC,OAAO,CAAC,KAC/C,UAMF,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createOpenApiKoaMiddleware = void 0;
4
+ const node_http_1 = require("./node-http");
5
+ const createOpenApiKoaMiddleware = (opts) => {
6
+ const openApiHttpHandler = (0, node_http_1.createOpenApiNodeHttpHandler)(opts);
7
+ return async (ctx, next) => {
8
+ await openApiHttpHandler(ctx.req, ctx.res, next);
9
+ };
10
+ };
11
+ exports.createOpenApiKoaMiddleware = createOpenApiKoaMiddleware;
12
+ //# sourceMappingURL=koa.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"koa.js","sourceRoot":"","sources":["../../../src/adapters/koa.ts"],"names":[],"mappings":";;;AAEA,2CAAgG;AAQzF,MAAM,0BAA0B,GAAG,CACxC,IAAgD,EACpC,EAAE;IACd,MAAM,kBAAkB,GAAG,IAAA,wCAA4B,EAAC,IAAI,CAAC,CAAC;IAE9D,OAAO,KAAK,EAAE,GAAyB,EAAE,IAAU,EAAE,EAAE;QACrD,MAAM,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,0BAA0B,8BAQrC"}
@@ -0,0 +1,6 @@
1
+ import { NextApiRequest, NextApiResponse } from 'next';
2
+ import { OpenApiRouter } from '../types';
3
+ import { CreateOpenApiNodeHttpHandlerOptions } from './node-http';
4
+ export type CreateOpenApiNextHandlerOptions<TRouter extends OpenApiRouter> = CreateOpenApiNodeHttpHandlerOptions<TRouter, NextApiRequest, NextApiResponse>;
5
+ export declare const createOpenApiNextHandler: <TRouter extends OpenApiRouter>(opts: CreateOpenApiNextHandlerOptions<TRouter>) => (req: NextApiRequest, res: NextApiResponse) => Promise<void>;
6
+ //# sourceMappingURL=next.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next.d.ts","sourceRoot":"","sources":["../../../src/adapters/next.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAwB,aAAa,EAAE,MAAM,UAAU,CAAC;AAE/D,OAAO,EAAE,mCAAmC,EAAgC,MAAM,aAAa,CAAC;AAEhG,MAAM,MAAM,+BAA+B,CAAC,OAAO,SAAS,aAAa,IACvE,mCAAmC,CAAC,OAAO,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;AAEhF,eAAO,MAAM,wBAAwB,GAAI,OAAO,SAAS,aAAa,EACpE,MAAM,+BAA+B,CAAC,OAAO,CAAC,MAIhC,KAAK,cAAc,EAAE,KAAK,eAAe,kBA2CxD,CAAC"}
@@ -2,34 +2,34 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createOpenApiNextHandler = void 0;
4
4
  const server_1 = require("@trpc/server");
5
- const path_1 = require("../utils/path");
6
- const core_1 = require("./node-http/core");
5
+ const utils_1 = require("../utils");
6
+ const node_http_1 = require("./node-http");
7
7
  const createOpenApiNextHandler = (opts) => {
8
- const openApiHttpHandler = (0, core_1.createOpenApiNodeHttpHandler)(opts);
8
+ const openApiHttpHandler = (0, node_http_1.createOpenApiNodeHttpHandler)(opts);
9
9
  return async (req, res) => {
10
10
  var _a;
11
11
  let pathname = null;
12
- if (typeof req.query.trpc === "string") {
12
+ if (typeof req.query.trpc === 'string') {
13
13
  pathname = req.query.trpc;
14
14
  }
15
15
  else if (Array.isArray(req.query.trpc)) {
16
- pathname = req.query.trpc.join("/");
16
+ pathname = req.query.trpc.join('/');
17
17
  }
18
18
  if (pathname === null) {
19
19
  const error = new server_1.TRPCError({
20
- message: 'Query "trpc" not found - is the `trpc-openapi` file named `[...trpc].ts`?',
21
- code: "INTERNAL_SERVER_ERROR",
20
+ message: 'Query "trpc" not found - is the `trpc-to-openapi` file named `[...trpc].ts`?',
21
+ code: 'INTERNAL_SERVER_ERROR',
22
22
  });
23
23
  (_a = opts.onError) === null || _a === void 0 ? void 0 : _a.call(opts, {
24
24
  error,
25
- type: "unknown",
25
+ type: 'unknown',
26
26
  path: undefined,
27
27
  input: undefined,
28
28
  ctx: undefined,
29
29
  req,
30
30
  });
31
31
  res.statusCode = 500;
32
- res.setHeader("Content-Type", "application/json");
32
+ res.setHeader('Content-Type', 'application/json');
33
33
  const body = {
34
34
  message: error.message,
35
35
  code: error.code,
@@ -37,7 +37,12 @@ const createOpenApiNextHandler = (opts) => {
37
37
  res.end(JSON.stringify(body));
38
38
  return;
39
39
  }
40
- req.url = (0, path_1.normalizePath)(pathname);
40
+ if (!('once' in res)) {
41
+ Object.assign(res, {
42
+ once: () => undefined,
43
+ });
44
+ }
45
+ req.url = (0, utils_1.normalizePath)(pathname);
41
46
  await openApiHttpHandler(req, res);
42
47
  };
43
48
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next.js","sourceRoot":"","sources":["../../../src/adapters/next.ts"],"names":[],"mappings":";;;AAAA,yCAAyC;AAIzC,oCAAyC;AACzC,2CAAgG;AAKzF,MAAM,wBAAwB,GAAG,CACtC,IAA8C,EAC9C,EAAE;IACF,MAAM,kBAAkB,GAAG,IAAA,wCAA4B,EAAC,IAAI,CAAC,CAAC;IAE9D,OAAO,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,EAAE;;QACzD,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,IAAI,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QAC5B,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,IAAI,kBAAS,CAAC;gBAC1B,OAAO,EAAE,8EAA8E;gBACvF,IAAI,EAAE,uBAAuB;aAC9B,CAAC,CAAC;YAEH,MAAA,IAAI,CAAC,OAAO,qDAAG;gBACb,KAAK;gBACL,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,SAAS;gBAChB,GAAG,EAAE,SAAS;gBACd,GAAG;aACJ,CAAC,CAAC;YAEH,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;YACrB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;YAClD,MAAM,IAAI,GAAyB;gBACjC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;YACF,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAE9B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;gBACjB,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;aACtB,CAAC,CAAC;QACL,CAAC;QAED,GAAG,CAAC,GAAG,GAAG,IAAA,qBAAa,EAAC,QAAQ,CAAC,CAAC;QAClC,MAAM,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC,CAAC;AACJ,CAAC,CAAC;AAhDW,QAAA,wBAAwB,4BAgDnC"}
@@ -1,6 +1,7 @@
1
- import type { NodeHTTPHandlerOptions, NodeHTTPRequest, NodeHTTPResponse } from "@trpc/server/dist/adapters/node-http";
2
- import type { OpenApiRouter } from "../../types";
3
- export type CreateOpenApiNodeHttpHandlerOptions<TRouter extends OpenApiRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse> = Pick<NodeHTTPHandlerOptions<TRouter, TRequest, TResponse>, "router" | "createContext" | "responseMeta" | "onError" | "maxBodySize">;
1
+ import { type NodeHTTPHandlerOptions, type NodeHTTPResponse } from '@trpc/server/adapters/node-http';
2
+ import { NodeHTTPRequest } from '../../types';
3
+ import { OpenApiRouter } from '../../types';
4
+ export type CreateOpenApiNodeHttpHandlerOptions<TRouter extends OpenApiRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse> = Pick<NodeHTTPHandlerOptions<TRouter, TRequest, TResponse>, 'router' | 'createContext' | 'responseMeta' | 'onError' | 'maxBodySize'>;
4
5
  export type OpenApiNextFunction = () => void;
5
6
  export declare const createOpenApiNodeHttpHandler: <TRouter extends OpenApiRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse>(opts: CreateOpenApiNodeHttpHandlerOptions<TRouter, TRequest, TResponse>) => (req: TRequest, res: TResponse, next?: OpenApiNextFunction) => Promise<void>;
6
7
  //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../src/adapters/node-http/core.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACtB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAKL,aAAa,EAEd,MAAM,aAAa,CAAC;AAkBrB,MAAM,MAAM,mCAAmC,CAC7C,OAAO,SAAS,aAAa,EAC7B,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,IAChC,IAAI,CACN,sBAAsB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,EACpD,QAAQ,GAAG,eAAe,GAAG,cAAc,GAAG,SAAS,GAAG,aAAa,CACxE,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC;AAE7C,eAAO,MAAM,4BAA4B,GACvC,OAAO,SAAS,aAAa,EAC7B,QAAQ,SAAS,eAAe,EAChC,SAAS,SAAS,gBAAgB,EAElC,MAAM,mCAAmC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,MAYzD,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,OAAO,mBAAmB,kBA8KxE,CAAC"}
@@ -1,25 +1,19 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.createOpenApiNodeHttpHandler = void 0;
7
- // @ts-nocheck
8
4
  const server_1 = require("@trpc/server");
9
- const lodash_clonedeep_1 = __importDefault(require("lodash.clonedeep"));
5
+ const unstable_core_do_not_import_1 = require("@trpc/server/unstable-core-do-not-import");
6
+ const zod_1 = require("zod");
10
7
  const generator_1 = require("../../generator");
11
- const method_1 = require("../../utils/method");
12
- const path_1 = require("../../utils/path");
13
- const procedure_1 = require("../../utils/procedure");
14
- const zod_1 = require("../../utils/zod");
8
+ const utils_1 = require("../../utils");
15
9
  const errors_1 = require("./errors");
16
10
  const input_1 = require("./input");
17
11
  const procedures_1 = require("./procedures");
18
12
  const createOpenApiNodeHttpHandler = (opts) => {
19
- const router = (0, lodash_clonedeep_1.default)(opts.router);
13
+ const router = Object.assign({}, opts.router);
20
14
  // Validate router
21
- if (process.env.NODE_ENV !== "production") {
22
- (0, generator_1.generateOpenApiDocument)(router, { title: "", version: "", baseUrl: "" });
15
+ if (process.env.NODE_ENV !== 'production') {
16
+ (0, generator_1.generateOpenApiDocument)(router, { title: '', version: '', baseUrl: '' });
23
17
  }
24
18
  const { createContext, responseMeta, onError, maxBodySize } = opts;
25
19
  const getProcedure = (0, procedures_1.createProcedureCache)(router);
@@ -27,9 +21,9 @@ const createOpenApiNodeHttpHandler = (opts) => {
27
21
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
28
22
  const sendResponse = (statusCode, headers, body) => {
29
23
  res.statusCode = statusCode;
30
- res.setHeader("Content-Type", "application/json");
24
+ res.setHeader('Content-Type', 'application/json');
31
25
  for (const [key, value] of Object.entries(headers)) {
32
- if (typeof value !== "undefined") {
26
+ if (typeof value !== 'undefined') {
33
27
  res.setHeader(key, value);
34
28
  }
35
29
  }
@@ -37,49 +31,79 @@ const createOpenApiNodeHttpHandler = (opts) => {
37
31
  };
38
32
  const method = req.method;
39
33
  const reqUrl = req.url;
40
- const url = new URL(reqUrl.startsWith("/") ? `http://127.0.0.1${reqUrl}` : reqUrl);
41
- const path = (0, path_1.normalizePath)(url.pathname);
42
- const { procedure, pathInput } = (_a = getProcedure(method, path)) !== null && _a !== void 0 ? _a : {};
34
+ const url = new URL(reqUrl.startsWith('/') ? `http://127.0.0.1${reqUrl}` : reqUrl);
35
+ const path = (0, utils_1.normalizePath)(url.pathname);
43
36
  let input = undefined;
44
37
  let ctx = undefined;
38
+ let info = undefined;
45
39
  let data = undefined;
40
+ const { procedure, pathInput } = (_a = getProcedure(method, path)) !== null && _a !== void 0 ? _a : {};
46
41
  try {
47
42
  if (!procedure) {
48
43
  if (next) {
49
44
  return next();
50
45
  }
51
46
  // Can be used for warmup
52
- if (method === "HEAD") {
47
+ if (method === 'HEAD') {
53
48
  sendResponse(204, {}, undefined);
54
49
  return;
55
50
  }
56
51
  throw new server_1.TRPCError({
57
- message: "Not found",
58
- code: "NOT_FOUND",
52
+ message: 'Not found',
53
+ code: 'NOT_FOUND',
54
+ });
55
+ }
56
+ const contentType = (0, utils_1.getContentType)(req);
57
+ const useBody = (0, utils_1.acceptsRequestBody)(method);
58
+ if (useBody && !(contentType === null || contentType === void 0 ? void 0 : contentType.startsWith('application/json'))) {
59
+ throw new server_1.TRPCError({
60
+ code: 'UNSUPPORTED_MEDIA_TYPE',
61
+ message: contentType
62
+ ? `Unsupported content-type "${contentType}`
63
+ : 'Missing content-type header',
59
64
  });
60
65
  }
61
- const useBody = (0, method_1.acceptsRequestBody)(method);
62
- const schema = (0, procedure_1.getInputOutputParsers)(procedure.procedure)
63
- .inputParser;
64
- const unwrappedSchema = (0, zod_1.unwrapZodType)(schema, true);
66
+ const { inputParser } = (0, utils_1.getInputOutputParsers)(procedure.procedure);
67
+ const unwrappedSchema = (0, utils_1.unwrapZodType)(inputParser, true);
65
68
  // input should stay undefined if z.void()
66
- if (!(0, zod_1.instanceofZodTypeLikeVoid)(unwrappedSchema)) {
69
+ if (!(0, utils_1.instanceofZodTypeLikeVoid)(unwrappedSchema)) {
67
70
  input = Object.assign(Object.assign({}, (useBody ? await (0, input_1.getBody)(req, maxBodySize) : (0, input_1.getQuery)(req, url))), pathInput);
68
71
  }
69
72
  // if supported, coerce all string values to correct types
70
- if (zod_1.zodSupportsCoerce) {
71
- if ((0, zod_1.instanceofZodTypeObject)(unwrappedSchema)) {
72
- Object.values(unwrappedSchema.shape).forEach((shapeSchema) => {
73
- const unwrappedShapeSchema = (0, zod_1.unwrapZodType)(shapeSchema, false);
74
- if ((0, zod_1.instanceofZodTypeCoercible)(unwrappedShapeSchema)) {
75
- unwrappedShapeSchema._def.coerce = true;
73
+ if (utils_1.zodSupportsCoerce && (0, utils_1.instanceofZodTypeObject)(unwrappedSchema)) {
74
+ if (!useBody) {
75
+ for (const [key, shape] of Object.entries(unwrappedSchema.shape)) {
76
+ let isArray = false;
77
+ // Check if it's a direct array
78
+ if (shape instanceof zod_1.ZodArray) {
79
+ isArray = true;
76
80
  }
77
- });
81
+ // Check if it's an optional array
82
+ else if ((0, utils_1.instanceofZodTypeOptional)(shape)) {
83
+ const innerType = shape.unwrap();
84
+ if (innerType instanceof zod_1.ZodArray) {
85
+ isArray = true;
86
+ }
87
+ }
88
+ if (isArray && input[key] !== undefined && !Array.isArray(input[key])) {
89
+ input[key] = [input[key]];
90
+ }
91
+ }
78
92
  }
93
+ (0, utils_1.coerceSchema)(unwrappedSchema);
79
94
  }
80
- ctx = await (createContext === null || createContext === void 0 ? void 0 : createContext({ req, res }));
95
+ info = {
96
+ isBatchCall: false,
97
+ accept: null,
98
+ calls: [],
99
+ type: procedure.type,
100
+ connectionParams: null,
101
+ signal: (0, utils_1.getRequestSignal)(req, res, maxBodySize),
102
+ url,
103
+ };
104
+ ctx = await (createContext === null || createContext === void 0 ? void 0 : createContext({ req, res, info }));
81
105
  const caller = router.createCaller(ctx);
82
- const segments = procedure.path.split(".");
106
+ const segments = procedure.path.split('.');
83
107
  const procedureFn = segments.reduce((acc, curr) => acc[curr], caller);
84
108
  data = await procedureFn(input);
85
109
  const meta = responseMeta === null || responseMeta === void 0 ? void 0 : responseMeta({
@@ -88,6 +112,8 @@ const createOpenApiNodeHttpHandler = (opts) => {
88
112
  ctx,
89
113
  data: [data],
90
114
  errors: [],
115
+ info,
116
+ eagerGeneration: true,
91
117
  });
92
118
  const statusCode = (_b = meta === null || meta === void 0 ? void 0 : meta.status) !== null && _b !== void 0 ? _b : 200;
93
119
  const headers = (_c = meta === null || meta === void 0 ? void 0 : meta.headers) !== null && _c !== void 0 ? _c : {};
@@ -98,40 +124,37 @@ const createOpenApiNodeHttpHandler = (opts) => {
98
124
  const error = (0, errors_1.getErrorFromUnknown)(cause);
99
125
  onError === null || onError === void 0 ? void 0 : onError({
100
126
  error,
101
- type: (_d = procedure === null || procedure === void 0 ? void 0 : procedure.type) !== null && _d !== void 0 ? _d : "unknown",
127
+ type: (_d = procedure === null || procedure === void 0 ? void 0 : procedure.type) !== null && _d !== void 0 ? _d : 'unknown',
102
128
  path: procedure === null || procedure === void 0 ? void 0 : procedure.path,
103
129
  input,
104
130
  ctx,
105
131
  req,
106
132
  });
107
133
  const meta = responseMeta === null || responseMeta === void 0 ? void 0 : responseMeta({
108
- type: (_e = procedure === null || procedure === void 0 ? void 0 : procedure.type) !== null && _e !== void 0 ? _e : "unknown",
134
+ type: (_e = procedure === null || procedure === void 0 ? void 0 : procedure.type) !== null && _e !== void 0 ? _e : 'unknown',
109
135
  paths: (procedure === null || procedure === void 0 ? void 0 : procedure.path) ? [procedure === null || procedure === void 0 ? void 0 : procedure.path] : undefined,
110
136
  ctx,
111
137
  data: [data],
112
138
  errors: [error],
139
+ info,
140
+ eagerGeneration: true,
113
141
  });
114
- const errorShape = router.getErrorShape({
142
+ const errorShape = (0, unstable_core_do_not_import_1.getErrorShape)({
143
+ config: router._def._config,
115
144
  error,
116
- type: (_f = procedure === null || procedure === void 0 ? void 0 : procedure.type) !== null && _f !== void 0 ? _f : "unknown",
145
+ type: (_f = procedure === null || procedure === void 0 ? void 0 : procedure.type) !== null && _f !== void 0 ? _f : 'unknown',
117
146
  path: procedure === null || procedure === void 0 ? void 0 : procedure.path,
118
147
  input,
119
148
  ctx,
120
149
  });
121
- const isInputValidationError = error.code === "BAD_REQUEST" &&
150
+ const isInputValidationError = error.code === 'BAD_REQUEST' &&
122
151
  error.cause instanceof Error &&
123
- error.cause.name === "ZodError";
152
+ error.cause.name === 'ZodError';
124
153
  const statusCode = (_h = (_g = meta === null || meta === void 0 ? void 0 : meta.status) !== null && _g !== void 0 ? _g : errors_1.TRPC_ERROR_CODE_HTTP_STATUS[error.code]) !== null && _h !== void 0 ? _h : 500;
125
154
  const headers = (_j = meta === null || meta === void 0 ? void 0 : meta.headers) !== null && _j !== void 0 ? _j : {};
126
- const body = {
127
- message: isInputValidationError
128
- ? "Input validation failed"
129
- : (_l = (_k = errorShape === null || errorShape === void 0 ? void 0 : errorShape.message) !== null && _k !== void 0 ? _k : error.message) !== null && _l !== void 0 ? _l : "An error occurred",
130
- code: error.code,
131
- issues: isInputValidationError
132
- ? error.cause.errors
133
- : undefined,
134
- };
155
+ const body = Object.assign(Object.assign({}, errorShape), { message: isInputValidationError
156
+ ? 'Input validation failed'
157
+ : ((_l = (_k = errorShape === null || errorShape === void 0 ? void 0 : errorShape.message) !== null && _k !== void 0 ? _k : error.message) !== null && _l !== void 0 ? _l : 'An error occurred'), code: error.code, issues: isInputValidationError ? error.cause.issues : undefined });
135
158
  sendResponse(statusCode, headers, body);
136
159
  }
137
160
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../src/adapters/node-http/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { TRPCError } from '@trpc/server';
2
+ export declare const TRPC_ERROR_CODE_HTTP_STATUS: Record<TRPCError['code'], number>;
3
+ export declare const HTTP_STATUS_TRPC_ERROR_CODE: Record<number, TRPCError['code']>;
4
+ export declare const TRPC_ERROR_CODE_MESSAGE: Record<TRPCError['code'], string>;
5
+ export declare function getErrorFromUnknown(cause: unknown): TRPCError;
6
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/adapters/node-http/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAsBzE,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAqBzE,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAsBrE,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,CAwB7D"}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TRPC_ERROR_CODE_MESSAGE = exports.HTTP_STATUS_TRPC_ERROR_CODE = exports.TRPC_ERROR_CODE_HTTP_STATUS = void 0;
4
+ exports.getErrorFromUnknown = getErrorFromUnknown;
5
+ const server_1 = require("@trpc/server");
6
+ exports.TRPC_ERROR_CODE_HTTP_STATUS = {
7
+ PARSE_ERROR: 400,
8
+ BAD_REQUEST: 400,
9
+ NOT_FOUND: 404,
10
+ INTERNAL_SERVER_ERROR: 500,
11
+ UNAUTHORIZED: 401,
12
+ FORBIDDEN: 403,
13
+ TIMEOUT: 408,
14
+ CONFLICT: 409,
15
+ CLIENT_CLOSED_REQUEST: 499,
16
+ PRECONDITION_FAILED: 412,
17
+ PAYLOAD_TOO_LARGE: 413,
18
+ METHOD_NOT_SUPPORTED: 405,
19
+ UNSUPPORTED_MEDIA_TYPE: 415,
20
+ TOO_MANY_REQUESTS: 429,
21
+ UNPROCESSABLE_CONTENT: 422,
22
+ NOT_IMPLEMENTED: 501,
23
+ BAD_GATEWAY: 502,
24
+ SERVICE_UNAVAILABLE: 503,
25
+ GATEWAY_TIMEOUT: 504,
26
+ PAYMENT_REQUIRED: 402,
27
+ PRECONDITION_REQUIRED: 428,
28
+ };
29
+ exports.HTTP_STATUS_TRPC_ERROR_CODE = {
30
+ 400: 'BAD_REQUEST',
31
+ 404: 'NOT_FOUND',
32
+ 500: 'INTERNAL_SERVER_ERROR',
33
+ 401: 'UNAUTHORIZED',
34
+ 403: 'FORBIDDEN',
35
+ 408: 'TIMEOUT',
36
+ 409: 'CONFLICT',
37
+ 499: 'CLIENT_CLOSED_REQUEST',
38
+ 412: 'PRECONDITION_FAILED',
39
+ 413: 'PAYLOAD_TOO_LARGE',
40
+ 405: 'METHOD_NOT_SUPPORTED',
41
+ 415: 'UNSUPPORTED_MEDIA_TYPE',
42
+ 429: 'TOO_MANY_REQUESTS',
43
+ 422: 'UNPROCESSABLE_CONTENT',
44
+ 501: 'NOT_IMPLEMENTED',
45
+ 502: 'BAD_GATEWAY',
46
+ 503: 'SERVICE_UNAVAILABLE',
47
+ 504: 'GATEWAY_TIMEOUT',
48
+ 402: 'PAYMENT_REQUIRED',
49
+ 428: 'PRECONDITION_REQUIRED',
50
+ };
51
+ exports.TRPC_ERROR_CODE_MESSAGE = {
52
+ PARSE_ERROR: 'Parse error',
53
+ BAD_REQUEST: 'Bad request',
54
+ NOT_FOUND: 'Not found',
55
+ INTERNAL_SERVER_ERROR: 'Internal server error',
56
+ UNAUTHORIZED: 'Unauthorized',
57
+ FORBIDDEN: 'Forbidden',
58
+ TIMEOUT: 'Timeout',
59
+ CONFLICT: 'Conflict',
60
+ CLIENT_CLOSED_REQUEST: 'Client closed request',
61
+ PRECONDITION_FAILED: 'Precondition failed',
62
+ PAYLOAD_TOO_LARGE: 'Payload too large',
63
+ METHOD_NOT_SUPPORTED: 'Method not supported',
64
+ TOO_MANY_REQUESTS: 'Too many requests',
65
+ UNPROCESSABLE_CONTENT: 'Unprocessable content',
66
+ NOT_IMPLEMENTED: 'Not implemented',
67
+ BAD_GATEWAY: 'Bad gateway',
68
+ SERVICE_UNAVAILABLE: 'Service unavailable',
69
+ GATEWAY_TIMEOUT: 'Gateway timeout',
70
+ UNSUPPORTED_MEDIA_TYPE: 'Unsupported media type',
71
+ PAYMENT_REQUIRED: 'Payment required',
72
+ PRECONDITION_REQUIRED: 'Precondition required',
73
+ };
74
+ function getErrorFromUnknown(cause) {
75
+ if (cause instanceof Error && cause.name === 'TRPCError') {
76
+ return cause;
77
+ }
78
+ let errorCause = undefined;
79
+ let stack = undefined;
80
+ if (cause instanceof Error) {
81
+ errorCause = cause;
82
+ stack = cause.stack;
83
+ }
84
+ const error = new server_1.TRPCError({
85
+ message: 'Internal server error',
86
+ code: 'INTERNAL_SERVER_ERROR',
87
+ cause: errorCause,
88
+ });
89
+ if (stack) {
90
+ error.stack = stack;
91
+ }
92
+ return error;
93
+ }
94
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/adapters/node-http/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export * from './core';
2
+ export * from './errors';
3
+ export * from './input';
4
+ export * from './procedures';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/node-http/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC"}