diff --git a/.changeset/router-unused-imports.md b/.changeset/router-unused-imports.md new file mode 100644 index 00000000..81d81b22 --- /dev/null +++ b/.changeset/router-unused-imports.md @@ -0,0 +1,12 @@ +--- +'@tanstack/create': patch +--- + +Drop unused React Query imports from the generated React `router.tsx`. The +`tanstack-query` branch imported `ReactNode`, `QueryClient` and the +`TanstackQueryProvider` default export whenever the add-on was enabled, but +`ReactNode` and `TanstackQueryProvider` are only referenced inside the tRPC +`Wrap` block and `QueryClient` was never referenced at all. Generated projects +set `noUnusedLocals: true`, so a fresh scaffold shipped code that violates its +own tsconfig. The two tRPC-only imports are now gated behind +`addOnEnabled.tRPC` and the `QueryClient` import is removed. diff --git a/.changeset/trpc-dead-imports.md b/.changeset/trpc-dead-imports.md new file mode 100644 index 00000000..df243388 --- /dev/null +++ b/.changeset/trpc-dead-imports.md @@ -0,0 +1,12 @@ +--- +'@tanstack/create': patch +--- + +Drop two dead imports from the generated tRPC integration. `api.trpc.$.tsx` +imported `createServerFileRoute` from `@tanstack/react-start/server`, but the +route was already migrated to `createFileRoute(...)({ server: { handlers } })` +and that symbol is no longer exported, so the leftover import was both unused +and unresolvable. The tRPC branch of `root-provider.tsx` imported +`QueryClientProvider`, which it never renders — +`setupRouterSsrQueryIntegration` supplies the query client. Generated projects +set `noUnusedLocals: true`, so both showed up as errors in a fresh scaffold. diff --git a/packages/create/src/frameworks/react/add-ons/tRPC/assets/src/routes/api.trpc.$.tsx b/packages/create/src/frameworks/react/add-ons/tRPC/assets/src/routes/api.trpc.$.tsx index 6a59a9b5..e0bbb0a8 100644 --- a/packages/create/src/frameworks/react/add-ons/tRPC/assets/src/routes/api.trpc.$.tsx +++ b/packages/create/src/frameworks/react/add-ons/tRPC/assets/src/routes/api.trpc.$.tsx @@ -1,4 +1,3 @@ -import { createServerFileRoute } from '@tanstack/react-start/server' import { fetchRequestHandler } from '@trpc/server/adapters/fetch' import { trpcRouter } from '#/integrations/trpc/router' import { createFileRoute } from '@tanstack/react-router' diff --git a/packages/create/src/frameworks/react/add-ons/tanstack-query/assets/src/integrations/tanstack-query/root-provider.tsx.ejs b/packages/create/src/frameworks/react/add-ons/tanstack-query/assets/src/integrations/tanstack-query/root-provider.tsx.ejs index 1f74d9df..27d50ea2 100644 --- a/packages/create/src/frameworks/react/add-ons/tanstack-query/assets/src/integrations/tanstack-query/root-provider.tsx.ejs +++ b/packages/create/src/frameworks/react/add-ons/tanstack-query/assets/src/integrations/tanstack-query/root-provider.tsx.ejs @@ -1,6 +1,6 @@ <% if (addOnEnabled.tRPC) { %> import type { ReactNode } from 'react' -import { QueryClient, QueryClientProvider } from '@tanstack/react-query' +import { QueryClient } from '@tanstack/react-query' import superjson from "superjson"; import { createTRPCClient, httpBatchStreamLink } from "@trpc/client"; import { createTRPCOptionsProxy } from "@trpc/tanstack-react-query"; diff --git a/packages/create/src/frameworks/react/project/base/src/router.tsx.ejs b/packages/create/src/frameworks/react/project/base/src/router.tsx.ejs index 96459e0c..f7d18159 100644 --- a/packages/create/src/frameworks/react/project/base/src/router.tsx.ejs +++ b/packages/create/src/frameworks/react/project/base/src/router.tsx.ejs @@ -1,10 +1,9 @@ import { createRouter as createTanStackRouter } from '@tanstack/react-router' import { routeTree } from './routeTree.gen' -<% if (addOnEnabled['tanstack-query']) { %> -import type { ReactNode } from 'react' -import { QueryClient } from '@tanstack/react-query' +<% if (addOnEnabled['tanstack-query']) { %><% if (addOnEnabled.tRPC) { %> +import type { ReactNode } from 'react'<% } %> import { setupRouterSsrQueryIntegration } from "@tanstack/react-router-ssr-query"; -import TanstackQueryProvider, { getContext } from './integrations/tanstack-query/root-provider' +import <% if (addOnEnabled.tRPC) { %>TanstackQueryProvider, <% } %>{ getContext } from './integrations/tanstack-query/root-provider' <% } %> export function getRouter() {