@trpc/react-query 11.1.2 → 11.1.3-alpha-tmp-tsdown.23
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.
- package/dist/_virtual/rolldown_runtime.js +30 -0
- package/dist/createTRPCQueryUtils.d.mts +12 -0
- package/dist/createTRPCQueryUtils.d.mts.map +1 -0
- package/dist/createTRPCQueryUtils.d.ts +11 -3
- package/dist/createTRPCQueryUtils.d.ts.map +1 -1
- package/dist/createTRPCQueryUtils.js +7 -12
- package/dist/createTRPCQueryUtils.mjs +7 -9
- package/dist/createTRPCQueryUtils.mjs.map +1 -0
- package/dist/createTRPCReact.d.mts +143 -0
- package/dist/createTRPCReact.d.mts.map +1 -0
- package/dist/createTRPCReact.d.ts +92 -96
- package/dist/createTRPCReact.d.ts.map +1 -1
- package/dist/createTRPCReact.js +26 -54
- package/dist/createTRPCReact.mjs +26 -32
- package/dist/createTRPCReact.mjs.map +1 -0
- package/dist/index.d.mts +6 -0
- package/dist/index.d.ts +6 -6
- package/dist/index.js +11 -15
- package/dist/index.mjs +7 -4
- package/dist/internals/context.d.mts +164 -0
- package/dist/internals/context.d.mts.map +1 -0
- package/dist/internals/context.d.ts +146 -139
- package/dist/internals/context.d.ts.map +1 -1
- package/dist/internals/context.js +10 -28
- package/dist/internals/context.mjs +8 -5
- package/dist/internals/context.mjs.map +1 -0
- package/dist/internals/getClientArgs.d.mts +19 -0
- package/dist/internals/getClientArgs.d.mts.map +1 -0
- package/dist/internals/getClientArgs.d.ts +14 -4
- package/dist/internals/getClientArgs.d.ts.map +1 -1
- package/dist/internals/getClientArgs.js +18 -20
- package/dist/internals/getClientArgs.mjs +18 -18
- package/dist/internals/getClientArgs.mjs.map +1 -0
- package/dist/internals/getQueryKey.d.mts +45 -0
- package/dist/internals/getQueryKey.d.mts.map +1 -0
- package/dist/internals/getQueryKey.d.ts +22 -26
- package/dist/internals/getQueryKey.d.ts.map +1 -1
- package/dist/internals/getQueryKey.js +43 -62
- package/dist/internals/getQueryKey.mjs +42 -59
- package/dist/internals/getQueryKey.mjs.map +1 -0
- package/dist/internals/trpcResult.js +27 -53
- package/dist/internals/trpcResult.mjs +26 -31
- package/dist/internals/trpcResult.mjs.map +1 -0
- package/dist/internals/useQueries.d.mts +57 -0
- package/dist/internals/useQueries.d.mts.map +1 -0
- package/dist/internals/useQueries.d.ts +23 -24
- package/dist/internals/useQueries.d.ts.map +1 -1
- package/dist/rsc.d.mts +81 -0
- package/dist/rsc.d.mts.map +1 -0
- package/dist/rsc.d.ts +57 -56
- package/dist/rsc.d.ts.map +1 -1
- package/dist/rsc.js +66 -126
- package/dist/rsc.mjs +65 -104
- package/dist/rsc.mjs.map +1 -0
- package/dist/server/index.d.mts +2 -0
- package/dist/server/index.d.ts +2 -2
- package/dist/server/index.js +2 -6
- package/dist/server/index.mjs +3 -1
- package/dist/server/ssgProxy.d.mts +33 -0
- package/dist/server/ssgProxy.d.mts.map +1 -0
- package/dist/server/ssgProxy.d.ts +18 -16
- package/dist/server/ssgProxy.d.ts.map +1 -1
- package/dist/server/ssgProxy.js +130 -137
- package/dist/server/ssgProxy.mjs +129 -134
- package/dist/server/ssgProxy.mjs.map +1 -0
- package/dist/shared/hooks/createHooksInternal.d.mts +42 -0
- package/dist/shared/hooks/createHooksInternal.d.mts.map +1 -0
- package/dist/shared/hooks/createHooksInternal.d.ts +33 -22
- package/dist/shared/hooks/createHooksInternal.d.ts.map +1 -1
- package/dist/shared/hooks/createHooksInternal.js +427 -537
- package/dist/shared/hooks/createHooksInternal.mjs +426 -515
- package/dist/shared/hooks/createHooksInternal.mjs.map +1 -0
- package/dist/shared/hooks/createRootHooks.js +1 -0
- package/dist/shared/hooks/createRootHooks.mjs +1 -0
- package/dist/shared/hooks/types.d.mts +154 -0
- package/dist/shared/hooks/types.d.mts.map +1 -0
- package/dist/shared/hooks/types.d.ts +122 -125
- package/dist/shared/hooks/types.d.ts.map +1 -1
- package/dist/shared/index.d.mts +16 -0
- package/dist/shared/index.d.ts +16 -22
- package/dist/shared/index.js +17 -21
- package/dist/shared/index.mjs +9 -7
- package/dist/shared/polymorphism/mutationLike.d.mts +27 -0
- package/dist/shared/polymorphism/mutationLike.d.mts.map +1 -0
- package/dist/shared/polymorphism/mutationLike.d.ts +16 -6
- package/dist/shared/polymorphism/mutationLike.d.ts.map +1 -1
- package/dist/shared/polymorphism/queryLike.d.mts +31 -0
- package/dist/shared/polymorphism/queryLike.d.mts.map +1 -0
- package/dist/shared/polymorphism/queryLike.d.ts +20 -10
- package/dist/shared/polymorphism/queryLike.d.ts.map +1 -1
- package/dist/shared/polymorphism/routerLike.d.mts +19 -0
- package/dist/shared/polymorphism/routerLike.d.mts.map +1 -0
- package/dist/shared/polymorphism/routerLike.d.ts +15 -7
- package/dist/shared/polymorphism/routerLike.d.ts.map +1 -1
- package/dist/shared/polymorphism/utilsLike.d.mts +17 -0
- package/dist/shared/polymorphism/utilsLike.d.mts.map +1 -0
- package/dist/shared/polymorphism/utilsLike.d.ts +13 -3
- package/dist/shared/polymorphism/utilsLike.d.ts.map +1 -1
- package/dist/shared/proxy/decorationProxy.d.mts +19 -0
- package/dist/shared/proxy/decorationProxy.d.mts.map +1 -0
- package/dist/shared/proxy/decorationProxy.d.ts +14 -3
- package/dist/shared/proxy/decorationProxy.d.ts.map +1 -1
- package/dist/shared/proxy/decorationProxy.js +18 -26
- package/dist/shared/proxy/decorationProxy.mjs +17 -23
- package/dist/shared/proxy/decorationProxy.mjs.map +1 -0
- package/dist/shared/proxy/useQueriesProxy.d.mts +24 -0
- package/dist/shared/proxy/useQueriesProxy.d.mts.map +1 -0
- package/dist/shared/proxy/useQueriesProxy.d.ts +11 -12
- package/dist/shared/proxy/useQueriesProxy.d.ts.map +1 -1
- package/dist/shared/proxy/useQueriesProxy.js +25 -23
- package/dist/shared/proxy/useQueriesProxy.mjs +24 -20
- package/dist/shared/proxy/useQueriesProxy.mjs.map +1 -0
- package/dist/shared/proxy/utilsProxy.d.mts +143 -0
- package/dist/shared/proxy/utilsProxy.d.mts.map +1 -0
- package/dist/shared/proxy/utilsProxy.d.ts +123 -121
- package/dist/shared/proxy/utilsProxy.d.ts.map +1 -1
- package/dist/shared/proxy/utilsProxy.js +82 -95
- package/dist/shared/proxy/utilsProxy.mjs +81 -92
- package/dist/shared/proxy/utilsProxy.mjs.map +1 -0
- package/dist/shared/queryClient.d.mts +26 -0
- package/dist/shared/queryClient.d.mts.map +1 -0
- package/dist/shared/queryClient.d.ts +17 -8
- package/dist/shared/queryClient.d.ts.map +1 -1
- package/dist/shared/queryClient.js +8 -6
- package/dist/shared/queryClient.mjs +7 -3
- package/dist/shared/queryClient.mjs.map +1 -0
- package/dist/shared/types.d.mts +99 -0
- package/dist/shared/types.d.mts.map +1 -0
- package/dist/shared/types.d.ts +72 -71
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/utils/createUtilityFunctions.d.mts +24 -0
- package/dist/utils/createUtilityFunctions.d.mts.map +1 -0
- package/dist/utils/createUtilityFunctions.d.ts +16 -15
- package/dist/utils/createUtilityFunctions.d.ts.map +1 -1
- package/dist/utils/createUtilityFunctions.js +166 -192
- package/dist/utils/createUtilityFunctions.mjs +165 -189
- package/dist/utils/createUtilityFunctions.mjs.map +1 -0
- package/dist/utils/inferReactQueryProcedure.d.mts +30 -0
- package/dist/utils/inferReactQueryProcedure.d.mts.map +1 -0
- package/dist/utils/inferReactQueryProcedure.d.ts +17 -12
- package/dist/utils/inferReactQueryProcedure.d.ts.map +1 -1
- package/package.json +48 -28
- package/rsc/package.json +1 -0
- package/server/index/package.json +1 -0
- package/server/package.json +1 -0
- package/shared/index/package.json +1 -0
- package/shared/package.json +1 -0
- package/src/createTRPCReact.tsx +0 -4
- package/src/shared/hooks/createHooksInternal.tsx +2 -0
- package/src/shared/hooks/types.ts +0 -2
- package/src/shared/proxy/decorationProxy.ts +1 -1
- package/src/shared/types.ts +2 -2
- package/dist/index.d.ts.map +0 -1
- package/dist/internals/trpcResult.d.ts +0 -18
- package/dist/internals/trpcResult.d.ts.map +0 -1
- package/dist/server/index.d.ts.map +0 -1
- package/dist/shared/hooks/createRootHooks.d.ts +0 -2
- package/dist/shared/hooks/createRootHooks.d.ts.map +0 -1
- package/dist/shared/index.d.ts.map +0 -1
- package/dist/shared/polymorphism/index.d.ts +0 -5
- package/dist/shared/polymorphism/index.d.ts.map +0 -1
|
@@ -1,58 +1,57 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import { UseTRPCQueryOptions, UseTRPCQueryResult, UseTRPCSuspenseQueryOptions } from "../shared/hooks/types.js";
|
|
2
|
+
import { UseQueriesProcedureRecord, UseSuspenseQueriesProcedureRecord } from "../shared/proxy/useQueriesProxy.js";
|
|
3
|
+
import { AnyRouter, DistributiveOmit } from "@trpc/server/unstable-core-do-not-import";
|
|
4
|
+
import { QueryKey, UseQueryOptions, UseSuspenseQueryOptions, UseSuspenseQueryResult } from "@tanstack/react-query";
|
|
5
|
+
|
|
6
|
+
//#region src/internals/useQueries.d.ts
|
|
7
|
+
/**
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
4
10
|
/**
|
|
5
11
|
* @internal
|
|
6
12
|
*/
|
|
7
|
-
|
|
13
|
+
type UseQueryOptionsForUseQueries<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = DistributiveOmit<UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'queryKey'>;
|
|
8
14
|
/**
|
|
9
15
|
* @internal
|
|
10
16
|
*/
|
|
11
|
-
|
|
17
|
+
type UseQueryOptionsForUseSuspenseQueries<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = DistributiveOmit<UseSuspenseQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'queryKey'>;
|
|
12
18
|
/**
|
|
13
19
|
* @internal
|
|
14
20
|
*/
|
|
15
|
-
|
|
21
|
+
type TrpcQueryOptionsForUseQueries<TOutput, TData, TError> = DistributiveOmit<UseTRPCQueryOptions<TOutput, TData, TError>, 'queryKey'>;
|
|
16
22
|
/**
|
|
17
23
|
* @internal
|
|
18
24
|
*/
|
|
19
|
-
|
|
25
|
+
type TrpcQueryOptionsForUseSuspenseQueries<TOutput, TData, TError> = DistributiveOmit<UseTRPCSuspenseQueryOptions<TOutput, TData, TError>, 'queryKey'>;
|
|
20
26
|
/**
|
|
21
27
|
* @internal
|
|
22
28
|
*/
|
|
23
|
-
|
|
24
|
-
[TKey in keyof TQueriesOptions]: TQueriesOptions[TKey] extends UseQueryOptionsForUseQueries<infer TQueryFnData, infer TError, infer TData, any> ? UseTRPCQueryResult<unknown extends TData ? TQueryFnData : TData, TError> : never;
|
|
25
|
-
};
|
|
29
|
+
declare type QueriesResults<TQueriesOptions extends UseQueryOptionsForUseQueries<any, any, any, any>[]> = { [TKey in keyof TQueriesOptions]: TQueriesOptions[TKey] extends UseQueryOptionsForUseQueries<infer TQueryFnData, infer TError, infer TData, any> ? UseTRPCQueryResult<unknown extends TData ? TQueryFnData : TData, TError> : never };
|
|
26
30
|
/**
|
|
27
31
|
* @internal
|
|
28
32
|
*/
|
|
29
|
-
|
|
30
|
-
{
|
|
31
|
-
[TKey in keyof TQueriesOptions]: TQueriesOptions[TKey] extends UseQueryOptionsForUseSuspenseQueries<infer TQueryFnData, any, infer TData, any> ? unknown extends TData ? TQueryFnData : TData : never;
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
[TKey in keyof TQueriesOptions]: TQueriesOptions[TKey] extends UseQueryOptionsForUseSuspenseQueries<infer TQueryFnData, infer TError, infer TData, any> ? UseSuspenseQueryResult<unknown extends TData ? TQueryFnData : TData, TError> : never;
|
|
35
|
-
}
|
|
36
|
-
];
|
|
33
|
+
declare type SuspenseQueriesResults<TQueriesOptions extends UseQueryOptionsForUseSuspenseQueries<any, any, any, any>[]> = [{ [TKey in keyof TQueriesOptions]: TQueriesOptions[TKey] extends UseQueryOptionsForUseSuspenseQueries<infer TQueryFnData, any, infer TData, any> ? unknown extends TData ? TQueryFnData : TData : never }, { [TKey in keyof TQueriesOptions]: TQueriesOptions[TKey] extends UseQueryOptionsForUseSuspenseQueries<infer TQueryFnData, infer TError, infer TData, any> ? UseSuspenseQueryResult<unknown extends TData ? TQueryFnData : TData, TError> : never }];
|
|
37
34
|
type GetOptions<TQueryOptions> = TQueryOptions extends UseQueryOptionsForUseQueries<any, any, any, any> ? TQueryOptions : never;
|
|
38
35
|
/**
|
|
39
36
|
* @internal
|
|
40
37
|
*/
|
|
41
|
-
|
|
38
|
+
type QueriesOptions<TQueriesOptions extends any[], TResult extends any[] = []> = TQueriesOptions extends [] ? [] : TQueriesOptions extends [infer Head] ? [...TResult, GetOptions<Head>] : TQueriesOptions extends [infer Head, ...infer Tail] ? QueriesOptions<Tail, [...TResult, GetOptions<Head>]> : unknown[] extends TQueriesOptions ? TQueriesOptions : TQueriesOptions extends UseQueryOptionsForUseQueries<infer TQueryFnData, infer TError, infer TData, infer TQueryKey>[] ? UseQueryOptionsForUseQueries<TQueryFnData, TError, TData, TQueryKey>[] : UseQueryOptionsForUseQueries[];
|
|
42
39
|
type GetSuspenseOptions<TQueryOptions> = TQueryOptions extends UseQueryOptionsForUseSuspenseQueries<any, any, any, any> ? TQueryOptions : never;
|
|
43
40
|
/**
|
|
44
41
|
* @internal
|
|
45
42
|
*/
|
|
46
|
-
|
|
43
|
+
type SuspenseQueriesOptions<TQueriesOptions extends any[], TResult extends any[] = []> = TQueriesOptions extends [] ? [] : TQueriesOptions extends [infer Head] ? [...TResult, GetSuspenseOptions<Head>] : TQueriesOptions extends [infer Head, ...infer Tail] ? SuspenseQueriesOptions<Tail, [...TResult, GetSuspenseOptions<Head>]> : unknown[] extends TQueriesOptions ? TQueriesOptions : TQueriesOptions extends UseQueryOptionsForUseSuspenseQueries<infer TQueryFnData, infer TError, infer TData, infer TQueryKey>[] ? UseQueryOptionsForUseSuspenseQueries<TQueryFnData, TError, TData, TQueryKey>[] : UseQueryOptionsForUseSuspenseQueries[];
|
|
47
44
|
/**
|
|
48
45
|
* @internal
|
|
49
46
|
*/
|
|
50
|
-
|
|
51
|
-
|
|
47
|
+
type TRPCUseQueries<TRouter extends AnyRouter> = <TQueryOptions extends UseQueryOptionsForUseQueries<any, any, any, any>[], TCombinedResult = QueriesResults<TQueryOptions>>(queriesCallback: (t: UseQueriesProcedureRecord<TRouter['_def']['_config']['$types'], TRouter['_def']['record']>) => readonly [...QueriesOptions<TQueryOptions>], options?: {
|
|
48
|
+
combine?: (results: QueriesResults<TQueryOptions>) => TCombinedResult;
|
|
52
49
|
}) => TCombinedResult;
|
|
53
50
|
/**
|
|
54
51
|
* @internal
|
|
55
52
|
*/
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
type TRPCUseSuspenseQueries<TRouter extends AnyRouter> = <TQueryOptions extends UseQueryOptionsForUseSuspenseQueries<any, any, any, any>[]>(queriesCallback: (t: UseSuspenseQueriesProcedureRecord<TRouter['_def']['_config']['$types'], TRouter['_def']['record']>) => readonly [...SuspenseQueriesOptions<TQueryOptions>]) => SuspenseQueriesResults<TQueryOptions>;
|
|
54
|
+
|
|
55
|
+
//#endregion
|
|
56
|
+
export { TRPCUseQueries, TRPCUseSuspenseQueries, TrpcQueryOptionsForUseQueries, TrpcQueryOptionsForUseSuspenseQueries };
|
|
58
57
|
//# sourceMappingURL=useQueries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useQueries.d.ts","
|
|
1
|
+
{"version":3,"file":"useQueries.d.ts","names":[],"sources":["../../src/internals/useQueries.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/rsc.d.mts
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { TRPCFetchInfiniteQueryOptions, TRPCFetchQueryOptions } from "./internals/context.mjs";
|
|
2
|
+
import { TRPCClientError } from "@trpc/client";
|
|
3
|
+
import { QueryClient } from "@tanstack/react-query";
|
|
4
|
+
import { AnyProcedure, AnyRootTypes, AnyRouter, RouterCaller, RouterRecord, TypeError, inferProcedureInput, inferProcedureOutput, inferRouterRootTypes } from "@trpc/server/unstable-core-do-not-import";
|
|
5
|
+
import * as React from "react";
|
|
6
|
+
import { inferTransformedProcedureOutput as inferTransformedProcedureOutput$1 } from "@trpc/server";
|
|
7
|
+
|
|
8
|
+
//#region src/rsc.d.ts
|
|
9
|
+
type DecorateProcedure<TRoot extends AnyRootTypes, TProcedure extends AnyProcedure> = {
|
|
10
|
+
(input: inferProcedureInput<TProcedure>): Promise<inferProcedureOutput<TProcedure>>;
|
|
11
|
+
prefetch: (input: inferProcedureInput<TProcedure>, opts?: TRPCFetchQueryOptions<inferTransformedProcedureOutput$1<TRoot, TProcedure>, TRPCClientError<TRoot>>) => Promise<void>;
|
|
12
|
+
prefetchInfinite: (input: inferProcedureInput<TProcedure>, opts?: TRPCFetchInfiniteQueryOptions<inferProcedureInput<TProcedure>, inferTransformedProcedureOutput$1<TRoot, TProcedure>, TRPCClientError<TRoot>>) => Promise<void>;
|
|
13
|
+
};
|
|
14
|
+
type DecorateRouterRecord<TRoot extends AnyRootTypes, TRecord extends RouterRecord> = { [TKey in keyof TRecord]: TRecord[TKey] extends infer $Value ? $Value extends AnyProcedure ? DecorateProcedure<TRoot, $Value> : $Value extends RouterRecord ? DecorateRouterRecord<TRoot, $Value> : never : never };
|
|
15
|
+
type Caller<TRouter extends AnyRouter> = ReturnType<RouterCaller<inferRouterRootTypes<TRouter>, TRouter['_def']['record']>>;
|
|
16
|
+
/**
|
|
17
|
+
* @note This requires `@tanstack/react-query@^5.49.0`
|
|
18
|
+
* @note Make sure to have `dehydrate.serializeData` and `hydrate.deserializeData`
|
|
19
|
+
* set to your data transformer in your `QueryClient` factory.
|
|
20
|
+
* @example
|
|
21
|
+
* ```ts
|
|
22
|
+
* export const createQueryClient = () =>
|
|
23
|
+
* new QueryClient({
|
|
24
|
+
* defaultOptions: {
|
|
25
|
+
* dehydrate: {
|
|
26
|
+
* serializeData: transformer.serialize,
|
|
27
|
+
* },
|
|
28
|
+
* hydrate: {
|
|
29
|
+
* deserializeData: transformer.deserialize,
|
|
30
|
+
* },
|
|
31
|
+
* },
|
|
32
|
+
* });
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
declare function createHydrationHelpers<TRouter extends AnyRouter>(caller: AnyRouter extends TRouter ? TypeError<'Generic parameter missing in `createHydrationHelpers<HERE>`'> : Caller<TRouter>, getQueryClient: () => QueryClient): {
|
|
36
|
+
/***
|
|
37
|
+
* Wrapped caller with prefetch helpers
|
|
38
|
+
* Can be used as a regular [server-side caller](https://trpc.io/docs/server/server-side-calls)
|
|
39
|
+
* or using prefetch helpers to put the promise into the QueryClient cache
|
|
40
|
+
* @example
|
|
41
|
+
* ```ts
|
|
42
|
+
* const data = await trpc.post.get("postId");
|
|
43
|
+
*
|
|
44
|
+
* // or
|
|
45
|
+
* void trpc.post.get.prefetch("postId");
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
trpc: DecorateRouterRecord<inferRouterRootTypes<TRouter>, TRouter["_def"]["record"]>;
|
|
49
|
+
/**
|
|
50
|
+
* HoC to hydrate the query client for a client component
|
|
51
|
+
* to pick up the prefetched promise and skip an initial
|
|
52
|
+
* client-side fetch.
|
|
53
|
+
* @example
|
|
54
|
+
* ```tsx
|
|
55
|
+
* // MyRSC.tsx
|
|
56
|
+
* const MyRSC = ({ params }) => {
|
|
57
|
+
* void trpc.post.get.prefetch(params.postId);
|
|
58
|
+
*
|
|
59
|
+
* return (
|
|
60
|
+
* <HydrateClient>
|
|
61
|
+
* <MyCC postId={params.postId} />
|
|
62
|
+
* </HydrateClient>
|
|
63
|
+
* );
|
|
64
|
+
* };
|
|
65
|
+
*
|
|
66
|
+
* // MyCC.tsx
|
|
67
|
+
* "use client"
|
|
68
|
+
* const MyCC = ({ postId }) => {
|
|
69
|
+
* const { data: post } = trpc.post.get.useQuery(postId);
|
|
70
|
+
* return <div>{post.title}</div>;
|
|
71
|
+
* };
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
HydrateClient: (props: {
|
|
75
|
+
children: React.ReactNode;
|
|
76
|
+
}) => React.JSX.Element;
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
//#endregion
|
|
80
|
+
export { createHydrationHelpers };
|
|
81
|
+
//# sourceMappingURL=rsc.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rsc.d.mts","names":[],"sources":["../src/rsc.tsx"],"sourcesContent":[],"mappings":";;;;;;;;KAiCK,gCACW,iCACK;EAFhB,CAAA,KAAA,EAKM,mBALW,CAKS,UALT,CAAA,CAAA,EAMjB,OANiB,CAMT,oBANS,CAMY,UANZ,CAAA,CAAA;EAAA,QAAA,EAAA,CAAA,KAAA,EAQX,mBARW,CAQS,UART,CAAA,EAAA,IAAA,CAAA,EASX,qBATW,CAUhB,iCAVgB,CAUgB,KAVhB,EAUuB,UAVvB,CAAA,EAWhB,eAXgB,CAWA,KAXA,CAAA,CAAA,EAAA,GAaf,OAbe,CAAA,IAAA,CAAA;EAAA,gBACN,EAAA,CAAA,KAAA,EAcL,mBAdK,CAce,UAdf,CAAA,EAAA,IAAA,CAAA,EAeL,6BAfK,CAgBV,mBAhBU,CAgBU,UAhBV,CAAA,EAiBV,iCAjBU,CAiBsB,KAjBtB,EAiB6B,UAjB7B,CAAA,EAkBV,eAlBU,CAkBM,KAlBN,CAAA,CAAA,EAAA,GAoBT,OApBS,CAAA,IAAA,CAAA;CAAY;KAuBvB,oBAnB0B,CAAA,cAoBf,YApBe,EAAA,gBAqBb,YArBa,CAAA,GAAA,WAApB,MAuBM,OAvBN,GAuBgB,OAvBhB,CAuBwB,IAvBxB,CAAA,SAAA,KAAA,OAAA,GAwBL,MAxBK,SAwBU,YAxBV,GAyBH,iBAzBG,CAyBe,KAzBf,EAyBsB,MAzBtB,CAAA,GA0BH,MA1BG,SA0BY,YA1BZ,GA2BD,oBA3BC,CA2BoB,KA3BpB,EA2B2B,MA3B3B,CAAA,GAAA,KAAA,GAAA,KAAA,EAAmB;KAgCzB,MA/BQ,CAAA,gBA+Be,SA/Bf,CAAA,GA+B4B,UA/B5B,CAgCX,YAhCW,CAgCE,oBAhCF,CAgCuB,OAhCvB,CAAA,EAgCiC,OAhCjC,CAAA,MAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;AAUF,iBA6CK,sBA7CL,CAAA,gBA6C4C,SA7C5C,CAAA,CAAA,MAAA,EA8CD,SA9CC,SA8CiB,OA9CjB,GA+CL,SA/CK,CAAA,6DAAA,CAAA,GAgDL,MAhDK,CAgDE,OAhDF,CAAA,EAAA,cAAA,EAAA,GAAA,GAiDa,WAjDb,CAAA,EAAA;EAA6B;AAK1B;AAAA;;;;;;;;;;EASiB,IAAE,sBAAA,qBAAA,CAmCE,OAnCF,CAAA,SAAA,CAAA,MAAA,CAAA,CAAA,QAAA,CAAA,CAAA;EAAM;;;;;;AAET;AAAA;;;;;;;;AAKqB;;;;;;;;;;;cA2EP,KAAA,CAAM;QAAW,KAAA,CAAA,GAAA,CAAA"}
|
package/dist/rsc.d.ts
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
|
|
1
|
+
import { TRPCFetchInfiniteQueryOptions, TRPCFetchQueryOptions } from "./internals/context.js";
|
|
2
|
+
import { TRPCClientError } from "@trpc/client";
|
|
3
|
+
import { AnyProcedure, AnyRootTypes, AnyRouter, RouterCaller, RouterRecord, TypeError, inferProcedureInput, inferProcedureOutput, inferRouterRootTypes } from "@trpc/server/unstable-core-do-not-import";
|
|
4
|
+
import { QueryClient } from "@tanstack/react-query";
|
|
5
|
+
import * as React from "react";
|
|
6
|
+
import { inferTransformedProcedureOutput as inferTransformedProcedureOutput$1 } from "@trpc/server";
|
|
7
|
+
|
|
8
|
+
//#region src/rsc.d.ts
|
|
8
9
|
type DecorateProcedure<TRoot extends AnyRootTypes, TProcedure extends AnyProcedure> = {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
13
|
-
type DecorateRouterRecord<TRoot extends AnyRootTypes, TRecord extends RouterRecord> = {
|
|
14
|
-
[TKey in keyof TRecord]: TRecord[TKey] extends infer $Value ? $Value extends AnyProcedure ? DecorateProcedure<TRoot, $Value> : $Value extends RouterRecord ? DecorateRouterRecord<TRoot, $Value> : never : never;
|
|
10
|
+
(input: inferProcedureInput<TProcedure>): Promise<inferProcedureOutput<TProcedure>>;
|
|
11
|
+
prefetch: (input: inferProcedureInput<TProcedure>, opts?: TRPCFetchQueryOptions<inferTransformedProcedureOutput$1<TRoot, TProcedure>, TRPCClientError<TRoot>>) => Promise<void>;
|
|
12
|
+
prefetchInfinite: (input: inferProcedureInput<TProcedure>, opts?: TRPCFetchInfiniteQueryOptions<inferProcedureInput<TProcedure>, inferTransformedProcedureOutput$1<TRoot, TProcedure>, TRPCClientError<TRoot>>) => Promise<void>;
|
|
15
13
|
};
|
|
14
|
+
type DecorateRouterRecord<TRoot extends AnyRootTypes, TRecord extends RouterRecord> = { [TKey in keyof TRecord]: TRecord[TKey] extends infer $Value ? $Value extends AnyProcedure ? DecorateProcedure<TRoot, $Value> : $Value extends RouterRecord ? DecorateRouterRecord<TRoot, $Value> : never : never };
|
|
16
15
|
type Caller<TRouter extends AnyRouter> = ReturnType<RouterCaller<inferRouterRootTypes<TRouter>, TRouter['_def']['record']>>;
|
|
17
16
|
/**
|
|
18
17
|
* @note This requires `@tanstack/react-query@^5.49.0`
|
|
@@ -33,48 +32,50 @@ type Caller<TRouter extends AnyRouter> = ReturnType<RouterCaller<inferRouterRoot
|
|
|
33
32
|
* });
|
|
34
33
|
* ```
|
|
35
34
|
*/
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
35
|
+
declare function createHydrationHelpers<TRouter extends AnyRouter>(caller: AnyRouter extends TRouter ? TypeError<'Generic parameter missing in `createHydrationHelpers<HERE>`'> : Caller<TRouter>, getQueryClient: () => QueryClient): {
|
|
36
|
+
/***
|
|
37
|
+
* Wrapped caller with prefetch helpers
|
|
38
|
+
* Can be used as a regular [server-side caller](https://trpc.io/docs/server/server-side-calls)
|
|
39
|
+
* or using prefetch helpers to put the promise into the QueryClient cache
|
|
40
|
+
* @example
|
|
41
|
+
* ```ts
|
|
42
|
+
* const data = await trpc.post.get("postId");
|
|
43
|
+
*
|
|
44
|
+
* // or
|
|
45
|
+
* void trpc.post.get.prefetch("postId");
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
trpc: DecorateRouterRecord<inferRouterRootTypes<TRouter>, TRouter["_def"]["record"]>;
|
|
49
|
+
/**
|
|
50
|
+
* HoC to hydrate the query client for a client component
|
|
51
|
+
* to pick up the prefetched promise and skip an initial
|
|
52
|
+
* client-side fetch.
|
|
53
|
+
* @example
|
|
54
|
+
* ```tsx
|
|
55
|
+
* // MyRSC.tsx
|
|
56
|
+
* const MyRSC = ({ params }) => {
|
|
57
|
+
* void trpc.post.get.prefetch(params.postId);
|
|
58
|
+
*
|
|
59
|
+
* return (
|
|
60
|
+
* <HydrateClient>
|
|
61
|
+
* <MyCC postId={params.postId} />
|
|
62
|
+
* </HydrateClient>
|
|
63
|
+
* );
|
|
64
|
+
* };
|
|
65
|
+
*
|
|
66
|
+
* // MyCC.tsx
|
|
67
|
+
* "use client"
|
|
68
|
+
* const MyCC = ({ postId }) => {
|
|
69
|
+
* const { data: post } = trpc.post.get.useQuery(postId);
|
|
70
|
+
* return <div>{post.title}</div>;
|
|
71
|
+
* };
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
HydrateClient: (props: {
|
|
75
|
+
children: React.ReactNode;
|
|
76
|
+
}) => React.JSX.Element;
|
|
78
77
|
};
|
|
79
|
-
|
|
78
|
+
|
|
79
|
+
//#endregion
|
|
80
|
+
export { createHydrationHelpers };
|
|
80
81
|
//# sourceMappingURL=rsc.d.ts.map
|
package/dist/rsc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rsc.d.ts","
|
|
1
|
+
{"version":3,"file":"rsc.d.ts","names":[],"sources":["../src/rsc.tsx"],"sourcesContent":[],"mappings":";;;;;;;;KAiCK,gCACW,iCACK;EAFhB,CAAA,KAAA,EAKM,mBALW,CAKS,UALT,CAAA,CAAA,EAMjB,OANiB,CAMT,oBANS,CAMY,UANZ,CAAA,CAAA;EAAA,QAAA,EAAA,CAAA,KAAA,EAQX,mBARW,CAQS,UART,CAAA,EAAA,IAAA,CAAA,EASX,qBATW,CAUhB,iCAVgB,CAUgB,KAVhB,EAUuB,UAVvB,CAAA,EAWhB,eAXgB,CAWA,KAXA,CAAA,CAAA,EAAA,GAaf,OAbe,CAAA,IAAA,CAAA;EAAA,gBACN,EAAA,CAAA,KAAA,EAcL,mBAdK,CAce,UAdf,CAAA,EAAA,IAAA,CAAA,EAeL,6BAfK,CAgBV,mBAhBU,CAgBU,UAhBV,CAAA,EAiBV,iCAjBU,CAiBsB,KAjBtB,EAiB6B,UAjB7B,CAAA,EAkBV,eAlBU,CAkBM,KAlBN,CAAA,CAAA,EAAA,GAoBT,OApBS,CAAA,IAAA,CAAA;CAAY;KAuBvB,oBAnB0B,CAAA,cAoBf,YApBe,EAAA,gBAqBb,YArBa,CAAA,GAAA,WAApB,MAuBM,OAvBN,GAuBgB,OAvBhB,CAuBwB,IAvBxB,CAAA,SAAA,KAAA,OAAA,GAwBL,MAxBK,SAwBU,YAxBV,GAyBH,iBAzBG,CAyBe,KAzBf,EAyBsB,MAzBtB,CAAA,GA0BH,MA1BG,SA0BY,YA1BZ,GA2BD,oBA3BC,CA2BoB,KA3BpB,EA2B2B,MA3B3B,CAAA,GAAA,KAAA,GAAA,KAAA,EAAmB;KAgCzB,MA/BQ,CAAA,gBA+Be,SA/Bf,CAAA,GA+B4B,UA/B5B,CAgCX,YAhCW,CAgCE,oBAhCF,CAgCuB,OAhCvB,CAAA,EAgCiC,OAhCjC,CAAA,MAAA,CAAA,CAAA,QAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;AAUF,iBA6CK,sBA7CL,CAAA,gBA6C4C,SA7C5C,CAAA,CAAA,MAAA,EA8CD,SA9CC,SA8CiB,OA9CjB,GA+CL,SA/CK,CAAA,6DAAA,CAAA,GAgDL,MAhDK,CAgDE,OAhDF,CAAA,EAAA,cAAA,EAAA,GAAA,GAiDa,WAjDb,CAAA,EAAA;EAA6B;AAK1B;AAAA;;;;;;;;;;EASiB,IAAE,sBAAA,qBAAA,CAmCE,OAnCF,CAAA,SAAA,CAAA,MAAA,CAAA,CAAA,QAAA,CAAA,CAAA;EAAM;;;;;;AAET;AAAA;;;;;;;;AAKqB;;;;;;;;;;;cA2EP,KAAA,CAAM;QAAW,KAAA,CAAA,GAAA,CAAA"}
|
package/dist/rsc.js
CHANGED
|
@@ -1,130 +1,70 @@
|
|
|
1
|
-
|
|
1
|
+
const require_rolldown_runtime = require('./_virtual/rolldown_runtime.js');
|
|
2
|
+
const require__Users_julius_dev_trpc_packages_react_query_src_internals_getQueryKey = require('./internals/getQueryKey.js');
|
|
3
|
+
const __tanstack_react_query = require_rolldown_runtime.__toESM(require("@tanstack/react-query"));
|
|
4
|
+
const __trpc_server_unstable_core_do_not_import = require_rolldown_runtime.__toESM(require("@trpc/server/unstable-core-do-not-import"));
|
|
5
|
+
const react = require_rolldown_runtime.__toESM(require("react"));
|
|
6
|
+
const react_jsx_runtime = require_rolldown_runtime.__toESM(require("react/jsx-runtime"));
|
|
2
7
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var React = require('react');
|
|
6
|
-
var getQueryKey = require('./internals/getQueryKey.js');
|
|
7
|
-
|
|
8
|
-
function _interopNamespaceDefault(e) {
|
|
9
|
-
var n = Object.create(null);
|
|
10
|
-
if (e) {
|
|
11
|
-
Object.keys(e).forEach(function (k) {
|
|
12
|
-
if (k !== 'default') {
|
|
13
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
14
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
get: function () { return e[k]; }
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
n.default = e;
|
|
22
|
-
return Object.freeze(n);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
26
|
-
|
|
27
|
-
/// <reference types="react/canary" />
|
|
28
|
-
const HELPERS = [
|
|
29
|
-
'prefetch',
|
|
30
|
-
'prefetchInfinite'
|
|
31
|
-
];
|
|
32
|
-
// ts-prune-ignore-next
|
|
8
|
+
//#region src/rsc.tsx
|
|
9
|
+
const HELPERS = ["prefetch", "prefetchInfinite"];
|
|
33
10
|
/**
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
/***
|
|
91
|
-
* Wrapped caller with prefetch helpers
|
|
92
|
-
* Can be used as a regular [server-side caller](https://trpc.io/docs/server/server-side-calls)
|
|
93
|
-
* or using prefetch helpers to put the promise into the QueryClient cache
|
|
94
|
-
* @example
|
|
95
|
-
* ```ts
|
|
96
|
-
* const data = await trpc.post.get("postId");
|
|
97
|
-
*
|
|
98
|
-
* // or
|
|
99
|
-
* void trpc.post.get.prefetch("postId");
|
|
100
|
-
* ```
|
|
101
|
-
*/ trpc: wrappedProxy,
|
|
102
|
-
/**
|
|
103
|
-
* HoC to hydrate the query client for a client component
|
|
104
|
-
* to pick up the prefetched promise and skip an initial
|
|
105
|
-
* client-side fetch.
|
|
106
|
-
* @example
|
|
107
|
-
* ```tsx
|
|
108
|
-
* // MyRSC.tsx
|
|
109
|
-
* const MyRSC = ({ params }) => {
|
|
110
|
-
* void trpc.post.get.prefetch(params.postId);
|
|
111
|
-
*
|
|
112
|
-
* return (
|
|
113
|
-
* <HydrateClient>
|
|
114
|
-
* <MyCC postId={params.postId} />
|
|
115
|
-
* </HydrateClient>
|
|
116
|
-
* );
|
|
117
|
-
* };
|
|
118
|
-
*
|
|
119
|
-
* // MyCC.tsx
|
|
120
|
-
* "use client"
|
|
121
|
-
* const MyCC = ({ postId }) => {
|
|
122
|
-
* const { data: post } = trpc.post.get.useQuery(postId);
|
|
123
|
-
* return <div>{post.title}</div>;
|
|
124
|
-
* };
|
|
125
|
-
* ```
|
|
126
|
-
*/ HydrateClient
|
|
127
|
-
};
|
|
11
|
+
* @note This requires `@tanstack/react-query@^5.49.0`
|
|
12
|
+
* @note Make sure to have `dehydrate.serializeData` and `hydrate.deserializeData`
|
|
13
|
+
* set to your data transformer in your `QueryClient` factory.
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* export const createQueryClient = () =>
|
|
17
|
+
* new QueryClient({
|
|
18
|
+
* defaultOptions: {
|
|
19
|
+
* dehydrate: {
|
|
20
|
+
* serializeData: transformer.serialize,
|
|
21
|
+
* },
|
|
22
|
+
* hydrate: {
|
|
23
|
+
* deserializeData: transformer.deserialize,
|
|
24
|
+
* },
|
|
25
|
+
* },
|
|
26
|
+
* });
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
function createHydrationHelpers(caller, getQueryClient) {
|
|
30
|
+
const wrappedProxy = (0, __trpc_server_unstable_core_do_not_import.createRecursiveProxy)(async (opts) => {
|
|
31
|
+
const path = [...opts.path];
|
|
32
|
+
const args = [...opts.args];
|
|
33
|
+
const proc = path.reduce((acc, key) => HELPERS.includes(key) ? acc : acc[key], caller);
|
|
34
|
+
const input = args[0];
|
|
35
|
+
const promise = proc(input);
|
|
36
|
+
const helper = path.pop();
|
|
37
|
+
if (helper === "prefetch") {
|
|
38
|
+
const args1 = args[1];
|
|
39
|
+
return getQueryClient().prefetchQuery({
|
|
40
|
+
...args1,
|
|
41
|
+
queryKey: require__Users_julius_dev_trpc_packages_react_query_src_internals_getQueryKey.getQueryKeyInternal(path, input, "query"),
|
|
42
|
+
queryFn: () => promise
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
if (helper === "prefetchInfinite") {
|
|
46
|
+
const args1 = args[1];
|
|
47
|
+
return getQueryClient().prefetchInfiniteQuery({
|
|
48
|
+
...args1,
|
|
49
|
+
queryKey: require__Users_julius_dev_trpc_packages_react_query_src_internals_getQueryKey.getQueryKeyInternal(path, input, "infinite"),
|
|
50
|
+
queryFn: () => promise,
|
|
51
|
+
initialPageParam: args1?.initialCursor ?? null
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return promise;
|
|
55
|
+
});
|
|
56
|
+
function HydrateClient(props) {
|
|
57
|
+
const dehydratedState = (0, __tanstack_react_query.dehydrate)(getQueryClient());
|
|
58
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__tanstack_react_query.HydrationBoundary, {
|
|
59
|
+
state: dehydratedState,
|
|
60
|
+
children: props.children
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
return {
|
|
64
|
+
trpc: wrappedProxy,
|
|
65
|
+
HydrateClient
|
|
66
|
+
};
|
|
128
67
|
}
|
|
129
68
|
|
|
130
|
-
|
|
69
|
+
//#endregion
|
|
70
|
+
exports.createHydrationHelpers = createHydrationHelpers;
|