@orpc/server 0.0.0-next.3d10c98 → 0.0.0-next.3d9f498

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 (41) hide show
  1. package/README.md +1 -0
  2. package/dist/adapters/bun-ws/index.d.mts +35 -0
  3. package/dist/adapters/bun-ws/index.d.ts +35 -0
  4. package/dist/adapters/bun-ws/index.mjs +51 -0
  5. package/dist/adapters/crossws/index.d.mts +30 -0
  6. package/dist/adapters/crossws/index.d.ts +30 -0
  7. package/dist/adapters/crossws/index.mjs +51 -0
  8. package/dist/adapters/fetch/index.d.mts +17 -9
  9. package/dist/adapters/fetch/index.d.ts +17 -9
  10. package/dist/adapters/fetch/index.mjs +7 -2
  11. package/dist/adapters/message-port/index.d.mts +28 -0
  12. package/dist/adapters/message-port/index.d.ts +28 -0
  13. package/dist/adapters/message-port/index.mjs +41 -0
  14. package/dist/adapters/node/index.d.mts +17 -9
  15. package/dist/adapters/node/index.d.ts +17 -9
  16. package/dist/adapters/node/index.mjs +7 -2
  17. package/dist/adapters/standard/index.d.mts +4 -4
  18. package/dist/adapters/standard/index.d.ts +4 -4
  19. package/dist/adapters/standard/index.mjs +4 -5
  20. package/dist/adapters/websocket/index.d.mts +27 -0
  21. package/dist/adapters/websocket/index.d.ts +27 -0
  22. package/dist/adapters/websocket/index.mjs +38 -0
  23. package/dist/adapters/ws/index.d.mts +28 -0
  24. package/dist/adapters/ws/index.d.ts +28 -0
  25. package/dist/adapters/ws/index.mjs +38 -0
  26. package/dist/index.d.mts +4 -4
  27. package/dist/index.d.ts +4 -4
  28. package/dist/index.mjs +6 -2
  29. package/dist/plugins/index.d.mts +11 -11
  30. package/dist/plugins/index.d.ts +11 -11
  31. package/dist/plugins/index.mjs +6 -7
  32. package/dist/shared/{server.D5fBlF9j.d.ts → server.-ACo36I0.d.ts} +9 -9
  33. package/dist/shared/{server.qf03T-Xn.mjs → server.4FnxLwwr.mjs} +10 -14
  34. package/dist/shared/{server.CuD15qZB.d.ts → server.BPAWobQg.d.ts} +3 -9
  35. package/dist/shared/{server.CN0534_m.d.mts → server.Bd52nNaH.d.mts} +3 -9
  36. package/dist/shared/{server.DjgtLwKi.d.mts → server.BliFSTnG.d.mts} +2 -2
  37. package/dist/shared/{server.DPWk5pjW.d.mts → server.DD2C4ujN.d.mts} +4 -4
  38. package/dist/shared/{server.DPWk5pjW.d.ts → server.DD2C4ujN.d.ts} +4 -4
  39. package/dist/shared/{server.DY7OKEoj.d.mts → server.Dq8xr7PQ.d.mts} +9 -9
  40. package/dist/shared/{server.CjlA3NKP.d.ts → server.IG2MjhrD.d.ts} +2 -2
  41. package/package.json +50 -8
@@ -1,17 +1,11 @@
1
1
  import { StandardRPCJsonSerializerOptions } from '@orpc/client/standard';
2
- import { C as Context, R as Router } from './server.DPWk5pjW.mjs';
3
- import { b as StandardHandlerOptions, i as StandardHandler } from './server.DY7OKEoj.mjs';
2
+ import { C as Context, R as Router } from './server.DD2C4ujN.mjs';
3
+ import { b as StandardHandlerOptions, i as StandardHandler } from './server.Dq8xr7PQ.mjs';
4
4
 
5
5
  interface StandardRPCHandlerOptions<T extends Context> extends StandardHandlerOptions<T>, StandardRPCJsonSerializerOptions {
6
- /**
7
- * Enables or disables the StrictGetMethodPlugin.
8
- *
9
- * @default true
10
- */
11
- strictGetMethodPluginEnabled?: boolean;
12
6
  }
