@orpc/server 2.0.0-beta.34 → 2.0.0-beta.35

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 (31) hide show
  1. package/README.md +15 -14
  2. package/dist/adapters/aws-lambda/index.mjs +3 -3
  3. package/dist/adapters/crossws/index.mjs +3 -3
  4. package/dist/adapters/fastify/index.mjs +3 -3
  5. package/dist/adapters/fetch/index.d.mts +1 -1
  6. package/dist/adapters/fetch/index.d.ts +1 -1
  7. package/dist/adapters/fetch/index.mjs +3 -3
  8. package/dist/adapters/message-port/index.mjs +3 -3
  9. package/dist/adapters/node/index.d.mts +1 -1
  10. package/dist/adapters/node/index.d.ts +1 -1
  11. package/dist/adapters/node/index.mjs +3 -3
  12. package/dist/adapters/standard/index.d.mts +3 -3
  13. package/dist/adapters/standard/index.d.ts +3 -3
  14. package/dist/adapters/standard/index.mjs +3 -3
  15. package/dist/adapters/websocket/index.mjs +3 -3
  16. package/dist/extensions/callable.mjs +2 -2
  17. package/dist/index.mjs +5 -5
  18. package/dist/plugins/index.d.mts +2 -2
  19. package/dist/plugins/index.d.ts +2 -2
  20. package/dist/plugins/index.mjs +3 -3
  21. package/dist/shared/{server.BNfuzVqH.mjs → server.24nXyhbl.mjs} +1 -1
  22. package/dist/shared/{server.CAmrY_mX.d.ts → server.BGMO5dst.d.ts} +3 -3
  23. package/dist/shared/{server.gXC5UaAH.mjs → server.BYnwk7Xz.mjs} +1 -1
  24. package/dist/shared/{server.CGQ3M7fX.d.mts → server.CAiLRqPf.d.mts} +1 -1
  25. package/dist/shared/{server.D23TTT5i.d.ts → server.DEeCcNd6.d.ts} +2 -2
  26. package/dist/shared/{server.ByvwIMbH.d.mts → server.DcHlvZFK.d.mts} +3 -3
  27. package/dist/shared/{server.CDOFCg6A.mjs → server.Djb_ebJT.mjs} +3 -4
  28. package/dist/shared/{server.BrURRtO7.d.mts → server.R0uHWfBo.d.mts} +2 -2
  29. package/dist/shared/{server.C-hqoApz.d.ts → server.b2-J4t6T.d.ts} +1 -1
  30. package/dist/shared/{server.ozO1TILY.mjs → server.sNWd6DAG.mjs} +16 -16
  31. package/package.json +4 -4
