eden2query 0.2.0 → 0.3.0

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/README.md CHANGED
@@ -12,22 +12,22 @@ bun add eden2query @elysiajs/eden @tanstack/react-query
12
12
 
13
13
  ```ts
14
14
  import { treaty } from "@elysiajs/eden";
15
- import { edenQueryOptions, edenMutationOptions } from "eden2query";
15
+ import { treatyQueryOptions, treatyMutationOptions } from "eden2query";
16
16
  import type { App } from "./server"; // your Elysia app type
17
17
 
18
18
  const client = treaty<App>("localhost:3000");
19
19
 
20
- // GET → queryOptions (first arg is a thunk that calls the Eden GET function)
21
- const resourceQuery = edenQueryOptions(
20
+ // GET → queryOptions (first arg is a thunk that calls the Treaty GET function)
21
+ const resourceQuery = treatyQueryOptions(
22
22
  () => client.api.resource.get({ query: { q: "hello" } }),
23
23
  { queryKey: ["resource"] },
24
24
  );
25
25
 
26
26
  // POST / PUT / DELETE → mutationOptions
27
- const createResource = edenMutationOptions(client.api.resource.post);
27
+ const createResource = treatyMutationOptions(client.api.resource.post);
28
28
 
29
29
  // Parameterised routes — bind params first
30
- const updateResource = edenMutationOptions(
30
+ const updateResource = treatyMutationOptions(
31
31
  client.api.resource({ id: "some-id" }).put,
32
32
  );
33
33
  ```
@@ -51,26 +51,25 @@ await queryClient.prefetchQuery(resourceQuery);
51
51
  You can also pass any standard React Query options as the second argument:
52
52
 
53
53
  ```ts
54
- const resourceQuery = edenQueryOptions(
54
+ const resourceQuery = treatyQueryOptions(
55
55
  () => client.api.resource.get({ query: { q: "hello" } }),
56
56
  { queryKey: ["resource"], refetchInterval: 1000 },
57
57
  );
58
58
 
59
- const createResource = edenMutationOptions(
60
- client.api.resource.post,
61
- { onSuccess: () => console.log("created!") },
62
- );
59
+ const createResource = treatyMutationOptions(client.api.resource.post, {
60
+ onSuccess: () => console.log("created!"),
61
+ });
63
62
  ```
64
63
 
65
64
  ## API
66
65
 
67
- **`edenQueryOptions(fn, queryOptions)`** — wraps an Eden GET call into `queryOptions`. `fn` is a **thunk** (zero-argument function) that calls the Eden GET function, e.g. `() => client.api.resource.get({ query: { ... } })`. This lets you bind query parameters, headers, or any other Eden options at definition time. The second argument accepts all `queryOptions` fields except `queryFn`. Extracts `data` from the response and throws on `error`.
66
+ **`treatyQueryOptions(fn, queryOptions)`** — wraps a Treaty GET call into `queryOptions`. `fn` is a **thunk** (zero-argument function) that calls the Treaty GET function, e.g. `() => client.api.resource.get({ query: { ... } })`. This lets you bind query parameters, headers, or any other Treaty options at definition time. The second argument accepts all `queryOptions` fields except `queryFn`. Extracts `data` from the response and throws on `error`.
68
67
 
69
- **`edenMutationOptions(fn, mutationOptions?)`** — wraps an Eden mutation function into `mutationOptions`. The optional second argument accepts all `mutationOptions` fields except `mutationFn` (e.g. `onSuccess`, `onSettled`, `onMutate`). The `mutate` call receives a single object with `body` and any other Eden options (like `query`) as the input.
68
+ **`treatyMutationOptions(fn, mutationOptions?)`** — wraps a Treaty mutation function into `mutationOptions`. The optional second argument accepts all `mutationOptions` fields except `mutationFn` (e.g. `onSuccess`, `onSettled`, `onMutate`). The `mutate` call receives a single object with `body` and any other Treaty options (like `query`) as the input.
70
69
 
