@orpc/server 0.0.0-next.f356b86 → 0.0.0-next.f437dcb
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/README.md +5 -3
- package/dist/adapters/aws-lambda/index.d.mts +7 -6
- package/dist/adapters/aws-lambda/index.d.ts +7 -6
- package/dist/adapters/aws-lambda/index.mjs +5 -4
- package/dist/adapters/bun-ws/index.d.mts +10 -9
- package/dist/adapters/bun-ws/index.d.ts +10 -9
- package/dist/adapters/bun-ws/index.mjs +13 -13
- package/dist/adapters/crossws/index.d.mts +7 -6
- package/dist/adapters/crossws/index.d.ts +7 -6
- package/dist/adapters/crossws/index.mjs +5 -7
- package/dist/adapters/fetch/index.d.mts +54 -8
- package/dist/adapters/fetch/index.d.ts +54 -8
- package/dist/adapters/fetch/index.mjs +73 -3
- package/dist/adapters/message-port/index.d.mts +10 -9
- package/dist/adapters/message-port/index.d.ts +10 -9
- package/dist/adapters/message-port/index.mjs +8 -10
- package/dist/adapters/node/index.d.mts +30 -8
- package/dist/adapters/node/index.d.ts +30 -8
- package/dist/adapters/node/index.mjs +69 -12
- package/dist/adapters/standard/index.d.mts +8 -14
- package/dist/adapters/standard/index.d.ts +8 -14
- package/dist/adapters/standard/index.mjs +2 -2
- package/dist/adapters/standard-peer/index.d.mts +12 -8
- package/dist/adapters/standard-peer/index.d.ts +12 -8
- package/dist/adapters/standard-peer/index.mjs +1 -1
- package/dist/adapters/websocket/index.d.mts +14 -13
- package/dist/adapters/websocket/index.d.ts +14 -13
- package/dist/adapters/websocket/index.mjs +8 -10
- package/dist/adapters/ws/index.d.mts +10 -9
- package/dist/adapters/ws/index.d.ts +10 -9
- package/dist/adapters/ws/index.mjs +8 -10
- package/dist/helpers/index.d.mts +134 -0
- package/dist/helpers/index.d.ts +134 -0
- package/dist/helpers/index.mjs +188 -0
- package/dist/hibernation/index.d.mts +11 -11
- package/dist/hibernation/index.d.ts +11 -11
- package/dist/hibernation/index.mjs +8 -8
- package/dist/index.d.mts +8 -39
- package/dist/index.d.ts +8 -39
- package/dist/index.mjs +7 -6
- package/dist/plugins/index.d.mts +17 -4
- package/dist/plugins/index.d.ts +17 -4
- package/dist/plugins/index.mjs +83 -57
- package/dist/shared/{server.CB8Snncu.mjs → server.2SSWGLDL.mjs} +74 -41
- package/dist/shared/{server.CeW2jMCj.d.ts → server.B7b2w3_i.d.ts} +2 -2
- package/dist/shared/{server.B3dVpAsJ.d.mts → server.BEFBl-Cb.d.mts} +2 -2
- package/dist/shared/server.BU4WI18A.d.mts +32 -0
- package/dist/shared/{server.BE3B4vij.d.ts → server.Bmh5xd4n.d.ts} +3 -3
- package/dist/shared/{server.6ohwBdwx.d.mts → server.CYNGeoCm.d.mts} +6 -4
- package/dist/shared/{server.6ohwBdwx.d.ts → server.CYNGeoCm.d.ts} +6 -4
- package/dist/shared/server.D0H-iaY3.d.ts +32 -0
- package/dist/shared/server.DhJj-1X9.d.mts +42 -0
- package/dist/shared/{server.DLJzqnSX.mjs → server.Dp6pyBjF.mjs} +112 -56
- package/dist/shared/server.UVMTOWrk.mjs +26 -0
- package/dist/shared/{server.BtQsqpPB.d.mts → server.gqRxT-yN.d.mts} +3 -3
- package/dist/shared/server.jMTkVNIb.d.ts +42 -0
- package/package.json +18 -11
- package/dist/shared/server.B6GspgNq.d.ts +0 -12
- package/dist/shared/server.CKafa5G2.d.mts +0 -12
- package/dist/shared/server.DxNFsvpM.mjs +0 -20
@@ -1,6 +1,7 @@
|
|
1
1
|
import { isContractProcedure, ValidationError, mergePrefix, mergeErrorMap, enhanceRoute } from '@orpc/contract';
|
2
|
-
import { value, intercept,
|
3
|
-
import { fallbackORPCErrorStatus,
|
2
|
+
import { resolveMaybeOptionalOptions, toArray, value, runWithSpan, intercept, isAsyncIteratorObject, asyncIteratorWithSpan } from '@orpc/shared';
|
3
|
+
import { ORPCError, fallbackORPCErrorStatus, mapEventIterator } from '@orpc/client';
|
4
|
+
import { HibernationEventIterator } from '@orpc/standard-server';
|
4
5
|
|
5
6
|
const LAZY_SYMBOL = Symbol("ORPC_LAZY_SYMBOL");
|
6
7
|
function lazy(loader, meta = {}) {
|
@@ -71,14 +72,15 @@ function createORPCErrorConstructorMap(errors) {
|
|
71
72
|
if (typeof code !== "string") {
|
72
73
|
return Reflect.get(target, code);
|
73
74
|
}
|
74
|
-
const item = (...
|
75
|
+
const item = (...rest) => {
|
76
|
+
const options = resolveMaybeOptionalOptions(rest);
|
75
77
|
const config = errors[code];
|
76
78
|
return new ORPCError(code, {
|
77
79
|
defined: Boolean(config),
|
78
80
|
status: config?.status,
|
79
|
-
message: options
|
80
|
-
data: options
|
81
|
-
cause: options
|
81
|
+
message: options.message ?? config?.message,
|
82
|
+
data: options.data,
|
83
|
+
cause: options.cause
|
82
84
|
});
|
83
85
|
};
|
84
86
|
return item;
|
@@ -106,34 +108,59 @@ function middlewareOutputFn(output) {
|
|
106
108
|
return { output, context: {} };
|
107
109
|
}
|
108
110
|
|
109
|
-
function createProcedureClient(lazyableProcedure, ...
|
111
|
+
function createProcedureClient(lazyableProcedure, ...rest) {
|
112
|
+
const options = resolveMaybeOptionalOptions(rest);
|
110
113
|
return async (...[input, callerOptions]) => {
|
111
|
-
const path = options
|
114
|
+
const path = toArray(options.path);
|
112
115
|
const { default: procedure } = await unlazy(lazyableProcedure);
|
113
116
|
const clientContext = callerOptions?.context ?? {};
|
114
|
-
const context = await value(options
|
117
|
+
const context = await value(options.context ?? {}, clientContext);
|
115
118
|
const errors = createORPCErrorConstructorMap(procedure["~orpc"].errorMap);
|
119
|
+
const validateError = async (e) => {
|
120
|
+
if (e instanceof ORPCError) {
|
121
|
+
return await validateORPCError(procedure["~orpc"].errorMap, e);
|
122
|
+
}
|
123
|
+
return e;
|
124
|
+
};
|
116
125
|
try {
|
117
|
-
|
118
|
-
|
119
|
-
{
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
126
|
+
const output = await runWithSpan(
|
127
|
+
{ name: "call_procedure", signal: callerOptions?.signal },
|
128
|
+
(span) => {
|
129
|
+
span?.setAttribute("procedure.path", [...path]);
|
130
|
+
return intercept(
|
131
|
+
toArray(options.interceptors),
|
132
|
+
{
|
133
|
+
context,
|
134
|
+
input,
|
135
|
+
// input only optional when it undefinable so we can safely cast it
|
136
|
+
errors,
|
137
|
+
path,
|
138
|
+
procedure,
|
139
|
+
signal: callerOptions?.signal,
|
140
|
+
lastEventId: callerOptions?.lastEventId
|
141
|
+
},
|
142
|
+
(interceptorOptions) => executeProcedureInternal(interceptorOptions.procedure, interceptorOptions)
|
143
|
+
);
|
144
|
+
}
|
130
145
|
);
|
131
|
-
|
132
|
-
|
133
|
-
|
146
|
+
if (isAsyncIteratorObject(output)) {
|
147
|
+
if (output instanceof HibernationEventIterator) {
|
148
|
+
return output;
|
149
|
+
}
|
150
|
+
return mapEventIterator(
|
151
|
+
asyncIteratorWithSpan(
|
152
|
+
{ name: "consume_event_iterator_output", signal: callerOptions?.signal },
|
153
|
+
output
|
154
|
+
),
|
155
|
+
{
|
156
|
+
value: (v) => v,
|
157
|
+
error: (e) => validateError(e)
|
158
|
+
}
|
159
|
+
);
|
134
160
|
}
|
135
|
-
|
136
|
-
|
161
|
+
return output;
|
162
|
+
} catch (e) {
|
163
|
+
throw await validateError(e);
|
137
164
|
}
|
138
165
|
};
|
139
166
|
}
|
@@ -142,31 +169,49 @@ async function validateInput(procedure, input) {
|
|
142
169
|
if (!schema) {
|
143
170
|
return input;
|
144
171
|
}
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
172
|
+
return runWithSpan(
|
173
|
+
{ name: "validate_input" },
|
174
|
+
async () => {
|
175
|
+
const result = await schema["~standard"].validate(input);
|
176
|
+
if (result.issues) {
|
177
|
+
throw new ORPCError("BAD_REQUEST", {
|
178
|
+
message: "Input validation failed",
|
179
|
+
data: {
|
180
|
+
issues: result.issues
|
181
|
+
},
|
182
|
+
cause: new ValidationError({
|
183
|
+
message: "Input validation failed",
|
184
|
+
issues: result.issues,
|
185
|
+
data: input
|
186
|
+
})
|
187
|
+
});
|
188
|
+
}
|
189
|
+
return result.value;
|
190
|
+
}
|
191
|
+
);
|
156
192
|
}
|
157
193
|
async function validateOutput(procedure, output) {
|
158
194
|
const schema = procedure["~orpc"].outputSchema;
|
159
195
|
if (!schema) {
|
160
196
|
return output;
|
161
197
|
}
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
198
|
+
return runWithSpan(
|
199
|
+
{ name: "validate_output" },
|
200
|
+
async () => {
|
201
|
+
const result = await schema["~standard"].validate(output);
|
202
|
+
if (result.issues) {
|
203
|
+
throw new ORPCError("INTERNAL_SERVER_ERROR", {
|
204
|
+
message: "Output validation failed",
|
205
|
+
cause: new ValidationError({
|
206
|
+
message: "Output validation failed",
|
207
|
+
issues: result.issues,
|
208
|
+
data: output
|
209
|
+
})
|
210
|
+
});
|
211
|
+
}
|
212
|
+
return result.value;
|
213
|
+
}
|
214
|
+
);
|
170
215
|
}
|
171
216
|
async function executeProcedureInternal(procedure, options) {
|
172
217
|
const middlewares = procedure["~orpc"].middlewares;
|
@@ -178,17 +223,28 @@ async function executeProcedureInternal(procedure, options) {
|
|
178
223
|
currentInput = await validateInput(procedure, currentInput);
|
179
224
|
}
|
180
225
|
const mid = middlewares[index];
|
181
|
-
const output = mid ?
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
context
|
189
|
-
|
226
|
+
const output = mid ? await runWithSpan(
|
227
|
+
{ name: `middleware.${mid.name}`, signal: options.signal },
|
228
|
+
async (span) => {
|
229
|
+
span?.setAttribute("middleware.index", index);
|
230
|
+
span?.setAttribute("middleware.name", mid.name);
|
231
|
+
const result = await mid({
|
232
|
+
...options,
|
233
|
+
context,
|
234
|
+
next: async (...[nextOptions]) => {
|
235
|
+
const nextContext = nextOptions?.context ?? {};
|
236
|
+
return {
|
237
|
+
output: await next(index + 1, mergeCurrentContext(context, nextContext), currentInput),
|
238
|
+
context: nextContext
|
239
|
+
};
|
240
|
+
}
|
241
|
+
}, currentInput, middlewareOutputFn);
|
242
|
+
return result.output;
|
190
243
|
}
|
191
|
-
|
244
|
+
) : await runWithSpan(
|
245
|
+
{ name: "handler", signal: options.signal },
|
246
|
+
() => procedure["~orpc"].handler({ ...options, context, input: currentInput })
|
247
|
+
);
|
192
248
|
if (index === outputValidationIndex) {
|
193
249
|
return await validateOutput(procedure, output);
|
194
250
|
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import '@orpc/client';
|
2
|
+
import '@orpc/shared';
|
3
|
+
import '@orpc/standard-server';
|
4
|
+
import '@orpc/contract';
|
5
|
+
import '@orpc/client/standard';
|
6
|
+
import { r as resolveFriendlyStandardHandleOptions } from './server.DZ5BIITo.mjs';
|
7
|
+
|
8
|
+
async function handleStandardServerPeerMessage(handler, peer, message, options) {
|
9
|
+
const [id, request] = await peer.message(message);
|
10
|
+
if (!request) {
|
11
|
+
return;
|
12
|
+
}
|
13
|
+
const handle = createServerPeerHandleRequestFn(handler, options);
|
14
|
+
await peer.response(id, await handle(request));
|
15
|
+
}
|
16
|
+
function createServerPeerHandleRequestFn(handler, options) {
|
17
|
+
return async (request) => {
|
18
|
+
const { response } = await handler.handle(
|
19
|
+
{ ...request, body: () => Promise.resolve(request.body) },
|
20
|
+
resolveFriendlyStandardHandleOptions(options)
|
21
|
+
);
|
22
|
+
return response ?? { status: 404, headers: {}, body: "No procedure matched" };
|
23
|
+
};
|
24
|
+
}
|
25
|
+
|
26
|
+
export { createServerPeerHandleRequestFn as c, handleStandardServerPeerMessage as h };
|
@@ -2,7 +2,7 @@ import { HTTPPath, ORPCError } from '@orpc/client';
|
|
2
2
|
import { Meta } from '@orpc/contract';
|
3
3
|
import { Interceptor } from '@orpc/shared';
|
4
4
|
import { StandardResponse, StandardLazyRequest } from '@orpc/standard-server';
|
5
|
-
import { C as Context, R as Router,
|
5
|
+
import { C as Context, R as Router, b as AnyRouter, A as AnyProcedure, d as ProcedureClientInterceptorOptions } from './server.CYNGeoCm.mjs';
|
6
6
|
|
7
7
|
interface StandardHandlerPlugin<T extends Context> {
|
8
8
|
order?: number;
|
@@ -70,5 +70,5 @@ declare class StandardHandler<T extends Context> {
|
|
70
70
|
handle(request: StandardLazyRequest, options: StandardHandleOptions<T>): Promise<StandardHandleResult>;
|
71
71
|
}
|
72
72
|
|
73
|
-
export { CompositeStandardHandlerPlugin as C, StandardHandler as
|
74
|
-
export type {
|
73
|
+
export { CompositeStandardHandlerPlugin as C, StandardHandler as f };
|
74
|
+
export type { StandardCodec as S, StandardParams as a, StandardHandleOptions as b, StandardHandleResult as c, StandardHandlerInterceptorOptions as d, StandardHandlerOptions as e, StandardHandlerPlugin as g, StandardMatchResult as h, StandardMatcher as i };
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import { ErrorMap, EnhanceRouteOptions, MergedErrorMap, AnyContractRouter, AnyContractProcedure } from '@orpc/contract';
|
2
|
+
import { a as AnyMiddleware, L as Lazyable, b as AnyRouter, C as Context, c as Lazy, A as AnyProcedure, P as Procedure, M as MergedInitialContext } from './server.CYNGeoCm.js';
|
3
|
+
|
4
|
+
declare function getRouter<T extends Lazyable<AnyRouter | undefined>>(router: T, path: readonly string[]): T extends Lazy<any> ? Lazy<AnyRouter | undefined> : Lazyable<AnyRouter | undefined>;
|
5
|
+
type AccessibleLazyRouter<T extends Lazyable<AnyRouter | undefined>> = T extends Lazy<infer U extends AnyRouter | undefined | Lazy<AnyRouter | undefined>> ? AccessibleLazyRouter<U> : T extends AnyProcedure | undefined ? Lazy<T> : Lazy<T> & {
|
6
|
+
[K in keyof T]: T[K] extends Lazyable<AnyRouter> ? AccessibleLazyRouter<T[K]> : never;
|
7
|
+
};
|
8
|
+
declare function createAccessibleLazyRouter<T extends Lazy<AnyRouter | undefined>>(lazied: T): AccessibleLazyRouter<T>;
|
9
|
+
type EnhancedRouter<T extends Lazyable<AnyRouter>, TInitialContext extends Context, TCurrentContext extends Context, TErrorMap extends ErrorMap> = T extends Lazy<infer U extends AnyRouter> ? AccessibleLazyRouter<EnhancedRouter<U, TInitialContext, TCurrentContext, TErrorMap>> : T extends Procedure<infer UInitialContext, infer UCurrentContext, infer UInputSchema, infer UOutputSchema, infer UErrorMap, infer UMeta> ? Procedure<MergedInitialContext<TInitialContext, UInitialContext, TCurrentContext>, UCurrentContext, UInputSchema, UOutputSchema, MergedErrorMap<TErrorMap, UErrorMap>, UMeta> : {
|
10
|
+
[K in keyof T]: T[K] extends Lazyable<AnyRouter> ? EnhancedRouter<T[K], TInitialContext, TCurrentContext, TErrorMap> : never;
|
11
|
+
};
|
12
|
+
interface EnhanceRouterOptions<TErrorMap extends ErrorMap> extends EnhanceRouteOptions {
|
13
|
+
middlewares: readonly AnyMiddleware[];
|
14
|
+
errorMap: TErrorMap;
|
15
|
+
dedupeLeadingMiddlewares: boolean;
|
16
|
+
}
|
17
|
+
declare function enhanceRouter<T extends Lazyable<AnyRouter>, TInitialContext extends Context, TCurrentContext extends Context, TErrorMap extends ErrorMap>(router: T, options: EnhanceRouterOptions<TErrorMap>): EnhancedRouter<T, TInitialContext, TCurrentContext, TErrorMap>;
|
18
|
+
interface TraverseContractProceduresOptions {
|
19
|
+
router: AnyContractRouter | AnyRouter;
|
20
|
+
path: readonly string[];
|
21
|
+
}
|
22
|
+
interface TraverseContractProcedureCallbackOptions {
|
23
|
+
contract: AnyContractProcedure | AnyProcedure;
|
24
|
+
path: readonly string[];
|
25
|
+
}
|
26
|
+
/**
|
27
|
+
* @deprecated Use `TraverseContractProcedureCallbackOptions` instead.
|
28
|
+
*/
|
29
|
+
type ContractProcedureCallbackOptions = TraverseContractProcedureCallbackOptions;
|
30
|
+
interface LazyTraverseContractProceduresOptions {
|
31
|
+
router: Lazy<AnyRouter>;
|
32
|
+
path: readonly string[];
|
33
|
+
}
|
34
|
+
declare function traverseContractProcedures(options: TraverseContractProceduresOptions, callback: (options: TraverseContractProcedureCallbackOptions) => void, lazyOptions?: LazyTraverseContractProceduresOptions[]): LazyTraverseContractProceduresOptions[];
|
35
|
+
declare function resolveContractProcedures(options: TraverseContractProceduresOptions, callback: (options: TraverseContractProcedureCallbackOptions) => void): Promise<void>;
|
36
|
+
type UnlaziedRouter<T extends AnyRouter> = T extends AnyProcedure ? T : {
|
37
|
+
[K in keyof T]: T[K] extends Lazyable<infer U extends AnyRouter> ? UnlaziedRouter<U> : never;
|
38
|
+
};
|
39
|
+
declare function unlazyRouter<T extends AnyRouter>(router: T): Promise<UnlaziedRouter<T>>;
|
40
|
+
|
41
|
+
export { createAccessibleLazyRouter as c, enhanceRouter as e, getRouter as g, resolveContractProcedures as r, traverseContractProcedures as t, unlazyRouter as u };
|
42
|
+
export type { AccessibleLazyRouter as A, ContractProcedureCallbackOptions as C, EnhanceRouterOptions as E, LazyTraverseContractProceduresOptions as L, TraverseContractProcedureCallbackOptions as T, UnlaziedRouter as U, EnhancedRouter as a, TraverseContractProceduresOptions as b };
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@orpc/server",
|
3
3
|
"type": "module",
|
4
|
-
"version": "0.0.0-next.
|
4
|
+
"version": "0.0.0-next.f437dcb",
|
5
5
|
"license": "MIT",
|
6
6
|
"homepage": "https://orpc.unnoq.com",
|
7
7
|
"repository": {
|
@@ -19,6 +19,11 @@
|
|
19
19
|
"import": "./dist/index.mjs",
|
20
20
|
"default": "./dist/index.mjs"
|
21
21
|
},
|
22
|
+
"./helpers": {
|
23
|
+
"types": "./dist/helpers/index.d.mts",
|
24
|
+
"import": "./dist/helpers/index.mjs",
|
25
|
+
"default": "./dist/helpers/index.mjs"
|
26
|
+
},
|
22
27
|
"./plugins": {
|
23
28
|
"types": "./dist/plugins/index.d.mts",
|
24
29
|
"import": "./dist/plugins/index.mjs",
|
@@ -96,20 +101,22 @@
|
|
96
101
|
}
|
97
102
|
},
|
98
103
|
"dependencies": {
|
99
|
-
"
|
100
|
-
"@orpc/
|
101
|
-
"@orpc/
|
102
|
-
"@orpc/
|
103
|
-
"@orpc/
|
104
|
-
"@orpc/standard-server-
|
105
|
-
"@orpc/
|
106
|
-
"@orpc/standard-server
|
104
|
+
"cookie": "^1.0.2",
|
105
|
+
"@orpc/client": "0.0.0-next.f437dcb",
|
106
|
+
"@orpc/contract": "0.0.0-next.f437dcb",
|
107
|
+
"@orpc/interop": "0.0.0-next.f437dcb",
|
108
|
+
"@orpc/shared": "0.0.0-next.f437dcb",
|
109
|
+
"@orpc/standard-server-aws-lambda": "0.0.0-next.f437dcb",
|
110
|
+
"@orpc/standard-server-fetch": "0.0.0-next.f437dcb",
|
111
|
+
"@orpc/standard-server": "0.0.0-next.f437dcb",
|
112
|
+
"@orpc/standard-server-node": "0.0.0-next.f437dcb",
|
113
|
+
"@orpc/standard-server-peer": "0.0.0-next.f437dcb"
|
107
114
|
},
|
108
115
|
"devDependencies": {
|
109
116
|
"@types/ws": "^8.18.1",
|
110
117
|
"crossws": "^0.4.1",
|
111
|
-
"next": "^15.
|
112
|
-
"supertest": "^7.1.
|
118
|
+
"next": "^15.5.0",
|
119
|
+
"supertest": "^7.1.4",
|
113
120
|
"ws": "^8.18.3"
|
114
121
|
},
|
115
122
|
"scripts": {
|
@@ -1,12 +0,0 @@
|
|
1
|
-
import { StandardRPCJsonSerializerOptions } from '@orpc/client/standard';
|
2
|
-
import { C as Context, R as Router } from './server.6ohwBdwx.js';
|
3
|
-
import { S as StandardHandlerOptions, a as StandardHandler } from './server.BE3B4vij.js';
|
4
|
-
|
5
|
-
interface StandardRPCHandlerOptions<T extends Context> extends StandardHandlerOptions<T>, StandardRPCJsonSerializerOptions {
|
6
|
-
}
|
7
|
-
declare class StandardRPCHandler<T extends Context> extends StandardHandler<T> {
|
8
|
-
constructor(router: Router<any, T>, options?: StandardRPCHandlerOptions<T>);
|
9
|
-
}
|
10
|
-
|
11
|
-
export { StandardRPCHandler as a };
|
12
|
-
export type { StandardRPCHandlerOptions as S };
|
@@ -1,12 +0,0 @@
|
|
1
|
-
import { StandardRPCJsonSerializerOptions } from '@orpc/client/standard';
|
2
|
-
import { C as Context, R as Router } from './server.6ohwBdwx.mjs';
|
3
|
-
import { S as StandardHandlerOptions, a as StandardHandler } from './server.BtQsqpPB.mjs';
|
4
|
-
|
5
|
-
interface StandardRPCHandlerOptions<T extends Context> extends StandardHandlerOptions<T>, StandardRPCJsonSerializerOptions {
|
6
|
-
}
|
7
|
-
declare class StandardRPCHandler<T extends Context> extends StandardHandler<T> {
|
8
|
-
constructor(router: Router<any, T>, options?: StandardRPCHandlerOptions<T>);
|
9
|
-
}
|
10
|
-
|
11
|
-
export { StandardRPCHandler as a };
|
12
|
-
export type { StandardRPCHandlerOptions as S };
|
@@ -1,20 +0,0 @@
|
|
1
|
-
import '@orpc/client';
|
2
|
-
import '@orpc/shared';
|
3
|
-
import '@orpc/standard-server';
|
4
|
-
import '@orpc/contract';
|
5
|
-
import '@orpc/client/standard';
|
6
|
-
import { r as resolveFriendlyStandardHandleOptions } from './server.DZ5BIITo.mjs';
|
7
|
-
|
8
|
-
async function experimental_handleStandardServerPeerMessage(handler, peer, message, options) {
|
9
|
-
const [id, request] = await peer.message(message);
|
10
|
-
if (!request) {
|
11
|
-
return;
|
12
|
-
}
|
13
|
-
const { response } = await handler.handle(
|
14
|
-
{ ...request, body: () => Promise.resolve(request.body) },
|
15
|
-
resolveFriendlyStandardHandleOptions(options)
|
16
|
-
);
|
17
|
-
await peer.response(id, response ?? { status: 404, headers: {}, body: "No procedure matched" });
|
18
|
-
}
|
19
|
-
|
20
|
-
export { experimental_handleStandardServerPeerMessage as e };
|