package/README.md CHANGED
@@ -55,20 +55,20 @@ You can read the documentation [here](https://orpc.dev).
55
55
 
56
56
  **Framework & ecosystem integrations**
57
57
 
58
- | Package | Purpose | Docs |
59
- | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
60
- | [@orpc/next](https://www.npmjs.com/package/@orpc/next) | Integrate with [Next.js Server Functions](https://nextjs.org/docs/app/getting-started/mutating-data). | [Next.js](https://orpc.dev/docs/integrations/next) |
61
- | [@orpc/ai-sdk](https://www.npmjs.com/package/@orpc/ai-sdk) | Turn contracts and procedures into [AI SDK](https://ai-sdk.dev/) tools. | [AI SDK](https://orpc.dev/docs/integrations/ai-sdk) |
62
- | [@orpc/tanstack-query](https://www.npmjs.com/package/@orpc/tanstack-query) | Integrate with [TanStack Query](https://tanstack.com/query/latest). | [TanStack Query](https://orpc.dev/docs/integrations/tanstack-query) |
63
- | [@orpc/pinia-colada](https://www.npmjs.com/package/@orpc/pinia-colada) | Integrate with [Pinia Colada](https://pinia-colada.esm.dev/). | [Pinia Colada](https://orpc.dev/docs/integrations/pinia-colada) |
64
- | [@orpc/swr](https://www.npmjs.com/package/@orpc/swr) | Integrate with [SWR](https://swr.vercel.app/). | [SWR](https://orpc.dev/docs/integrations/swr) |
65
- | [@orpc/experimental-msw](https://www.npmjs.com/package/@orpc/experimental-msw) | Mock procedures with [Mock Service Worker](https://mswjs.io/). | [MSW](https://orpc.dev/docs/integrations/msw) |
66
- | [@orpc/experimental-effect](https://www.npmjs.com/package/@orpc/experimental-effect) | Integrate with [Effect](https://effect.website/). | [Effect](https://orpc.dev/docs/integrations/effect) |
67
- | [@orpc/nest](https://www.npmjs.com/package/@orpc/nest) | Implement your contract with [NestJS](https://nestjs.com/). | [NestJS](https://orpc.dev/docs/integrations/nest) |
68
- | [@orpc/node](https://www.npmjs.com/package/@orpc/node) | [Node.js](https://nodejs.org/) plugins for static file serving and large uploads. | [Static File](https://orpc.dev/docs/plugins/static-file), [Tmp File Upload](https://orpc.dev/docs/plugins/tmp-file-upload), [Batch Response Compression](https://orpc.dev/docs/plugins/batch-response-compression) |
69
- | [@orpc/bun](https://www.npmjs.com/package/@orpc/bun) | Adapters for [Bun's Redis](https://bun.sh/). | [Publisher](https://orpc.dev/docs/helpers/publisher), [Rate Limit](https://orpc.dev/docs/helpers/ratelimit) |
70
- | [@orpc/cloudflare](https://www.npmjs.com/package/@orpc/cloudflare) | Adapters for [Cloudflare's RateLimit and Durable Objects](https://developers.cloudflare.com/workers/). | [Publisher](https://orpc.dev/docs/helpers/publisher), [Rate Limit](https://orpc.dev/docs/helpers/ratelimit) |
71
- | [@orpc/trpc](https://www.npmjs.com/package/@orpc/trpc) | Reuse existing [tRPC](https://trpc.io/) routers within oRPC. | [tRPC](https://orpc.dev/docs/integrations/trpc) |
58
+ | Package | Purpose | Docs |
59
+ | ------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
60
+ | [@orpc/next](https://www.npmjs.com/package/@orpc/next) | Integrate with [Next.js Server Functions](https://nextjs.org/docs/app/getting-started/mutating-data). | [Next.js](https://orpc.dev/docs/integrations/next) |
61
+ | [@orpc/ai-sdk](https://www.npmjs.com/package/@orpc/ai-sdk) | Turn contracts and procedures into [AI SDK](https://ai-sdk.dev/) tools. | [AI SDK](https://orpc.dev/docs/integrations/ai-sdk) |
62
+ | [@orpc/tanstack-query](https://www.npmjs.com/package/@orpc/tanstack-query) | Integrate with [TanStack Query](https://tanstack.com/query/latest). | [TanStack Query](https://orpc.dev/docs/integrations/tanstack-query) |
63
+ | [@orpc/pinia-colada](https://www.npmjs.com/package/@orpc/pinia-colada) | Integrate with [Pinia Colada](https://pinia-colada.esm.dev/). | [Pinia Colada](https://orpc.dev/docs/integrations/pinia-colada) |
64
+ | [@orpc/swr](https://www.npmjs.com/package/@orpc/swr) | Integrate with [SWR](https://swr.vercel.app/). | [SWR](https://orpc.dev/docs/integrations/swr) |
65
+ | [@orpc/experimental-msw](https://www.npmjs.com/package/@orpc/experimental-msw) | Mock procedures with [Mock Service Worker](https://mswjs.io/). | [MSW](https://orpc.dev/docs/integrations/msw) |
66
+ | [@orpc/experimental-effect](https://www.npmjs.com/package/@orpc/experimental-effect) | Integrate with [Effect](https://effect.website/). | [Effect](https://orpc.dev/docs/integrations/effect) |
67
+ | [@orpc/nest](https://www.npmjs.com/package/@orpc/nest) | Implement your contract with [NestJS](https://nestjs.com/). | [NestJS](https://orpc.dev/docs/integrations/nest) |
68
+ | [@orpc/node](https://www.npmjs.com/package/@orpc/node) | [Node.js](https://nodejs.org/) plugins for static file serving and large uploads. | [Static File](https://orpc.dev/docs/plugins/static-file), [Tmp File Upload](https://orpc.dev/docs/plugins/tmp-file-upload), [Batch Response Compression](https://orpc.dev/docs/plugins/batch-response-compression) |
69
+ | [@orpc/bun](https://www.npmjs.com/package/@orpc/bun) | Adapters for [Bun's Redis](https://bun.sh/). | [Publisher](https://orpc.dev/docs/helpers/publisher), [Rate Limit](https://orpc.dev/docs/helpers/ratelimit) |
70
+ | [@orpc/cloudflare](https://www.npmjs.com/package/@orpc/cloudflare) | Adapters for [Cloudflare Workers](https://developers.cloudflare.com/workers/). | [Publisher](https://orpc.dev/docs/helpers/publisher), [Rate Limit](https://orpc.dev/docs/helpers/ratelimit), [Traces](https://orpc.dev/docs/integrations/cloudflare-traces) |
71
+ | [@orpc/trpc](https://www.npmjs.com/package/@orpc/trpc) | Reuse existing [tRPC](https://trpc.io/) routers within oRPC. | [tRPC](https://orpc.dev/docs/integrations/trpc) |
72
72
 
73
73
  **Observability**
74
74
 
@@ -127,6 +127,7 @@ Like what we build over at [middleapi](https://github.com/middleapi)? You can he
127
127
  <td align="center"><a href="https://github.com/ellis-driscoll?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor" target="_blank" rel="noopener sponsored" title="Ellis Driscoll"><img src="https://avatars.githubusercontent.com/u/70685966?u=c5f95bc33b5991d9744abe00052542e4a2ed3cb9&amp;v=4" width="139" alt="Ellis Driscoll"/><br />Ellis Driscoll</a></td>
128
128
  <td align="center"><a href="https://github.com/hoangbn?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor" target="_blank" rel="noopener sponsored" title="Hoang Nguyen"><img src="https://avatars.githubusercontent.com/u/38968280?u=c90084c6de65c56facabab7ba13a72a49ddbc3e4&amp;v=4" width="139" alt="Hoang Nguyen"/><br />Hoang Nguyen</a></td>
129
129
  <td align="center"><a href="https://opencollective.com/guest-ac41de3b?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor" target="_blank" rel="noopener sponsored" title="Orestis Ioannou"><img src="https://images.opencollective.com/guest-ac41de3b/avatar/460.png" width="139" alt="Orestis Ioannou"/><br />Orestis Ioannou</a></td>
130
+ <td align="center"><a href="https://automatio.ai/?ref=middleapi&amp;utm_source=middleapi&amp;utm_medium=sponsor" target="_blank" rel="noopener sponsored" title="Stefan Smiljkovic"><img src="https://avatars.githubusercontent.com/u/1984909?u=b7bf5bc40ed49df3c22f69d2da7b8d78709c49ed&amp;v=4" width="139" alt="Stefan Smiljkovic"/><br />Stefan Smiljkovic</a></td>
130
131
  </tr>
131
132
  </table>
132
133
 
@@ -1,12 +1,12 @@
1
1
  import { sortPlugins, intercept, resolveMaybeOptionalOptions } from '@orpc/shared';
2
2
  import { toStandardLazyRequest, sendStandardResponse } from '@standard-server/aws-lambda';
3
3
  import { r as resolveFriendlyStandardHandlerHandleOptions } from '../../shared/server.W91HSRkE.mjs';
4
- import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.ozO1TILY.mjs';
4
+ import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.sNWd6DAG.mjs';
5
5
  import '@orpc/client';
6
6
  import '@standard-server/core';
7
- import '../../shared/server.CDOFCg6A.mjs';
7
+ import '../../shared/server.Djb_ebJT.mjs';
8
8
  import '@orpc/contract';
9
- import '../../shared/server.gXC5UaAH.mjs';
9
+ import '../../shared/server.BYnwk7Xz.mjs';
10
10
 
11
11
  class CompositeAwsLambdaHandlerPlugin {
12
12
  name = "~composite/aws-lambda";
@@ -1,12 +1,12 @@
1
1
  import { resolveMaybeOptionalOptions } from '@orpc/shared';
2
2
  import { ServerPeer, encodePeerMessage, decodePeerMessage, isClientPeerSendMessage } from '@standard-server/peer';
3
3
  import { c as createStandardPeerRequestHandler } from '../../shared/server.CX4vUnDk.mjs';
4
- import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.ozO1TILY.mjs';
4
+ import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.sNWd6DAG.mjs';
5
5
  import '@orpc/client';
6
6
  import '@standard-server/core';
7
- import '../../shared/server.CDOFCg6A.mjs';
7
+ import '../../shared/server.Djb_ebJT.mjs';
8
8
  import '@orpc/contract';
9
- import '../../shared/server.gXC5UaAH.mjs';
9
+ import '../../shared/server.BYnwk7Xz.mjs';
10
10
 
11
11
  class experimental_CrosswsHandler {
12
12
  constructor(handler, options = {}) {
@@ -1,12 +1,12 @@
1
1
  import { sortPlugins, intercept, resolveMaybeOptionalOptions } from '@orpc/shared';
2
2
  import { toStandardLazyRequest, sendStandardResponse } from '@standard-server/fastify';
3
3
  import { r as resolveFriendlyStandardHandlerHandleOptions } from '../../shared/server.W91HSRkE.mjs';
4
- import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.ozO1TILY.mjs';
4
+ import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.sNWd6DAG.mjs';
5
5
  import '@orpc/client';
6
6
  import '@standard-server/core';
7
- import '../../shared/server.CDOFCg6A.mjs';
7
+ import '../../shared/server.Djb_ebJT.mjs';
8
8
  import '@orpc/contract';
9
- import '../../shared/server.gXC5UaAH.mjs';
9
+ import '../../shared/server.BYnwk7Xz.mjs';
10
10
 
11
11
  class CompositeFastifyHandlerPlugin {
12
12
  name = "~composite/fastify";
@@ -1,4 +1,4 @@
1
- export { R as BodyLimitPlugin } from '../../shared/server.CGQ3M7fX.mjs';
1
+ export { R as BodyLimitPlugin } from '../../shared/server.CAiLRqPf.mjs';
2
2
  import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
3
3
  import { ToFetchResponseOptions } from '@standard-server/fetch';
4
4
  import { Context } from '../../index.mjs';
@@ -1,4 +1,4 @@
1
- export { R as BodyLimitPlugin } from '../../shared/server.C-hqoApz.js';
1
+ export { R as BodyLimitPlugin } from '../../shared/server.b2-J4t6T.js';
2
2
  import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
3
3
  import { ToFetchResponseOptions } from '@standard-server/fetch';
4
4
  import { Context } from '../../index.js';
@@ -2,12 +2,12 @@ export { R as BodyLimitPlugin } from '../../shared/server.1ExWFMze.mjs';
2
2
  import { sortPlugins, intercept, resolveMaybeOptionalOptions } from '@orpc/shared';
3
3
  import { toStandardLazyRequest, toFetchResponse } from '@standard-server/fetch';
4
4
  import { r as resolveFriendlyStandardHandlerHandleOptions } from '../../shared/server.W91HSRkE.mjs';
5
- import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.ozO1TILY.mjs';
5
+ import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.sNWd6DAG.mjs';
6
6
  import '@orpc/client';
7
7
  import '@standard-server/core';
8
- import '../../shared/server.CDOFCg6A.mjs';
8
+ import '../../shared/server.Djb_ebJT.mjs';
9
9
  import '@orpc/contract';
10
- import '../../shared/server.gXC5UaAH.mjs';
10
+ import '../../shared/server.BYnwk7Xz.mjs';
11
11
 
12
12
  class CompositeFetchHandlerPlugin {
13
13
  name = "~composite/fetch";
@@ -2,12 +2,12 @@ import { onMessagePortMessage, onMessagePortClose, postMessagePortMessage } from
2
2
  import { value, resolveMaybeOptionalOptions } from '@orpc/shared';
3
3
  import { ServerPeer, encodePeerMessage, decodePeerMessage, isClientPeerSendMessage, isPeerMessage } from '@standard-server/peer';
4
4
  import { c as createStandardPeerRequestHandler } from '../../shared/server.CX4vUnDk.mjs';
5
- import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.ozO1TILY.mjs';
5
+ import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.sNWd6DAG.mjs';
6
6
  import '@orpc/client';
7
7
  import '@standard-server/core';
8
- import '../../shared/server.CDOFCg6A.mjs';
8
+ import '../../shared/server.Djb_ebJT.mjs';
9
9
  import '@orpc/contract';
10
- import '../../shared/server.gXC5UaAH.mjs';
10
+ import '../../shared/server.BYnwk7Xz.mjs';
11
11
 
12
12
  class MessagePortHandler {
13
13
  constructor(handler, options = {}) {
@@ -1,4 +1,4 @@
1
- export { R as BodyLimitPlugin } from '../../shared/server.CGQ3M7fX.mjs';
1
+ export { R as BodyLimitPlugin } from '../../shared/server.CAiLRqPf.mjs';
2
2
  import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
3
3
  import { SendStandardResponseOptions, NodeHttpRequest, NodeHttpResponse } from '@standard-server/node';
4
4
  import { Context } from '../../index.mjs';
@@ -1,4 +1,4 @@
1
- export { R as BodyLimitPlugin } from '../../shared/server.C-hqoApz.js';
1
+ export { R as BodyLimitPlugin } from '../../shared/server.b2-J4t6T.js';
2
2
  import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
3
3
  import { SendStandardResponseOptions, NodeHttpRequest, NodeHttpResponse } from '@standard-server/node';
4
4
  import { Context } from '../../index.js';
@@ -2,13 +2,13 @@ export { R as BodyLimitPlugin } from '../../shared/server.1ExWFMze.mjs';
2
2
  import { sortPlugins, intercept, resolveMaybeOptionalOptions } from '@orpc/shared';
3
3
  import { toStandardLazyRequest, sendStandardResponse } from '@standard-server/node';
4
4
  import { r as resolveFriendlyStandardHandlerHandleOptions } from '../../shared/server.W91HSRkE.mjs';
5
- import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.ozO1TILY.mjs';
5
+ import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.sNWd6DAG.mjs';
6
6
  import '@orpc/client';
7
7
  import '@standard-server/core';
8
8
  import '@standard-server/fetch';
9
- import '../../shared/server.CDOFCg6A.mjs';
9
+ import '../../shared/server.Djb_ebJT.mjs';
10
10
  import '@orpc/contract';
11
- import '../../shared/server.gXC5UaAH.mjs';
11
+ import '../../shared/server.BYnwk7Xz.mjs';
12
12
 
13
13
  class CompositeNodeHttpHandlerPlugin {
14
14
  name = "~composite/node-http";
@@ -1,6 +1,6 @@
1
- import { c as StandardHandlerHandleOptions } from '../../shared/server.BrURRtO7.mjs';
2
- export { C as CompositeStandardHandlerPlugin, O as OtelHandlerPlugin, b as StandardHandler, d as StandardHandlerCodec, e as StandardHandlerCodecResolvedProcedure, h as StandardHandlerHandleResult, i as StandardHandlerInterceptor, g as StandardHandlerInterceptorOptions, a as StandardHandlerOptions, S as StandardHandlerPlugin, j as StandardHandlerRoutingInterceptor, f as StandardHandlerRoutingInterceptorOptions } from '../../shared/server.BrURRtO7.mjs';
3
- export { a as RPCHandlerCodec, R as RPCHandlerCodecOptions, b as RPCMatcher, c as RPCMatcherOptions, d as RPC_DEFAULT_ALLOW_METHODS } from '../../shared/server.ByvwIMbH.mjs';
1
+ import { c as StandardHandlerHandleOptions } from '../../shared/server.R0uHWfBo.mjs';
2
+ export { C as CompositeStandardHandlerPlugin, b as StandardHandler, d as StandardHandlerCodec, e as StandardHandlerCodecResolvedProcedure, h as StandardHandlerHandleResult, i as StandardHandlerInterceptor, g as StandardHandlerInterceptorOptions, a as StandardHandlerOptions, S as StandardHandlerPlugin, j as StandardHandlerRoutingInterceptor, f as StandardHandlerRoutingInterceptorOptions, T as TracingHandlerPlugin } from '../../shared/server.R0uHWfBo.mjs';
3
+ export { a as RPCHandlerCodec, R as RPCHandlerCodecOptions, b as RPCMatcher, c as RPCMatcherOptions, d as RPC_DEFAULT_ALLOW_METHODS } from '../../shared/server.DcHlvZFK.mjs';
4
4
  import { Context } from '../../index.mjs';
5
5
  import '@orpc/client';
6
6
  import '@orpc/shared';
@@ -1,6 +1,6 @@
1
- import { c as StandardHandlerHandleOptions } from '../../shared/server.D23TTT5i.js';
2
- export { C as CompositeStandardHandlerPlugin, O as OtelHandlerPlugin, b as StandardHandler, d as StandardHandlerCodec, e as StandardHandlerCodecResolvedProcedure, h as StandardHandlerHandleResult, i as StandardHandlerInterceptor, g as StandardHandlerInterceptorOptions, a as StandardHandlerOptions, S as StandardHandlerPlugin, j as StandardHandlerRoutingInterceptor, f as StandardHandlerRoutingInterceptorOptions } from '../../shared/server.D23TTT5i.js';
3
- export { a as RPCHandlerCodec, R as RPCHandlerCodecOptions, b as RPCMatcher, c as RPCMatcherOptions, d as RPC_DEFAULT_ALLOW_METHODS } from '../../shared/server.CAmrY_mX.js';
1
+ import { c as StandardHandlerHandleOptions } from '../../shared/server.DEeCcNd6.js';
2
+ export { C as CompositeStandardHandlerPlugin, b as StandardHandler, d as StandardHandlerCodec, e as StandardHandlerCodecResolvedProcedure, h as StandardHandlerHandleResult, i as StandardHandlerInterceptor, g as StandardHandlerInterceptorOptions, a as StandardHandlerOptions, S as StandardHandlerPlugin, j as StandardHandlerRoutingInterceptor, f as StandardHandlerRoutingInterceptorOptions, T as TracingHandlerPlugin } from '../../shared/server.DEeCcNd6.js';
3
+ export { a as RPCHandlerCodec, R as RPCHandlerCodecOptions, b as RPCMatcher, c as RPCMatcherOptions, d as RPC_DEFAULT_ALLOW_METHODS } from '../../shared/server.BGMO5dst.js';
4
4
  import { Context } from '../../index.js';
5
5
  import '@orpc/client';
6
6
  import '@orpc/shared';
@@ -1,8 +1,8 @@
1
- export { C as CompositeStandardHandlerPlugin, O as OtelHandlerPlugin, R as RPCHandlerCodec, a as RPCMatcher, b as RPC_DEFAULT_ALLOW_METHODS, S as StandardHandler } from '../../shared/server.ozO1TILY.mjs';
1
+ export { C as CompositeStandardHandlerPlugin, R as RPCHandlerCodec, a as RPCMatcher, b as RPC_DEFAULT_ALLOW_METHODS, S as StandardHandler, T as TracingHandlerPlugin } from '../../shared/server.sNWd6DAG.mjs';
2
2
  export { r as resolveFriendlyStandardHandlerHandleOptions } from '../../shared/server.W91HSRkE.mjs';
3
3
  import '@orpc/client';
4
4
  import '@orpc/shared';
5
5
  import '@standard-server/core';
6
- import '../../shared/server.CDOFCg6A.mjs';
6
+ import '../../shared/server.Djb_ebJT.mjs';
7
7
  import '@orpc/contract';
8
- import '../../shared/server.gXC5UaAH.mjs';
8
+ import '../../shared/server.BYnwk7Xz.mjs';
@@ -1,12 +1,12 @@
1
1
  import { toStringOrBytes, resolveMaybeOptionalOptions, sequential, loadBytes } from '@orpc/shared';
2
2
  import { ServerPeer, encodePeerMessage, decodePeerMessage, isClientPeerSendMessage } from '@standard-server/peer';
3
3
  import { c as createStandardPeerRequestHandler } from '../../shared/server.CX4vUnDk.mjs';
4
- import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.ozO1TILY.mjs';
4
+ import { R as RPCHandlerCodec, S as StandardHandler } from '../../shared/server.sNWd6DAG.mjs';
5
5
  import '@orpc/client';
6
6
  import '@standard-server/core';
7
- import '../../shared/server.CDOFCg6A.mjs';
7
+ import '../../shared/server.Djb_ebJT.mjs';
8
8
  import '@orpc/contract';
9
- import '../../shared/server.gXC5UaAH.mjs';
9
+ import '../../shared/server.BYnwk7Xz.mjs';
10
10
 
11
11
  class WebSocketHandler {
12
12
  constructor(handler, options = {}) {
@@ -1,5 +1,5 @@
1
- import { c as createProcedureClient } from '../shared/server.CDOFCg6A.mjs';
2
- import { D as DecoratedProcedure } from '../shared/server.BNfuzVqH.mjs';
1
+ import { c as createProcedureClient } from '../shared/server.Djb_ebJT.mjs';
2
+ import { D as DecoratedProcedure } from '../shared/server.24nXyhbl.mjs';
3
3
  import '@orpc/client';
4
4
  import '@orpc/contract';
5
5
  import '@orpc/shared';
package/dist/index.mjs CHANGED
@@ -2,11 +2,11 @@ import { mergeErrorMap, resolveMetaPlugins, getHiddenMetaPlugins, ProcedureContr
2
2
  export { ValidationError, asyncIteratorObject, defineMeta, error, eventIterator, reconcileORPCError, type } from '@orpc/contract';
3
3
  import { toArray, bindMethods, isTypescriptObject, resolveMaybeOptionalOptions } from '@orpc/shared';
4
4
  export { AsyncIteratorClass, asyncIteratorToStream, asyncIteratorToUnproxiedDataStream, asyncIteratorToStream as eventIteratorToStream, asyncIteratorToUnproxiedDataStream as eventIteratorToUnproxiedDataStream, onAsyncIteratorObjectError, onError, onFinish, onReadableStreamError, onStart, onSuccess, streamToAsyncIteratorObject, streamToAsyncIteratorObject as streamToEventIterator } from '@orpc/shared';
5
- import { L as Lazy, P as Procedure, c as createProcedureClient } from './shared/server.CDOFCg6A.mjs';
6
- export { u as unlazy } from './shared/server.CDOFCg6A.mjs';
7
- import { D as DecoratedProcedure } from './shared/server.BNfuzVqH.mjs';
8
- import { b as augmentRouter, d as augmentImplementedRouter, e as withHiddenRouterContract, f as createGuardedProcedureLazy, g as getRouter } from './shared/server.gXC5UaAH.mjs';
9
- export { a as DEFAULT_ERROR_STATUS, D as DEFAULT_SUCCESS_STATUS, h as call, c as createContractProcedure, i as getHiddenRouterContract, u as unlazyRouter, j as walkProcedureContractsAsync, w as walkProcedureContractsSync } from './shared/server.gXC5UaAH.mjs';
5
+ import { L as Lazy, P as Procedure, c as createProcedureClient } from './shared/server.Djb_ebJT.mjs';
6
+ export { u as unlazy } from './shared/server.Djb_ebJT.mjs';
7
+ import { D as DecoratedProcedure } from './shared/server.24nXyhbl.mjs';
8
+ import { b as augmentRouter, d as augmentImplementedRouter, e as withHiddenRouterContract, f as createGuardedProcedureLazy, g as getRouter } from './shared/server.BYnwk7Xz.mjs';
9
+ export { a as DEFAULT_ERROR_STATUS, D as DEFAULT_SUCCESS_STATUS, h as call, c as createContractProcedure, i as getHiddenRouterContract, u as unlazyRouter, j as walkProcedureContractsAsync, w as walkProcedureContractsSync } from './shared/server.BYnwk7Xz.mjs';
10
10
  import { RECURSIVE_CLIENT_UNWRAP_KEYS } from '@orpc/client';
11
11
  export { COMMON_ERROR_STATUS_MAP, ORPCError, RPCJsonSerializer, RPCSerializer, cloneORPCError, isDefinedError, safe, toORPCError } from '@orpc/client';
12
12
  export { ErrorEvent, getEventMeta, unwrapEvent, withEventMeta } from '@standard-server/core';
@@ -2,7 +2,7 @@ import { Value, Promisable, ThrowableError } from '@orpc/shared';
2
2
  import { StandardLazyRequest, StandardHeaders, StandardMethod } from '@standard-server/core';
3
3
  import { Context } from '../index.mjs';
4
4
  import { StandardHandlerPlugin, StandardHandlerRoutingInterceptorOptions, StandardHandlerOptions, StandardHandlerInterceptorOptions } from '../adapters/standard/index.mjs';
5
- export { R as RequestLimitHandlerPlugin, a as RequestLimitHandlerPluginOptions } from '../shared/server.CGQ3M7fX.mjs';
5
+ export { R as RequestLimitHandlerPlugin, a as RequestLimitHandlerPluginOptions } from '../shared/server.CAiLRqPf.mjs';
6
6
  import '@orpc/client';
7
7
  import '@orpc/contract';
8
8
 
@@ -76,7 +76,7 @@ interface BatchHandlerPluginOptions<T extends Context> {
76
76
  declare class BatchHandlerPlugin<T extends Context> implements StandardHandlerPlugin<T> {
77
77
  name: string;
78
78
  /**
79
- * Run batch interceptors before OpenTelemetry interceptors
79
+ * Run batch interceptors inside the tracing interceptors
80
80
  * so each subrequest gets its own span instead of sharing one batch-level span.
81
81
  */
82
82
  after: string[];
@@ -2,7 +2,7 @@ import { Value, Promisable, ThrowableError } from '@orpc/shared';
2
2
  import { StandardLazyRequest, StandardHeaders, StandardMethod } from '@standard-server/core';
3
3
  import { Context } from '../index.js';
4
4
  import { StandardHandlerPlugin, StandardHandlerRoutingInterceptorOptions, StandardHandlerOptions, StandardHandlerInterceptorOptions } from '../adapters/standard/index.js';
5
- export { R as RequestLimitHandlerPlugin, a as RequestLimitHandlerPluginOptions } from '../shared/server.C-hqoApz.js';
5
+ export { R as RequestLimitHandlerPlugin, a as RequestLimitHandlerPluginOptions } from '../shared/server.b2-J4t6T.js';
6
6
  import '@orpc/client';
7
7
  import '@orpc/contract';
8
8
 
@@ -76,7 +76,7 @@ interface BatchHandlerPluginOptions<T extends Context> {
76
76
  declare class BatchHandlerPlugin<T extends Context> implements StandardHandlerPlugin<T> {
77
77
  name: string;
78
78
  /**
79
- * Run batch interceptors before OpenTelemetry interceptors
79
+ * Run batch interceptors inside the tracing interceptors
80
80
  * so each subrequest gets its own span instead of sharing one batch-level span.
81
81
  */
82
82
  after: string[];
@@ -9,10 +9,10 @@ const BATCH_CONTENT_TYPE = "application/vnd.orpc.batch";
9
9
  class BatchHandlerPlugin {
10
10
  name = "~batch";
11
11
  /**
12
- * Run batch interceptors before OpenTelemetry interceptors
12
+ * Run batch interceptors inside the tracing interceptors
13
13
  * so each subrequest gets its own span instead of sharing one batch-level span.
14
14
  */
15
- after = ["~opentelemetry"];
15
+ after = ["~tracing"];
16
16
  maxSize;
17
17
  mapSubrequest;
18
18
  successStatus;
@@ -217,7 +217,7 @@ class CORSHandlerPlugin {
217
217
  * - Run CORS interceptors before batch interceptors so headers are applied to
218
218
  * the actual response rather than sub-responses.
219
219
  */
220
- after = ["~opentelemetry", "~batch"];
220
+ after = ["~tracing", "~batch"];
221
221
  constructor(options = {}) {
222
222
  const defaults = {
223
223
  origin: "*",
@@ -1,5 +1,5 @@
1
1
  import { resolveMetaPlugins, mergeErrorMap, getHiddenMetaPlugins } from '@orpc/contract';
2
- import { P as Procedure } from './server.CDOFCg6A.mjs';
2
+ import { P as Procedure } from './server.Djb_ebJT.mjs';
3
3
 
4
4
  class DecoratedProcedure extends Procedure {
5
5
  meta(...plugins) {
@@ -1,10 +1,10 @@
1
1
  import { RPCSerializer, AnyORPCError } from '@orpc/client';
2
- import { Value, Promisable } from '@orpc/shared';
2
+ import { Value, Public, Promisable } from '@orpc/shared';
3
3
  import { StandardMethod, StandardLazyRequest, StandardResponse } from '@standard-server/core';
4
4
  import { A as AnyProcedure, C as Context } from './server.BsujoJoF.js';
5
5
  import { A as AnyRouter } from './server.CRwPbhLO.js';
6
6
  import { AnyProcedureContract } from '@orpc/contract';
7
- import { c as StandardHandlerHandleOptions, d as StandardHandlerCodec, e as StandardHandlerCodecResolvedProcedure } from './server.D23TTT5i.js';
7
+ import { c as StandardHandlerHandleOptions, d as StandardHandlerCodec, e as StandardHandlerCodecResolvedProcedure } from './server.DEeCcNd6.js';
8
8
 
9
9
  /**
10
10
  * Methods that can invoke procedures by default. Browsers cannot trigger them
@@ -58,7 +58,7 @@ interface RPCHandlerCodecOptions<T extends Context> extends RPCMatcherOptions {
58
58
  /**
59
59
  * Override the default RPC serializer.
60
60
  */
61
- serializer?: Pick<RPCSerializer, keyof RPCSerializer>;
61
+ serializer?: Public<RPCSerializer>;
62
62
  /**
63
63
  * Resolve HTTP status for encoded successful outputs.
64
64
  *
@@ -1,4 +1,4 @@
1
- import { c as createProcedureClient, P as Procedure, L as Lazy, u as unlazy } from './server.CDOFCg6A.mjs';
1
+ import { c as createProcedureClient, P as Procedure, L as Lazy, u as unlazy } from './server.Djb_ebJT.mjs';
2
2
  import { resolveMetaPlugins, mergeErrorMap, ProcedureContract } from '@orpc/contract';
3
3
  import { omit, isTypescriptObject } from '@orpc/shared';
4
4
 
@@ -1,5 +1,5 @@
1
1
  import { C as Context } from './server.BsujoJoF.mjs';
2
- import { S as StandardHandlerPlugin, a as StandardHandlerOptions } from './server.BrURRtO7.mjs';
2
+ import { S as StandardHandlerPlugin, a as StandardHandlerOptions } from './server.R0uHWfBo.mjs';
3
3
 
4
4
  interface RequestLimitHandlerPluginOptions {
5
5
  /**
@@ -84,7 +84,7 @@ declare class StandardHandler<T extends Context> {
84
84
  constructor(codec: StandardHandlerCodec<T>, options: StandardHandlerOptions<T>);
85
85
  handle(request: StandardLazyRequest, { context, prefix }: StandardHandlerHandleOptions<T>): Promise<StandardHandlerHandleResult>;
86
86
  }
87
- declare class OtelHandlerPlugin implements StandardHandlerPlugin<any> {
87
+ declare class TracingHandlerPlugin implements StandardHandlerPlugin<any> {
88
88
  name: string;
89
89
  init(options: StandardHandlerOptions<any>): StandardHandlerOptions<any>;
90
90
  }
@@ -100,5 +100,5 @@ interface StandardHandlerCodec<T extends Context> {
100
100
  encodeError(error: AnyORPCError, procedure: AnyProcedure, path: string[], options: StandardHandlerHandleOptions<T>): Promisable<StandardResponse>;
101
101
  }
102
102
 
103
- export { CompositeStandardHandlerPlugin as C, OtelHandlerPlugin as O, StandardHandler as b };
103
+ export { CompositeStandardHandlerPlugin as C, TracingHandlerPlugin as T, StandardHandler as b };
104
104
  export type { StandardHandlerPlugin as S, StandardHandlerOptions as a, StandardHandlerHandleOptions as c, StandardHandlerCodec as d, StandardHandlerCodecResolvedProcedure as e, StandardHandlerRoutingInterceptorOptions as f, StandardHandlerInterceptorOptions as g, StandardHandlerHandleResult as h, StandardHandlerInterceptor as i, StandardHandlerRoutingInterceptor as j };
@@ -1,10 +1,10 @@
1
1
  import { RPCSerializer, AnyORPCError } from '@orpc/client';
2
- import { Value, Promisable } from '@orpc/shared';
2
+ import { Value, Public, Promisable } from '@orpc/shared';
3
3
  import { StandardMethod, StandardLazyRequest, StandardResponse } from '@standard-server/core';
4
4
  import { A as AnyProcedure, C as Context } from './server.BsujoJoF.mjs';
5
5
  import { A as AnyRouter } from './server.BpmUhems.mjs';
6
6
  import { AnyProcedureContract } from '@orpc/contract';
7
- import { c as StandardHandlerHandleOptions, d as StandardHandlerCodec, e as StandardHandlerCodecResolvedProcedure } from './server.BrURRtO7.mjs';
7
+ import { c as StandardHandlerHandleOptions, d as StandardHandlerCodec, e as StandardHandlerCodecResolvedProcedure } from './server.R0uHWfBo.mjs';
8
8
 
9
9
  /**
10
10
  * Methods that can invoke procedures by default. Browsers cannot trigger them
@@ -58,7 +58,7 @@ interface RPCHandlerCodecOptions<T extends Context> extends RPCMatcherOptions {
58
58
  /**
59
59
  * Override the default RPC serializer.
60
60
  */
61
- serializer?: Pick<RPCSerializer, keyof RPCSerializer>;
61
+ serializer?: Public<RPCSerializer>;
62
62
  /**
63
63
  * Resolve HTTP status for encoded successful outputs.
64
64
  *
@@ -1,6 +1,6 @@
1
1
  import { wrapAsyncIteratorPreservingEventMeta, ORPCError } from '@orpc/client';
2
2
  import { createORPCErrorConstructorMap, reconcileORPCError, ValidationError, ProcedureContract } from '@orpc/contract';
3
- import { getConstructor, isTypescriptObject, resolveMaybeOptionalOptions, toArray, value, runWithSpan, intercept, isAsyncIteratorObject, override, traceAsyncIterator, traceReadableStream, isPlainObject, mergeTwoLevels } from '@orpc/shared';
3
+ import { getConstructor, isTypescriptObject, resolveMaybeOptionalOptions, toArray, value, runWithSpan, intercept, isAsyncIteratorObject, override, getTracer, traceAsyncIterator, traceReadableStream, isPlainObject, mergeTwoLevels } from '@orpc/shared';
4
4
 
5
5
  class Lazy {
6
6
  "~orpc";
@@ -59,11 +59,10 @@ function createProcedureClient(lazyableProcedure, ...rest) {
59
59
  });
60
60
  if (isAsyncIteratorObject(output)) {
61
61
  return override(output, wrapAsyncIteratorPreservingEventMeta(
62
- traceAsyncIterator("consume_async_iterator_object_output", output),
62
+ getTracer() ? traceAsyncIterator("consume_async_iterator_object_output", output) : output,
63
63
  { mapError: reconcileError }
64
64
  ));
65
- }
66
- if (output instanceof ReadableStream) {
65
+ } else if (getTracer() && output instanceof ReadableStream) {
67
66
  return override(output, traceReadableStream("consume_octet_stream_output", output));
68
67
  }
69
68
  return output;
@@ -84,7 +84,7 @@ declare class StandardHandler<T extends Context> {
84
84
  constructor(codec: StandardHandlerCodec<T>, options: StandardHandlerOptions<T>);
85
85
  handle(request: StandardLazyRequest, { context, prefix }: StandardHandlerHandleOptions<T>): Promise<StandardHandlerHandleResult>;
86
86
  }
87
- declare class OtelHandlerPlugin implements StandardHandlerPlugin<any> {
87
+ declare class TracingHandlerPlugin implements StandardHandlerPlugin<any> {
88
88
  name: string;
89
89
  init(options: StandardHandlerOptions<any>): StandardHandlerOptions<any>;
90
90
  }
@@ -100,5 +100,5 @@ interface StandardHandlerCodec<T extends Context> {
100
100
  encodeError(error: AnyORPCError, procedure: AnyProcedure, path: string[], options: StandardHandlerHandleOptions<T>): Promisable<StandardResponse>;
101
101
  }
102
102
 
103
- export { CompositeStandardHandlerPlugin as C, OtelHandlerPlugin as O, StandardHandler as b };
103
+ export { CompositeStandardHandlerPlugin as C, TracingHandlerPlugin as T, StandardHandler as b };
104
104
  export type { StandardHandlerPlugin as S, StandardHandlerOptions as a, StandardHandlerHandleOptions as c, StandardHandlerCodec as d, StandardHandlerCodecResolvedProcedure as e, StandardHandlerRoutingInterceptorOptions as f, StandardHandlerInterceptorOptions as g, StandardHandlerHandleResult as h, StandardHandlerInterceptor as i, StandardHandlerRoutingInterceptor as j };
@@ -1,5 +1,5 @@
1
1
  import { C as Context } from './server.BsujoJoF.js';
2
- import { S as StandardHandlerPlugin, a as StandardHandlerOptions } from './server.D23TTT5i.js';
2
+ import { S as StandardHandlerPlugin, a as StandardHandlerOptions } from './server.DEeCcNd6.js';
3
3
 
4
4
  interface RequestLimitHandlerPluginOptions {
5
5
  /**
@@ -1,8 +1,8 @@
1
1
  import { ORPCError, toORPCError, RPCSerializer, COMMON_ERROR_STATUS_MAP } from '@orpc/client';
2
- import { sortPlugins, getOpenTelemetryConfig, runWithSpan, toArray, matchesHttpPathPrefix, intercept, ORPC_NAME, isAsyncIteratorObject, override, traceAsyncIterator, recordSpanError, pathToHttpPath, normalizeHttpPath, value, parseEmptyableJSON, getOwn } from '@orpc/shared';
2
+ import { sortPlugins, toArray, matchesHttpPathPrefix, intercept, getTracer, runWithSpan, ORPC_NAME, isAsyncIteratorObject, override, traceAsyncIterator, traceReadableStream, recordSpanError, pathToHttpPath, normalizeHttpPath, value, parseEmptyableJSON, getOwn } from '@orpc/shared';
3
3
  import { flattenStandardHeader, parseStandardUrl } from '@standard-server/core';
4
- import { c as createProcedureClient, u as unlazy, P as Procedure } from './server.CDOFCg6A.mjs';
5
- import { w as walkProcedureContractsSync, g as getRouter, c as createContractProcedure, D as DEFAULT_SUCCESS_STATUS, a as DEFAULT_ERROR_STATUS } from './server.gXC5UaAH.mjs';
4
+ import { c as createProcedureClient, u as unlazy, P as Procedure } from './server.Djb_ebJT.mjs';
5
+ import { w as walkProcedureContractsSync, g as getRouter, c as createContractProcedure, D as DEFAULT_SUCCESS_STATUS, a as DEFAULT_ERROR_STATUS } from './server.BYnwk7Xz.mjs';
6
6
 
7
7
  class CompositeStandardHandlerPlugin {
8
8
  name = "~composite";
@@ -24,7 +24,7 @@ class StandardHandler {
24
24
  constructor(codec, options) {
25
25
  this.codec = codec;
26
26
  options = new CompositeStandardHandlerPlugin([
27
- new OtelHandlerPlugin(),
27
+ new TracingHandlerPlugin(),
28
28
  ...toArray(options.plugins)
29
29
  ]).init(options);
30
30
  this.routingInterceptors = options.routingInterceptors;
@@ -42,7 +42,7 @@ class StandardHandler {
42
42
  this.routingInterceptors,
43
43
  { context, prefix, request },
44
44
  async ({ context: context2, prefix: prefix2, request: request2 }) => {
45
- const span = getOpenTelemetryConfig()?.trace.getActiveSpan();
45
+ const span = getTracer()?.getActiveSpan();
46
46
  let step;
47
47
  const matchedOrNot = await runWithSpan("find_procedure", () => this.codec.resolveProcedure(request2, { context: context2, prefix: prefix2 }));
48
48
  if (!matchedOrNot) {
@@ -63,8 +63,10 @@ class StandardHandler {
63
63
  step = "decode_input";
64
64
  let input = await runWithSpan("decode_input", decodeInput2);
65
65
  step = void 0;
66
- if (isAsyncIteratorObject(input)) {
66
+ if (getTracer() && isAsyncIteratorObject(input)) {
67
67
  input = override(input, traceAsyncIterator("consume_async_iterator_object_input", input));
68
+ } else if (getTracer() && input instanceof ReadableStream) {
69
+ input = override(input, traceReadableStream("consume_octet_stream_input", input));
68
70
  }
69
71
  const client = createProcedureClient(procedure2, {
70
72
  context: context3,
@@ -97,21 +99,19 @@ class StandardHandler {
97
99
  );
98
100
  }
99
101
  }
100
- class OtelHandlerPlugin {
101
- name = "~opentelemetry";
102
+ class TracingHandlerPlugin {
103
+ name = "~tracing";
102
104
  init(options) {
103
105
  return {
104
106
  ...options,
105
107
  routingInterceptors: [
106
- // Should be placed before user-provided interceptors to help them access the current active context.
108
+ // Should be placed before user-provided interceptors to help them access the current active span.
107
109
  async ({ next, request }) => {
108
- const otelConfig = getOpenTelemetryConfig();
109
- let propagationContext;
110
- if (otelConfig?.propagation) {
111
- propagationContext = otelConfig.propagation.extract(otelConfig.context.active(), request.headers);
112
- }
110
+ const tracer = getTracer();
111
+ const parent = tracer?.extract?.(request.headers);
112
+ const [pathname] = parseStandardUrl(request.url);
113
113
  return runWithSpan(
114
- { name: `${request.method} ${request.url}`, context: propagationContext },
114
+ { name: `${request.method} ${pathname}`, parent },
115
115
  () => next()
116
116
  );
117
117
  },
@@ -301,4 +301,4 @@ class RPCHandlerCodec {
301
301
  }
302
302
  }
303
303
 
304
- export { CompositeStandardHandlerPlugin as C, OtelHandlerPlugin as O, RPCHandlerCodec as R, StandardHandler as S, RPCMatcher as a, RPC_DEFAULT_ALLOW_METHODS as b };
304
+ export { CompositeStandardHandlerPlugin as C, RPCHandlerCodec as R, StandardHandler as S, TracingHandlerPlugin as T, RPCMatcher as a, RPC_DEFAULT_ALLOW_METHODS as b };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@orpc/server",
3
3
  "type": "module",
4
- "version": "2.0.0-beta.34",
4
+ "version": "2.0.0-beta.35",
5
5
  "description": "Build typesafe APIs with oRPC: RPC and OpenAPI support, middleware, and adapters for Node.js, Bun, Deno, Fetch, Fastify, WebSocket, AWS Lambda, and more",
6
6
  "license": "MIT",
7
7
  "funding": [
@@ -117,9 +117,9 @@
117
117
  }
118
118
  },
119
119
  "dependencies": {
120
- "@orpc/client": "2.0.0-beta.34",
121
- "@orpc/contract": "2.0.0-beta.34",
122
- "@orpc/shared": "2.0.0-beta.34",
120
+ "@orpc/client": "2.0.0-beta.35",
121
+ "@orpc/contract": "2.0.0-beta.35",
122
+ "@orpc/shared": "2.0.0-beta.35",
123
123
  "@standard-server/aws-lambda": "~0.9.0",
124
124
  "@standard-server/core": "~0.9.0",
125
125
  "@standard-server/fastify": "~0.9.0",