71
- **`InferQueryOptions<TFn>`** — extracts the full `UseQueryOptions` type for a given Eden GET thunk.
70
+ **`InferTreatyQueryOptions<T>`** — extracts the full `UseQueryOptions` type for a given Treaty query function.
72
71
 
73
- **`InferMutationOptions<TFn>`** — extracts the full `UseMutationOptions` type for a given Eden mutation function.
72
+ **`InferTreatyMutationOptions<T>`** — extracts the full `UseMutationOptions` type for a given Treaty mutation function.
74
73
 
75
74
  All helpers infer data, error, and input types end-to-end from your Elysia route definitions. No manual generics needed.
76
75
 
package/dist/index.d.ts CHANGED
@@ -1,16 +1,16 @@
1
1
  import { Treaty } from "@elysiajs/eden";
2
2
  import { UseMutationOptions, UseQueryOptions } from "@tanstack/react-query";
3
- type EdenMutationFn<
4
- TBody = any,
5
- TOptions = any,
6
- TResponse extends Record<number, unknown> = Record<number, unknown>
7
- > = ((body: TBody, options: TOptions) => Promise<Treaty.TreatyResponse<TResponse>>);
8
- type EdenQueryFn<TResponse extends Record<number, unknown> = Record<number, unknown>> = (() => Promise<Treaty.TreatyResponse<TResponse>>);
9
- type InferMutationVariables<TFn extends EdenMutationFn> = (unknown extends Parameters<TFn>[0] ? Parameters<TFn>[1] : Parameters<TFn>[1] & {
10
- body: Parameters<TFn>[0];
11
- });
12
- type InferMutationOptions<TFn extends EdenMutationFn> = (UseMutationOptions<Awaited<ReturnType<TFn>>["data"], Awaited<ReturnType<TFn>>["error"], InferMutationVariables<TFn>>);
13
- type InferQueryOptions<TFn extends EdenQueryFn> = (UseQueryOptions<Awaited<ReturnType<TFn>>["data"], Awaited<ReturnType<TFn>>["error"]>);
14
- declare function edenMutationOptions<TFn extends EdenMutationFn>(fn: TFn, options?: Omit<InferMutationOptions<TFn>, "mutationFn">): InferMutationOptions<TFn>;
15
- declare function edenQueryOptions<TFn extends EdenQueryFn>(fn: TFn, options: Omit<InferQueryOptions<TFn>, "queryFn">): InferQueryOptions<TFn>;
16
- export { edenQueryOptions, edenMutationOptions, InferQueryOptions, InferMutationOptions };
3
+ type AnyResponse = Record<number, unknown>;
4
+ type TreatyMutationFunction<
5
+ TArgs = unknown,
6
+ TResponse extends AnyResponse = AnyResponse
7
+ > = (args: TArgs) => Promise<Treaty.TreatyResponse<TResponse>>;
8
+ type TreatyQueryFunction<TResponse extends AnyResponse = AnyResponse> = () => Promise<Treaty.TreatyResponse<TResponse>>;
9
+ type InferTreatyData<T extends TreatyMutationFunction | TreatyQueryFunction> = Awaited<ReturnType<T>>["data"];
10
+ type InferTreatyError<T extends TreatyMutationFunction | TreatyQueryFunction> = Awaited<ReturnType<T>>["error"];
11
+ type InferTreatyVariables<T extends TreatyMutationFunction> = Parameters<T> extends [] ? void : Parameters<T>[0];
12
+ type InferTreatyMutationOptions<T extends TreatyMutationFunction> = UseMutationOptions<InferTreatyData<T>, InferTreatyError<T>, InferTreatyVariables<T>>;
13
+ type InferTreatyQueryOptions<T extends TreatyQueryFunction> = UseQueryOptions<InferTreatyData<T>, InferTreatyError<T>>;
14
+ declare function treatyMutationOptions<T extends TreatyMutationFunction>(fn: T, options: Omit<InferTreatyMutationOptions<T>, "mutationFn">): InferTreatyMutationOptions<T>;
15
+ declare function treatyQueryOptions<T extends TreatyQueryFunction>(fn: T, options: Omit<InferTreatyQueryOptions<T>, "queryFn">): InferTreatyQueryOptions<T>;
16
+ export { treatyQueryOptions, treatyMutationOptions, TreatyQueryFunction, TreatyMutationFunction, InferTreatyVariables, InferTreatyQueryOptions, InferTreatyMutationOptions, InferTreatyError, InferTreatyData };
package/dist/index.js CHANGED
@@ -1,34 +1,36 @@
1
1
  // src/lib.ts