13
7
  declare class StandardRPCHandler<T extends Context> extends StandardHandler<T> {
14
- constructor(router: Router<any, T>, options: StandardRPCHandlerOptions<T>);
8
+ constructor(router: Router<any, T>, options?: StandardRPCHandlerOptions<T>);
15
9
  }
16
10
 
17
11
  export { StandardRPCHandler as a };
@@ -1,5 +1,5 @@
1
- import { C as Context } from './server.DPWk5pjW.mjs';
2
- import { g as StandardHandleOptions } from './server.DY7OKEoj.mjs';
1
+ import { C as Context } from './server.DD2C4ujN.mjs';
2
+ import { g as StandardHandleOptions } from './server.Dq8xr7PQ.mjs';
3
3
 
4
4
  type FriendlyStandardHandleOptions<T extends Context> = Omit<StandardHandleOptions<T>, 'context'> & (Record<never, never> extends T ? {
5
5
  context?: T;
@@ -1,6 +1,6 @@
1
1
  import { ORPCErrorCode, ORPCErrorOptions, ORPCError, HTTPPath, ClientContext, Client } from '@orpc/client';
2
2
  import { ErrorMap, ErrorMapItem, InferSchemaInput, AnySchema, Meta, ContractProcedureDef, InferSchemaOutput, ErrorFromErrorMap, AnyContractRouter, ContractProcedure } from '@orpc/contract';
3
- import { MaybeOptionalOptions, Promisable, Interceptor, Value } from '@orpc/shared';
3
+ import { MaybeOptionalOptions, Promisable, Interceptor, PromiseWithError, Value } from '@orpc/shared';
4
4
 
5
5
  type Context = Record<PropertyKey, any>;
6
6
  type MergedInitialContext<TInitial extends Context, TAdditional extends Context, TCurrent extends Context> = TInitial & Omit<TAdditional, keyof TCurrent>;
@@ -127,11 +127,11 @@ type CreateProcedureClientOptions<TInitialContext extends Context, TOutputSchema
127
127
  * This is helpful for logging and analytics.
128
128
  */
129
129
  path?: readonly string[];
130
- interceptors?: Interceptor<ProcedureClientInterceptorOptions<TInitialContext, TErrorMap, TMeta>, InferSchemaOutput<TOutputSchema>, ErrorFromErrorMap<TErrorMap>>[];
130
+ interceptors?: Interceptor<ProcedureClientInterceptorOptions<TInitialContext, TErrorMap, TMeta>, PromiseWithError<InferSchemaOutput<TOutputSchema>, ErrorFromErrorMap<TErrorMap>>>[];
131
131
  } & (Record<never, never> extends TInitialContext ? {
132
- context?: Value<TInitialContext, [clientContext: TClientContext]>;
132
+ context?: Value<Promisable<TInitialContext>, [clientContext: TClientContext]>;
133
133
  } : {
134
- context: Value<TInitialContext, [clientContext: TClientContext]>;
134
+ context: Value<Promisable<TInitialContext>, [clientContext: TClientContext]>;
135
135
  });
136
136
  /**
137
137
  * Create Server-side client from a procedure.
@@ -1,6 +1,6 @@
1
1
  import { ORPCErrorCode, ORPCErrorOptions, ORPCError, HTTPPath, ClientContext, Client } from '@orpc/client';
2
2
  import { ErrorMap, ErrorMapItem, InferSchemaInput, AnySchema, Meta, ContractProcedureDef, InferSchemaOutput, ErrorFromErrorMap, AnyContractRouter, ContractProcedure } from '@orpc/contract';
3
- import { MaybeOptionalOptions, Promisable, Interceptor, Value } from '@orpc/shared';
3
+ import { MaybeOptionalOptions, Promisable, Interceptor, PromiseWithError, Value } from '@orpc/shared';
4
4
 
5
5
  type Context = Record<PropertyKey, any>;
6
6
  type MergedInitialContext<TInitial extends Context, TAdditional extends Context, TCurrent extends Context> = TInitial & Omit<TAdditional, keyof TCurrent>;
@@ -127,11 +127,11 @@ type CreateProcedureClientOptions<TInitialContext extends Context, TOutputSchema
127
127
  * This is helpful for logging and analytics.
128
128
  */
129
129
  path?: readonly string[];
130
- interceptors?: Interceptor<ProcedureClientInterceptorOptions<TInitialContext, TErrorMap, TMeta>, InferSchemaOutput<TOutputSchema>, ErrorFromErrorMap<TErrorMap>>[];
130
+ interceptors?: Interceptor<ProcedureClientInterceptorOptions<TInitialContext, TErrorMap, TMeta>, PromiseWithError<InferSchemaOutput<TOutputSchema>, ErrorFromErrorMap<TErrorMap>>>[];
131
131
  } & (Record<never, never> extends TInitialContext ? {
132
- context?: Value<TInitialContext, [clientContext: TClientContext]>;
132
+ context?: Value<Promisable<TInitialContext>, [clientContext: TClientContext]>;
133
133
  } : {
134
- context: Value<TInitialContext, [clientContext: TClientContext]>;
134
+ context: Value<Promisable<TInitialContext>, [clientContext: TClientContext]>;
135
135
  });
