@zenstackhq/tanstack-query 1.0.0-beta.8 → 1.0.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/generator.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { DMMF } from '@prisma/generator-helper';
1
+ import type { DMMF } from '@prisma/generator-helper';
2
2
  import { PluginOptions } from '@zenstackhq/sdk';
3
3
  import { Model } from '@zenstackhq/sdk/ast';
4
4
  export declare function generate(model: Model, options: PluginOptions, dmmf: DMMF.Document): Promise<string[]>;
package/generator.js CHANGED
@@ -15,9 +15,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.generate = void 0;
16
16
  const sdk_1 = require("@zenstackhq/sdk");
17
17
  const change_case_1 = require("change-case");
18
- const fs_1 = __importDefault(require("fs"));
19
18
  const lower_case_first_1 = require("lower-case-first");
20
19
  const path_1 = __importDefault(require("path"));
20
+ const semver_1 = __importDefault(require("semver"));
21
21
  const ts_morph_1 = require("ts-morph");
22
22
  const upper_case_first_1 = require("upper-case-first");
23
23
  const _1 = require(".");
@@ -33,8 +33,7 @@ function generate(model, options, dmmf) {
33
33
  if (!supportedTargets.includes(target)) {
34
34
  throw new sdk_1.PluginError(options.name, `Unsupported target "${target}", supported values: ${supportedTargets.join(', ')}`);
35
35
  }
36
- generateIndex(project, outDir, models);
37
- generateHelper(target, project, outDir, options.useSuperJson === true);
36
+ generateIndex(project, outDir, models, target);
38
37
  models.forEach((dataModel) => {
39
38
  const mapping = dmmf.mappings.modelOperations.find((op) => op.model === dataModel.name);
40
39
  if (!mapping) {
@@ -48,14 +47,14 @@ function generate(model, options, dmmf) {
48
47
  });
49
48
  }
50
49
  exports.generate = generate;
51
- function generateQueryHook(target, sf, model, operation, returnArray, optionalInput, overrideReturnType, overrideInputType, overrideTypeParameters) {
50
+ function generateQueryHook(target, sf, model, operation, returnArray, optionalInput, overrideReturnType, overrideInputType, overrideTypeParameters, infinite = false) {
52
51
  const capOperation = (0, upper_case_first_1.upperCaseFirst)(operation);
53
52
  const argsType = overrideInputType !== null && overrideInputType !== void 0 ? overrideInputType : `Prisma.${model}${capOperation}Args`;
54
53
  const inputType = `Prisma.SelectSubset<T, ${argsType}>`;
55
54
  const returnType = overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : (returnArray ? `Array<Prisma.${model}GetPayload<T>>` : `Prisma.${model}GetPayload<T>`);
56
- const optionsType = makeQueryOptions(target, returnType);
55
+ const optionsType = makeQueryOptions(target, returnType, infinite);
57
56
  const func = sf.addFunction({
58
- name: `use${capOperation}${model}`,
57
+ name: `use${infinite ? 'Infinite' : ''}${capOperation}${model}`,
59
58
  typeParameters: overrideTypeParameters !== null && overrideTypeParameters !== void 0 ? overrideTypeParameters : [`T extends ${argsType}`],
60
59
  parameters: [
61
60
  {
@@ -71,15 +70,18 @@ function generateQueryHook(target, sf, model, operation, returnArray, optionalIn
71
70
  });
72
71
  func.addStatements([
73
72
  makeGetContext(target),
74
- `return query<${returnType}>('${model}', \`\${endpoint}/${(0, lower_case_first_1.lowerCaseFirst)(model)}/${operation}\`, args, options, fetch);`,
73
+ `return ${infinite ? 'infiniteQuery' : 'query'}<${returnType}>('${model}', \`\${endpoint}/${(0, lower_case_first_1.lowerCaseFirst)(model)}/${operation}\`, args, options, fetch);`,
75
74
  ]);
76
75
  }
77
- function generateMutationHook(target, sf, model, operation, httpVerb, overrideReturnType) {
76
+ function generateMutationHook(target, sf, model, operation, httpVerb, checkReadBack, overrideReturnType) {
78
77
  const capOperation = (0, upper_case_first_1.upperCaseFirst)(operation);
79
78
  const argsType = `Prisma.${model}${capOperation}Args`;
80
79
  const inputType = `Prisma.SelectSubset<T, ${argsType}>`;
81
- const returnType = overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : `Prisma.CheckSelect<T, ${model}, Prisma.${model}GetPayload<T>>`;
82
- const nonGenericOptionsType = `Omit<${makeMutationOptions(target, overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : model, argsType)}, 'mutationFn'>`;
80
+ let returnType = overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : `CheckSelect<T, ${model}, Prisma.${model}GetPayload<T>>`;
81
+ if (checkReadBack) {
82
+ returnType = `(${returnType} | undefined )`;
83
+ }
84
+ const nonGenericOptionsType = `Omit<${makeMutationOptions(target, checkReadBack ? `(${overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : model} | undefined)` : overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : model, argsType)}, 'mutationFn'>`;
83
85
  const optionsType = `Omit<${makeMutationOptions(target, returnType, inputType)}, 'mutationFn'>`;
84
86
  const func = sf.addFunction({
85
87
  name: `use${capOperation}${model}`,
@@ -104,7 +106,7 @@ function generateMutationHook(target, sf, model, operation, httpVerb, overrideRe
104
106
  {
105
107
  name: `_mutation`,
106
108
  initializer: `
107
- ${httpVerb}Mutation<${argsType}, ${overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : model}>('${model}', \`\${endpoint}/${(0, lower_case_first_1.lowerCaseFirst)(model)}/${operation}\`, options, fetch, invalidateQueries)
109
+ ${httpVerb}Mutation<${argsType}, ${overrideReturnType !== null && overrideReturnType !== void 0 ? overrideReturnType : model}, ${checkReadBack}>('${model}', \`\${endpoint}/${(0, lower_case_first_1.lowerCaseFirst)(model)}/${operation}\`, options, fetch, invalidateQueries, ${checkReadBack})
108
110
  `,
109
111
  },
110
112
  ],
@@ -164,6 +166,8 @@ function generateMutationHook(target, sf, model, operation, httpVerb, overrideRe
164
166
  func.addStatements('return mutation;');
165
167
  }
166
168
  function generateModelHooks(target, project, outDir, model, mapping) {
169
+ const modelNameCap = (0, upper_case_first_1.upperCaseFirst)(model.name);
170
+ const prismaVersion = (0, sdk_1.getPrismaVersion)();
167
171
  const fileName = (0, change_case_1.paramCase)(model.name);
168
172
  const sf = project.createSourceFile(path_1.default.join(outDir, `${fileName}.ts`), undefined, { overwrite: true });
169
173
  sf.addStatements('/* eslint-disable */');
@@ -177,15 +181,18 @@ function generateModelHooks(target, project, outDir, model, mapping) {
177
181
  // create is somehow named "createOne" in the DMMF
178
182
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
179
183
  if (mapping.create || mapping.createOne) {
180
- generateMutationHook(target, sf, model.name, 'create', 'post');
184
+ generateMutationHook(target, sf, model.name, 'create', 'post', true);
181
185
  }
182
186
  // createMany
183
187
  if (mapping.createMany) {
184
- generateMutationHook(target, sf, model.name, 'createMany', 'post', 'Prisma.BatchPayload');
188
+ generateMutationHook(target, sf, model.name, 'createMany', 'post', false, 'Prisma.BatchPayload');
185
189
  }
186
190
  // findMany
187
191
  if (mapping.findMany) {
192
+ // regular findMany
188
193
  generateQueryHook(target, sf, model.name, 'findMany', true, true);
194
+ // infinite findMany
195
+ generateQueryHook(target, sf, model.name, 'findMany', true, true, undefined, undefined, undefined, true);
189
196
  }
190
197
  // findUnique
191
198
  if (mapping.findUnique) {
@@ -199,40 +206,45 @@ function generateModelHooks(target, project, outDir, model, mapping) {
199
206
  // update is somehow named "updateOne" in the DMMF
200
207
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
201
208
  if (mapping.update || mapping.updateOne) {
202
- generateMutationHook(target, sf, model.name, 'update', 'put');
209
+ generateMutationHook(target, sf, model.name, 'update', 'put', true);
203
210
  }
204
211
  // updateMany
205
212
  if (mapping.updateMany) {
206
- generateMutationHook(target, sf, model.name, 'updateMany', 'put', 'Prisma.BatchPayload');
213
+ generateMutationHook(target, sf, model.name, 'updateMany', 'put', false, 'Prisma.BatchPayload');
207
214
  }
208
215
  // upsert
209
216
  // upsert is somehow named "upsertOne" in the DMMF
210
217
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
211
218
  if (mapping.upsert || mapping.upsertOne) {
212
- generateMutationHook(target, sf, model.name, 'upsert', 'post');
219
+ generateMutationHook(target, sf, model.name, 'upsert', 'post', true);
213
220
  }
214
221
  // del
215
222
  // delete is somehow named "deleteOne" in the DMMF
216
223
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
217
224
  if (mapping.delete || mapping.deleteOne) {
218
- generateMutationHook(target, sf, model.name, 'delete', 'delete');
225
+ generateMutationHook(target, sf, model.name, 'delete', 'delete', true);
219
226
  }
220
227
  // deleteMany
221
228
  if (mapping.deleteMany) {
222
- generateMutationHook(target, sf, model.name, 'deleteMany', 'delete', 'Prisma.BatchPayload');
229
+ generateMutationHook(target, sf, model.name, 'deleteMany', 'delete', false, 'Prisma.BatchPayload');
223
230
  }
224
231
  // aggregate
225
232
  if (mapping.aggregate) {
226
- generateQueryHook(target, sf, model.name, 'aggregate', false, false, `Prisma.Get${model.name}AggregateType<T>`);
233
+ generateQueryHook(target, sf, modelNameCap, 'aggregate', false, false, `Prisma.Get${modelNameCap}AggregateType<T>`);
227
234
  }
228
235
  // groupBy
229
236
  if (mapping.groupBy) {
237
+ let useName = modelNameCap;
238
+ // prisma 4 and 5 different typing for "groupBy" and we have to deal with it separately
239
+ if (prismaVersion && semver_1.default.gte(prismaVersion, '5.0.0')) {
240
+ useName = model.name;
241
+ }
230
242
  const typeParameters = [
231
- `T extends Prisma.${model.name}GroupByArgs`,
243
+ `T extends Prisma.${useName}GroupByArgs`,
232
244
  `HasSelectOrTake extends Prisma.Or<Prisma.Extends<'skip', Prisma.Keys<T>>, Prisma.Extends<'take', Prisma.Keys<T>>>`,
233
- `OrderByArg extends Prisma.True extends HasSelectOrTake ? { orderBy: Prisma.${model.name}GroupByArgs['orderBy'] }: { orderBy?: Prisma.${model.name}GroupByArgs['orderBy'] },`,
245
+ `OrderByArg extends Prisma.True extends HasSelectOrTake ? { orderBy: Prisma.${useName}GroupByArgs['orderBy'] }: { orderBy?: Prisma.${useName}GroupByArgs['orderBy'] },`,
234
246
  `OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>`,
235
- `ByFields extends Prisma.TupleToUnion<T['by']>`,
247
+ `ByFields extends Prisma.MaybeTupleToUnion<T['by']>`,
236
248
  `ByValid extends Prisma.Has<ByFields, OrderFields>`,
237
249
  `HavingFields extends Prisma.GetHavingFields<T['having']>`,
238
250
  `HavingValid extends Prisma.Has<ByFields, HavingFields>`,
@@ -281,46 +293,33 @@ function generateModelHooks(target, project, outDir, model, mapping) {
281
293
  }[OrderFields]`,
282
294
  ];
283
295
  const returnType = `{} extends InputErrors ?
284
- Array<Prisma.PickArray<Prisma.${model.name}GroupByOutputType, T['by']> &
296
+ Array<PickEnumerable<Prisma.${modelNameCap}GroupByOutputType, T['by']> &
285
297
  {
286
- [P in ((keyof T) & (keyof Prisma.${model.name}GroupByOutputType))]: P extends '_count'
298
+ [P in ((keyof T) & (keyof Prisma.${modelNameCap}GroupByOutputType))]: P extends '_count'
287
299
  ? T[P] extends boolean
288
300
  ? number
289
- : Prisma.GetScalarType<T[P], Prisma.${model.name}GroupByOutputType[P]>
290
- : Prisma.GetScalarType<T[P], Prisma.${model.name}GroupByOutputType[P]>
301
+ : Prisma.GetScalarType<T[P], Prisma.${modelNameCap}GroupByOutputType[P]>
302
+ : Prisma.GetScalarType<T[P], Prisma.${modelNameCap}GroupByOutputType[P]>
291
303
  }
292
304
  > : InputErrors`;
293
- generateQueryHook(target, sf, model.name, 'groupBy', false, false, returnType, `Prisma.SubsetIntersection<T, Prisma.${model.name}GroupByArgs, OrderByArg> & InputErrors`, typeParameters);
305
+ generateQueryHook(target, sf, model.name, 'groupBy', false, false, returnType, `Prisma.SubsetIntersection<T, Prisma.${useName}GroupByArgs, OrderByArg> & InputErrors`, typeParameters);
294
306
  }
295
307
  // somehow dmmf doesn't contain "count" operation, so we unconditionally add it here
296
308
  {
297
- generateQueryHook(target, sf, model.name, 'count', false, true, `T extends { select: any; } ? T['select'] extends true ? number : Prisma.GetScalarType<T['select'], Prisma.${model.name}CountAggregateOutputType> : number`);
309
+ generateQueryHook(target, sf, model.name, 'count', false, true, `T extends { select: any; } ? T['select'] extends true ? number : Prisma.GetScalarType<T['select'], Prisma.${modelNameCap}CountAggregateOutputType> : number`);
298
310
  }
299
311
  }
300
- function generateIndex(project, outDir, models) {
312
+ function generateIndex(project, outDir, models, target) {
301
313
  const sf = project.createSourceFile(path_1.default.join(outDir, 'index.ts'), undefined, { overwrite: true });
302
314
  sf.addStatements(models.map((d) => `export * from './${(0, change_case_1.paramCase)(d.name)}';`));
303
- sf.addStatements(`export * from './_helper';`);
304
- }
305
- function generateHelper(target, project, outDir, useSuperJson) {
306
- let srcFile;
307
315
  switch (target) {
308
316
  case 'react':
309
- srcFile = path_1.default.join(__dirname, './res/react/helper.ts');
317
+ sf.addStatements(`export { Provider } from '@zenstackhq/tanstack-query/runtime/react';`);
310
318
  break;
311
319
  case 'svelte':
312
- srcFile = path_1.default.join(__dirname, './res/svelte/helper.ts');
320
+ sf.addStatements(`export { SvelteQueryContextKey } from '@zenstackhq/tanstack-query/runtime/svelte';`);
313
321
  break;
314
- default:
315
- throw new sdk_1.PluginError(_1.name, `Unsupported target: ${target}`);
316
322
  }
317
- // merge content of `shared.ts`, `helper.ts` and `marshal-?.ts`
318
- const sharedContent = fs_1.default.readFileSync(path_1.default.join(__dirname, './res/shared.ts'), 'utf-8');
319
- const helperContent = fs_1.default.readFileSync(srcFile, 'utf-8');
320
- const marshalContent = fs_1.default.readFileSync(path_1.default.join(__dirname, useSuperJson ? './res/marshal-superjson.ts' : './res/marshal-json.ts'), 'utf-8');
321
- project.createSourceFile(path_1.default.join(outDir, '_helper.ts'), `${sharedContent}\n${helperContent}\n${marshalContent}`, {
322
- overwrite: true,
323
- });
324
323
  }
325
324
  function makeGetContext(target) {
326
325
  switch (target) {
@@ -333,33 +332,36 @@ function makeGetContext(target) {
333
332
  }
334
333
  }
335
334
  function makeBaseImports(target) {
336
- const shared = [`import { query, postMutation, putMutation, deleteMutation } from './_helper';`];
335
+ const shared = [
336
+ `import { query, infiniteQuery, postMutation, putMutation, deleteMutation } from '@zenstackhq/tanstack-query/runtime/${target}';`,
337
+ `import type { PickEnumerable, CheckSelect } from '@zenstackhq/tanstack-query/runtime';`,
338
+ ];
337
339
  switch (target) {
338
340
  case 'react':
339
341
  return [
340
342
  `import { useContext } from 'react';`,
341
- `import type { UseMutationOptions, UseQueryOptions } from '@tanstack/react-query';`,
342
- `import { RequestHandlerContext } from './_helper';`,
343
+ `import type { UseMutationOptions, UseQueryOptions, UseInfiniteQueryOptions } from '@tanstack/react-query';`,
344
+ `import { RequestHandlerContext } from '@zenstackhq/tanstack-query/runtime/${target}';`,
343
345
  ...shared,
344
346
  ];
345
347
  case 'svelte':
346
348
  return [
347
349
  `import { getContext } from 'svelte';`,
348
350
  `import { derived } from 'svelte/store';`,
349
- `import type { MutationOptions, QueryOptions } from '@tanstack/svelte-query';`,
350
- `import { SvelteQueryContextKey, type RequestHandlerContext } from './_helper';`,
351
+ `import type { MutationOptions, QueryOptions, CreateInfiniteQueryOptions } from '@tanstack/svelte-query';`,
352
+ `import { SvelteQueryContextKey, type RequestHandlerContext } from '@zenstackhq/tanstack-query/runtime/${target}';`,
351
353
  ...shared,
352
354
  ];
353
355
  default:
354
356
  throw new sdk_1.PluginError(_1.name, `Unsupported target: ${target}`);
355
357
  }
356
358
  }
357
- function makeQueryOptions(target, returnType) {
359
+ function makeQueryOptions(target, returnType, infinite) {
358
360
  switch (target) {
359
361
  case 'react':
360
- return `UseQueryOptions<${returnType}>`;
362
+ return `Use${infinite ? 'Infinite' : ''}QueryOptions<${returnType}>`;
361
363
  case 'svelte':
362
- return `QueryOptions<${returnType}>`;
364
+ return `${infinite ? 'CreateInfinite' : ''}QueryOptions<${returnType}>`;
363
365
  default:
364
366
  throw new sdk_1.PluginError(_1.name, `Unsupported target: ${target}`);
365
367
  }
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,9 +1,35 @@
1
1
  {
2
2
  "name": "@zenstackhq/tanstack-query",
3
3
  "displayName": "ZenStack plugin for generating tanstack-query hooks",
4
- "version": "1.0.0-beta.8",
4
+ "version": "1.0.0",
5
5
  "description": "ZenStack plugin for generating tanstack-query hooks",
6
6
  "main": "index.js",
7
+ "exports": {
8
+ ".": {
9
+ "default": "./index.js"
10
+ },
11
+ "./package.json": {
12
+ "default": "./package.json"
13
+ },
14
+ "./runtime": {
15
+ "import": "./runtime/index.mjs",
16
+ "require": "./runtime/index.js",
17
+ "default": "./runtime/index.js",
18
+ "types": "./runtime/index.d.ts"
19
+ },
20
+ "./runtime/react": {
21
+ "import": "./runtime/react.mjs",
22
+ "require": "./runtime/react.js",
23
+ "default": "./runtime/react.js",
24
+ "types": "./runtime/react.d.ts"
25
+ },
26
+ "./runtime/svelte": {
27
+ "import": "./runtime/svelte.mjs",
28
+ "require": "./runtime/svelte.js",
29
+ "default": "./runtime/svelte.js",
30
+ "types": "./runtime/svelte.d.ts"
31
+ }
32
+ },
7
33
  "repository": {
8
34
  "type": "git",
9
35
  "url": "https://github.com/zenstackhq/zenstack"
@@ -16,39 +42,40 @@
16
42
  "author": "ZenStack Team",
17
43
  "license": "MIT",
18
44
  "dependencies": {
19
- "@prisma/generator-helper": "4.10.0",
45
+ "@prisma/generator-helper": "^5.0.0",
20
46
  "change-case": "^4.1.2",
21
47
  "decimal.js": "^10.4.2",
22
48
  "lower-case-first": "^2.0.2",
49
+ "semver": "^7.3.8",
23
50
  "superjson": "^1.11.0",
24
51
  "ts-morph": "^16.0.0",
25
52
  "upper-case-first": "^2.0.2",
26
- "@zenstackhq/sdk": "1.0.0-beta.8"
53
+ "@zenstackhq/sdk": "1.0.0",
54
+ "@zenstackhq/runtime": "1.0.0"
27
55
  },
28
56
  "devDependencies": {
29
- "@tanstack/react-query": "^4.29.7",
30
- "@tanstack/svelte-query": "^4.29.7",
57
+ "@tanstack/react-query": "4.29.7",
58
+ "@tanstack/svelte-query": "4.29.7",
31
59
  "@types/jest": "^29.5.0",
32
- "@types/lower-case-first": "^1.0.1",
33
- "@types/react": "^18.0.26",
60
+ "@types/node": "^18.0.0",
61
+ "@types/react": "18.2.0",
62
+ "@types/semver": "^7.3.13",
34
63
  "@types/tmp": "^0.2.3",
35
- "@types/upper-case-first": "^1.1.2",
36
64
  "copyfiles": "^2.4.1",
37
65
  "jest": "^29.5.0",
38
- "react": "^17.0.2 || ^18",
39
- "react-dom": "^17.0.2 || ^18",
66
+ "react": "18.2.0",
40
67
  "rimraf": "^3.0.2",
41
68
  "swr": "^2.0.3",
42
69
  "ts-jest": "^29.0.5",
43
70
  "typescript": "^4.9.4",
44
- "@zenstackhq/testtools": "1.0.0-beta.8"
71
+ "@zenstackhq/testtools": "1.0.0"
45
72
  },
46
73
  "scripts": {
47
74
  "clean": "rimraf dist",
48
- "build": "pnpm lint && pnpm clean && tsc && copyfiles ./package.json ./README.md ./LICENSE 'res/**/*' dist && pnpm pack dist --pack-destination '../../../../.build'",
49
- "watch": "tsc --watch",
75
+ "build": "pnpm lint && pnpm clean && tsc && tsup-node && copyfiles ./package.json ./README.md ./LICENSE dist && pnpm pack dist --pack-destination '../../../../.build'",
76
+ "watch": "concurrently \"tsc --watch\" \"tsup-node --watch\"",
50
77
  "lint": "eslint src --ext ts",
51
- "test": "jest",
78
+ "test": "ZENSTACK_TEST=1 jest",
52
79
  "publish-dev": "pnpm publish --tag dev"
53
80
  }
54
81
  }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Function signature for `fetch`.
3
+ */
4
+ type FetchFn = (url: string, options?: RequestInit) => Promise<Response>;
5
+ /**
6
+ * Context type for configuring the hooks.
7
+ */
8
+ type APIContext = {
9
+ /**
10
+ * The endpoint to use for the queries.
11
+ */
12
+ endpoint: string;
13
+ /**
14
+ * A custom fetch function for sending the HTTP requests.
15
+ */
16
+ fetch?: FetchFn;
17
+ };
18
+
19
+ export { APIContext as A, FetchFn as F };
@@ -0,0 +1,18 @@
1
+ type Enumerable<T> = T | Array<T>;
2
+ type _TupleToUnion<T> = T extends (infer E)[] ? E : never;
3
+ type TupleToUnion<K extends readonly any[]> = _TupleToUnion<K>;
4
+ type MaybeTupleToUnion<T> = T extends any[] ? TupleToUnion<T> : T;
5
+ type PickEnumerable<T, K extends Enumerable<keyof T> | keyof T> = Pick<T, MaybeTupleToUnion<K>>;
6
+ type SelectAndInclude = {
7
+ select: any;
8
+ include: any;
9
+ };
10
+ type HasSelect = {
11
+ select: any;
12
+ };
13
+ type HasInclude = {
14
+ include: any;
15
+ };
16
+ type CheckSelect<T, S, U> = T extends SelectAndInclude ? 'Please either choose `select` or `include`' : T extends HasSelect ? U : T extends HasInclude ? U : S;
17
+
18
+ export { CheckSelect, Enumerable, MaybeTupleToUnion, PickEnumerable, TupleToUnion };
@@ -0,0 +1,18 @@
1
+ type Enumerable<T> = T | Array<T>;
2
+ type _TupleToUnion<T> = T extends (infer E)[] ? E : never;
3
+ type TupleToUnion<K extends readonly any[]> = _TupleToUnion<K>;
4
+ type MaybeTupleToUnion<T> = T extends any[] ? TupleToUnion<T> : T;
5
+ type PickEnumerable<T, K extends Enumerable<keyof T> | keyof T> = Pick<T, MaybeTupleToUnion<K>>;
6
+ type SelectAndInclude = {
7
+ select: any;
8
+ include: any;
9
+ };
10
+ type HasSelect = {
11
+ select: any;
12
+ };
13
+ type HasInclude = {
14
+ include: any;
15
+ };
16
+ type CheckSelect<T, S, U> = T extends SelectAndInclude ? 'Please either choose `select` or `include`' : T extends HasSelect ? U : T extends HasInclude ? U : S;
17
+
18
+ export { CheckSelect, Enumerable, MaybeTupleToUnion, PickEnumerable, TupleToUnion };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // src/runtime/index.ts
17
+ var runtime_exports = {};
18
+ module.exports = __toCommonJS(runtime_exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/runtime/index.ts"],"sourcesContent":["export * from './prisma-types';\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,65 @@
1
+ import * as _tanstack_react_query from '@tanstack/react-query';
2
+ import { UseQueryOptions, UseInfiniteQueryOptions, UseMutationOptions } from '@tanstack/react-query';
3
+ import * as react from 'react';
4
+ import { A as APIContext, F as FetchFn } from './common-52ab2c3a.js';
5
+
6
+ /**
7
+ * Context for configuring react hooks.
8
+ */
9
+ declare const RequestHandlerContext: react.Context<APIContext>;
10
+ /**
11
+ * Context provider.
12
+ */
13
+ declare const Provider: react.Provider<APIContext>;
14
+ /**
15
+ * Creates a react-query query.
16
+ *
17
+ * @param model The name of the model under query.
18
+ * @param url The request URL.
19
+ * @param args The request args object, URL-encoded and appended as "?q=" parameter
20
+ * @param options The react-query options object
21
+ * @returns useQuery hook
22
+ */
23
+ declare function query<R>(model: string, url: string, args?: unknown, options?: UseQueryOptions<R>, fetch?: FetchFn): _tanstack_react_query.UseQueryResult<R, unknown>;
24
+ /**
25
+ * Creates a react-query infinite query.
26
+ *
27
+ * @param model The name of the model under query.
28
+ * @param url The request URL.
29
+ * @param args The initial request args object, URL-encoded and appended as "?q=" parameter
30
+ * @param options The react-query infinite query options object
31
+ * @returns useInfiniteQuery hook
32
+ */
33
+ declare function infiniteQuery<R>(model: string, url: string, args?: unknown, options?: UseInfiniteQueryOptions<R>, fetch?: FetchFn): _tanstack_react_query.UseInfiniteQueryResult<R, unknown>;
34
+ /**
35
+ * Creates a POST mutation with react-query.
36
+ *
37
+ * @param model The name of the model under mutation.
38
+ * @param url The request URL.
39
+ * @param options The react-query options.
40
+ * @param invalidateQueries Whether to invalidate queries after mutation.
41
+ * @returns useMutation hooks
42
+ */
43
+ declare function postMutation<T, R = any, C extends boolean = boolean, Result = C extends true ? R | undefined : R>(model: string, url: string, options?: Omit<UseMutationOptions<Result, unknown, T>, 'mutationFn'>, fetch?: FetchFn, invalidateQueries?: boolean, checkReadBack?: C): _tanstack_react_query.UseMutationResult<Result, unknown, T, unknown>;
44
+ /**
45
+ * Creates a PUT mutation with react-query.
46
+ *
47
+ * @param model The name of the model under mutation.
48
+ * @param url The request URL.
49
+ * @param options The react-query options.
50
+ * @param invalidateQueries Whether to invalidate queries after mutation.
51
+ * @returns useMutation hooks
52
+ */
53
+ declare function putMutation<T, R = any, C extends boolean = boolean, Result = C extends true ? R | undefined : R>(model: string, url: string, options?: Omit<UseMutationOptions<Result, unknown, T>, 'mutationFn'>, fetch?: FetchFn, invalidateQueries?: boolean, checkReadBack?: C): _tanstack_react_query.UseMutationResult<Result, unknown, T, unknown>;
54
+ /**
55
+ * Creates a DELETE mutation with react-query.
56
+ *
57
+ * @param model The name of the model under mutation.
58
+ * @param url The request URL.
59
+ * @param options The react-query options.
60
+ * @param invalidateQueries Whether to invalidate queries after mutation.
61
+ * @returns useMutation hooks
62
+ */
63
+ declare function deleteMutation<T, R = any, C extends boolean = boolean, Result = C extends true ? R | undefined : R>(model: string, url: string, options?: Omit<UseMutationOptions<Result, unknown, T>, 'mutationFn'>, fetch?: FetchFn, invalidateQueries?: boolean, checkReadBack?: C): _tanstack_react_query.UseMutationResult<Result, unknown, T, unknown>;
64
+
65
+ export { Provider, RequestHandlerContext, deleteMutation, infiniteQuery, postMutation, putMutation, query };
@@ -0,0 +1,65 @@
1
+ import * as _tanstack_react_query from '@tanstack/react-query';
2
+ import { UseQueryOptions, UseInfiniteQueryOptions, UseMutationOptions } from '@tanstack/react-query';
3
+ import * as react from 'react';
4
+ import { A as APIContext, F as FetchFn } from './common-52ab2c3a.js';
5
+
6
+ /**
7
+ * Context for configuring react hooks.
8
+ */
9
+ declare const RequestHandlerContext: react.Context<APIContext>;
10
+ /**
11
+ * Context provider.
12
+ */
13
+ declare const Provider: react.Provider<APIContext>;
14
+ /**
15
+ * Creates a react-query query.
16
+ *
17
+ * @param model The name of the model under query.
18
+ * @param url The request URL.
19
+ * @param args The request args object, URL-encoded and appended as "?q=" parameter
20
+ * @param options The react-query options object
21
+ * @returns useQuery hook
22
+ */
23
+ declare function query<R>(model: string, url: string, args?: unknown, options?: UseQueryOptions<R>, fetch?: FetchFn): _tanstack_react_query.UseQueryResult<R, unknown>;
24
+ /**
25
+ * Creates a react-query infinite query.
26
+ *
27
+ * @param model The name of the model under query.
28
+ * @param url The request URL.
29
+ * @param args The initial request args object, URL-encoded and appended as "?q=" parameter
30
+ * @param options The react-query infinite query options object
31
+ * @returns useInfiniteQuery hook
32
+ */
33
+ declare function infiniteQuery<R>(model: string, url: string, args?: unknown, options?: UseInfiniteQueryOptions<R>, fetch?: FetchFn): _tanstack_react_query.UseInfiniteQueryResult<R, unknown>;
34
+ /**
35
+ * Creates a POST mutation with react-query.
36
+ *
37
+ * @param model The name of the model under mutation.
38
+ * @param url The request URL.
39
+ * @param options The react-query options.
40
+ * @param invalidateQueries Whether to invalidate queries after mutation.
41
+ * @returns useMutation hooks
42
+ */
43
+ declare function postMutation<T, R = any, C extends boolean = boolean, Result = C extends true ? R | undefined : R>(model: string, url: string, options?: Omit<UseMutationOptions<Result, unknown, T>, 'mutationFn'>, fetch?: FetchFn, invalidateQueries?: boolean, checkReadBack?: C): _tanstack_react_query.UseMutationResult<Result, unknown, T, unknown>;
44
+ /**
45
+ * Creates a PUT mutation with react-query.
46
+ *
47
+ * @param model The name of the model under mutation.
48
+ * @param url The request URL.
49
+ * @param options The react-query options.
50
+ * @param invalidateQueries Whether to invalidate queries after mutation.
51
+ * @returns useMutation hooks
52
+ */
53
+ declare function putMutation<T, R = any, C extends boolean = boolean, Result = C extends true ? R | undefined : R>(model: string, url: string, options?: Omit<UseMutationOptions<Result, unknown, T>, 'mutationFn'>, fetch?: FetchFn, invalidateQueries?: boolean, checkReadBack?: C): _tanstack_react_query.UseMutationResult<Result, unknown, T, unknown>;
54
+ /**
55
+ * Creates a DELETE mutation with react-query.
56
+ *
57
+ * @param model The name of the model under mutation.
58
+ * @param url The request URL.
59
+ * @param options The react-query options.
60
+ * @param invalidateQueries Whether to invalidate queries after mutation.
61
+ * @returns useMutation hooks
62
+ */
63
+ declare function deleteMutation<T, R = any, C extends boolean = boolean, Result = C extends true ? R | undefined : R>(model: string, url: string, options?: Omit<UseMutationOptions<Result, unknown, T>, 'mutationFn'>, fetch?: FetchFn, invalidateQueries?: boolean, checkReadBack?: C): _tanstack_react_query.UseMutationResult<Result, unknown, T, unknown>;
64
+
65
+ export { Provider, RequestHandlerContext, deleteMutation, infiniteQuery, postMutation, putMutation, query };