2
- import { mutationOptions, queryOptions } from "@tanstack/react-query";
3
- function edenMutationOptions(fn, options) {
2
+ import {
3
+ mutationOptions,
4
+ queryOptions
5
+ } from "@tanstack/react-query";
6
+ function treatyMutationOptions(fn, options) {
4
7
  return mutationOptions({
8
+ ...options,
5
9
  mutationFn: async (variables) => {
6
- const { body, ...rest } = variables;
7
- const response = await fn(body, rest);
10
+ const response = await fn(variables);
8
11
  const { data, error } = response;
9
12
  if (error)
10
13
  throw error;
11
14
  return data;
12
- },
13
- ...options
15
+ }
14
16
  });
15
17
  }
16
- function edenQueryOptions(fn, options) {
18
+ function treatyQueryOptions(fn, options) {
17
19
  return queryOptions({
20
+ ...options,
18
21
  queryFn: async () => {
19
22
  const response = await fn();
20
23
  const { data, error } = response;
21
24
  if (error)
22
25
  throw error;
23
26
  return data;
24
- },
25
- ...options
27
+ }
26
28
  });
27
29
  }
28
30
  export {
29
- edenQueryOptions,
30
- edenMutationOptions
31
+ treatyQueryOptions,
32
+ treatyMutationOptions
31
33
  };
32
34
 