136
136
  /**
137
137
  * Create Server-side client from a procedure.
@@ -1,17 +1,17 @@
1
1
  import { HTTPPath, ORPCError } from '@orpc/client';
2
- import { Meta, InferSchemaOutput, AnySchema, ErrorFromErrorMap } from '@orpc/contract';
3
- import { Interceptor, ThrowableError } from '@orpc/shared';
2
+ import { Meta } from '@orpc/contract';
3
+ import { Interceptor } from '@orpc/shared';
4
4
  import { StandardResponse, StandardLazyRequest } from '@orpc/standard-server';
5
- import { C as Context, f as AnyRouter, h as AnyProcedure, F as ProcedureClientInterceptorOptions, R as Router } from './server.DPWk5pjW.mjs';
5
+ import { C as Context, R as Router, f as AnyRouter, h as AnyProcedure, F as ProcedureClientInterceptorOptions } from './server.DD2C4ujN.mjs';
6
6
 
7
- interface StandardHandlerPlugin<TContext extends Context> {
7
+ interface StandardHandlerPlugin<T extends Context> {
8
8
  order?: number;
9
- init?(options: StandardHandlerOptions<TContext>): void;
9
+ init?(options: StandardHandlerOptions<T>, router: Router<any, T>): void;
10
10
  }
11
11
  declare class CompositeStandardHandlerPlugin<T extends Context, TPlugin extends StandardHandlerPlugin<T>> implements StandardHandlerPlugin<T> {
12
12
  protected readonly plugins: TPlugin[];
13
13
  constructor(plugins?: readonly TPlugin[]);
14
- init(options: StandardHandlerOptions<T>): void;
14
+ init(options: StandardHandlerOptions<T>, router: Router<any, T>): void;
15
15
  }
16
16
 
17
17
  type StandardParams = Record<string, string>;
@@ -49,16 +49,16 @@ interface StandardHandlerOptions<TContext extends Context> {
49
49
  /**
50
50
  * Interceptors at the request level, helpful when you want catch errors
51
51
  */
52
- interceptors?: Interceptor<StandardHandlerInterceptorOptions<TContext>, StandardHandleResult, ThrowableError>[];
52
+ interceptors?: Interceptor<StandardHandlerInterceptorOptions<TContext>, Promise<StandardHandleResult>>[];
53
53
  /**
54
54
  * Interceptors at the root level, helpful when you want override the request/response
55
55
  */
56
- rootInterceptors?: Interceptor<StandardHandlerInterceptorOptions<TContext>, StandardHandleResult, ThrowableError>[];
56
+ rootInterceptors?: Interceptor<StandardHandlerInterceptorOptions<TContext>, Promise<StandardHandleResult>>[];
57
57
  /**
58
58
  *
59
59
  * Interceptors for procedure client.
60
60
  */
61
- clientInterceptors?: Interceptor<ProcedureClientInterceptorOptions<TContext, Record<never, never>, Meta>, InferSchemaOutput<AnySchema>, ErrorFromErrorMap<Record<never, never>>>[];
61
+ clientInterceptors?: Interceptor<ProcedureClientInterceptorOptions<TContext, Record<never, never>, Meta>, Promise<unknown>>[];
62
62
  }
