@zenstackhq/tanstack-query 1.0.0-beta.5 → 1.0.0-beta.6
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/generator.js +4 -4
- package/generator.js.map +1 -1
- package/package.json +3 -3
- package/res/react/helper.ts +33 -17
- package/res/shared.ts +16 -2
- package/res/svelte/helper.ts +32 -17
package/generator.js
CHANGED
|
@@ -71,7 +71,7 @@ function generateQueryHook(target, sf, model, operation, returnArray, optionalIn
|
|
|
71
71
|
});
|
|
72
72
|
func.addStatements([
|
|
73
73
|
makeGetContext(target),
|
|
74
|
-
`return query<${returnType}>('${model}', \`\${endpoint}/${(0, lower_case_first_1.lowerCaseFirst)(model)}/${operation}\`, args, options);`,
|
|
74
|
+
`return query<${returnType}>('${model}', \`\${endpoint}/${(0, lower_case_first_1.lowerCaseFirst)(model)}/${operation}\`, args, options, fetch);`,
|
|
75
75
|
]);
|
|
76
76
|
}
|
|
77
77
|
function generateMutationHook(target, sf, model, operation, httpVerb, overrideReturnType) {
|
|
@@ -104,7 +104,7 @@ function generateMutationHook(target, sf, model, operation, httpVerb, overrideRe
|
|
|
104
104
|
{
|
|
105
105
|
name: `_mutation`,
|
|
106
106
|
initializer: `
|
|
107
|
-
${httpVerb}Mutation<${argsType}, ${overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : model}>('${model}', \`\${endpoint}/${(0, lower_case_first_1.lowerCaseFirst)(model)}/${operation}\`, options, invalidateQueries)
|
|
107
|
+
${httpVerb}Mutation<${argsType}, ${overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : model}>('${model}', \`\${endpoint}/${(0, lower_case_first_1.lowerCaseFirst)(model)}/${operation}\`, options, fetch, invalidateQueries)
|
|
108
108
|
`,
|
|
109
109
|
},
|
|
110
110
|
],
|
|
@@ -325,9 +325,9 @@ function generateHelper(target, project, outDir, useSuperJson) {
|
|
|
325
325
|
function makeGetContext(target) {
|
|
326
326
|
switch (target) {
|
|
327
327
|
case 'react':
|
|
328
|
-
return 'const { endpoint } = useContext(RequestHandlerContext);';
|
|
328
|
+
return 'const { endpoint, fetch } = useContext(RequestHandlerContext);';
|
|
329
329
|
case 'svelte':
|
|
330
|
-
return `const { endpoint } = getContext<RequestHandlerContext>(SvelteQueryContextKey);`;
|
|
330
|
+
return `const { endpoint, fetch } = getContext<RequestHandlerContext>(SvelteQueryContextKey);`;
|
|
331
331
|
default:
|
|
332
332
|
throw new sdk_1.PluginError(_1.name, `Unsupported target "${target}"`);
|
|
333
333
|
}
|
package/generator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zenstackhq/tanstack-query",
|
|
3
3
|
"displayName": "ZenStack plugin for generating tanstack-query hooks",
|
|
4
|
-
"version": "1.0.0-beta.
|
|
4
|
+
"version": "1.0.0-beta.6",
|
|
5
5
|
"description": "ZenStack plugin for generating tanstack-query hooks",
|
|
6
6
|
"main": "index.js",
|
|
7
7
|
"repository": {
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"superjson": "^1.11.0",
|
|
24
24
|
"ts-morph": "^16.0.0",
|
|
25
25
|
"upper-case-first": "^2.0.2",
|
|
26
|
-
"@zenstackhq/sdk": "1.0.0-beta.
|
|
26
|
+
"@zenstackhq/sdk": "1.0.0-beta.6"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@tanstack/react-query": "^4.29.7",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"swr": "^2.0.3",
|
|
42
42
|
"ts-jest": "^29.0.5",
|
|
43
43
|
"typescript": "^4.9.4",
|
|
44
|
-
"@zenstackhq/testtools": "1.0.0-beta.
|
|
44
|
+
"@zenstackhq/testtools": "1.0.0-beta.6"
|
|
45
45
|
},
|
|
46
46
|
"scripts": {
|
|
47
47
|
"clean": "rimraf dist",
|
package/res/react/helper.ts
CHANGED
|
@@ -16,6 +16,7 @@ import { createContext } from 'react';
|
|
|
16
16
|
*/
|
|
17
17
|
export const RequestHandlerContext = createContext<RequestHandlerContext>({
|
|
18
18
|
endpoint: DEFAULT_QUERY_ENDPOINT,
|
|
19
|
+
fetch: undefined,
|
|
19
20
|
});
|
|
20
21
|
|
|
21
22
|
/**
|
|
@@ -33,11 +34,11 @@ export const Provider = RequestHandlerContext.Provider;
|
|
|
33
34
|
* @returns useQuery hook
|
|
34
35
|
*/
|
|
35
36
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
36
|
-
export function query<R>(model: string, url: string, args?: unknown, options?: UseQueryOptions<R
|
|
37
|
+
export function query<R>(model: string, url: string, args?: unknown, options?: UseQueryOptions<R>, fetch?: FetchFn) {
|
|
37
38
|
const reqUrl = makeUrl(url, args);
|
|
38
39
|
return useQuery<R>({
|
|
39
40
|
queryKey: [QUERY_KEY_PREFIX + model, url, args],
|
|
40
|
-
queryFn: () => fetcher<R>(reqUrl),
|
|
41
|
+
queryFn: () => fetcher<R>(reqUrl, undefined, fetch),
|
|
41
42
|
...options,
|
|
42
43
|
});
|
|
43
44
|
}
|
|
@@ -55,17 +56,22 @@ export function postMutation<T, R = any>(
|
|
|
55
56
|
model: string,
|
|
56
57
|
url: string,
|
|
57
58
|
options?: Omit<UseMutationOptions<R, unknown, T>, 'mutationFn'>,
|
|
59
|
+
fetch?: FetchFn,
|
|
58
60
|
invalidateQueries = true
|
|
59
61
|
) {
|
|
60
62
|
const queryClient = useQueryClient();
|
|
61
63
|
const mutationFn = (data: any) =>
|
|
62
|
-
fetcher<R>(
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
fetcher<R>(
|
|
65
|
+
url,
|
|
66
|
+
{
|
|
67
|
+
method: 'POST',
|
|
68
|
+
headers: {
|
|
69
|
+
'content-type': 'application/json',
|
|
70
|
+
},
|
|
71
|
+
body: marshal(data),
|
|
66
72
|
},
|
|
67
|
-
|
|
68
|
-
|
|
73
|
+
fetch
|
|
74
|
+
);
|
|
69
75
|
|
|
70
76
|
const finalOptions = mergeOptions<T, R>(model, options, invalidateQueries, mutationFn, queryClient);
|
|
71
77
|
const mutation = useMutation<R, unknown, T>(finalOptions);
|
|
@@ -85,17 +91,22 @@ export function putMutation<T, R = any>(
|
|
|
85
91
|
model: string,
|
|
86
92
|
url: string,
|
|
87
93
|
options?: Omit<UseMutationOptions<R, unknown, T>, 'mutationFn'>,
|
|
94
|
+
fetch?: FetchFn,
|
|
88
95
|
invalidateQueries = true
|
|
89
96
|
) {
|
|
90
97
|
const queryClient = useQueryClient();
|
|
91
98
|
const mutationFn = (data: any) =>
|
|
92
|
-
fetcher<R>(
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
99
|
+
fetcher<R>(
|
|
100
|
+
url,
|
|
101
|
+
{
|
|
102
|
+
method: 'PUT',
|
|
103
|
+
headers: {
|
|
104
|
+
'content-type': 'application/json',
|
|
105
|
+
},
|
|
106
|
+
body: marshal(data),
|
|
96
107
|
},
|
|
97
|
-
|
|
98
|
-
|
|
108
|
+
fetch
|
|
109
|
+
);
|
|
99
110
|
|
|
100
111
|
const finalOptions = mergeOptions<T, R>(model, options, invalidateQueries, mutationFn, queryClient);
|
|
101
112
|
const mutation = useMutation<R, unknown, T>(finalOptions);
|
|
@@ -115,13 +126,18 @@ export function deleteMutation<T, R = any>(
|
|
|
115
126
|
model: string,
|
|
116
127
|
url: string,
|
|
117
128
|
options?: Omit<UseMutationOptions<R, unknown, T>, 'mutationFn'>,
|
|
129
|
+
fetch?: FetchFn,
|
|
118
130
|
invalidateQueries = true
|
|
119
131
|
) {
|
|
120
132
|
const queryClient = useQueryClient();
|
|
121
133
|
const mutationFn = (data: any) =>
|
|
122
|
-
fetcher<R>(
|
|
123
|
-
|
|
124
|
-
|
|
134
|
+
fetcher<R>(
|
|
135
|
+
makeUrl(url, data),
|
|
136
|
+
{
|
|
137
|
+
method: 'DELETE',
|
|
138
|
+
},
|
|
139
|
+
fetch
|
|
140
|
+
);
|
|
125
141
|
|
|
126
142
|
const finalOptions = mergeOptions<T, R>(model, options, invalidateQueries, mutationFn, queryClient);
|
|
127
143
|
const mutation = useMutation<R, unknown, T>(finalOptions);
|
package/res/shared.ts
CHANGED
|
@@ -8,15 +8,29 @@ export const DEFAULT_QUERY_ENDPOINT = '/api/model';
|
|
|
8
8
|
*/
|
|
9
9
|
export const QUERY_KEY_PREFIX = 'zenstack:';
|
|
10
10
|
|
|
11
|
+
/**
|
|
12
|
+
* Function signature for `fetch`.
|
|
13
|
+
*/
|
|
14
|
+
export type FetchFn = (url: string, options?: RequestInit) => Promise<Response>;
|
|
15
|
+
|
|
11
16
|
/**
|
|
12
17
|
* Context type for configuring the hooks.
|
|
13
18
|
*/
|
|
14
19
|
export type RequestHandlerContext = {
|
|
20
|
+
/**
|
|
21
|
+
* The endpoint to use for the queries.
|
|
22
|
+
*/
|
|
15
23
|
endpoint: string;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* A custom fetch function for sending the HTTP requests.
|
|
27
|
+
*/
|
|
28
|
+
fetch?: FetchFn;
|
|
16
29
|
};
|
|
17
30
|
|
|
18
|
-
async function fetcher<R>(url: string, options?: RequestInit) {
|
|
19
|
-
const
|
|
31
|
+
async function fetcher<R>(url: string, options?: RequestInit, fetch?: FetchFn) {
|
|
32
|
+
const _fetch = fetch ?? window.fetch;
|
|
33
|
+
const res = await _fetch(url, options);
|
|
20
34
|
if (!res.ok) {
|
|
21
35
|
const error: Error & { info?: unknown; status?: number } = new Error(
|
|
22
36
|
'An error occurred while fetching the data.'
|
package/res/svelte/helper.ts
CHANGED
|
@@ -25,11 +25,11 @@ export const SvelteQueryContextKey = 'zenstack-svelte-query-context';
|
|
|
25
25
|
* @returns useQuery hook
|
|
26
26
|
*/
|
|
27
27
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
28
|
-
export function query<R>(model: string, url: string, args?: unknown, options?: QueryOptions<R
|
|
28
|
+
export function query<R>(model: string, url: string, args?: unknown, options?: QueryOptions<R>, fetch?: FetchFn) {
|
|
29
29
|
const reqUrl = makeUrl(url, args);
|
|
30
30
|
return createQuery<R>({
|
|
31
31
|
queryKey: [QUERY_KEY_PREFIX + model, url, args],
|
|
32
|
-
queryFn: () => fetcher<R>(reqUrl),
|
|
32
|
+
queryFn: () => fetcher<R>(reqUrl, undefined, fetch),
|
|
33
33
|
...options,
|
|
34
34
|
});
|
|
35
35
|
}
|
|
@@ -47,17 +47,22 @@ export function postMutation<T, R = any>(
|
|
|
47
47
|
model: string,
|
|
48
48
|
url: string,
|
|
49
49
|
options?: Omit<MutationOptions<R, unknown, T>, 'mutationFn'>,
|
|
50
|
+
fetch?: FetchFn,
|
|
50
51
|
invalidateQueries = true
|
|
51
52
|
) {
|
|
52
53
|
const queryClient = useQueryClient();
|
|
53
54
|
const mutationFn = (data: any) =>
|
|
54
|
-
fetcher<R>(
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
55
|
+
fetcher<R>(
|
|
56
|
+
url,
|
|
57
|
+
{
|
|
58
|
+
method: 'POST',
|
|
59
|
+
headers: {
|
|
60
|
+
'content-type': 'application/json',
|
|
61
|
+
},
|
|
62
|
+
body: marshal(data),
|
|
58
63
|
},
|
|
59
|
-
|
|
60
|
-
|
|
64
|
+
fetch
|
|
65
|
+
);
|
|
61
66
|
|
|
62
67
|
const finalOptions = mergeOptions<T, R>(model, options, invalidateQueries, mutationFn, queryClient);
|
|
63
68
|
const mutation = createMutation<R, unknown, T>(finalOptions);
|
|
@@ -77,17 +82,22 @@ export function putMutation<T, R = any>(
|
|
|
77
82
|
model: string,
|
|
78
83
|
url: string,
|
|
79
84
|
options?: Omit<MutationOptions<R, unknown, T>, 'mutationFn'>,
|
|
85
|
+
fetch?: FetchFn,
|
|
80
86
|
invalidateQueries = true
|
|
81
87
|
) {
|
|
82
88
|
const queryClient = useQueryClient();
|
|
83
89
|
const mutationFn = (data: any) =>
|
|
84
|
-
fetcher<R>(
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
90
|
+
fetcher<R>(
|
|
91
|
+
url,
|
|
92
|
+
{
|
|
93
|
+
method: 'PUT',
|
|
94
|
+
headers: {
|
|
95
|
+
'content-type': 'application/json',
|
|
96
|
+
},
|
|
97
|
+
body: marshal(data),
|
|
88
98
|
},
|
|
89
|
-
|
|
90
|
-
|
|
99
|
+
fetch
|
|
100
|
+
);
|
|
91
101
|
|
|
92
102
|
const finalOptions = mergeOptions<T, R>(model, options, invalidateQueries, mutationFn, queryClient);
|
|
93
103
|
const mutation = createMutation<R, unknown, T>(finalOptions);
|
|
@@ -107,13 +117,18 @@ export function deleteMutation<T, R = any>(
|
|
|
107
117
|
model: string,
|
|
108
118
|
url: string,
|
|
109
119
|
options?: Omit<MutationOptions<R, unknown, T>, 'mutationFn'>,
|
|
120
|
+
fetch?: FetchFn,
|
|
110
121
|
invalidateQueries = true
|
|
111
122
|
) {
|
|
112
123
|
const queryClient = useQueryClient();
|
|
113
124
|
const mutationFn = (data: any) =>
|
|
114
|
-
fetcher<R>(
|
|
115
|
-
|
|
116
|
-
|
|
125
|
+
fetcher<R>(
|
|
126
|
+
makeUrl(url, data),
|
|
127
|
+
{
|
|
128
|
+
method: 'DELETE',
|
|
129
|
+
},
|
|
130
|
+
fetch
|
|
131
|
+
);
|
|
117
132
|
|
|
118
133
|
const finalOptions = mergeOptions<T, R>(model, options, invalidateQueries, mutationFn, queryClient);
|
|
119
134
|
const mutation = createMutation<R, unknown, T>(finalOptions);
|