@trpc/server 11.18.1-canary.6 → 11.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/aws-lambda/index.cjs +16 -26
- package/dist/adapters/aws-lambda/index.d.cts +6 -16
- package/dist/adapters/aws-lambda/index.d.cts.map +1 -1
- package/dist/adapters/aws-lambda/index.d.mts +6 -16
- package/dist/adapters/aws-lambda/index.d.mts.map +1 -1
- package/dist/adapters/aws-lambda/index.mjs +13 -23
- package/dist/adapters/aws-lambda/index.mjs.map +1 -1
- package/dist/adapters/express.cjs +7 -16
- package/dist/adapters/express.d.cts +4 -11
- package/dist/adapters/express.d.cts.map +1 -1
- package/dist/adapters/express.d.mts +4 -11
- package/dist/adapters/express.d.mts.map +1 -1
- package/dist/adapters/express.mjs +6 -15
- package/dist/adapters/express.mjs.map +1 -1
- package/dist/adapters/fastify/index.cjs +11 -24
- package/dist/adapters/fastify/index.d.cts +7 -14
- package/dist/adapters/fastify/index.d.cts.map +1 -1
- package/dist/adapters/fastify/index.d.mts +7 -14
- package/dist/adapters/fastify/index.d.mts.map +1 -1
- package/dist/adapters/fastify/index.mjs +10 -23
- package/dist/adapters/fastify/index.mjs.map +1 -1
- package/dist/adapters/fetch/index.cjs +7 -12
- package/dist/adapters/fetch/index.d.cts +7 -15
- package/dist/adapters/fetch/index.d.cts.map +1 -1
- package/dist/adapters/fetch/index.d.mts +7 -15
- package/dist/adapters/fetch/index.d.mts.map +1 -1
- package/dist/adapters/fetch/index.mjs +6 -11
- package/dist/adapters/fetch/index.mjs.map +1 -1
- package/dist/adapters/next-app-dir.cjs +13 -3145
- package/dist/adapters/next-app-dir.d.cts +3 -12
- package/dist/adapters/next-app-dir.d.cts.map +1 -1
- package/dist/adapters/next-app-dir.d.mts +3 -12
- package/dist/adapters/next-app-dir.d.mts.map +1 -1
- package/dist/adapters/next-app-dir.mjs +31 -3165
- package/dist/adapters/next-app-dir.mjs.map +1 -1
- package/dist/adapters/next.cjs +8 -16
- package/dist/adapters/next.d.cts +5 -15
- package/dist/adapters/next.d.cts.map +1 -1
- package/dist/adapters/next.d.mts +5 -15
- package/dist/adapters/next.d.mts.map +1 -1
- package/dist/adapters/next.mjs +7 -15
- package/dist/adapters/next.mjs.map +1 -1
- package/dist/adapters/node-http/index.cjs +3 -12
- package/dist/adapters/node-http/index.d.cts +1 -4
- package/dist/adapters/node-http/index.d.mts +1 -4
- package/dist/adapters/node-http/index.mjs +2 -12
- package/dist/adapters/standalone.cjs +21 -21
- package/dist/adapters/standalone.d.cts +9 -14
- package/dist/adapters/standalone.d.cts.map +1 -1
- package/dist/adapters/standalone.d.mts +9 -14
- package/dist/adapters/standalone.d.mts.map +1 -1
- package/dist/adapters/standalone.mjs +17 -19
- package/dist/adapters/standalone.mjs.map +1 -1
- package/dist/adapters/ws.cjs +3 -15
- package/dist/adapters/ws.d.cts +12 -17
- package/dist/adapters/ws.d.cts.map +1 -1
- package/dist/adapters/ws.d.mts +12 -17
- package/dist/adapters/ws.d.mts.map +1 -1
- package/dist/adapters/ws.mjs +2 -15
- package/dist/{codes-BfZsPdy-.cjs → codes-C6ZIq69A.cjs} +78 -74
- package/dist/{codes-DagpWZLc.mjs → codes-D5Ya6_Bi.mjs} +10 -4
- package/dist/codes-D5Ya6_Bi.mjs.map +1 -0
- package/dist/{contentTypeParsers-iAFF_pJG.cjs → contentTypeParsers-DUzXRHT1.cjs} +6 -8
- package/dist/{contentTypeParsers-SN4WL9ze.mjs → contentTypeParsers-KFMy_fwz.mjs} +3 -3
- package/dist/contentTypeParsers-KFMy_fwz.mjs.map +1 -0
- package/dist/getErrorShape-B0JBUs-i.mjs +209 -0
- package/dist/getErrorShape-B0JBUs-i.mjs.map +1 -0
- package/dist/getErrorShape-DeIapApr.cjs +272 -0
- package/dist/http.cjs +5 -9
- package/dist/http.d.cts +2 -3
- package/dist/http.d.mts +2 -3
- package/dist/http.mjs +4 -9
- package/dist/{index.d-DhhodpGb.d.mts → index-BHatz_Pu.d.cts} +3 -8
- package/dist/index-BHatz_Pu.d.cts.map +1 -0
- package/dist/{index.d-BiUz7kM_.d.cts → index-BMimGNYb.d.cts} +2 -5
- package/dist/index-BMimGNYb.d.cts.map +1 -0
- package/dist/{index.d-D4qZxQJh.d.mts → index-BMimGNYb.d.mts} +2 -5
- package/dist/index-BMimGNYb.d.mts.map +1 -0
- package/dist/{index.d-fBAdSX6g.d.cts → index-_jAhoJQ7.d.mts} +3 -8
- package/dist/index-_jAhoJQ7.d.mts.map +1 -0
- package/dist/index.cjs +5 -6
- package/dist/index.d.cts +10 -4
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +10 -4
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +4 -6
- package/dist/{initTRPC-BRf4imah.mjs → initTRPC-B259os3T.mjs} +85 -83
- package/dist/initTRPC-B259os3T.mjs.map +1 -0
- package/dist/{initTRPC-_cqIfGlH.cjs → initTRPC-B7UdX-c3.cjs} +133 -132
- package/dist/{node-http-n0vBVXjb.mjs → node-http-BUlb5EdB.mjs} +29 -26
- package/dist/node-http-BUlb5EdB.mjs.map +1 -0
- package/dist/{node-http-CSXWJkwC.cjs → node-http-CikCqjt6.cjs} +48 -46
- package/dist/observable/index.cjs +4 -4
- package/dist/observable/index.d.cts +2 -2
- package/dist/observable/index.d.mts +2 -2
- package/dist/observable/index.mjs +3 -4
- package/dist/{observable-B1Nk6r1H.cjs → observable-CIyO2eSm.cjs} +28 -32
- package/dist/{observable-CUiPknO-.mjs → observable-CSprJVOf.mjs} +6 -10
- package/dist/observable-CSprJVOf.mjs.map +1 -0
- package/dist/{observable-BVzLuBs6.cjs → observable-D8mqXlHG.cjs} +34 -39
- package/dist/{observable-UMO3vUa_.mjs → observable-DwUFSuKv.mjs} +10 -12
- package/dist/observable-DwUFSuKv.mjs.map +1 -0
- package/dist/{parseTRPCMessage-7Ltmq-Fb.cjs → parseTRPCMessage-BxAIUx49.cjs} +14 -18
- package/dist/{parseTRPCMessage-CTow-umk.mjs → parseTRPCMessage-MJWDg1vX.mjs} +6 -9
- package/dist/parseTRPCMessage-MJWDg1vX.mjs.map +1 -0
- package/dist/{resolveResponse-Djb7nJqb.cjs → resolveResponse-DLpzHrPG.cjs} +505 -583
- package/dist/{resolveResponse-C7cFScHo.mjs → resolveResponse-JtMyT9TQ.mjs} +412 -489
- package/dist/resolveResponse-JtMyT9TQ.mjs.map +1 -0
- package/dist/rolldown-runtime-VH7oDXx4.cjs +28 -0
- package/dist/rpc.cjs +4 -4
- package/dist/rpc.d.cts +2 -3
- package/dist/rpc.d.mts +2 -3
- package/dist/rpc.mjs +3 -4
- package/dist/shared.cjs +3 -4
- package/dist/shared.d.cts +2 -4
- package/dist/shared.d.mts +2 -4
- package/dist/shared.mjs +2 -4
- package/dist/{tracked-DFxm8M2u.cjs → tracked-BQJb0ANk.cjs} +125 -142
- package/dist/{tracked-DWInO6EQ.mjs → tracked-D4jU_Hb3.mjs} +42 -58
- package/dist/tracked-D4jU_Hb3.mjs.map +1 -0
- package/dist/{unstable-core-do-not-import.d-BdVSvUCr.d.mts → unstable-core-do-not-import-B9ZnrQAU.d.cts} +37 -69
- package/dist/unstable-core-do-not-import-B9ZnrQAU.d.cts.map +1 -0
- package/dist/{unstable-core-do-not-import.d-Dh9CT5RO.d.cts → unstable-core-do-not-import-BK_OKrtM.d.mts} +37 -69
- package/dist/unstable-core-do-not-import-BK_OKrtM.d.mts.map +1 -0
- package/dist/unstable-core-do-not-import.cjs +33 -12
- package/dist/unstable-core-do-not-import.d.cts +2 -3
- package/dist/unstable-core-do-not-import.d.mts +2 -3
- package/dist/unstable-core-do-not-import.mjs +32 -10
- package/dist/unstable-core-do-not-import.mjs.map +1 -0
- package/dist/{ws-Cq69JO4d.cjs → ws-BMSSVFiW.cjs} +59 -65
- package/dist/{ws-DyeWX-EY.mjs → ws-C7ZOJJeA.mjs} +41 -46
- package/dist/ws-C7ZOJJeA.mjs.map +1 -0
- package/package.json +13 -13
- package/src/adapters/aws-lambda/getPlanner.ts +1 -2
- package/src/adapters/aws-lambda/index.ts +1 -2
- package/src/adapters/ws.ts +3 -2
- package/src/adapters/wsEncoder.ts +1 -1
- package/src/observable/behaviorSubject.ts +4 -2
- package/src/observable/types.ts +4 -2
- package/src/unstable-core-do-not-import/clientish/inferrable.ts +1 -4
- package/src/unstable-core-do-not-import/http/contentType.ts +1 -1
- package/src/unstable-core-do-not-import/http/resolveResponse.ts +4 -9
- package/src/unstable-core-do-not-import/http/types.ts +8 -4
- package/src/unstable-core-do-not-import/initTRPC.ts +10 -10
- package/src/unstable-core-do-not-import/middleware.ts +3 -2
- package/src/unstable-core-do-not-import/procedure.ts +11 -11
- package/src/unstable-core-do-not-import/router.ts +4 -5
- package/src/unstable-core-do-not-import/rpc/envelopes.ts +33 -34
- package/src/unstable-core-do-not-import/rpc/parseTRPCMessage.ts +2 -3
- package/src/unstable-core-do-not-import/stream/jsonl.ts +1 -2
- package/src/unstable-core-do-not-import/stream/sse.ts +18 -12
- package/src/unstable-core-do-not-import/stream/utils/mergeAsyncIterables.ts +5 -2
- package/src/unstable-core-do-not-import/stream/utils/withPing.ts +1 -3
- package/src/unstable-core-do-not-import/transformer.ts +1 -4
- package/src/unstable-core-do-not-import/types.ts +9 -10
- package/dist/codes-DagpWZLc.mjs.map +0 -1
- package/dist/contentTypeParsers-SN4WL9ze.mjs.map +0 -1
- package/dist/getErrorShape-BPSzUA7W.mjs +0 -269
- package/dist/getErrorShape-BPSzUA7W.mjs.map +0 -1
- package/dist/getErrorShape-Ed1OwssN.cjs +0 -345
- package/dist/http-CWyjOa1l.mjs +0 -0
- package/dist/http-DXy3XyhL.cjs +0 -0
- package/dist/index.d-BiUz7kM_.d.cts.map +0 -1
- package/dist/index.d-CvZXeEyR.d.cts +0 -11
- package/dist/index.d-CvZXeEyR.d.cts.map +0 -1
- package/dist/index.d-D4qZxQJh.d.mts.map +0 -1
- package/dist/index.d-DhhodpGb.d.mts.map +0 -1
- package/dist/index.d-fBAdSX6g.d.cts.map +0 -1
- package/dist/index.d-vq_QHko2.d.mts +0 -11
- package/dist/index.d-vq_QHko2.d.mts.map +0 -1
- package/dist/initTRPC-BRf4imah.mjs.map +0 -1
- package/dist/node-http-n0vBVXjb.mjs.map +0 -1
- package/dist/observable-CUiPknO-.mjs.map +0 -1
- package/dist/observable-UMO3vUa_.mjs.map +0 -1
- package/dist/parseTRPCMessage-CTow-umk.mjs.map +0 -1
- package/dist/resolveResponse-C7cFScHo.mjs.map +0 -1
- package/dist/tracked-DWInO6EQ.mjs.map +0 -1
- package/dist/unstable-core-do-not-import-9NNw8uQM.mjs +0 -31
- package/dist/unstable-core-do-not-import-9NNw8uQM.mjs.map +0 -1
- package/dist/unstable-core-do-not-import-fsjhEhgh.cjs +0 -35
- package/dist/unstable-core-do-not-import.d-BdVSvUCr.d.mts.map +0 -1
- package/dist/unstable-core-do-not-import.d-Dh9CT5RO.d.cts.map +0 -1
- package/dist/ws-DyeWX-EY.mjs.map +0 -1
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
const
|
|
2
|
-
const
|
|
3
|
-
const require_tracked = require(
|
|
4
|
-
|
|
1
|
+
const require_codes = require("./codes-C6ZIq69A.cjs");
|
|
2
|
+
const require_getErrorShape = require("./getErrorShape-DeIapApr.cjs");
|
|
3
|
+
const require_tracked = require("./tracked-BQJb0ANk.cjs");
|
|
5
4
|
//#region src/unstable-core-do-not-import/middleware.ts
|
|
6
|
-
var import_objectSpread2$2 = require_getErrorShape.__toESM(require_getErrorShape.require_objectSpread2(), 1);
|
|
7
5
|
/** @internal */
|
|
8
6
|
const middlewareMarker = "middlewareMarker";
|
|
9
7
|
/**
|
|
@@ -46,7 +44,7 @@ function createInputMiddleware(parse) {
|
|
|
46
44
|
cause
|
|
47
45
|
});
|
|
48
46
|
}
|
|
49
|
-
const combinedInput = require_codes.isObject(opts.input) && require_codes.isObject(parsedInput) ?
|
|
47
|
+
const combinedInput = require_codes.isObject(opts.input) && require_codes.isObject(parsedInput) ? require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, opts.input), parsedInput) : parsedInput;
|
|
50
48
|
return opts.next({ input: combinedInput });
|
|
51
49
|
};
|
|
52
50
|
inputMiddleware._type = "input";
|
|
@@ -61,7 +59,7 @@ function createOutputMiddleware(parse) {
|
|
|
61
59
|
if (!result.ok) return result;
|
|
62
60
|
try {
|
|
63
61
|
const data = await parse(result.data);
|
|
64
|
-
return
|
|
62
|
+
return require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, result), {}, { data });
|
|
65
63
|
} catch (cause) {
|
|
66
64
|
throw new require_tracked.TRPCError({
|
|
67
65
|
message: "Output validation failed",
|
|
@@ -73,10 +71,8 @@ function createOutputMiddleware(parse) {
|
|
|
73
71
|
outputMiddleware._type = "output";
|
|
74
72
|
return outputMiddleware;
|
|
75
73
|
}
|
|
76
|
-
|
|
77
74
|
//#endregion
|
|
78
75
|
//#region src/vendor/standard-schema-v1/error.ts
|
|
79
|
-
var import_defineProperty = require_getErrorShape.__toESM(require_getErrorShape.require_defineProperty(), 1);
|
|
80
76
|
/** A schema error with useful information. */
|
|
81
77
|
var StandardSchemaV1Error = class extends Error {
|
|
82
78
|
/**
|
|
@@ -87,12 +83,11 @@ var StandardSchemaV1Error = class extends Error {
|
|
|
87
83
|
constructor(issues) {
|
|
88
84
|
var _issues$;
|
|
89
85
|
super((_issues$ = issues[0]) === null || _issues$ === void 0 ? void 0 : _issues$.message);
|
|
90
|
-
|
|
86
|
+
require_getErrorShape._defineProperty(this, "issues", void 0);
|
|
91
87
|
this.name = "SchemaError";
|
|
92
88
|
this.issues = issues;
|
|
93
89
|
}
|
|
94
90
|
};
|
|
95
|
-
|
|
96
91
|
//#endregion
|
|
97
92
|
//#region src/unstable-core-do-not-import/parser.ts
|
|
98
93
|
function getParseFn(procedureParser) {
|
|
@@ -115,62 +110,50 @@ function getParseFn(procedureParser) {
|
|
|
115
110
|
};
|
|
116
111
|
throw new Error("Could not find a validator fn");
|
|
117
112
|
}
|
|
118
|
-
|
|
119
113
|
//#endregion
|
|
120
|
-
//#region
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
t[n] = r[n];
|
|
128
|
-
}
|
|
129
|
-
return t;
|
|
114
|
+
//#region \0@oxc-project+runtime@0.149.0/helpers/esm/objectWithoutPropertiesLoose.js
|
|
115
|
+
function _objectWithoutPropertiesLoose(r, e) {
|
|
116
|
+
if (null == r) return {};
|
|
117
|
+
var t = {};
|
|
118
|
+
for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
|
|
119
|
+
if (e.includes(n)) continue;
|
|
120
|
+
t[n] = r[n];
|
|
130
121
|
}
|
|
131
|
-
|
|
132
|
-
}
|
|
133
|
-
|
|
122
|
+
return t;
|
|
123
|
+
}
|
|
134
124
|
//#endregion
|
|
135
|
-
//#region
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
var
|
|
141
|
-
|
|
142
|
-
var s = Object.getOwnPropertySymbols(e);
|
|
143
|
-
for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);
|
|
144
|
-
}
|
|
145
|
-
return i;
|
|
125
|
+
//#region \0@oxc-project+runtime@0.149.0/helpers/esm/objectWithoutProperties.js
|
|
126
|
+
function _objectWithoutProperties(e, t) {
|
|
127
|
+
if (null == e) return {};
|
|
128
|
+
var o, r, i = _objectWithoutPropertiesLoose(e, t);
|
|
129
|
+
if (Object.getOwnPropertySymbols) {
|
|
130
|
+
var s = Object.getOwnPropertySymbols(e);
|
|
131
|
+
for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);
|
|
146
132
|
}
|
|
147
|
-
|
|
148
|
-
}
|
|
149
|
-
|
|
133
|
+
return i;
|
|
134
|
+
}
|
|
150
135
|
//#endregion
|
|
151
136
|
//#region src/unstable-core-do-not-import/procedureBuilder.ts
|
|
152
|
-
var import_objectWithoutProperties = require_getErrorShape.__toESM(require_objectWithoutProperties(), 1);
|
|
153
|
-
var import_objectSpread2$1 = require_getErrorShape.__toESM(require_getErrorShape.require_objectSpread2(), 1);
|
|
154
137
|
const _excluded = [
|
|
155
138
|
"middlewares",
|
|
156
139
|
"inputs",
|
|
157
140
|
"meta"
|
|
158
141
|
];
|
|
159
142
|
function createNewBuilder(def1, def2) {
|
|
160
|
-
const { middlewares = [], inputs, meta } = def2, rest = (
|
|
161
|
-
return createBuilder(
|
|
143
|
+
const { middlewares = [], inputs, meta } = def2, rest = _objectWithoutProperties(def2, _excluded);
|
|
144
|
+
return createBuilder(require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, require_codes.mergeWithoutOverrides(def1, rest)), {}, {
|
|
162
145
|
inputs: [...def1.inputs, ...inputs !== null && inputs !== void 0 ? inputs : []],
|
|
163
146
|
middlewares: [...def1.middlewares, ...middlewares],
|
|
164
|
-
meta: def1.meta && meta ?
|
|
147
|
+
meta: def1.meta && meta ? require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, def1.meta), meta) : meta !== null && meta !== void 0 ? meta : def1.meta
|
|
165
148
|
}));
|
|
166
149
|
}
|
|
167
150
|
function createBuilder(initDef = {}) {
|
|
168
|
-
const _def =
|
|
151
|
+
const _def = require_getErrorShape._objectSpread2({
|
|
169
152
|
procedure: true,
|
|
170
153
|
inputs: [],
|
|
171
154
|
middlewares: []
|
|
172
155
|
}, initDef);
|
|
173
|
-
|
|
156
|
+
return {
|
|
174
157
|
_def,
|
|
175
158
|
input(input) {
|
|
176
159
|
const parser = getParseFn(input);
|
|
@@ -193,26 +176,25 @@ function createBuilder(initDef = {}) {
|
|
|
193
176
|
const middlewares = "_middlewares" in middlewareBuilderOrFn ? middlewareBuilderOrFn._middlewares : [middlewareBuilderOrFn];
|
|
194
177
|
return createNewBuilder(_def, { middlewares });
|
|
195
178
|
},
|
|
196
|
-
unstable_concat(builder
|
|
197
|
-
return createNewBuilder(_def, builder
|
|
179
|
+
unstable_concat(builder) {
|
|
180
|
+
return createNewBuilder(_def, builder._def);
|
|
198
181
|
},
|
|
199
|
-
concat(builder
|
|
200
|
-
return createNewBuilder(_def, builder
|
|
182
|
+
concat(builder) {
|
|
183
|
+
return createNewBuilder(_def, builder._def);
|
|
201
184
|
},
|
|
202
185
|
query(resolver) {
|
|
203
|
-
return createResolver(
|
|
186
|
+
return createResolver(require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, _def), {}, { type: "query" }), resolver);
|
|
204
187
|
},
|
|
205
188
|
mutation(resolver) {
|
|
206
|
-
return createResolver(
|
|
189
|
+
return createResolver(require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, _def), {}, { type: "mutation" }), resolver);
|
|
207
190
|
},
|
|
208
191
|
subscription(resolver) {
|
|
209
|
-
return createResolver(
|
|
192
|
+
return createResolver(require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, _def), {}, { type: "subscription" }), resolver);
|
|
210
193
|
},
|
|
211
194
|
experimental_caller(caller) {
|
|
212
195
|
return createNewBuilder(_def, { caller });
|
|
213
196
|
}
|
|
214
197
|
};
|
|
215
|
-
return builder;
|
|
216
198
|
}
|
|
217
199
|
function createResolver(_defIn, resolver) {
|
|
218
200
|
const finalBuilder = createNewBuilder(_defIn, {
|
|
@@ -227,7 +209,7 @@ function createResolver(_defIn, resolver) {
|
|
|
227
209
|
};
|
|
228
210
|
}]
|
|
229
211
|
});
|
|
230
|
-
const _def =
|
|
212
|
+
const _def = require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, finalBuilder._def), {}, {
|
|
231
213
|
type: _defIn.type,
|
|
232
214
|
experimental_caller: Boolean(finalBuilder._def.caller),
|
|
233
215
|
meta: finalBuilder._def.meta,
|
|
@@ -253,20 +235,19 @@ If you want to call this function on the server, see https://trpc.io/docs/v11/se
|
|
|
253
235
|
async function callRecursive(index, _def, opts) {
|
|
254
236
|
try {
|
|
255
237
|
const middleware = _def.middlewares[index];
|
|
256
|
-
|
|
238
|
+
return await middleware(require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, opts), {}, {
|
|
257
239
|
meta: _def.meta,
|
|
258
240
|
input: opts.input,
|
|
259
241
|
next(_nextOpts) {
|
|
260
242
|
var _nextOpts$getRawInput;
|
|
261
243
|
const nextOpts = _nextOpts;
|
|
262
|
-
return callRecursive(index + 1, _def,
|
|
263
|
-
ctx: (nextOpts === null || nextOpts === void 0 ? void 0 : nextOpts.ctx) ?
|
|
244
|
+
return callRecursive(index + 1, _def, require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, opts), {}, {
|
|
245
|
+
ctx: (nextOpts === null || nextOpts === void 0 ? void 0 : nextOpts.ctx) ? require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, opts.ctx), nextOpts.ctx) : opts.ctx,
|
|
264
246
|
input: nextOpts && "input" in nextOpts ? nextOpts.input : opts.input,
|
|
265
247
|
getRawInput: (_nextOpts$getRawInput = nextOpts === null || nextOpts === void 0 ? void 0 : nextOpts.getRawInput) !== null && _nextOpts$getRawInput !== void 0 ? _nextOpts$getRawInput : opts.getRawInput
|
|
266
248
|
}));
|
|
267
249
|
}
|
|
268
250
|
}));
|
|
269
|
-
return result;
|
|
270
251
|
} catch (cause) {
|
|
271
252
|
return {
|
|
272
253
|
ok: false,
|
|
@@ -291,19 +272,20 @@ function createProcedureCaller(_def) {
|
|
|
291
272
|
procedure.meta = _def.meta;
|
|
292
273
|
return procedure;
|
|
293
274
|
}
|
|
294
|
-
|
|
295
275
|
//#endregion
|
|
296
276
|
//#region src/unstable-core-do-not-import/rootConfig.ts
|
|
297
|
-
var _globalThis$process
|
|
277
|
+
var _globalThis$process;
|
|
278
|
+
var _globalThis$process2;
|
|
279
|
+
var _globalThis$process3;
|
|
298
280
|
/**
|
|
299
281
|
* The default check to see if we're in a server
|
|
300
282
|
*/
|
|
301
283
|
const isServerDefault = typeof window === "undefined" || "Deno" in window || ((_globalThis$process = globalThis.process) === null || _globalThis$process === void 0 || (_globalThis$process = _globalThis$process.env) === null || _globalThis$process === void 0 ? void 0 : _globalThis$process["NODE_ENV"]) === "test" || !!((_globalThis$process2 = globalThis.process) === null || _globalThis$process2 === void 0 || (_globalThis$process2 = _globalThis$process2.env) === null || _globalThis$process2 === void 0 ? void 0 : _globalThis$process2["JEST_WORKER_ID"]) || !!((_globalThis$process3 = globalThis.process) === null || _globalThis$process3 === void 0 || (_globalThis$process3 = _globalThis$process3.env) === null || _globalThis$process3 === void 0 ? void 0 : _globalThis$process3["VITEST_WORKER_ID"]);
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
284
|
+
/**
|
|
285
|
+
* Builder to initialize the tRPC root object - use this exactly once per backend
|
|
286
|
+
* @see https://trpc.io/docs/v11/quickstart
|
|
287
|
+
*/
|
|
288
|
+
const initTRPC = new class TRPCBuilder {
|
|
307
289
|
/**
|
|
308
290
|
* Add a context shape as a generic to the root object
|
|
309
291
|
* @see https://trpc.io/docs/v11/server/context
|
|
@@ -323,94 +305,113 @@ var TRPCBuilder = class TRPCBuilder {
|
|
|
323
305
|
* @see https://trpc.io/docs/v11/server/routers#initialize-trpc
|
|
324
306
|
*/
|
|
325
307
|
create(opts) {
|
|
326
|
-
var _opts$transformer, _opts$isDev, _globalThis$process
|
|
327
|
-
const config =
|
|
308
|
+
var _opts$transformer, _opts$isDev, _globalThis$process, _opts$allowOutsideOfS, _opts$errorFormatter, _opts$isServer;
|
|
309
|
+
const config = require_getErrorShape._objectSpread2(require_getErrorShape._objectSpread2({}, opts), {}, {
|
|
328
310
|
transformer: require_tracked.getDataTransformer((_opts$transformer = opts === null || opts === void 0 ? void 0 : opts.transformer) !== null && _opts$transformer !== void 0 ? _opts$transformer : require_tracked.defaultTransformer),
|
|
329
|
-
isDev: (_opts$isDev = opts === null || opts === void 0 ? void 0 : opts.isDev) !== null && _opts$isDev !== void 0 ? _opts$isDev : ((_globalThis$process
|
|
311
|
+
isDev: (_opts$isDev = opts === null || opts === void 0 ? void 0 : opts.isDev) !== null && _opts$isDev !== void 0 ? _opts$isDev : ((_globalThis$process = globalThis.process) === null || _globalThis$process === void 0 ? void 0 : _globalThis$process.env["NODE_ENV"]) !== "production",
|
|
330
312
|
allowOutsideOfServer: (_opts$allowOutsideOfS = opts === null || opts === void 0 ? void 0 : opts.allowOutsideOfServer) !== null && _opts$allowOutsideOfS !== void 0 ? _opts$allowOutsideOfS : false,
|
|
331
313
|
errorFormatter: (_opts$errorFormatter = opts === null || opts === void 0 ? void 0 : opts.errorFormatter) !== null && _opts$errorFormatter !== void 0 ? _opts$errorFormatter : require_tracked.defaultFormatter,
|
|
332
314
|
isServer: (_opts$isServer = opts === null || opts === void 0 ? void 0 : opts.isServer) !== null && _opts$isServer !== void 0 ? _opts$isServer : isServerDefault,
|
|
315
|
+
/**
|
|
316
|
+
* These are just types, they can't be used at runtime
|
|
317
|
+
* @internal
|
|
318
|
+
*/
|
|
333
319
|
$types: null
|
|
334
320
|
});
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
const isServer = (_opts$isServer2 = opts === null || opts === void 0 ? void 0 : opts.isServer) !== null && _opts$isServer2 !== void 0 ? _opts$isServer2 : isServerDefault;
|
|
338
|
-
if (!isServer && (opts === null || opts === void 0 ? void 0 : opts.allowOutsideOfServer) !== true) throw new Error(`You're trying to use @trpc/server in a non-server environment. This is not supported by default.`);
|
|
339
|
-
}
|
|
321
|
+
var _opts$isServer2;
|
|
322
|
+
if (!((_opts$isServer2 = opts === null || opts === void 0 ? void 0 : opts.isServer) !== null && _opts$isServer2 !== void 0 ? _opts$isServer2 : isServerDefault) && (opts === null || opts === void 0 ? void 0 : opts.allowOutsideOfServer) !== true) throw new Error(`You're trying to use @trpc/server in a non-server environment. This is not supported by default.`);
|
|
340
323
|
return {
|
|
324
|
+
/**
|
|
325
|
+
* Your router config
|
|
326
|
+
* @internal
|
|
327
|
+
*/
|
|
341
328
|
_config: config,
|
|
329
|
+
/**
|
|
330
|
+
* Builder object for creating procedures
|
|
331
|
+
* @see https://trpc.io/docs/v11/server/procedures
|
|
332
|
+
*/
|
|
342
333
|
procedure: createBuilder({ meta: opts === null || opts === void 0 ? void 0 : opts.defaultMeta }),
|
|
334
|
+
/**
|
|
335
|
+
* Create reusable middlewares
|
|
336
|
+
* @see https://trpc.io/docs/v11/server/middlewares
|
|
337
|
+
*/
|
|
343
338
|
middleware: createMiddlewareFactory(),
|
|
339
|
+
/**
|
|
340
|
+
* Create a router
|
|
341
|
+
* @see https://trpc.io/docs/v11/server/routers
|
|
342
|
+
*/
|
|
344
343
|
router: require_tracked.createRouterFactory(config),
|
|
344
|
+
/**
|
|
345
|
+
* Merge Routers
|
|
346
|
+
* @see https://trpc.io/docs/v11/server/merging-routers
|
|
347
|
+
*/
|
|
345
348
|
mergeRouters: require_tracked.mergeRouters,
|
|
349
|
+
/**
|
|
350
|
+
* Create a server-side caller for a router
|
|
351
|
+
* @see https://trpc.io/docs/v11/server/server-side-calls
|
|
352
|
+
*/
|
|
346
353
|
createCallerFactory: require_tracked.createCallerFactory()
|
|
347
354
|
};
|
|
348
355
|
}
|
|
349
|
-
};
|
|
350
|
-
/**
|
|
351
|
-
* Builder to initialize the tRPC root object - use this exactly once per backend
|
|
352
|
-
* @see https://trpc.io/docs/v11/quickstart
|
|
353
|
-
*/
|
|
354
|
-
const initTRPC = new TRPCBuilder();
|
|
355
|
-
|
|
356
|
+
}();
|
|
356
357
|
//#endregion
|
|
357
|
-
Object.defineProperty(exports,
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
358
|
+
Object.defineProperty(exports, "StandardSchemaV1Error", {
|
|
359
|
+
enumerable: true,
|
|
360
|
+
get: function() {
|
|
361
|
+
return StandardSchemaV1Error;
|
|
362
|
+
}
|
|
362
363
|
});
|
|
363
|
-
Object.defineProperty(exports,
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
364
|
+
Object.defineProperty(exports, "createBuilder", {
|
|
365
|
+
enumerable: true,
|
|
366
|
+
get: function() {
|
|
367
|
+
return createBuilder;
|
|
368
|
+
}
|
|
368
369
|
});
|
|
369
|
-
Object.defineProperty(exports,
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
370
|
+
Object.defineProperty(exports, "createInputMiddleware", {
|
|
371
|
+
enumerable: true,
|
|
372
|
+
get: function() {
|
|
373
|
+
return createInputMiddleware;
|
|
374
|
+
}
|
|
374
375
|
});
|
|
375
|
-
Object.defineProperty(exports,
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
376
|
+
Object.defineProperty(exports, "createMiddlewareFactory", {
|
|
377
|
+
enumerable: true,
|
|
378
|
+
get: function() {
|
|
379
|
+
return createMiddlewareFactory;
|
|
380
|
+
}
|
|
380
381
|
});
|
|
381
|
-
Object.defineProperty(exports,
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
382
|
+
Object.defineProperty(exports, "createOutputMiddleware", {
|
|
383
|
+
enumerable: true,
|
|
384
|
+
get: function() {
|
|
385
|
+
return createOutputMiddleware;
|
|
386
|
+
}
|
|
386
387
|
});
|
|
387
|
-
Object.defineProperty(exports,
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
388
|
+
Object.defineProperty(exports, "experimental_standaloneMiddleware", {
|
|
389
|
+
enumerable: true,
|
|
390
|
+
get: function() {
|
|
391
|
+
return experimental_standaloneMiddleware;
|
|
392
|
+
}
|
|
393
|
+
});
|
|
394
|
+
Object.defineProperty(exports, "getParseFn", {
|
|
395
|
+
enumerable: true,
|
|
396
|
+
get: function() {
|
|
397
|
+
return getParseFn;
|
|
398
|
+
}
|
|
392
399
|
});
|
|
393
|
-
Object.defineProperty(exports,
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
400
|
+
Object.defineProperty(exports, "initTRPC", {
|
|
401
|
+
enumerable: true,
|
|
402
|
+
get: function() {
|
|
403
|
+
return initTRPC;
|
|
404
|
+
}
|
|
398
405
|
});
|
|
399
|
-
Object.defineProperty(exports,
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
406
|
+
Object.defineProperty(exports, "isServerDefault", {
|
|
407
|
+
enumerable: true,
|
|
408
|
+
get: function() {
|
|
409
|
+
return isServerDefault;
|
|
410
|
+
}
|
|
404
411
|
});
|
|
405
|
-
Object.defineProperty(exports,
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
412
|
+
Object.defineProperty(exports, "middlewareMarker", {
|
|
413
|
+
enumerable: true,
|
|
414
|
+
get: function() {
|
|
415
|
+
return middlewareMarker;
|
|
416
|
+
}
|
|
410
417
|
});
|
|
411
|
-
Object.defineProperty(exports, 'middlewareMarker', {
|
|
412
|
-
enumerable: true,
|
|
413
|
-
get: function () {
|
|
414
|
-
return middlewareMarker;
|
|
415
|
-
}
|
|
416
|
-
});
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { isAbortError, resolveResponse } from "./resolveResponse-
|
|
1
|
+
import { p as run } from "./codes-D5Ya6_Bi.mjs";
|
|
2
|
+
import { n as _objectSpread2, t as getErrorShape } from "./getErrorShape-B0JBUs-i.mjs";
|
|
3
|
+
import { g as getTRPCErrorFromUnknown, m as TRPCError, p as transformTRPCResponse } from "./tracked-D4jU_Hb3.mjs";
|
|
4
|
+
import { h as isAbortError, t as resolveResponse } from "./resolveResponse-JtMyT9TQ.mjs";
|
|
5
5
|
import { IncomingMessage } from "node:http";
|
|
6
|
-
|
|
7
6
|
//#region src/adapters/node-http/incomingMessageToRequest.ts
|
|
8
7
|
function createBody(req, opts) {
|
|
9
8
|
if ("body" in req) {
|
|
10
|
-
if (req.body === void 0) return
|
|
9
|
+
if (req.body === void 0) return;
|
|
11
10
|
if (typeof req.body === "string") return req.body;
|
|
12
11
|
if (req.body instanceof IncomingMessage) return req.body;
|
|
13
12
|
return JSON.stringify(req.body);
|
|
@@ -88,10 +87,8 @@ function incomingMessageToRequest(req, res, opts) {
|
|
|
88
87
|
init.body = createBody(req, opts);
|
|
89
88
|
init.duplex = "half";
|
|
90
89
|
}
|
|
91
|
-
|
|
92
|
-
return request;
|
|
90
|
+
return new Request(url, init);
|
|
93
91
|
}
|
|
94
|
-
|
|
95
92
|
//#endregion
|
|
96
93
|
//#region src/adapters/node-http/writeResponse.ts
|
|
97
94
|
async function writeResponseBodyChunk(res, chunk) {
|
|
@@ -154,10 +151,17 @@ async function writeResponse(opts) {
|
|
|
154
151
|
rawResponse.end();
|
|
155
152
|
}
|
|
156
153
|
}
|
|
157
|
-
|
|
158
154
|
//#endregion
|
|
159
155
|
//#region src/adapters/node-http/nodeHTTPRequestHandler.ts
|
|
160
|
-
|
|
156
|
+
/**
|
|
157
|
+
* If you're making an adapter for tRPC and looking at this file for reference, you should import types and functions from `@trpc/server` and `@trpc/server/http`
|
|
158
|
+
*
|
|
159
|
+
* @example
|
|
160
|
+
* ```ts
|
|
161
|
+
* import type { AnyTRPCRouter } from '@trpc/server'
|
|
162
|
+
* import type { HTTPBaseHandlerOptions } from '@trpc/server/http'
|
|
163
|
+
* ```
|
|
164
|
+
*/
|
|
161
165
|
/**
|
|
162
166
|
* @internal
|
|
163
167
|
*/
|
|
@@ -193,7 +197,7 @@ function internal_exceptionHandler(opts) {
|
|
|
193
197
|
async function nodeHTTPRequestHandler(opts) {
|
|
194
198
|
return new Promise((resolve) => {
|
|
195
199
|
var _opts$middleware;
|
|
196
|
-
const handleViaMiddleware = (_opts$middleware = opts.middleware) !== null && _opts$middleware !== void 0 ? _opts$middleware : (_req, _res, next) => next();
|
|
200
|
+
const handleViaMiddleware = (_opts$middleware = opts.middleware) !== null && _opts$middleware !== void 0 ? _opts$middleware : ((_req, _res, next) => next());
|
|
197
201
|
opts.res.once("finish", () => {
|
|
198
202
|
resolve();
|
|
199
203
|
});
|
|
@@ -203,27 +207,26 @@ async function nodeHTTPRequestHandler(opts) {
|
|
|
203
207
|
const request = incomingMessageToRequest(opts.req, opts.res, { maxBodySize: (_opts$maxBodySize = opts.maxBodySize) !== null && _opts$maxBodySize !== void 0 ? _opts$maxBodySize : null });
|
|
204
208
|
const createContext = async (innerOpts) => {
|
|
205
209
|
var _opts$createContext;
|
|
206
|
-
return await ((_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, (
|
|
210
|
+
return await ((_opts$createContext = opts.createContext) === null || _opts$createContext === void 0 ? void 0 : _opts$createContext.call(opts, _objectSpread2(_objectSpread2({}, opts), innerOpts)));
|
|
207
211
|
};
|
|
208
|
-
const response = await resolveResponse((0, import_objectSpread2.default)((0, import_objectSpread2.default)({}, opts), {}, {
|
|
209
|
-
req: request,
|
|
210
|
-
error: err ? getTRPCErrorFromUnknown(err) : null,
|
|
211
|
-
createContext,
|
|
212
|
-
onError(o) {
|
|
213
|
-
var _opts$onError2;
|
|
214
|
-
opts === null || opts === void 0 || (_opts$onError2 = opts.onError) === null || _opts$onError2 === void 0 || _opts$onError2.call(opts, (0, import_objectSpread2.default)((0, import_objectSpread2.default)({}, o), {}, { req: opts.req }));
|
|
215
|
-
}
|
|
216
|
-
}));
|
|
217
212
|
await writeResponse({
|
|
218
213
|
request,
|
|
219
|
-
response,
|
|
214
|
+
response: await resolveResponse(_objectSpread2(_objectSpread2({}, opts), {}, {
|
|
215
|
+
req: request,
|
|
216
|
+
error: err ? getTRPCErrorFromUnknown(err) : null,
|
|
217
|
+
createContext,
|
|
218
|
+
onError(o) {
|
|
219
|
+
var _opts$onError2;
|
|
220
|
+
opts === null || opts === void 0 || (_opts$onError2 = opts.onError) === null || _opts$onError2 === void 0 || _opts$onError2.call(opts, _objectSpread2(_objectSpread2({}, o), {}, { req: opts.req }));
|
|
221
|
+
}
|
|
222
|
+
})),
|
|
220
223
|
rawResponse: opts.res
|
|
221
224
|
});
|
|
222
225
|
}).catch(internal_exceptionHandler(opts));
|
|
223
226
|
});
|
|
224
227
|
});
|
|
225
228
|
}
|
|
226
|
-
|
|
227
229
|
//#endregion
|
|
228
|
-
export {
|
|
229
|
-
|
|
230
|
+
export { incomingMessageToRequest as i, nodeHTTPRequestHandler as n, createURL as r, internal_exceptionHandler as t };
|
|
231
|
+
|
|
232
|
+
//# sourceMappingURL=node-http-BUlb5EdB.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-http-BUlb5EdB.mjs","names":[],"sources":["../src/adapters/node-http/incomingMessageToRequest.ts","../src/adapters/node-http/writeResponse.ts","../src/adapters/node-http/nodeHTTPRequestHandler.ts"],"sourcesContent":["import type * as http from 'http';\nimport { IncomingMessage } from 'node:http';\nimport { TRPCError } from '../../@trpc/server';\nimport type { NodeHTTPRequest, NodeHTTPResponse } from './types';\n\nfunction createBody(\n req: NodeHTTPRequest,\n opts: {\n /**\n * Max body size in bytes. If the body is larger than this, the request will be aborted\n */\n maxBodySize: number | null;\n },\n): RequestInit['body'] {\n // Some adapters will pre-parse the body and add it to the request object\n if ('body' in req) {\n if (req.body === undefined) {\n // If body property exists but is undefined, return undefined\n return undefined;\n }\n // If the body is already a string, return it directly\n if (typeof req.body === 'string') {\n return req.body;\n }\n // formData use\n if (req.body instanceof IncomingMessage) {\n return req.body as any;\n }\n // If body exists but isn't a string, stringify it as JSON\n return JSON.stringify(req.body);\n }\n let size = 0;\n let hasClosed = false;\n\n return new ReadableStream({\n start(controller) {\n const onData = (chunk: Buffer) => {\n size += chunk.length;\n if (!opts.maxBodySize || size <= opts.maxBodySize) {\n controller.enqueue(\n new Uint8Array(chunk.buffer, chunk.byteOffset, chunk.byteLength),\n );\n return;\n }\n controller.error(\n new TRPCError({\n code: 'PAYLOAD_TOO_LARGE',\n }),\n );\n hasClosed = true;\n req.off('data', onData);\n req.off('end', onEnd);\n };\n\n const onEnd = () => {\n if (hasClosed) {\n return;\n }\n hasClosed = true;\n req.off('data', onData);\n req.off('end', onEnd);\n controller.close();\n };\n\n req.on('data', onData);\n req.on('end', onEnd);\n },\n cancel() {\n req.destroy();\n },\n });\n}\nexport function createURL(req: NodeHTTPRequest): URL {\n try {\n const protocol =\n // http2\n (req.headers[':scheme'] && req.headers[':scheme'] === 'https') ||\n // http1\n (req.socket && 'encrypted' in req.socket && req.socket.encrypted)\n ? 'https:'\n : 'http:';\n\n const host = req.headers.host ?? req.headers[':authority'] ?? 'localhost';\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return new URL(req.url!, `${protocol}//${host}`);\n } catch (cause) {\n throw new TRPCError({\n code: 'BAD_REQUEST',\n message: 'Invalid URL',\n cause,\n });\n }\n}\n\nfunction createHeaders(incoming: http.IncomingHttpHeaders): Headers {\n const headers = new Headers();\n\n for (const key in incoming) {\n const value = incoming[key];\n if (typeof key === 'string' && key.startsWith(':')) {\n // Skip HTTP/2 pseudo-headers\n continue;\n }\n\n if (Array.isArray(value)) {\n for (const item of value) {\n headers.append(key, item);\n }\n } else if (value != null) {\n headers.append(key, value);\n }\n }\n\n return headers;\n}\n\n/**\n * Convert an [`IncomingMessage`](https://nodejs.org/api/http.html#class-httpincomingmessage) to a [`Request`](https://developer.mozilla.org/en-US/docs/Web/API/Request)\n */\nexport function incomingMessageToRequest(\n req: NodeHTTPRequest,\n res: NodeHTTPResponse,\n opts: {\n /**\n * Max body size in bytes. If the body is larger than this, the request will be aborted\n */\n maxBodySize: number | null;\n },\n): Request {\n const ac = new AbortController();\n\n const onAbort = () => {\n res.off('close', onAbort);\n req.off('aborted', onAbort);\n\n // abort the request\n ac.abort();\n };\n\n res.once('close', onAbort);\n req.once('aborted', onAbort);\n\n // Get host from either regular header or HTTP/2 pseudo-header\n const url = createURL(req);\n\n const init: RequestInit = {\n headers: createHeaders(req.headers),\n method: req.method,\n signal: ac.signal,\n };\n\n if (req.method !== 'GET' && req.method !== 'HEAD') {\n init.body = createBody(req, opts);\n\n // init.duplex = 'half' must be set when body is a ReadableStream, and Node follows the spec.\n // However, this property is not defined in the TypeScript types for RequestInit, so we have\n // to cast it here in order to set it without a type error.\n // See https://fetch.spec.whatwg.org/#dom-requestinit-duplex\n // @ts-expect-error this is fine\n init.duplex = 'half';\n }\n\n const request = new Request(url, init);\n\n return request;\n}\n","// eslint-disable-next-line no-restricted-imports\nimport { isAbortError } from '../../unstable-core-do-not-import';\nimport type { NodeHTTPResponse } from './types';\n\nasync function writeResponseBodyChunk(\n res: NodeHTTPResponse,\n chunk: Uint8Array,\n) {\n // useful for debugging 🙃\n // console.debug('writing', new TextDecoder().decode(chunk));\n\n if (res.write(chunk) === false) {\n await new Promise<void>((resolve, reject) => {\n const onError = (err: unknown) => {\n reject(err);\n cleanup();\n };\n const onDrain = () => {\n resolve();\n cleanup();\n };\n const cleanup = () => {\n res.off('error', onError);\n res.off('drain', onDrain);\n };\n res.once('error', onError);\n res.once('drain', onDrain);\n });\n }\n}\n/**\n * @internal\n */\n\nexport async function writeResponseBody(opts: {\n res: NodeHTTPResponse;\n signal: AbortSignal;\n body: NonNullable<Response['body']>;\n}) {\n const { res } = opts;\n\n try {\n const writableStream = new WritableStream({\n async write(chunk) {\n await writeResponseBodyChunk(res, chunk);\n res.flush?.();\n },\n });\n\n await opts.body.pipeTo(writableStream, {\n signal: opts.signal,\n });\n } catch (err) {\n if (isAbortError(err)) {\n return;\n }\n throw err;\n }\n}\n/**\n * @internal\n */\n\nexport async function writeResponse(opts: {\n request: Request;\n response: Response;\n rawResponse: NodeHTTPResponse;\n}) {\n const { response, rawResponse } = opts;\n\n // Only override status code if it hasn't been explicitly set in a procedure etc\n if (rawResponse.statusCode === 200) {\n rawResponse.statusCode = response.status;\n }\n for (const [key, value] of response.headers) {\n if (key.toLowerCase() === 'set-cookie') continue;\n rawResponse.setHeader(key, value);\n }\n const cookies = response.headers.getSetCookie();\n if (cookies.length > 0) {\n rawResponse.setHeader('set-cookie', cookies);\n }\n try {\n if (response.body) {\n await writeResponseBody({\n res: rawResponse,\n signal: opts.request.signal,\n body: response.body,\n });\n }\n } catch (err) {\n if (!rawResponse.headersSent) {\n rawResponse.statusCode = 500;\n }\n throw err;\n } finally {\n rawResponse.end();\n }\n}\n","/**\n * If you're making an adapter for tRPC and looking at this file for reference, you should import types and functions from `@trpc/server` and `@trpc/server/http`\n *\n * @example\n * ```ts\n * import type { AnyTRPCRouter } from '@trpc/server'\n * import type { HTTPBaseHandlerOptions } from '@trpc/server/http'\n * ```\n */\n\n// @trpc/server\n\nimport {\n getTRPCErrorFromUnknown,\n transformTRPCResponse,\n type AnyRouter,\n} from '../../@trpc/server';\nimport type { ResolveHTTPRequestOptionsContextFn } from '../../@trpc/server/http';\nimport { resolveResponse } from '../../@trpc/server/http';\n// eslint-disable-next-line no-restricted-imports\nimport { getErrorShape, run } from '../../unstable-core-do-not-import';\nimport { incomingMessageToRequest } from './incomingMessageToRequest';\nimport type {\n NodeHTTPRequest,\n NodeHTTPRequestHandlerOptions,\n NodeHTTPResponse,\n} from './types';\nimport { writeResponse } from './writeResponse';\n\n/**\n * @internal\n */\nexport function internal_exceptionHandler<\n TRouter extends AnyRouter,\n TRequest extends NodeHTTPRequest,\n TResponse extends NodeHTTPResponse,\n>(opts: NodeHTTPRequestHandlerOptions<TRouter, TRequest, TResponse>) {\n return (cause: unknown) => {\n const { res, req } = opts;\n const error = getTRPCErrorFromUnknown(cause);\n\n const shape = getErrorShape({\n config: opts.router._def._config,\n error,\n type: 'unknown',\n path: undefined,\n input: undefined,\n ctx: undefined,\n });\n\n opts.onError?.({\n req,\n error,\n type: 'unknown',\n path: undefined,\n input: undefined,\n ctx: undefined,\n });\n\n const transformed = transformTRPCResponse(opts.router._def._config, {\n error: shape,\n });\n\n res.statusCode = shape.data.httpStatus;\n res.end(JSON.stringify(transformed));\n };\n}\n\n/**\n * @remark the promise never rejects\n */\nexport async function nodeHTTPRequestHandler<\n TRouter extends AnyRouter,\n TRequest extends NodeHTTPRequest,\n TResponse extends NodeHTTPResponse,\n>(opts: NodeHTTPRequestHandlerOptions<TRouter, TRequest, TResponse>) {\n return new Promise<void>((resolve) => {\n const handleViaMiddleware =\n opts.middleware ?? ((_req, _res, next) => next());\n\n opts.res.once('finish', () => {\n resolve();\n });\n return handleViaMiddleware(opts.req, opts.res, (err: unknown) => {\n run(async () => {\n const request = incomingMessageToRequest(opts.req, opts.res, {\n maxBodySize: opts.maxBodySize ?? null,\n });\n\n // Build tRPC dependencies\n const createContext: ResolveHTTPRequestOptionsContextFn<\n TRouter\n > = async (innerOpts) => {\n return await opts.createContext?.({\n ...opts,\n ...innerOpts,\n });\n };\n\n const response = await resolveResponse({\n ...opts,\n req: request,\n error: err ? getTRPCErrorFromUnknown(err) : null,\n createContext,\n onError(o) {\n opts?.onError?.({\n ...o,\n req: opts.req,\n });\n },\n });\n\n await writeResponse({\n request,\n response,\n rawResponse: opts.res,\n });\n }).catch(internal_exceptionHandler(opts));\n });\n });\n}\n"],"mappings":"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"}
|