@orpc/server 0.0.0-next.e565b64 → 0.0.0-next.e5e2613

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 (55) hide show
  1. package/README.md +5 -7
  2. package/dist/adapters/aws-lambda/index.d.mts +4 -4
  3. package/dist/adapters/aws-lambda/index.d.ts +4 -4
  4. package/dist/adapters/aws-lambda/index.mjs +4 -4
  5. package/dist/adapters/bun-ws/index.d.mts +8 -8
  6. package/dist/adapters/bun-ws/index.d.ts +8 -8
  7. package/dist/adapters/bun-ws/index.mjs +13 -17
  8. package/dist/adapters/crossws/index.d.mts +7 -5
  9. package/dist/adapters/crossws/index.d.ts +7 -5
  10. package/dist/adapters/crossws/index.mjs +13 -17
  11. package/dist/adapters/fetch/index.d.mts +4 -4
  12. package/dist/adapters/fetch/index.d.ts +4 -4
  13. package/dist/adapters/fetch/index.mjs +3 -3
  14. package/dist/adapters/message-port/index.d.mts +7 -5
  15. package/dist/adapters/message-port/index.d.ts +7 -5
  16. package/dist/adapters/message-port/index.mjs +13 -13
  17. package/dist/adapters/node/index.d.mts +4 -4
  18. package/dist/adapters/node/index.d.ts +4 -4
  19. package/dist/adapters/node/index.mjs +3 -3
  20. package/dist/adapters/standard/index.d.mts +5 -4
  21. package/dist/adapters/standard/index.d.ts +5 -4
  22. package/dist/adapters/standard/index.mjs +3 -2
  23. package/dist/adapters/standard-peer/index.d.mts +14 -0
  24. package/dist/adapters/standard-peer/index.d.ts +14 -0
  25. package/dist/adapters/standard-peer/index.mjs +7 -0
  26. package/dist/adapters/websocket/index.d.mts +32 -6
  27. package/dist/adapters/websocket/index.d.ts +32 -6
  28. package/dist/adapters/websocket/index.mjs +48 -17
  29. package/dist/adapters/ws/index.d.mts +7 -5
  30. package/dist/adapters/ws/index.d.ts +7 -5
  31. package/dist/adapters/ws/index.mjs +12 -11
  32. package/dist/hibernation/index.d.mts +44 -0
  33. package/dist/hibernation/index.d.ts +44 -0
  34. package/dist/hibernation/index.mjs +65 -0
  35. package/dist/index.d.mts +17 -12
  36. package/dist/index.d.ts +17 -12
  37. package/dist/index.mjs +19 -6
  38. package/dist/plugins/index.d.mts +4 -4
  39. package/dist/plugins/index.d.ts +4 -4
  40. package/dist/plugins/index.mjs +14 -6
  41. package/dist/shared/{server.DD2C4ujN.d.mts → server.6ohwBdwx.d.mts} +2 -2
  42. package/dist/shared/{server.DD2C4ujN.d.ts → server.6ohwBdwx.d.ts} +2 -2
  43. package/dist/shared/server.B3dVpAsJ.d.mts +12 -0
  44. package/dist/shared/{server.BPAWobQg.d.ts → server.B6GspgNq.d.ts} +2 -2
  45. package/dist/shared/{server.-ACo36I0.d.ts → server.BE3B4vij.d.ts} +3 -3
  46. package/dist/shared/{server.Dq8xr7PQ.d.mts → server.BtQsqpPB.d.mts} +3 -3
  47. package/dist/shared/{server.4FnxLwwr.mjs → server.CB8Snncu.mjs} +3 -3
  48. package/dist/shared/{server.Bd52nNaH.d.mts → server.CKafa5G2.d.mts} +2 -2
  49. package/dist/shared/server.CeW2jMCj.d.ts +12 -0
  50. package/dist/shared/{server.DG7Tamti.mjs → server.DLJzqnSX.mjs} +3 -2
  51. package/dist/shared/{server.BVwwTHyO.mjs → server.DZ5BIITo.mjs} +1 -1
  52. package/dist/shared/server.DxNFsvpM.mjs +20 -0
  53. package/package.json +23 -13
  54. package/dist/shared/server.BliFSTnG.d.mts +0 -10
  55. package/dist/shared/server.IG2MjhrD.d.ts +0 -10
package/README.md CHANGED
@@ -30,7 +30,7 @@
30
30
  - **🔗 End-to-End Type Safety**: Ensure type-safe inputs, outputs, and errors from client to server.
31
31
  - **📘 First-Class OpenAPI**: Built-in support that fully adheres to the OpenAPI standard.
32
32
  - **📝 Contract-First Development**: Optionally define your API contract before implementation.
33
- - **⚙️ Framework Integrations**: Seamlessly integrate with TanStack Query (React, Vue, Solid, Svelte), Pinia Colada, and more.
33
+ - **⚙️ Framework Integrations**: Seamlessly integrate with TanStack Query (React, Vue, Solid, Svelte, Angular), Pinia Colada, and more.
34
34
  - **🚀 Server Actions**: Fully compatible with React Server Actions on Next.js, TanStack Start, and other platforms.
35
35
  - **🔠 Standard Schema Support**: Works out of the box with Zod, Valibot, ArkType, and other schema validators.
