@stryke/trpc-next 0.1.0 → 0.1.1

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/client.d.ts CHANGED
@@ -1,5 +1,16 @@
1
1
  import type { UseTRPCActionResult } from "@trpc/next/app-dir/client";
2
2
  import type { ActionHandlerDef, TRPCActionHandler } from "@trpc/next/app-dir/server";
3
3
  import type { AnyTRPCRouter } from "@trpc/server";
4
+ /**
5
+ * Creates a tRPC client for the Next.js app directory.
6
+ *
7
+ * @param baseUrl - The base URL for the tRPC server. This is typically the URL of the Next.js app.
8
+ * @returns A tRPC client that can be used to make requests to the server.
9
+ */
4
10
  export declare function createTRPCClient<TRouter extends AnyTRPCRouter>(baseUrl: string): import("@trpc/client").TRPCClient<TRouter>;
11
+ /**
12
+ * Creates a tRPC action hook for the Next.js app directory.
13
+ *
14
+ * @returns A function that can be used to create a tRPC action hook.
15
+ */
5
16
  export declare function createUseAction<TRouter extends AnyTRPCRouter>(): <TDef extends ActionHandlerDef>(handler: TRPCActionHandler<TDef>, useActionOpts?: any) => UseTRPCActionResult<TDef>;
package/dist/server.cjs CHANGED
@@ -9,7 +9,7 @@ var _nextCache = require("@trpc/next/app-dir/links/nextCache");
9
9
  var _server = require("@trpc/next/app-dir/server");
10
10
  var _headers = require("next/headers");
11
11
  var _shared = require("./shared.cjs");