63
63
  declare class StandardHandler<T extends Context> {
64
64
  private readonly matcher;
@@ -1,5 +1,5 @@
1
- import { C as Context } from './server.DPWk5pjW.js';
2
- import { g as StandardHandleOptions } from './server.D5fBlF9j.js';
1
+ import { C as Context } from './server.DD2C4ujN.js';
2
+ import { g as StandardHandleOptions } from './server.-ACo36I0.js';
3
3
 
4
4
  type FriendlyStandardHandleOptions<T extends Context> = Omit<StandardHandleOptions<T>, 'context'> & (Record<never, never> extends T ? {
5
5
  context?: T;
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.3d10c98",
4
+ "version": "0.0.0-next.3d9f498",
5
5
  "license": "MIT",
6
6
  "homepage": "https://orpc.unnoq.com",
7
7
  "repository": {
@@ -38,21 +38,63 @@
38
38
  "types": "./dist/adapters/node/index.d.mts",
39
39
  "import": "./dist/adapters/node/index.mjs",
40
40
  "default": "./dist/adapters/node/index.mjs"
41
+ },
42
+ "./websocket": {
43
+ "types": "./dist/adapters/websocket/index.d.mts",
44
+ "import": "./dist/adapters/websocket/index.mjs",
45
+ "default": "./dist/adapters/websocket/index.mjs"
46
+ },
47
+ "./crossws": {
48
+ "types": "./dist/adapters/crossws/index.d.mts",
49
+ "import": "./dist/adapters/crossws/index.mjs",
50
+ "default": "./dist/adapters/crossws/index.mjs"
51
+ },
52
+ "./ws": {
53
+ "types": "./dist/adapters/ws/index.d.mts",
54
+ "import": "./dist/adapters/ws/index.mjs",
55
+ "default": "./dist/adapters/ws/index.mjs"
56
+ },
57
+ "./bun-ws": {
58
+ "types": "./dist/adapters/bun-ws/index.d.mts",
59
+ "import": "./dist/adapters/bun-ws/index.mjs",
60
+ "default": "./dist/adapters/bun-ws/index.mjs"
61
+ },
62
+ "./message-port": {
63
+ "types": "./dist/adapters/message-port/index.d.mts",
64
+ "import": "./dist/adapters/message-port/index.mjs",
65
+ "default": "./dist/adapters/message-port/index.mjs"
41
66
  }
42
67
  },
43
68
  "files": [
44
69
  "dist"
45
70
  ],
71
+ "peerDependencies": {
72
+ "crossws": ">=0.3.4",
73
+ "ws": ">=8.18.1"
74
+ },
75
+ "peerDependenciesMeta": {
76
+ "crossws": {
77
+ "optional": true
78
+ },
79
+ "ws": {
80
+ "optional": true
81
+ }
82
+ },
46
83
  "dependencies": {
47
- "@orpc/client": "0.0.0-next.3d10c98",
48
- "@orpc/standard-server": "0.0.0-next.3d10c98",
49
- "@orpc/shared": "0.0.0-next.3d10c98",
50
- "@orpc/standard-server-fetch": "0.0.0-next.3d10c98",
51
- "@orpc/contract": "0.0.0-next.3d10c98",
52
- "@orpc/standard-server-node": "0.0.0-next.3d10c98"
84
+ "@orpc/client": "0.0.0-next.3d9f498",
85
+ "@orpc/shared": "0.0.0-next.3d9f498",
86
+ "@orpc/contract": "0.0.0-next.3d9f498",
87
+ "@orpc/standard-server-fetch": "0.0.0-next.3d9f498",
88
+ "@orpc/standard-server": "0.0.0-next.3d9f498",
89
+ "@orpc/standard-server-node": "0.0.0-next.3d9f498",
90
+ "@orpc/standard-server-peer": "0.0.0-next.3d9f498"
53
91
  },
54
92
  "devDependencies": {
55
- "supertest": "^7.1.0"
93
+ "@types/ws": "^8.18.1",
94
+ "crossws": "^0.3.4",
95
+ "next": "^15.3.0",
96
+ "supertest": "^7.1.0",
97
+ "ws": "^8.18.1"
56
98
  },
57
99
  "scripts": {
58
100
  "build": "unbuild",