33
- //# debugId=536B0B1CEFDDC08764756E2164756E21
34
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjXFxsaWIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiaW1wb3J0IHR5cGUgeyBUcmVhdHkgfSBmcm9tIFwiQGVseXNpYWpzL2VkZW5cIjtcclxuaW1wb3J0IHsgbXV0YXRpb25PcHRpb25zLCBxdWVyeU9wdGlvbnMsIHVzZVF1ZXJ5LCB0eXBlIFVzZU11dGF0aW9uT3B0aW9ucywgdHlwZSBVc2VNdXRhdGlvblJlc3VsdCwgdHlwZSBVc2VRdWVyeU9wdGlvbnMgfSBmcm9tIFwiQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5XCI7XHJcblxyXG50eXBlIEVkZW5NdXRhdGlvbkZuPFxyXG4gIFRCb2R5ID0gYW55LCBcclxuICBUT3B0aW9ucyA9IGFueSwgXHJcbiAgVFJlc3BvbnNlIGV4dGVuZHMgUmVjb3JkPG51bWJlciwgdW5rbm93bj4gPSBSZWNvcmQ8bnVtYmVyLCB1bmtub3duPlxyXG4+ID0gKFxyXG4gIChib2R5OiBUQm9keSwgb3B0aW9uczogVE9wdGlvbnMpID0+IFByb21pc2U8VHJlYXR5LlRyZWF0eVJlc3BvbnNlPFRSZXNwb25zZT4+XHJcbik7XHJcblxyXG50eXBlIEVkZW5RdWVyeUZuPFxyXG4gIFRSZXNwb25zZSBleHRlbmRzIFJlY29yZDxudW1iZXIsIHVua25vd24+ID0gUmVjb3JkPG51bWJlciwgdW5rbm93bj5cclxuPiA9IChcclxuICAoKSA9PiBQcm9taXNlPFRyZWF0eS5UcmVhdHlSZXNwb25zZTxUUmVzcG9uc2U+PlxyXG4pO1xyXG5cclxudHlwZSBJbmZlck11dGF0aW9uVmFyaWFibGVzPFRGbiBleHRlbmRzIEVkZW5NdXRhdGlvbkZuPiA9IChcclxuICB1bmtub3duIGV4dGVuZHMgUGFyYW1ldGVyczxURm4+WzBdXHJcbiAgICA/IFBhcmFtZXRlcnM8VEZuPlsxXVxyXG4gICAgOiBQYXJhbWV0ZXJzPFRGbj5bMV0gJiB7IGJvZHk6IFBhcmFtZXRlcnM8VEZuPlswXSB9XHJcbik7XHJcblxyXG5leHBvcnQgdHlwZSBJbmZlck11dGF0aW9uT3B0aW9uczxURm4gZXh0ZW5kcyBFZGVuTXV0YXRpb25Gbj4gPSAoXHJcbiAgVXNlTXV0YXRpb25PcHRpb25zPFxyXG4gICAgQXdhaXRlZDxSZXR1cm5UeXBlPFRGbj4+W1wiZGF0YVwiXSxcclxuICAgIEF3YWl0ZWQ8UmV0dXJuVHlwZTxURm4+PltcImVycm9yXCJdLFxyXG4gICAgSW5mZXJNdXRhdGlvblZhcmlhYmxlczxURm4+XHJcbiAgPlxyXG4pO1xyXG5cclxuZXhwb3J0IHR5cGUgSW5mZXJRdWVyeU9wdGlvbnM8XHJcbiAgVEZuIGV4dGVuZHMgRWRlblF1ZXJ5Rm4sIFxyXG4+ID0gKFxyXG4gIFVzZVF1ZXJ5T3B0aW9uczxcclxuICAgIEF3YWl0ZWQ8UmV0dXJuVHlwZTxURm4+PltcImRhdGFcIl0sXHJcbiAgICBBd2FpdGVkPFJldHVyblR5cGU8VEZuPj5bXCJlcnJvclwiXVxyXG4gID5cclxuKTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBlZGVuTXV0YXRpb25PcHRpb25zPFRGbiBleHRlbmRzIEVkZW5NdXRhdGlvbkZuPihcclxuICBmbjogVEZuLFxyXG4gIG9wdGlvbnM/OiBPbWl0PEluZmVyTXV0YXRpb25PcHRpb25zPFRGbj4sIFwibXV0YXRpb25GblwiPlxyXG4pOiBJbmZlck11dGF0aW9uT3B0aW9uczxURm4+IHtcclxuICByZXR1cm4gbXV0YXRpb25PcHRpb25zKHtcclxuICAgIG11dGF0aW9uRm46IGFzeW5jICh2YXJpYWJsZXMpID0+IHtcclxuICAgICAgY29uc3QgeyBib2R5LCAuLi5yZXN0IH0gPSB2YXJpYWJsZXM7XHJcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZm4oYm9keSwgcmVzdCk7XHJcbiAgICAgIGNvbnN0IHsgZGF0YSwgZXJyb3IgfSA9IHJlc3BvbnNlO1xyXG4gICAgICBpZiAoZXJyb3IpIHRocm93IGVycm9yO1xyXG4gICAgICByZXR1cm4gZGF0YTtcclxuICAgIH0sXHJcbiAgICAuLi5vcHRpb25zLFxyXG4gIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZWRlblF1ZXJ5T3B0aW9uczxcclxuICBURm4gZXh0ZW5kcyBFZGVuUXVlcnlGbixcclxuPihcclxuICBmbjogVEZuLFxyXG4gIG9wdGlvbnM6IE9taXQ8SW5mZXJRdWVyeU9wdGlvbnM8VEZuPiwgXCJxdWVyeUZuXCI+XHJcbik6IEluZmVyUXVlcnlPcHRpb25zPFRGbj4ge1xyXG4gIHJldHVybiBxdWVyeU9wdGlvbnMoe1xyXG4gICAgcXVlcnlGbjogYXN5bmMgKCkgPT4ge1xyXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZuKCk7XHJcbiAgICAgIGNvbnN0IHsgZGF0YSwgZXJyb3IgfSA9IHJlc3BvbnNlO1xyXG4gICAgICBpZiAoZXJyb3IpIHRocm93IGVycm9yO1xyXG4gICAgICByZXR1cm4gZGF0YTtcclxuICAgIH0sXHJcbiAgICAuLi5vcHRpb25zLFxyXG4gIH0pIGFzIEluZmVyUXVlcnlPcHRpb25zPFRGbj47XHJcbn0iCiAgXSwKICAibWFwcGluZ3MiOiAiO0FBQ0E7QUF1Q08sU0FBUyxtQkFBK0MsQ0FDN0QsSUFDQSxTQUMyQjtBQUFBLEVBQzNCLE9BQU8sZ0JBQWdCO0FBQUEsSUFDckIsWUFBWSxPQUFPLGNBQWM7QUFBQSxNQUMvQixRQUFRLFNBQVMsU0FBUztBQUFBLE1BQzFCLE1BQU0sV0FBVyxNQUFNLEdBQUcsTUFBTSxJQUFJO0FBQUEsTUFDcEMsUUFBUSxNQUFNLFVBQVU7QUFBQSxNQUN4QixJQUFJO0FBQUEsUUFBTyxNQUFNO0FBQUEsTUFDakIsT0FBTztBQUFBO0FBQUEsT0FFTjtBQUFBLEVBQ0wsQ0FBQztBQUFBO0FBR0ksU0FBUyxnQkFFZixDQUNDLElBQ0EsU0FDd0I7QUFBQSxFQUN4QixPQUFPLGFBQWE7QUFBQSxJQUNsQixTQUFTLFlBQVk7QUFBQSxNQUNuQixNQUFNLFdBQVcsTUFBTSxHQUFHO0FBQUEsTUFDMUIsUUFBUSxNQUFNLFVBQVU7QUFBQSxNQUN4QixJQUFJO0FBQUEsUUFBTyxNQUFNO0FBQUEsTUFDakIsT0FBTztBQUFBO0FBQUEsT0FFTjtBQUFBLEVBQ0wsQ0FBQztBQUFBOyIsCiAgImRlYnVnSWQiOiAiNTM2QjBCMUNFRkREQzA4NzY0NzU2RTIxNjQ3NTZFMjEiLAogICJuYW1lcyI6IFtdCn0=
35
+ //# debugId=1F341F776DA068AF64756E2164756E21
36
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjXFxsaWIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiaW1wb3J0IHR5cGUgeyBUcmVhdHkgfSBmcm9tIFwiQGVseXNpYWpzL2VkZW5cIjtcclxuaW1wb3J0IHtcclxuICBtdXRhdGlvbk9wdGlvbnMsXHJcbiAgcXVlcnlPcHRpb25zLFxyXG4gIHR5cGUgVXNlTXV0YXRpb25PcHRpb25zLFxyXG4gIHR5cGUgVXNlUXVlcnlPcHRpb25zLFxyXG59IGZyb20gXCJAdGFuc3RhY2svcmVhY3QtcXVlcnlcIjtcclxuXHJcbnR5cGUgQW55UmVzcG9uc2UgPSBSZWNvcmQ8bnVtYmVyLCB1bmtub3duPjtcclxuXHJcbmV4cG9ydCB0eXBlIFRyZWF0eU11dGF0aW9uRnVuY3Rpb248XHJcbiAgVEFyZ3MgPSB1bmtub3duLFxyXG4gIFRSZXNwb25zZSBleHRlbmRzIEFueVJlc3BvbnNlID0gQW55UmVzcG9uc2UsXHJcbj4gPSAoYXJnczogVEFyZ3MpID0+IFByb21pc2U8VHJlYXR5LlRyZWF0eVJlc3BvbnNlPFRSZXNwb25zZT4+O1xyXG5cclxuZXhwb3J0IHR5cGUgVHJlYXR5UXVlcnlGdW5jdGlvbjxUUmVzcG9uc2UgZXh0ZW5kcyBBbnlSZXNwb25zZSA9IEFueVJlc3BvbnNlPiA9XHJcbiAgKCkgPT4gUHJvbWlzZTxUcmVhdHkuVHJlYXR5UmVzcG9uc2U8VFJlc3BvbnNlPj47XHJcblxyXG5leHBvcnQgdHlwZSBJbmZlclRyZWF0eURhdGE8XHJcbiAgVCBleHRlbmRzIFRyZWF0eU11dGF0aW9uRnVuY3Rpb24gfCBUcmVhdHlRdWVyeUZ1bmN0aW9uLFxyXG4+ID0gQXdhaXRlZDxSZXR1cm5UeXBlPFQ+PltcImRhdGFcIl07XHJcblxyXG5leHBvcnQgdHlwZSBJbmZlclRyZWF0eUVycm9yPFxyXG4gIFQgZXh0ZW5kcyBUcmVhdHlNdXRhdGlvbkZ1bmN0aW9uIHwgVHJlYXR5UXVlcnlGdW5jdGlvbixcclxuPiA9IEF3YWl0ZWQ8UmV0dXJuVHlwZTxUPj5bXCJlcnJvclwiXTtcclxuXHJcbmV4cG9ydCB0eXBlIEluZmVyVHJlYXR5VmFyaWFibGVzPFQgZXh0ZW5kcyBUcmVhdHlNdXRhdGlvbkZ1bmN0aW9uPiA9XHJcbiAgUGFyYW1ldGVyczxUPiBleHRlbmRzIFtdID8gdm9pZCA6IFBhcmFtZXRlcnM8VD5bMF07XHJcblxyXG5leHBvcnQgdHlwZSBJbmZlclRyZWF0eU11dGF0aW9uT3B0aW9uczxUIGV4dGVuZHMgVHJlYXR5TXV0YXRpb25GdW5jdGlvbj4gPVxyXG4gIFVzZU11dGF0aW9uT3B0aW9uczxcclxuICAgIEluZmVyVHJlYXR5RGF0YTxUPixcclxuICAgIEluZmVyVHJlYXR5RXJyb3I8VD4sXHJcbiAgICBJbmZlclRyZWF0eVZhcmlhYmxlczxUPlxyXG4gID47XHJcblxyXG5leHBvcnQgdHlwZSBJbmZlclRyZWF0eVF1ZXJ5T3B0aW9uczxUIGV4dGVuZHMgVHJlYXR5UXVlcnlGdW5jdGlvbj4gPVxyXG4gIFVzZVF1ZXJ5T3B0aW9uczxJbmZlclRyZWF0eURhdGE8VD4sIEluZmVyVHJlYXR5RXJyb3I8VD4+O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRyZWF0eU11dGF0aW9uT3B0aW9uczxUIGV4dGVuZHMgVHJlYXR5TXV0YXRpb25GdW5jdGlvbj4oXHJcbiAgZm46IFQsXHJcbiAgb3B0aW9uczogT21pdDxJbmZlclRyZWF0eU11dGF0aW9uT3B0aW9uczxUPiwgXCJtdXRhdGlvbkZuXCI+LFxyXG4pOiBJbmZlclRyZWF0eU11dGF0aW9uT3B0aW9uczxUPiB7XHJcbiAgdHlwZSBURGF0YSA9IEluZmVyVHJlYXR5RGF0YTxUPjtcclxuICB0eXBlIFRFcnJvciA9IEluZmVyVHJlYXR5RXJyb3I8VD47XHJcbiAgdHlwZSBUVmFyaWFibGVzID0gSW5mZXJUcmVhdHlWYXJpYWJsZXM8VD47XHJcbiAgcmV0dXJuIG11dGF0aW9uT3B0aW9uczxURGF0YSwgVEVycm9yLCBUVmFyaWFibGVzPih7XHJcbiAgICAuLi5vcHRpb25zLFxyXG4gICAgbXV0YXRpb25GbjogYXN5bmMgKHZhcmlhYmxlcykgPT4ge1xyXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZuKHZhcmlhYmxlcyk7XHJcbiAgICAgIGNvbnN0IHsgZGF0YSwgZXJyb3IgfSA9IHJlc3BvbnNlO1xyXG4gICAgICBpZiAoZXJyb3IpIHRocm93IGVycm9yO1xyXG4gICAgICByZXR1cm4gZGF0YTtcclxuICAgIH0sXHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB0cmVhdHlRdWVyeU9wdGlvbnM8VCBleHRlbmRzIFRyZWF0eVF1ZXJ5RnVuY3Rpb24+KFxyXG4gIGZuOiBULFxyXG4gIG9wdGlvbnM6IE9taXQ8SW5mZXJUcmVhdHlRdWVyeU9wdGlvbnM8VD4sIFwicXVlcnlGblwiPixcclxuKTogSW5mZXJUcmVhdHlRdWVyeU9wdGlvbnM8VD4ge1xyXG4gIHR5cGUgVERhdGEgPSBJbmZlclRyZWF0eURhdGE8VD47XHJcbiAgdHlwZSBURXJyb3IgPSBJbmZlclRyZWF0eUVycm9yPFQ+O1xyXG4gIHJldHVybiBxdWVyeU9wdGlvbnM8VERhdGEsIFRFcnJvcj4oe1xyXG4gICAgLi4ub3B0aW9ucyxcclxuICAgIHF1ZXJ5Rm46IGFzeW5jICgpID0+IHtcclxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmbigpO1xyXG4gICAgICBjb25zdCB7IGRhdGEsIGVycm9yIH0gPSByZXNwb25zZTtcclxuICAgICAgaWYgKGVycm9yKSB0aHJvdyBlcnJvcjtcclxuICAgICAgcmV0dXJuIGRhdGE7XHJcbiAgICB9LFxyXG4gIH0pO1xyXG59XHJcbiIKICBdLAogICJtYXBwaW5ncyI6ICI7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQXNDTyxTQUFTLHFCQUF1RCxDQUNyRSxJQUNBLFNBQytCO0FBQUEsRUFJL0IsT0FBTyxnQkFBMkM7QUFBQSxPQUM3QztBQUFBLElBQ0gsWUFBWSxPQUFPLGNBQWM7QUFBQSxNQUMvQixNQUFNLFdBQVcsTUFBTSxHQUFHLFNBQVM7QUFBQSxNQUNuQyxRQUFRLE1BQU0sVUFBVTtBQUFBLE1BQ3hCLElBQUk7QUFBQSxRQUFPLE1BQU07QUFBQSxNQUNqQixPQUFPO0FBQUE7QUFBQSxFQUVYLENBQUM7QUFBQTtBQUdJLFNBQVMsa0JBQWlELENBQy9ELElBQ0EsU0FDNEI7QUFBQSxFQUc1QixPQUFPLGFBQTRCO0FBQUEsT0FDOUI7QUFBQSxJQUNILFNBQVMsWUFBWTtBQUFBLE1BQ25CLE1BQU0sV0FBVyxNQUFNLEdBQUc7QUFBQSxNQUMxQixRQUFRLE1BQU0sVUFBVTtBQUFBLE1BQ3hCLElBQUk7QUFBQSxRQUFPLE1BQU07QUFBQSxNQUNqQixPQUFPO0FBQUE7QUFBQSxFQUVYLENBQUM7QUFBQTsiLAogICJkZWJ1Z0lkIjogIjFGMzQxRjc3NkRBMDY4QUY2NDc1NkUyMTY0NzU2RTIxIiwKICAibmFtZXMiOiBbXQp9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "eden2query",
3
3
  "description": "Type-safe Eden Treaty to React Query helpers",
4
- "version": "0.2.0",
4
+ "version": "0.3.0",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist"
@@ -35,6 +35,7 @@
35
35
  ],
36
36
  "scripts": {
37
37
  "build": "bunup",
38
+ "format": "prettier --write .",
38
39
  "prepublishOnly": "bun run build"
39
40
  },
40
41
  "peerDependencies": {
@@ -45,6 +46,7 @@
45
46
  "devDependencies": {
46
47
  "@types/bun": "latest",
47
48
  "bunup": "^0.16.22",
48
- "elysia": "^1.4.22"
49
+ "elysia": "^1.4.22",
50
+ "prettier": "^3.4.2"
49
51
  }
50
52
  }