12
- function createTRPCServer(t, r) {
12
+ function createTRPCServer(r, t = () => ({})) {
13
13
  return (0, _server.experimental_createTRPCNextAppDirServer)({
14
14
  config() {
15
15
  return {
@@ -17,10 +17,10 @@ function createTRPCServer(t, r) {
17
17
  enabled: e => !0
18
18
  }), (0, _nextCache.experimental_nextCacheLink)({
19
19
  revalidate: 5,
20
- router: t,
20
+ router: r,
21
21
  transformer: _shared.transformer,
22
22
  createContext: async () => {
23
- const e = r ? await Promise.resolve(r()) : {};
23
+ const e = await Promise.resolve(t());
24
24
  return e.headers ??= {}, e.headers["x-trpc-source"] = "rsc-invoke", e.headers.cookie = (await (0, _headers.cookies)()).toString(), e;
25
25
  }
26
26
  })]
package/dist/server.mjs CHANGED
@@ -1 +1 @@
1
- import{loggerLink as o}from"@trpc/client";import{experimental_nextCacheLink as n}from"@trpc/next/app-dir/links/nextCache";import{experimental_createTRPCNextAppDirServer as p}from"@trpc/next/app-dir/server";import{cookies as u}from"next/headers";import{transformer as i}from"./shared";export function createTRPCServer(t,r){return p({config(){return{links:[o({enabled:e=>!0}),n({revalidate:5,router:t,transformer:i,createContext:async()=>{const e=r?await Promise.resolve(r()):{};return e.headers??={},e.headers["x-trpc-source"]="rsc-invoke",e.headers.cookie=(await u()).toString(),e}})]}}})}
1
+ import{loggerLink as o}from"@trpc/client";import{experimental_nextCacheLink as n}from"@trpc/next/app-dir/links/nextCache";import{experimental_createTRPCNextAppDirServer as p}from"@trpc/next/app-dir/server";import{cookies as u}from"next/headers";import{transformer as i}from"./shared";export function createTRPCServer(r,t=()=>({})){return p({config(){return{links:[o({enabled:e=>!0}),n({revalidate:5,router:r,transformer:i,createContext:async()=>{const e=await Promise.resolve(t());return e.headers??={},e.headers["x-trpc-source"]="rsc-invoke",e.headers.cookie=(await u()).toString(),e}})]}}})}
package/dist/shared.d.ts CHANGED
@@ -4,4 +4,10 @@ import { QueryClient } from "@tanstack/react-query";
4
4
  import type { DataTransformer } from "@trpc/server/unstable-core-do-not-import";
5
5
  export declare function getTRPCServerUrl(baseUrl: string | StormURL, version?: number | null): any;
6
6
  export declare const transformer: DataTransformer;
7
+ /**
8
+ * Create a TRPC Tanstack Query client.
9
+ *
10
+ * @param config - The query client config
11
+ * @returns The TRPC Tanstack Query client
12
+ */
7
13
  export declare const createQueryClient: (config?: Partial<QueryClientConfig>) => QueryClient;
@@ -1,6 +1,11 @@
1
1
  import type { StormURL } from "@stryke/http/types";
2
2
  import type { QueryClient } from "@tanstack/react-query";
3
3
  import type { AnyTRPCRouter } from "@trpc/server";
4
+ /**
5
+ * Create a TRPC Tanstack Query client.
6
+ *
7
+ * @returns The TRPC Tanstack Query client
8
+ */
4
9
  export declare function createTRPCTanstackQueryClient<TRouter extends AnyTRPCRouter>(): {
5
10
  useTRPCTanstackQuery: () => import("@trpc/tanstack-react-query").TRPCOptionsProxy<TRouter>;
6
11
  TRPCTanstackQueryProvider(props: {
@@ -14,9 +14,9 @@ var _shared = require("../shared.cjs");
14
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
15
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
16
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
- function createTRPCTanstackQueryServer(i, o, a) {
17
+ function createTRPCTanstackQueryServer(n, i = () => ({}), a) {
18
18
  const c = (0, _react.cache)(async () => {
19
- const e = o ? await Promise.resolve(o()) : {},
19
+ const e = await Promise.resolve(i()),
20
20
  t = new Headers(await (0, _headers.headers)());
21
21
  return t.set("x-trpc-source", "rsc"), (0, _defu.default)({
22
22
  headers: Object.fromEntries(t)
@@ -25,7 +25,7 @@ function createTRPCTanstackQueryServer(i, o, a) {
25
25
  r = (0, _react.cache)(() => (0, _shared.createQueryClient)(a));
26
26
  return {
27
27
  trpc: (0, _tanstackReactQuery.createTRPCOptionsProxy)({
28
- router: i,
28
+ router: n,
29
29
  queryClient: r,
30
30
  ctx: c
31
31
  }),
@@ -4,6 +4,14 @@ import type { AnyTRPCRouter, inferRouterContext } from "@trpc/server";
4
4
  import type { TRPCQueryOptions } from "@trpc/tanstack-react-query";
5
5
  import React from "react";
6
6
  import "server-only";
7
+ /**
8
+ * Create a TRPC Tanstack Query server.
9
+ *
10
+ * @param router - The TRPC router
11
+ * @param createContext - The context creator function
12
+ * @param config - The query client config
13
+ * @returns The TRPC Tanstack Query server
14
+ */
7
15
  export declare function createTRPCTanstackQueryServer<TRouter extends AnyTRPCRouter, TContext extends inferRouterContext<TRouter>>(router: TRouter, createContext?: () => MaybePromise<TContext>, config?: Partial<QueryClientConfig>): {
8
16
  trpc: import("@trpc/tanstack-react-query").TRPCOptionsProxy<TRouter>;
9
17
  getQueryClient: () => import("@tanstack/react-query").QueryClient;
@@ -1 +1 @@
1
- import{dehydrate as s,HydrationBoundary as y}from"@tanstack/react-query";import{createTRPCOptionsProxy as p}from"@trpc/tanstack-react-query";import u from"defu";import{headers as m}from"next/headers";import d,{cache as n}from"react";import"server-only";import{createQueryClient as f}from"../shared";export function createTRPCTanstackQueryServer(i,o,a){const c=n(async()=>{const e=o?await Promise.resolve(o()):{},t=new Headers(await m());return t.set("x-trpc-source","rsc"),u({headers:Object.fromEntries(t)},e)}),r=n(()=>f(a));return{trpc:p({router:i,queryClient:r,ctx:c}),getQueryClient:r,HydrateClient(e){const t=s(r());return d.createElement(y,{state:t},e.children)},prefetch(e){const t=r();e.queryKey[1]?.type==="infinite"?t.prefetchInfiniteQuery(e):t.prefetchQuery(e)}}}
1
+ import{dehydrate as s,HydrationBoundary as y}from"@tanstack/react-query";import{createTRPCOptionsProxy as p}from"@trpc/tanstack-react-query";import u from"defu";import{headers as m}from"next/headers";import d,{cache as o}from"react";import"server-only";import{createQueryClient as f}from"../shared";export function createTRPCTanstackQueryServer(n,i=()=>({}),a){const c=o(async()=>{const e=await Promise.resolve(i()),t=new Headers(await m());return t.set("x-trpc-source","rsc"),u({headers:Object.fromEntries(t)},e)}),r=o(()=>f(a));return{trpc:p({router:n,queryClient:r,ctx:c}),getQueryClient:r,HydrateClient(e){const t=s(r());return d.createElement(y,{state:t},e.children)},prefetch(e){const t=r();e.queryKey[1]?.type==="infinite"?t.prefetchInfiniteQuery(e):t.prefetchQuery(e)}}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stryke/trpc-next",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "type": "module",
5
5
  "description": "A package to help in using tRPC in modern NextJs applications.",
6
6
  "repository": {