Skip to content

Commit

Permalink
Merge branch 'psachs/connect-query-core' into psachs/v2-query-client
Browse files Browse the repository at this point in the history
  • Loading branch information
paul-sachs authored Oct 29, 2024
2 parents 3647d72 + 5a987d2 commit 554937c
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 1 deletion.
3 changes: 3 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@ const config = {
"import/resolver": {
typescript: {},
},
vitest: {
typecheck: true,
},
},
rules: {
...vitest.configs.recommended.rules,
Expand Down
3 changes: 2 additions & 1 deletion packages/connect-query-core/src/create-query-options.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
// limitations under the License.

import { skipToken as tanstackSkipToken } from "@tanstack/query-core";
import { describe, expect, it } from "vitest";
import { describe, expect, expectTypeOf, it } from "vitest";

import { createConnectQueryKey } from "./connect-query-key.js";
import { createQueryOptions } from "./create-query-options.js";
Expand All @@ -32,6 +32,7 @@ describe("createQueryOptions", () => {
transport: mockedElizaTransport,
});
expect(opt.queryFn).toBe(skipToken);
expectTypeOf(opt.queryFn).toEqualTypeOf(skipToken);
});

it("honors skipToken directly from tanstack", () => {
Expand Down
48 changes: 48 additions & 0 deletions packages/connect-query-core/src/create-query-options.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,54 @@ function createUnaryQueryFn<I extends DescMessage, O extends DescMessage>(
/**
* Creates all options required to make a query. Useful in combination with `useQueries` from tanstack/react-query.
*/
export function createQueryOptions<
I extends DescMessage,
O extends DescMessage,
>(
schema: DescMethodUnary<I, O>,
input: MessageInitShape<I> | undefined,
{
transport,
}: {
transport: Transport;
},
): {
queryKey: ConnectQueryKey;
queryFn: QueryFunction<MessageShape<O>, ConnectQueryKey>;
structuralSharing: (oldData: unknown, newData: unknown) => unknown;
};
export function createQueryOptions<
I extends DescMessage,
O extends DescMessage,
>(
schema: DescMethodUnary<I, O>,
input: SkipToken,
{
transport,
}: {
transport: Transport;
},
): {
queryKey: ConnectQueryKey;
queryFn: SkipToken;
structuralSharing: (oldData: unknown, newData: unknown) => unknown;
};
export function createQueryOptions<
I extends DescMessage,
O extends DescMessage,
>(
schema: DescMethodUnary<I, O>,
input: SkipToken | MessageInitShape<I> | undefined,
{
transport,
}: {
transport: Transport;
},
): {
queryKey: ConnectQueryKey;
queryFn: QueryFunction<MessageShape<O>, ConnectQueryKey> | SkipToken;
structuralSharing: (oldData: unknown, newData: unknown) => unknown;
};
export function createQueryOptions<
I extends DescMessage,
O extends DescMessage,
Expand Down

0 comments on commit 554937c

Please sign in to comment.