36
36
  - **🗃️ Native Types**: Supports native types like Date, File, Blob, BigInt, URL, and more.
@@ -49,14 +49,12 @@ You can find the full documentation [here](https://orpc.unnoq.com).
49
49
  - [@orpc/contract](https://www.npmjs.com/package/@orpc/contract): Build your API contract.
50
50
  - [@orpc/server](https://www.npmjs.com/package/@orpc/server): Build your API or implement API contract.
51
51
  - [@orpc/client](https://www.npmjs.com/package/@orpc/client): Consume your API on the client with type-safety.
52
- - [@orpc/nest](https://www.npmjs.com/package/@orpc/nest): Deeply integrate oRPC with NestJS.
52
+ - [@orpc/openapi](https://www.npmjs.com/package/@orpc/openapi): Generate OpenAPI specs and handle OpenAPI requests.
53
+ - [@orpc/nest](https://www.npmjs.com/package/@orpc/nest): Deeply integrate oRPC with [NestJS](https://nestjs.com/).
53
54
  - [@orpc/react](https://www.npmjs.com/package/@orpc/react): Utilities for integrating oRPC with React and React Server Actions.
54
- - [@orpc/react-query](https://www.npmjs.com/package/@orpc/react-query): Integration with [React Query](https://tanstack.com/query/latest/docs/framework/react/overview).
55
- - [@orpc/vue-query](https://www.npmjs.com/package/@orpc/vue-query): Integration with [Vue Query](https://tanstack.com/query/latest/docs/framework/vue/overview).
56
- - [@orpc/solid-query](https://www.npmjs.com/package/@orpc/solid-query): Integration with [Solid Query](https://tanstack.com/query/latest/docs/framework/solid/overview).
57
- - [@orpc/svelte-query](https://www.npmjs.com/package/@orpc/svelte-query): Integration with [Svelte Query](https://tanstack.com/query/latest/docs/framework/svelte/overview).
55
+ - [@orpc/tanstack-query](https://www.npmjs.com/package/@orpc/tanstack-query): [TanStack Query](https://tanstack.com/query/latest) integration.
58
56
  - [@orpc/vue-colada](https://www.npmjs.com/package/@orpc/vue-colada): Integration with [Pinia Colada](https://pinia-colada.esm.dev/).
59
- - [@orpc/openapi](https://www.npmjs.com/package/@orpc/openapi): Generate OpenAPI specs and handle OpenAPI requests.
57
+ - [@orpc/hey-api](https://www.npmjs.com/package/@orpc/hey-api): [Hey API](https://heyapi.dev/) integration.
60
58
  - [@orpc/zod](https://www.npmjs.com/package/@orpc/zod): More schemas that [Zod](https://zod.dev/) doesn't support yet.
61
59
  - [@orpc/valibot](https://www.npmjs.com/package/@orpc/valibot): OpenAPI spec generation from [Valibot](https://valibot.dev/).
62
60
  - [@orpc/arktype](https://www.npmjs.com/package/@orpc/arktype): OpenAPI spec generation from [ArkType](https://arktype.io/).
@@ -1,9 +1,9 @@
1
1
  import { MaybeOptionalOptions } from '@orpc/shared';
2
2
  import { SendStandardResponseOptions, APIGatewayProxyEventV2, ResponseStream } from '@orpc/standard-server-aws-lambda';
3
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.mjs';
4
- import { i as StandardHandler } from '../../shared/server.Dq8xr7PQ.mjs';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.BliFSTnG.mjs';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.Bd52nNaH.mjs';
3
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.mjs';
4
+ import { a as StandardHandler } from '../../shared/server.BtQsqpPB.mjs';
5
+ import { F as FriendlyStandardHandleOptions } from '../../shared/server.B3dVpAsJ.mjs';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.CKafa5G2.mjs';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
@@ -1,9 +1,9 @@
1
1
  import { MaybeOptionalOptions } from '@orpc/shared';
2
2
  import { SendStandardResponseOptions, APIGatewayProxyEventV2, ResponseStream } from '@orpc/standard-server-aws-lambda';
3
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.js';
4
- import { i as StandardHandler } from '../../shared/server.-ACo36I0.js';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.IG2MjhrD.js';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.BPAWobQg.js';
3
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.js';
4
+ import { a as StandardHandler } from '../../shared/server.BE3B4vij.js';
5
+ import { F as FriendlyStandardHandleOptions } from '../../shared/server.CeW2jMCj.js';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.B6GspgNq.js';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
@@ -1,14 +1,14 @@
1
1
  import { resolveMaybeOptionalOptions } from '@orpc/shared';
2
2
  import { toStandardLazyRequest, sendStandardResponse } from '@orpc/standard-server-aws-lambda';
3
- import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.BVwwTHyO.mjs';
4
- import '@orpc/standard-server/batch';
3
+ import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.DZ5BIITo.mjs';
5
4
  import '@orpc/standard-server';
5
+ import '@orpc/standard-server/batch';
6
6
  import '@orpc/client';
7
7
  import { S as StrictGetMethodPlugin } from '../../shared/server.BW-nUGgA.mjs';
8
8
  import '@orpc/contract';
9
- import { b as StandardRPCHandler } from '../../shared/server.4FnxLwwr.mjs';
9
+ import { b as StandardRPCHandler } from '../../shared/server.CB8Snncu.mjs';
10
10
  import '@orpc/client/standard';
11
- import '../../shared/server.DG7Tamti.mjs';
11
+ import '../../shared/server.DLJzqnSX.mjs';
12
12
 
13
13
  class AwsLambdaHandler {
14
14
  constructor(standardHandler, options = {}) {
@@ -1,23 +1,23 @@
1
1
  import { MaybeOptionalOptions } from '@orpc/shared';
2
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.mjs';
3
- import { i as StandardHandler } from '../../shared/server.Dq8xr7PQ.mjs';
4
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.BliFSTnG.mjs';
5
- import { S as StandardRPCHandlerOptions } from '../../shared/server.Bd52nNaH.mjs';
2
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.mjs';
3
+ import { a as StandardHandler } from '../../shared/server.BtQsqpPB.mjs';
4
+ import { experimental_HandleStandardServerPeerMessageOptions } from '../standard-peer/index.mjs';
5
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.CKafa5G2.mjs';
6
6
  import '@orpc/client';
7
7
  import '@orpc/contract';
8
8
  import '@orpc/standard-server';
9
+ import '@orpc/standard-server-peer';
10
+ import '../../shared/server.B3dVpAsJ.mjs';
9
11
  import '@orpc/client/standard';
10
12
 
11
13
  interface ServerWebSocket {
12
- send(message: string | ArrayBufferLike): number;
14
+ send(message: string | ArrayBufferLike | Uint8Array): number;
13
15
  }
14
16
  declare class experimental_BunWsHandler<T extends Context> {
15
17
  private readonly standardHandler;
16
18
  private readonly peers;
17
19
  constructor(standardHandler: StandardHandler<T>);
18
- message(ws: ServerWebSocket, message: string | {
19
- buffer: ArrayBufferLike;
20
- }, ...rest: MaybeOptionalOptions<Omit<FriendlyStandardHandleOptions<T>, 'prefix'>>): Promise<void>;
20
+ message(ws: ServerWebSocket, message: string | ArrayBufferView, ...rest: MaybeOptionalOptions<experimental_HandleStandardServerPeerMessageOptions<T>>): Promise<void>;
21
21
  close(ws: ServerWebSocket): void;
22
22
  }
23
23
 
@@ -1,23 +1,23 @@
1
1
  import { MaybeOptionalOptions } from '@orpc/shared';
2
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.js';
3
- import { i as StandardHandler } from '../../shared/server.-ACo36I0.js';
4
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.IG2MjhrD.js';
5
- import { S as StandardRPCHandlerOptions } from '../../shared/server.BPAWobQg.js';
2
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.js';
3
+ import { a as StandardHandler } from '../../shared/server.BE3B4vij.js';
4
+ import { experimental_HandleStandardServerPeerMessageOptions } from '../standard-peer/index.js';
5
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.B6GspgNq.js';
6
6
  import '@orpc/client';
7
7
  import '@orpc/contract';
8
8
  import '@orpc/standard-server';
9
+ import '@orpc/standard-server-peer';
10
+ import '../../shared/server.CeW2jMCj.js';
9
11
  import '@orpc/client/standard';
10
12
 
11
13
  interface ServerWebSocket {
12
- send(message: string | ArrayBufferLike): number;
14
+ send(message: string | ArrayBufferLike | Uint8Array): number;
13
15
  }
14
16
  declare class experimental_BunWsHandler<T extends Context> {
15
17
  private readonly standardHandler;
16
18
  private readonly peers;
17
19
  constructor(standardHandler: StandardHandler<T>);
18
- message(ws: ServerWebSocket, message: string | {
19
- buffer: ArrayBufferLike;
20
- }, ...rest: MaybeOptionalOptions<Omit<FriendlyStandardHandleOptions<T>, 'prefix'>>): Promise<void>;
20
+ message(ws: ServerWebSocket, message: string | ArrayBufferView, ...rest: MaybeOptionalOptions<experimental_HandleStandardServerPeerMessageOptions<T>>): Promise<void>;
21
21
  close(ws: ServerWebSocket): void;
22
22
  }
23
23
 
@@ -1,12 +1,13 @@
1
1
  import { resolveMaybeOptionalOptions } from '@orpc/shared';
2
2
  import { ServerPeer } from '@orpc/standard-server-peer';
3
- import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.BVwwTHyO.mjs';
3
+ import { e as experimental_handleStandardServerPeerMessage } from '../../shared/server.DxNFsvpM.mjs';
4
4
  import '@orpc/client';
5
5
  import '@orpc/standard-server';
6
6
  import '@orpc/contract';
7
- import { b as StandardRPCHandler } from '../../shared/server.4FnxLwwr.mjs';
7
+ import { b as StandardRPCHandler } from '../../shared/server.CB8Snncu.mjs';
8
8
  import '@orpc/client/standard';
9
- import '../../shared/server.DG7Tamti.mjs';
9
+ import '../../shared/server.DZ5BIITo.mjs';
10
+ import '../../shared/server.DLJzqnSX.mjs';
10
11
 
11
12
  class experimental_BunWsHandler {
12
13
  constructor(standardHandler) {
@@ -16,22 +17,17 @@ class experimental_BunWsHandler {
16
17
  async message(ws, message, ...rest) {
17
18
  let peer = this.peers.get(ws);
18
19
  if (!peer) {
19
- this.peers.set(ws, peer = new ServerPeer(async (raw) => {
20
- if (raw instanceof Blob) {
21
- const buffer = await raw.arrayBuffer();
22
- ws.send(buffer);
23
- } else {
24
- ws.send(raw);
25
- }
20
+ this.peers.set(ws, peer = new ServerPeer((message2) => {
21
+ ws.send(message2);
26
22
  }));
27
23
  }
28
- const [id, request] = await peer.message(typeof message === "string" ? message : message.buffer);
29
- if (!request) {
30
- return;
31
- }
32
- const options = resolveFriendlyStandardHandleOptions(resolveMaybeOptionalOptions(rest));
33
- const { response } = await this.standardHandler.handle({ ...request, body: () => Promise.resolve(request.body) }, options);
34
- await peer.response(id, response ?? { status: 404, headers: {}, body: "No procedure matched" });
24
+ const encodedMessage = typeof message === "string" ? message : new Uint8Array(message.buffer, message.byteOffset, message.byteLength);
25
+ await experimental_handleStandardServerPeerMessage(
26
+ this.standardHandler,
27
+ peer,
28
+ encodedMessage,
29
+ resolveMaybeOptionalOptions(rest)
30
+ );
35
31
  }
36
32
  close(ws) {
37
33
  const server = this.peers.get(ws);
@@ -1,19 +1,21 @@
1
1
  import { MaybeOptionalOptions } from '@orpc/shared';
2
2
  import { Peer, Message } from 'crossws';
3
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.mjs';
4
- import { i as StandardHandler } from '../../shared/server.Dq8xr7PQ.mjs';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.BliFSTnG.mjs';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.Bd52nNaH.mjs';
3
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.mjs';
4
+ import { a as StandardHandler } from '../../shared/server.BtQsqpPB.mjs';
5
+ import { experimental_HandleStandardServerPeerMessageOptions } from '../standard-peer/index.mjs';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.CKafa5G2.mjs';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
10
+ import '@orpc/standard-server-peer';
11
+ import '../../shared/server.B3dVpAsJ.mjs';
10
12
  import '@orpc/client/standard';
11
13
 
12
14
  declare class experimental_CrosswsHandler<T extends Context> {
13
15
  private readonly standardHandler;
14
16
  private readonly peers;
15
17
  constructor(standardHandler: StandardHandler<T>);
16
- message(ws: Pick<Peer, 'send'>, message: Pick<Message, 'rawData' | 'uint8Array'>, ...rest: MaybeOptionalOptions<Omit<FriendlyStandardHandleOptions<T>, 'prefix'>>): Promise<void>;
18
+ message(ws: Pick<Peer, 'send'>, message: Pick<Message, 'rawData' | 'uint8Array'>, ...rest: MaybeOptionalOptions<experimental_HandleStandardServerPeerMessageOptions<T>>): Promise<void>;
17
19
  close(ws: Pick<Peer, 'send'>): void;
18
20
  }
19
21
 
@@ -1,19 +1,21 @@
1
1
  import { MaybeOptionalOptions } from '@orpc/shared';
2
2
  import { Peer, Message } from 'crossws';
3
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.js';
4
- import { i as StandardHandler } from '../../shared/server.-ACo36I0.js';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.IG2MjhrD.js';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.BPAWobQg.js';
3
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.js';
4
+ import { a as StandardHandler } from '../../shared/server.BE3B4vij.js';
5
+ import { experimental_HandleStandardServerPeerMessageOptions } from '../standard-peer/index.js';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.B6GspgNq.js';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
10
+ import '@orpc/standard-server-peer';
11
+ import '../../shared/server.CeW2jMCj.js';
10
12
  import '@orpc/client/standard';
11
13
 
12
14
  declare class experimental_CrosswsHandler<T extends Context> {
13
15
  private readonly standardHandler;
14
16
  private readonly peers;
15
17
  constructor(standardHandler: StandardHandler<T>);
16
- message(ws: Pick<Peer, 'send'>, message: Pick<Message, 'rawData' | 'uint8Array'>, ...rest: MaybeOptionalOptions<Omit<FriendlyStandardHandleOptions<T>, 'prefix'>>): Promise<void>;
18
+ message(ws: Pick<Peer, 'send'>, message: Pick<Message, 'rawData' | 'uint8Array'>, ...rest: MaybeOptionalOptions<experimental_HandleStandardServerPeerMessageOptions<T>>): Promise<void>;
17
19
  close(ws: Pick<Peer, 'send'>): void;
18
20
  }
19
21
 
@@ -1,12 +1,13 @@
1
1
  import { resolveMaybeOptionalOptions } from '@orpc/shared';
2
2
  import { ServerPeer } from '@orpc/standard-server-peer';
3
- import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.BVwwTHyO.mjs';
3
+ import { e as experimental_handleStandardServerPeerMessage } from '../../shared/server.DxNFsvpM.mjs';
4
4
  import '@orpc/client';
5
5
  import '@orpc/standard-server';
6
6
  import '@orpc/contract';
7
- import { b as StandardRPCHandler } from '../../shared/server.4FnxLwwr.mjs';
7
+ import { b as StandardRPCHandler } from '../../shared/server.CB8Snncu.mjs';
8
8
  import '@orpc/client/standard';
9
- import '../../shared/server.DG7Tamti.mjs';
9
+ import '../../shared/server.DZ5BIITo.mjs';
10
+ import '../../shared/server.DLJzqnSX.mjs';
10
11
 
11
12
  class experimental_CrosswsHandler {
12
13
  constructor(standardHandler) {
@@ -16,22 +17,17 @@ class experimental_CrosswsHandler {
16
17
  async message(ws, message, ...rest) {
17
18
  let peer = this.peers.get(ws);
18
19
  if (!peer) {
19
- this.peers.set(ws, peer = new ServerPeer(async (raw) => {
20
- if (raw instanceof Blob) {
21
- const buffer = await raw.arrayBuffer();
22
- ws.send(buffer);
23
- } else {
24
- ws.send(raw);
25
- }
20
+ this.peers.set(ws, peer = new ServerPeer((message2) => {
21
+ ws.send(message2);
26
22
  }));
27
23
  }
28
- const [id, request] = await peer.message(typeof message.rawData === "string" ? message.rawData : message.uint8Array());
29
- if (!request) {
30
- return;
31
- }
32
- const options = resolveFriendlyStandardHandleOptions(resolveMaybeOptionalOptions(rest));
33
- const { response } = await this.standardHandler.handle({ ...request, body: () => Promise.resolve(request.body) }, options);
34
- await peer.response(id, response ?? { status: 404, headers: {}, body: "No procedure matched" });
24
+ const encodedMessage = typeof message.rawData === "string" ? message.rawData : message.uint8Array();
25
+ await experimental_handleStandardServerPeerMessage(
26
+ this.standardHandler,
27
+ peer,
28
+ encodedMessage,
29
+ resolveMaybeOptionalOptions(rest)
30
+ );
35
31
  }
36
32
  close(ws) {
37
33
  const server = this.peers.get(ws);
@@ -1,9 +1,9 @@
1
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.mjs';
1
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.mjs';
2
2
  import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
3
3
  import { ToFetchResponseOptions } from '@orpc/standard-server-fetch';
4
- import { a as StandardHandlerPlugin, C as CompositeStandardHandlerPlugin, g as StandardHandleOptions, i as StandardHandler } from '../../shared/server.Dq8xr7PQ.mjs';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.BliFSTnG.mjs';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.Bd52nNaH.mjs';
4
+ import { c as StandardHandlerPlugin, C as CompositeStandardHandlerPlugin, b as StandardHandleOptions, a as StandardHandler } from '../../shared/server.BtQsqpPB.mjs';
5
+ import { F as FriendlyStandardHandleOptions } from '../../shared/server.B3dVpAsJ.mjs';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.CKafa5G2.mjs';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
@@ -1,9 +1,9 @@
1
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.js';
1
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.js';
2
2
  import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
3
3
  import { ToFetchResponseOptions } from '@orpc/standard-server-fetch';
4
- import { a as StandardHandlerPlugin, C as CompositeStandardHandlerPlugin, g as StandardHandleOptions, i as StandardHandler } from '../../shared/server.-ACo36I0.js';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.IG2MjhrD.js';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.BPAWobQg.js';
4
+ import { c as StandardHandlerPlugin, C as CompositeStandardHandlerPlugin, b as StandardHandleOptions, a as StandardHandler } from '../../shared/server.BE3B4vij.js';
5
+ import { F as FriendlyStandardHandleOptions } from '../../shared/server.CeW2jMCj.js';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.B6GspgNq.js';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
@@ -1,14 +1,14 @@
1
1
  import { ORPCError } from '@orpc/client';
2
2
  import { toArray, intercept, resolveMaybeOptionalOptions } from '@orpc/shared';
3
3
  import { toStandardLazyRequest, toFetchResponse } from '@orpc/standard-server-fetch';
4
- import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.BVwwTHyO.mjs';
4
+ import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.DZ5BIITo.mjs';
5
5
  import '@orpc/standard-server';
6
6
  import '@orpc/contract';
7
- import { C as CompositeStandardHandlerPlugin, b as StandardRPCHandler } from '../../shared/server.4FnxLwwr.mjs';
7
+ import { C as CompositeStandardHandlerPlugin, b as StandardRPCHandler } from '../../shared/server.CB8Snncu.mjs';
8
8
  import '@orpc/client/standard';
9
9
  import '@orpc/standard-server/batch';
10
10
  import { S as StrictGetMethodPlugin } from '../../shared/server.BW-nUGgA.mjs';
11
- import '../../shared/server.DG7Tamti.mjs';
11
+ import '../../shared/server.DLJzqnSX.mjs';
12
12
 
13
13
  class BodyLimitPlugin {
14
14
  maxBodySize;
@@ -1,18 +1,20 @@
1
1
  import { SupportedMessagePort } from '@orpc/client/message-port';
2
2
  import { MaybeOptionalOptions } from '@orpc/shared';
3
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.mjs';
4
- import { i as StandardHandler } from '../../shared/server.Dq8xr7PQ.mjs';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.BliFSTnG.mjs';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.Bd52nNaH.mjs';
3
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.mjs';
4
+ import { a as StandardHandler } from '../../shared/server.BtQsqpPB.mjs';
5
+ import { experimental_HandleStandardServerPeerMessageOptions } from '../standard-peer/index.mjs';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.CKafa5G2.mjs';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
10
+ import '@orpc/standard-server-peer';
11
+ import '../../shared/server.B3dVpAsJ.mjs';
10
12
  import '@orpc/client/standard';
11
13
 
12
14
  declare class experimental_MessagePortHandler<T extends Context> {
13
15
  private readonly standardHandler;
14
16
  constructor(standardHandler: StandardHandler<T>);
15
- upgrade(port: SupportedMessagePort, ...rest: MaybeOptionalOptions<Omit<FriendlyStandardHandleOptions<T>, 'prefix'>>): void;
17
+ upgrade(port: SupportedMessagePort, ...rest: MaybeOptionalOptions<experimental_HandleStandardServerPeerMessageOptions<T>>): void;
16
18
  }
17
19
 
18
20
  /**
@@ -1,18 +1,20 @@
1
1
  import { SupportedMessagePort } from '@orpc/client/message-port';
2
2
  import { MaybeOptionalOptions } from '@orpc/shared';
3
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.js';
4
- import { i as StandardHandler } from '../../shared/server.-ACo36I0.js';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.IG2MjhrD.js';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.BPAWobQg.js';
3
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.js';
4
+ import { a as StandardHandler } from '../../shared/server.BE3B4vij.js';
5
+ import { experimental_HandleStandardServerPeerMessageOptions } from '../standard-peer/index.js';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.B6GspgNq.js';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
10
+ import '@orpc/standard-server-peer';
11
+ import '../../shared/server.CeW2jMCj.js';
10
12
  import '@orpc/client/standard';
11
13
 
12
14
  declare class experimental_MessagePortHandler<T extends Context> {
13
15
  private readonly standardHandler;
14
16
  constructor(standardHandler: StandardHandler<T>);
15
- upgrade(port: SupportedMessagePort, ...rest: MaybeOptionalOptions<Omit<FriendlyStandardHandleOptions<T>, 'prefix'>>): void;
17
+ upgrade(port: SupportedMessagePort, ...rest: MaybeOptionalOptions<experimental_HandleStandardServerPeerMessageOptions<T>>): void;
16
18
  }
17
19
 
18
20
  /**
@@ -1,30 +1,30 @@
1
- import { onMessagePortMessage, onMessagePortClose } from '@orpc/client/message-port';
1
+ import { postMessagePortMessage, onMessagePortMessage, onMessagePortClose } from '@orpc/client/message-port';
2
2
  import { resolveMaybeOptionalOptions } from '@orpc/shared';
3
3
  import { ServerPeer } from '@orpc/standard-server-peer';
4
- import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.BVwwTHyO.mjs';
4
+ import { e as experimental_handleStandardServerPeerMessage } from '../../shared/server.DxNFsvpM.mjs';
5
5
  import '@orpc/client';
6
6
  import '@orpc/standard-server';
7
7
  import '@orpc/contract';
8
- import { b as StandardRPCHandler } from '../../shared/server.4FnxLwwr.mjs';
8
+ import { b as StandardRPCHandler } from '../../shared/server.CB8Snncu.mjs';
9
9
  import '@orpc/client/standard';
10
- import '../../shared/server.DG7Tamti.mjs';
10
+ import '../../shared/server.DZ5BIITo.mjs';
11
+ import '../../shared/server.DLJzqnSX.mjs';
11
12
 
12
13
  class experimental_MessagePortHandler {
13
14
  constructor(standardHandler) {
14
15
  this.standardHandler = standardHandler;
15
16
  }
16
17
  upgrade(port, ...rest) {
17
- const peer = new ServerPeer(async (message) => {
18
- port.postMessage(message instanceof Blob ? await message.arrayBuffer() : message);
18
+ const peer = new ServerPeer((message) => {
19
+ return postMessagePortMessage(port, message);
19
20
  });
20
21
  onMessagePortMessage(port, async (message) => {
21
- const [id, request] = await peer.message(message);
22
- if (!request) {
23
- return;
24
- }
25
- const options = resolveFriendlyStandardHandleOptions(resolveMaybeOptionalOptions(rest));
26
- const { response } = await this.standardHandler.handle({ ...request, body: () => Promise.resolve(request.body) }, options);
27
- await peer.response(id, response ?? { status: 404, headers: {}, body: "No procedure matched" });
22
+ await experimental_handleStandardServerPeerMessage(
23
+ this.standardHandler,
24
+ peer,
25
+ message,
26
+ resolveMaybeOptionalOptions(rest)
27
+ );
28
28
  });
29
29
  onMessagePortClose(port, () => {
30
30
  peer.close();
@@ -1,9 +1,9 @@
1
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.mjs';
1
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.mjs';
2
2
  import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
3
3
  import { SendStandardResponseOptions, NodeHttpRequest, NodeHttpResponse } from '@orpc/standard-server-node';
4
- import { a as StandardHandlerPlugin, C as CompositeStandardHandlerPlugin, g as StandardHandleOptions, i as StandardHandler } from '../../shared/server.Dq8xr7PQ.mjs';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.BliFSTnG.mjs';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.Bd52nNaH.mjs';
4
+ import { c as StandardHandlerPlugin, C as CompositeStandardHandlerPlugin, b as StandardHandleOptions, a as StandardHandler } from '../../shared/server.BtQsqpPB.mjs';
5
+ import { F as FriendlyStandardHandleOptions } from '../../shared/server.B3dVpAsJ.mjs';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.CKafa5G2.mjs';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
@@ -1,9 +1,9 @@
1
- import { C as Context, R as Router } from '../../shared/server.DD2C4ujN.js';
1
+ import { C as Context, R as Router } from '../../shared/server.6ohwBdwx.js';
2
2
  import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
3
3
  import { SendStandardResponseOptions, NodeHttpRequest, NodeHttpResponse } from '@orpc/standard-server-node';
4
- import { a as StandardHandlerPlugin, C as CompositeStandardHandlerPlugin, g as StandardHandleOptions, i as StandardHandler } from '../../shared/server.-ACo36I0.js';
5
- import { F as FriendlyStandardHandleOptions } from '../../shared/server.IG2MjhrD.js';
6
- import { S as StandardRPCHandlerOptions } from '../../shared/server.BPAWobQg.js';
4
+ import { c as StandardHandlerPlugin, C as CompositeStandardHandlerPlugin, b as StandardHandleOptions, a as StandardHandler } from '../../shared/server.BE3B4vij.js';
5
+ import { F as FriendlyStandardHandleOptions } from '../../shared/server.CeW2jMCj.js';
6
+ import { S as StandardRPCHandlerOptions } from '../../shared/server.B6GspgNq.js';
7
7
  import '@orpc/client';
8
8
  import '@orpc/contract';
9
9
  import '@orpc/standard-server';
@@ -1,14 +1,14 @@
1
1
  import { ORPCError } from '@orpc/client';
2
2
  import { toArray, intercept, resolveMaybeOptionalOptions } from '@orpc/shared';
3
3
  import { toStandardLazyRequest, sendStandardResponse } from '@orpc/standard-server-node';
4
- import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.BVwwTHyO.mjs';
4
+ import { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.DZ5BIITo.mjs';
5
5
  import '@orpc/standard-server';
6
6
  import '@orpc/contract';
7
- import { C as CompositeStandardHandlerPlugin, b as StandardRPCHandler } from '../../shared/server.4FnxLwwr.mjs';
7
+ import { C as CompositeStandardHandlerPlugin, b as StandardRPCHandler } from '../../shared/server.CB8Snncu.mjs';
8
8
  import '@orpc/client/standard';
9
9
  import '@orpc/standard-server/batch';
10
10
  import { S as StrictGetMethodPlugin } from '../../shared/server.BW-nUGgA.mjs';
11
- import '../../shared/server.DG7Tamti.mjs';
11
+ import '../../shared/server.DLJzqnSX.mjs';
12
12
 
13
13
  class BodyLimitPlugin {
14
14
  maxBodySize;
@@ -1,10 +1,11 @@
1
- import { c as StandardCodec, d as StandardParams, e as StandardMatcher, f as StandardMatchResult } from '../../shared/server.Dq8xr7PQ.mjs';
2
- export { C as CompositeStandardHandlerPlugin, g as StandardHandleOptions, h as StandardHandleResult, i as StandardHandler, S as StandardHandlerInterceptorOptions, b as StandardHandlerOptions, a as StandardHandlerPlugin } from '../../shared/server.Dq8xr7PQ.mjs';
1
+ import { d as StandardCodec, e as StandardParams, f as StandardMatcher, g as StandardMatchResult } from '../../shared/server.BtQsqpPB.mjs';
2
+ export { C as CompositeStandardHandlerPlugin, b as StandardHandleOptions, h as StandardHandleResult, a as StandardHandler, i as StandardHandlerInterceptorOptions, S as StandardHandlerOptions, c as StandardHandlerPlugin } from '../../shared/server.BtQsqpPB.mjs';
3
3
  import { ORPCError, HTTPPath } from '@orpc/client';
4
4
  import { StandardRPCSerializer } from '@orpc/client/standard';
5
5
  import { StandardLazyRequest, StandardResponse } from '@orpc/standard-server';
6
- import { h as AnyProcedure, f as AnyRouter } from '../../shared/server.DD2C4ujN.mjs';
7
- export { a as StandardRPCHandler, S as StandardRPCHandlerOptions } from '../../shared/server.Bd52nNaH.mjs';
6
+ import { A as AnyProcedure, a as AnyRouter } from '../../shared/server.6ohwBdwx.mjs';
7
+ export { a as StandardRPCHandler, S as StandardRPCHandlerOptions } from '../../shared/server.CKafa5G2.mjs';
8
+ export { F as FriendlyStandardHandleOptions, r as resolveFriendlyStandardHandleOptions } from '../../shared/server.B3dVpAsJ.mjs';
8
9
  import '@orpc/contract';
9
10
  import '@orpc/shared';
10
11
 
@@ -1,10 +1,11 @@
1
- import { c as StandardCodec, d as StandardParams, e as StandardMatcher, f as StandardMatchResult } from '../../shared/server.-ACo36I0.js';
2
- export { C as CompositeStandardHandlerPlugin, g as StandardHandleOptions, h as StandardHandleResult, i as StandardHandler, S as StandardHandlerInterceptorOptions, b as StandardHandlerOptions, a as StandardHandlerPlugin } from '../../shared/server.-ACo36I0.js';
1
+ import { d as StandardCodec, e as StandardParams, f as StandardMatcher, g as StandardMatchResult } from '../../shared/server.BE3B4vij.js';
2
+ export { C as CompositeStandardHandlerPlugin, b as StandardHandleOptions, h as StandardHandleResult, a as StandardHandler, i as StandardHandlerInterceptorOptions, S as StandardHandlerOptions, c as StandardHandlerPlugin } from '../../shared/server.BE3B4vij.js';
3
3
  import { ORPCError, HTTPPath } from '@orpc/client';
4
4
  import { StandardRPCSerializer } from '@orpc/client/standard';
5
5
  import { StandardLazyRequest, StandardResponse } from '@orpc/standard-server';
6
- import { h as AnyProcedure, f as AnyRouter } from '../../shared/server.DD2C4ujN.js';
7
- export { a as StandardRPCHandler, S as StandardRPCHandlerOptions } from '../../shared/server.BPAWobQg.js';
6
+ import { A as AnyProcedure, a as AnyRouter } from '../../shared/server.6ohwBdwx.js';
7
+ export { a as StandardRPCHandler, S as StandardRPCHandlerOptions } from '../../shared/server.B6GspgNq.js';
8
+ export { F as FriendlyStandardHandleOptions, r as resolveFriendlyStandardHandleOptions } from '../../shared/server.CeW2jMCj.js';
8
9
  import '@orpc/contract';
9
10
  import '@orpc/shared';
10
11
 
@@ -1,7 +1,8 @@
1
- export { C as CompositeStandardHandlerPlugin, S as StandardHandler, a as StandardRPCCodec, b as StandardRPCHandler, c as StandardRPCMatcher } from '../../shared/server.4FnxLwwr.mjs';
1
+ export { C as CompositeStandardHandlerPlugin, S as StandardHandler, a as StandardRPCCodec, b as StandardRPCHandler, c as StandardRPCMatcher } from '../../shared/server.CB8Snncu.mjs';
2
+ export { r as resolveFriendlyStandardHandleOptions } from '../../shared/server.DZ5BIITo.mjs';
2
3
  import '@orpc/client/standard';
3
4
  import '@orpc/client';
4
5
  import '@orpc/shared';
5
6
  import '@orpc/standard-server';
6
- import '../../shared/server.DG7Tamti.mjs';
7
+ import '../../shared/server.DLJzqnSX.mjs';
7
8
  import '@orpc/contract';
@@ -0,0 +1,14 @@
1
+ import { ServerPeer, EncodedMessage } from '@orpc/standard-server-peer';
2
+ import { C as Context } from '../../shared/server.6ohwBdwx.mjs';
3
+ import { a as StandardHandler } from '../../shared/server.BtQsqpPB.mjs';
4
+ import { F as FriendlyStandardHandleOptions } from '../../shared/server.B3dVpAsJ.mjs';
5
+ import '@orpc/client';
6
+ import '@orpc/contract';
7
+ import '@orpc/shared';
8
+ import '@orpc/standard-server';
9
+
10
+ type experimental_HandleStandardServerPeerMessageOptions<T extends Context> = Omit<FriendlyStandardHandleOptions<T>, 'prefix'>;
11
+ declare function experimental_handleStandardServerPeerMessage<T extends Context>(handler: StandardHandler<T>, peer: ServerPeer, message: EncodedMessage, options: experimental_HandleStandardServerPeerMessageOptions<T>): Promise<void>;
12
+
13
+ export { experimental_handleStandardServerPeerMessage };
14
+ export type { experimental_HandleStandardServerPeerMessageOptions };
@@ -0,0 +1,14 @@
1
+ import { ServerPeer, EncodedMessage } from '@orpc/standard-server-peer';
2
+ import { C as Context } from '../../shared/server.6ohwBdwx.js';
3
+ import { a as StandardHandler } from '../../shared/server.BE3B4vij.js';
4
+ import { F as FriendlyStandardHandleOptions } from '../../shared/server.CeW2jMCj.js';
5
+ import '@orpc/client';
6
+ import '@orpc/contract';
7
+ import '@orpc/shared';
8
+ import '@orpc/standard-server';
9
+
10
+ type experimental_HandleStandardServerPeerMessageOptions<T extends Context> = Omit<FriendlyStandardHandleOptions<T>, 'prefix'>;
11
+ declare function experimental_handleStandardServerPeerMessage<T extends Context>(handler: StandardHandler<T>, peer: ServerPeer, message: EncodedMessage, options: experimental_HandleStandardServerPeerMessageOptions<T>): Promise<void>;
12
+
13
+ export { experimental_handleStandardServerPeerMessage };
14
+ export type { experimental_HandleStandardServerPeerMessageOptions };
@@ -0,0 +1,7 @@
1
+ export { e as experimental_handleStandardServerPeerMessage } from '../../shared/server.DxNFsvpM.mjs';
2
+ import '@orpc/client';
3
+ import '@orpc/shared';
4
+ import '@orpc/standard-server';
5
+ import '@orpc/contract';
6
+ import '@orpc/client/standard';
7
+ import '../../shared/server.DZ5BIITo.mjs';