From 87cd31c7e9154ffd6eb75518165fd6cc13dcea94 Mon Sep 17 00:00:00 2001 From: unnoq Date: Tue, 29 Jul 2025 10:03:25 +0700 Subject: [PATCH] feat(trpc): promote to stable --- apps/content/docs/openapi/integrations/trpc.md | 5 +---- packages/trpc/src/to-orpc-router.test-d.ts | 2 +- packages/trpc/src/to-orpc-router.test.ts | 2 +- packages/trpc/src/to-orpc-router.ts | 16 ++++++++-------- packages/trpc/tests/shared.ts | 2 +- 5 files changed, 12 insertions(+), 15 deletions(-) diff --git a/apps/content/docs/openapi/integrations/trpc.md b/apps/content/docs/openapi/integrations/trpc.md index eea63d06e..91ff64c0d 100644 --- a/apps/content/docs/openapi/integrations/trpc.md +++ b/apps/content/docs/openapi/integrations/trpc.md @@ -38,10 +38,7 @@ deno install npm:@orpc/trpc@latest By converting a [tRPC router](https://trpc.io/docs/server/routers) to an [oRPC router](/docs/router), you can utilize most oRPC features, including OpenAPI specification generation and request handling. ```ts -import { - experimental_ORPCMeta as ORPCMeta, - experimental_toORPCRouter as toORPCRouter -} from '@orpc/trpc' +import { ORPCMeta, toORPCRouter } from '@orpc/trpc' export const t = initTRPC.context().meta().create() diff --git a/packages/trpc/src/to-orpc-router.test-d.ts b/packages/trpc/src/to-orpc-router.test-d.ts index ea21219fe..a1a24dfc5 100644 --- a/packages/trpc/src/to-orpc-router.test-d.ts +++ b/packages/trpc/src/to-orpc-router.test-d.ts @@ -3,7 +3,7 @@ import type { AsyncIteratorClass } from '@orpc/shared' import type { inferRouterContext } from '@trpc/server' import type { inferRouterMeta, TrackedData } from '@trpc/server/unstable-core-do-not-import' import type { TRPCContext, TRPCMeta, trpcRouter } from '../tests/shared' -import type { experimental_ToORPCRouterResult as ToORPCRouterResult } from './to-orpc-router' +import type { ToORPCRouterResult } from './to-orpc-router' it('ToORPCRouterResult', () => { const orpcRouter = {} as ToORPCRouterResult< diff --git a/packages/trpc/src/to-orpc-router.test.ts b/packages/trpc/src/to-orpc-router.test.ts index 6ee848d6b..659b07d83 100644 --- a/packages/trpc/src/to-orpc-router.test.ts +++ b/packages/trpc/src/to-orpc-router.test.ts @@ -4,7 +4,7 @@ import { tracked, TRPCError } from '@trpc/server' import * as z from 'zod' import { inputSchema, outputSchema } from '../../contract/tests/shared' import { t, trpcRouter } from '../tests/shared' -import { experimental_toORPCRouter as toORPCRouter } from './to-orpc-router' +import { toORPCRouter } from './to-orpc-router' beforeEach(() => { vi.clearAllMocks() diff --git a/packages/trpc/src/to-orpc-router.ts b/packages/trpc/src/to-orpc-router.ts index 62ac89067..956f58513 100644 --- a/packages/trpc/src/to-orpc-router.ts +++ b/packages/trpc/src/to-orpc-router.ts @@ -7,16 +7,16 @@ import { get, isObject, isTypescriptObject } from '@orpc/shared' import { isTrackedEnvelope, TRPCError } from '@trpc/server' import { getHTTPStatusCodeFromError, isAsyncIterable } from '@trpc/server/unstable-core-do-not-import' -export interface experimental_ORPCMeta { +export interface ORPCMeta { route?: ORPC.Route } -export type experimental_ToORPCOutput +export type ToORPCOutput = T extends AsyncIterable ? AsyncIteratorClass : T -export type experimental_ToORPCRouterResult> +export type ToORPCRouterResult> = { [K in keyof TRecord]: TRecord[K] extends AnyProcedure @@ -24,12 +24,12 @@ export type experimental_ToORPCRouterResult, - ORPC.Schema>, + ORPC.Schema>, object, TMeta > : TRecord[K] extends Record - ? experimental_ToORPCRouterResult + ? ToORPCRouterResult : never } @@ -38,9 +38,9 @@ export type experimental_ToORPCRouterResult( +export function toORPCRouter( router: T, -): experimental_ToORPCRouterResult< +): ToORPCRouterResult< inferRouterContext, inferRouterMeta, T['_def']['record'] @@ -61,7 +61,7 @@ function lazyToORPCRouter(lazies: AnyRouter['_def']['lazy']) { orpcRouter[key] = ORPC.createAccessibleLazyRouter(ORPC.lazy(async () => { const router = await item.ref() - return { default: experimental_toORPCRouter(router) } + return { default: toORPCRouter(router) } })) } diff --git a/packages/trpc/tests/shared.ts b/packages/trpc/tests/shared.ts index e28664982..3f1951bfc 100644 --- a/packages/trpc/tests/shared.ts +++ b/packages/trpc/tests/shared.ts @@ -1,4 +1,4 @@ -import type { experimental_ORPCMeta as ORPCMeta } from '../src/to-orpc-router' +import type { ORPCMeta } from '../src/to-orpc-router' import { initTRPC, lazy, tracked, TRPCError } from '@trpc/server' import { z } from 'zod/v4' import { inputSchema, outputSchema } from '../../contract/tests/shared'