@zenstackhq/trpc 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 +1 -1
- package/generator.js +88 -27
- package/generator.js.map +1 -1
- package/helpers.d.ts +2 -2
- package/helpers.js +39 -24
- package/helpers.js.map +1 -1
- package/index.d.ts +1 -1
- package/package.json +9 -7
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<void>;
|
package/generator.js
CHANGED
|
@@ -72,33 +72,85 @@ function createAppRouter(outDir, modelOperations, hiddenModels, generateModelAct
|
|
|
72
72
|
const prismaImport = (0, sdk_1.getPrismaClientImportSpec)(zmodel, path_1.default.dirname(indexFile));
|
|
73
73
|
appRouter.addImportDeclarations([
|
|
74
74
|
{
|
|
75
|
-
namedImports: [
|
|
75
|
+
namedImports: [
|
|
76
|
+
'type AnyRouter',
|
|
77
|
+
'type AnyRootConfig',
|
|
78
|
+
'type CreateRouterInner',
|
|
79
|
+
'type Procedure',
|
|
80
|
+
'type ProcedureBuilder',
|
|
81
|
+
'type ProcedureParams',
|
|
82
|
+
'type ProcedureRouterRecord',
|
|
83
|
+
'type ProcedureType',
|
|
84
|
+
],
|
|
76
85
|
moduleSpecifier: '@trpc/server',
|
|
77
86
|
},
|
|
78
87
|
{
|
|
79
|
-
namedImports: ['PrismaClient'],
|
|
88
|
+
namedImports: ['type PrismaClient', 'type Prisma'],
|
|
80
89
|
moduleSpecifier: prismaImport,
|
|
81
90
|
},
|
|
82
|
-
{
|
|
83
|
-
namedImports: ['createRouterFactory', 'AnyRouter'],
|
|
84
|
-
moduleSpecifier: '@trpc/server/dist/core/router',
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
namedImports: ['createBuilder'],
|
|
88
|
-
moduleSpecifier: '@trpc/server/dist/core/internals/procedureBuilder',
|
|
89
|
-
},
|
|
91
|
+
{ defaultImport: 'z', moduleSpecifier: 'zod', isTypeOnly: true },
|
|
90
92
|
]);
|
|
91
93
|
appRouter.addStatements(`
|
|
94
|
+
${ /** to be used by the other routers without making a bigger commit */''}
|
|
95
|
+
export { PrismaClient } from '${prismaImport}';
|
|
96
|
+
|
|
92
97
|
export type BaseConfig = AnyRootConfig;
|
|
93
98
|
|
|
94
|
-
export type RouterFactory<Config extends BaseConfig> =
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
99
|
+
export type RouterFactory<Config extends BaseConfig> = <
|
|
100
|
+
ProcRouterRecord extends ProcedureRouterRecord
|
|
101
|
+
>(
|
|
102
|
+
procedures: ProcRouterRecord
|
|
103
|
+
) => CreateRouterInner<Config, ProcRouterRecord>;
|
|
104
|
+
|
|
105
|
+
${
|
|
106
|
+
/** this is needed in order to prevent type errors between a procedure and a middleware-extended procedure */ ''}
|
|
107
|
+
export type ProcBuilder<Config extends BaseConfig> = ProcedureBuilder<{
|
|
108
|
+
_config: Config;
|
|
109
|
+
_ctx_out: Config['$types']['ctx'];
|
|
110
|
+
_input_in: any;
|
|
111
|
+
_input_out: any;
|
|
112
|
+
_output_in: any;
|
|
113
|
+
_output_out: any;
|
|
114
|
+
_meta: Config['$types']['meta'];
|
|
115
|
+
}>;
|
|
116
|
+
|
|
117
|
+
type ExtractParamsFromProcBuilder<Builder extends ProcedureBuilder<any>> =
|
|
118
|
+
Builder extends ProcedureBuilder<infer P> ? P : never;
|
|
101
119
|
|
|
120
|
+
type FromPromise<P extends Promise<any>> = P extends Promise<infer T>
|
|
121
|
+
? T
|
|
122
|
+
: never;
|
|
123
|
+
|
|
124
|
+
${ /** workaround to avoid creating 'typeof unsetMarker & object' on the procedure output */''}
|
|
125
|
+
type Join<A, B> = A extends symbol ? B : A & B;
|
|
126
|
+
|
|
127
|
+
${
|
|
128
|
+
/** you can name it whatever you want, but this is to make sure that
|
|
129
|
+
the types from the middleware and the procedure are correctly merged */ ''}
|
|
130
|
+
export type ProcReturns<
|
|
131
|
+
PType extends ProcedureType,
|
|
132
|
+
PBuilder extends ProcBuilder<BaseConfig>,
|
|
133
|
+
ZType extends z.ZodType,
|
|
134
|
+
PPromise extends Prisma.PrismaPromise<any>
|
|
135
|
+
> = Procedure<
|
|
136
|
+
PType,
|
|
137
|
+
ProcedureParams<
|
|
138
|
+
ExtractParamsFromProcBuilder<PBuilder>["_config"],
|
|
139
|
+
ExtractParamsFromProcBuilder<PBuilder>["_ctx_out"],
|
|
140
|
+
Join<ExtractParamsFromProcBuilder<PBuilder>["_input_in"], z.infer<ZType>>,
|
|
141
|
+
Join<ExtractParamsFromProcBuilder<PBuilder>["_input_out"], z.infer<ZType>>,
|
|
142
|
+
Join<
|
|
143
|
+
ExtractParamsFromProcBuilder<PBuilder>["_output_in"],
|
|
144
|
+
FromPromise<PPromise>
|
|
145
|
+
>,
|
|
146
|
+
Join<
|
|
147
|
+
ExtractParamsFromProcBuilder<PBuilder>["_output_out"],
|
|
148
|
+
FromPromise<PPromise>
|
|
149
|
+
>,
|
|
150
|
+
ExtractParamsFromProcBuilder<PBuilder>["_meta"]
|
|
151
|
+
>
|
|
152
|
+
>;
|
|
153
|
+
|
|
102
154
|
export function db(ctx: any) {
|
|
103
155
|
if (!ctx.prisma) {
|
|
104
156
|
throw new Error('Missing "prisma" field in trpc context');
|
|
@@ -110,10 +162,10 @@ function createAppRouter(outDir, modelOperations, hiddenModels, generateModelAct
|
|
|
110
162
|
const filteredModelOperations = modelOperations.filter((mo) => !hiddenModels.includes(mo.model));
|
|
111
163
|
appRouter
|
|
112
164
|
.addFunction({
|
|
113
|
-
name: 'createRouter<
|
|
165
|
+
name: 'createRouter<Router extends RouterFactory<BaseConfig>, Proc extends ProcBuilder<BaseConfig>>',
|
|
114
166
|
parameters: [
|
|
115
|
-
{ name: 'router', type: '
|
|
116
|
-
{ name: 'procedure', type: '
|
|
167
|
+
{ name: 'router', type: 'Router' },
|
|
168
|
+
{ name: 'procedure', type: 'Proc' },
|
|
117
169
|
],
|
|
118
170
|
isExported: true,
|
|
119
171
|
})
|
|
@@ -122,12 +174,14 @@ function createAppRouter(outDir, modelOperations, hiddenModels, generateModelAct
|
|
|
122
174
|
writer.block(() => {
|
|
123
175
|
for (const modelOperation of filteredModelOperations) {
|
|
124
176
|
const { model } = modelOperation, operations = __rest(modelOperation, ["model"]);
|
|
177
|
+
// "count" operation is missing from Prisma DMMF, add it here
|
|
178
|
+
operations.count = `count${model}`;
|
|
125
179
|
generateModelCreateRouter(project_1.project, model, operations, outDir, generateModelActions, generateClientHelpers, zmodel, zodSchemasImport);
|
|
126
180
|
appRouter.addImportDeclaration({
|
|
127
181
|
defaultImport: `create${model}Router`,
|
|
128
182
|
moduleSpecifier: `./${model}.router`,
|
|
129
183
|
});
|
|
130
|
-
writer.writeLine(`${(0, lower_case_first_1.lowerCaseFirst)(model)}: create${model}Router<
|
|
184
|
+
writer.writeLine(`${(0, lower_case_first_1.lowerCaseFirst)(model)}: create${model}Router<Router, Proc>(router, procedure),`);
|
|
131
185
|
}
|
|
132
186
|
});
|
|
133
187
|
writer.write(');');
|
|
@@ -181,20 +235,27 @@ function generateModelCreateRouter(project, model, operations, outputDir, genera
|
|
|
181
235
|
modelRouter.addStatements('/* eslint-disable */');
|
|
182
236
|
modelRouter.addImportDeclarations([
|
|
183
237
|
{
|
|
184
|
-
namedImports: [
|
|
238
|
+
namedImports: [
|
|
239
|
+
'type RouterFactory',
|
|
240
|
+
'type ProcBuilder',
|
|
241
|
+
'type BaseConfig',
|
|
242
|
+
'type ProcReturns',
|
|
243
|
+
'type PrismaClient',
|
|
244
|
+
'db',
|
|
245
|
+
],
|
|
185
246
|
moduleSpecifier: '.',
|
|
186
247
|
},
|
|
187
248
|
]);
|
|
188
|
-
(0, helpers_1.
|
|
249
|
+
(0, helpers_1.generateRouterSchemaImport)(modelRouter, zodSchemasImport);
|
|
189
250
|
(0, helpers_1.generateHelperImport)(modelRouter);
|
|
190
251
|
if (generateClientHelpers) {
|
|
191
252
|
(0, helpers_1.generateRouterTypingImports)(modelRouter, zmodel);
|
|
192
253
|
}
|
|
193
254
|
const createRouterFunc = modelRouter.addFunction({
|
|
194
|
-
name: 'createRouter<
|
|
255
|
+
name: 'createRouter<Router extends RouterFactory<BaseConfig>, Proc extends ProcBuilder<BaseConfig>>',
|
|
195
256
|
parameters: [
|
|
196
|
-
{ name: 'router', type: '
|
|
197
|
-
{ name: 'procedure', type: '
|
|
257
|
+
{ name: 'router', type: 'Router' },
|
|
258
|
+
{ name: 'procedure', type: 'Proc' },
|
|
198
259
|
],
|
|
199
260
|
isExported: true,
|
|
200
261
|
isDefaultExport: true,
|
|
@@ -222,7 +283,7 @@ function generateModelCreateRouter(project, model, operations, outputDir, genera
|
|
|
222
283
|
if (opNameWithModel &&
|
|
223
284
|
inputType &&
|
|
224
285
|
(!generateModelActions || generateModelActions.includes(generateOpName))) {
|
|
225
|
-
(0, helpers_1.generateProcedure)(funcWriter, generateOpName, inputType, model, baseOpType);
|
|
286
|
+
(0, helpers_1.generateProcedure)(funcWriter, generateOpName, (0, upper_case_first_1.upperCaseFirst)(inputType), model, baseOpType);
|
|
226
287
|
if (routerTypingStructure) {
|
|
227
288
|
(_a = routerTypingStructure.properties) === null || _a === void 0 ? void 0 : _a.push({
|
|
228
289
|
kind: ts_morph_1.StructureKind.PropertySignature,
|
package/generator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yCASyB;AAEzB,4CAAoB;AACpB,uDAAkD;AAClD,gDAAwB;AACxB,uCAA6G;AAC7G,uDAAkD;AAClD,wBAAyB;AACzB,uCAQmB;AACnB,uCAAoC;AACpC,kEAA0C;AAE1C,SAAsB,QAAQ,CAAC,KAAY,EAAE,OAAsB,EAAE,IAAmB;;;QACpF,IAAI,MAAM,GAAG,IAAA,mBAAa,EAAS,OAAO,EAAE,QAAQ,CAAC,CAAC;QACtD,MAAM,GAAG,IAAA,iBAAW,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEtC,wCAAwC;QACxC,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;QAEnF,yCAAyC;QACzC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;QACrF,IAAI,qBAAqB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YAC7F,MAAM,IAAI,iBAAW,CAAC,OAAI,EAAE,uEAAuE,CAAC,CAAC;SACxG;QAED,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,OAAO,CAAC,gBAAgB,KAAK,QAAQ,EAAE;YAC1E,MAAM,IAAI,iBAAW,CAAC,OAAI,EAAE,4CAA4C,CAAC,CAAC;SAC7E;QAED,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,IAAA,mBAAS,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9B,MAAM,gBAAgB,GAAG,IAAI,CAAC;QAE9B,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAC;QAClE,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC;QACjD,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,IAAA,+BAAqB,EAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAE5C,MAAM,gBAAgB,GAAG,MAAC,OAAO,CAAC,gBAA2B,mCAAI,yBAAyB,CAAC;QAC3F,eAAe,CACX,MAAM,EACN,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,KAAK,EACL,gBAAgB,CACnB,CAAC;QACF,YAAY,CAAC,MAAM,CAAC,CAAC;QAErB,MAAM,IAAA,iBAAW,EAAC,iBAAO,CAAC,CAAC;;CAC9B;AAxCD,4BAwCC;AAED,SAAS,eAAe,CACpB,MAAc,EACd,eAAoC,EACpC,YAAsB,EACtB,oBAA0C,EAC1C,qBAA2C,EAC3C,MAAa,EACb,gBAAwB;IAExB,MAAM,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,iBAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE;QAC7D,SAAS,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,SAAS,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;IAEhD,MAAM,YAAY,GAAG,IAAA,+BAAyB,EAAC,MAAM,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAChF,SAAS,CAAC,qBAAqB,CAAC;QAC5B;YACI,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
|
package/helpers.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 { Model } from '@zenstackhq/sdk/ast';
|
|
3
3
|
import { CodeBlockWriter, SourceFile } from 'ts-morph';
|
|
4
4
|
export declare function generateProcedure(writer: CodeBlockWriter, opType: string, typeName: string, modelName: string, baseOpType: string): void;
|
|
@@ -7,7 +7,7 @@ export declare function generateProcedure(writer: CodeBlockWriter, opType: strin
|
|
|
7
7
|
*/
|
|
8
8
|
export declare function generateRouterTyping(writer: CodeBlockWriter, opType: string, modelName: string, baseOpType: string): void;
|
|
9
9
|
export declare function generateRouterTypingImports(sourceFile: SourceFile, model: Model): void;
|
|
10
|
-
export declare function
|
|
10
|
+
export declare function generateRouterSchemaImport(sourceFile: SourceFile, zodSchemasImport: string): void;
|
|
11
11
|
export declare function generateHelperImport(sourceFile: SourceFile): void;
|
|
12
12
|
export declare const getInputSchemaByOpName: (opName: string, modelName: string) => string | undefined;
|
|
13
13
|
export declare const getProcedureTypeByOpName: (opName: string) => string | undefined;
|
package/helpers.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.resolveModelsComments = exports.getProcedureTypeByOpName = exports.getInputSchemaByOpName = exports.generateHelperImport = exports.
|
|
3
|
+
exports.resolveModelsComments = exports.getProcedureTypeByOpName = exports.getInputSchemaByOpName = exports.generateHelperImport = exports.generateRouterSchemaImport = exports.generateRouterTypingImports = exports.generateRouterTyping = exports.generateProcedure = void 0;
|
|
4
4
|
const sdk_1 = require("@zenstackhq/sdk");
|
|
5
5
|
const lower_case_first_1 = require("lower-case-first");
|
|
6
6
|
const upper_case_first_1 = require("upper-case-first");
|
|
@@ -11,13 +11,23 @@ function generateProcedure(writer, opType, typeName, modelName, baseOpType) {
|
|
|
11
11
|
if (procType === 'query') {
|
|
12
12
|
// the cast "as any" is to circumvent a TS compiler misfired error in certain cases
|
|
13
13
|
writer.write(`
|
|
14
|
-
${opType}: procedure.input(${typeName}).query(({ctx, input}) => checkRead(db(ctx).${(0, lower_case_first_1.lowerCaseFirst)(modelName)}.${prismaMethod}(input as any)))
|
|
14
|
+
${opType}: procedure.input(${typeName}).query(({ctx, input}) => checkRead(db(ctx).${(0, lower_case_first_1.lowerCaseFirst)(modelName)}.${prismaMethod}(input as any))) as ProcReturns<
|
|
15
|
+
"query",
|
|
16
|
+
Proc,
|
|
17
|
+
(typeof $Schema.${(0, upper_case_first_1.upperCaseFirst)(modelName)}InputSchema)["${opType.replace('OrThrow', '')}"],
|
|
18
|
+
ReturnType<PrismaClient["${(0, lower_case_first_1.lowerCaseFirst)(modelName)}"]["${opType}"]>
|
|
19
|
+
>,
|
|
15
20
|
`);
|
|
16
21
|
}
|
|
17
22
|
else if (procType === 'mutation') {
|
|
18
23
|
// the cast "as any" is to circumvent a TS compiler misfired error in certain cases
|
|
19
24
|
writer.write(`
|
|
20
|
-
${opType}: procedure.input(${typeName}).mutation(async ({ctx, input}) => checkMutate(db(ctx).${(0, lower_case_first_1.lowerCaseFirst)(modelName)}.${prismaMethod}(input as any)))
|
|
25
|
+
${opType}: procedure.input(${typeName}).mutation(async ({ctx, input}) => checkMutate(db(ctx).${(0, lower_case_first_1.lowerCaseFirst)(modelName)}.${prismaMethod}(input as any))) as ProcReturns<
|
|
26
|
+
"mutation",
|
|
27
|
+
Proc,
|
|
28
|
+
(typeof $Schema.${(0, upper_case_first_1.upperCaseFirst)(modelName)}InputSchema)["${opType.replace('OrThrow', '')}"],
|
|
29
|
+
ReturnType<PrismaClient["${(0, lower_case_first_1.lowerCaseFirst)(modelName)}"]["${opType}"]>
|
|
30
|
+
>,
|
|
21
31
|
`);
|
|
22
32
|
}
|
|
23
33
|
}
|
|
@@ -77,10 +87,10 @@ function getPrismaOperationTypes(model, operation) {
|
|
|
77
87
|
break;
|
|
78
88
|
case 'count':
|
|
79
89
|
argsType = `Prisma.Subset<T, ${genericBase}>`;
|
|
80
|
-
resultType = `'select' extends keyof T
|
|
90
|
+
resultType = `'select' extends keyof T
|
|
81
91
|
? T['select'] extends true
|
|
82
92
|
? number
|
|
83
|
-
: GetScalarType<T['select'],
|
|
93
|
+
: Prisma.GetScalarType<T['select'], Prisma.${capModel}CountAggregateOutputType>
|
|
84
94
|
: number`;
|
|
85
95
|
break;
|
|
86
96
|
case 'aggregate':
|
|
@@ -97,7 +107,7 @@ function getPrismaOperationTypes(model, operation) {
|
|
|
97
107
|
? { orderBy: Prisma.${capModel}GroupByArgs['orderBy'] }
|
|
98
108
|
: { orderBy?: Prisma.${capModel}GroupByArgs['orderBy'] },
|
|
99
109
|
OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>,
|
|
100
|
-
ByFields extends Prisma.
|
|
110
|
+
ByFields extends Prisma.MaybeTupleToUnion<T['by']>,
|
|
101
111
|
ByValid extends Prisma.Has<ByFields, OrderFields>,
|
|
102
112
|
HavingFields extends Prisma.GetHavingFields<T['having']>,
|
|
103
113
|
HavingValid extends Prisma.Has<ByFields, HavingFields>,
|
|
@@ -208,61 +218,65 @@ function generateRouterTypingImports(sourceFile, model) {
|
|
|
208
218
|
}
|
|
209
219
|
exports.generateRouterTypingImports = generateRouterTypingImports;
|
|
210
220
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
211
|
-
function
|
|
212
|
-
sourceFile.addStatements(`import
|
|
221
|
+
function generateRouterSchemaImport(sourceFile, zodSchemasImport) {
|
|
222
|
+
sourceFile.addStatements(`import $Schema from '${zodSchemasImport}/input';`);
|
|
213
223
|
}
|
|
214
|
-
exports.
|
|
224
|
+
exports.generateRouterSchemaImport = generateRouterSchemaImport;
|
|
215
225
|
function generateHelperImport(sourceFile) {
|
|
216
226
|
sourceFile.addStatements(`import { checkRead, checkMutate } from '../helper';`);
|
|
217
227
|
}
|
|
218
228
|
exports.generateHelperImport = generateHelperImport;
|
|
219
229
|
const getInputSchemaByOpName = (opName, modelName) => {
|
|
220
230
|
let inputType;
|
|
231
|
+
const capModelName = (0, upper_case_first_1.upperCaseFirst)(modelName);
|
|
221
232
|
switch (opName) {
|
|
222
233
|
case 'findUnique':
|
|
223
|
-
inputType = `${
|
|
234
|
+
inputType = `$Schema.${capModelName}InputSchema.findUnique`;
|
|
224
235
|
break;
|
|
225
236
|
case 'findFirst':
|
|
226
|
-
inputType = `${
|
|
237
|
+
inputType = `$Schema.${capModelName}InputSchema.findFirst`;
|
|
227
238
|
break;
|
|
228
239
|
case 'findMany':
|
|
229
|
-
inputType = `${
|
|
240
|
+
inputType = `$Schema.${capModelName}InputSchema.findMany`;
|
|
230
241
|
break;
|
|
231
242
|
case 'findRaw':
|
|
232
|
-
inputType = `${
|
|
243
|
+
inputType = `$Schema.${capModelName}InputSchema.findRawObject`;
|
|
233
244
|
break;
|
|
234
245
|
case 'createOne':
|
|
235
|
-
inputType = `${
|
|
246
|
+
inputType = `$Schema.${capModelName}InputSchema.create`;
|
|
236
247
|
break;
|
|
237
248
|
case 'createMany':
|
|
238
|
-
inputType = `${
|
|
249
|
+
inputType = `$Schema.${capModelName}InputSchema.createMany`;
|
|
239
250
|
break;
|
|
240
251
|
case 'deleteOne':
|
|
241
|
-
inputType = `${
|
|
252
|
+
inputType = `$Schema.${capModelName}InputSchema.delete`;
|
|
242
253
|
break;
|
|
243
254
|
case 'updateOne':
|
|
244
|
-
inputType = `${
|
|
255
|
+
inputType = `$Schema.${capModelName}InputSchema.update`;
|
|
245
256
|
break;
|
|
246
257
|
case 'deleteMany':
|
|
247
|
-
inputType = `${
|
|
258
|
+
inputType = `$Schema.${capModelName}InputSchema.deleteMany`;
|
|
248
259
|
break;
|
|
249
260
|
case 'updateMany':
|
|
250
|
-
inputType = `${
|
|
261
|
+
inputType = `$Schema.${capModelName}InputSchema.updateMany`;
|
|
251
262
|
break;
|
|
252
263
|
case 'upsertOne':
|
|
253
|
-
inputType = `${
|
|
264
|
+
inputType = `$Schema.${capModelName}InputSchema.upsert`;
|
|
254
265
|
break;
|
|
255
266
|
case 'aggregate':
|
|
256
|
-
inputType = `${
|
|
267
|
+
inputType = `$Schema.${capModelName}InputSchema.aggregate`;
|
|
257
268
|
break;
|
|
258
269
|
case 'aggregateRaw':
|
|
259
|
-
inputType = `${
|
|
270
|
+
inputType = `$Schema.${capModelName}InputSchema.aggregateRawObject`;
|
|
260
271
|
break;
|
|
261
272
|
case 'groupBy':
|
|
262
|
-
inputType = `${
|
|
273
|
+
inputType = `$Schema.${capModelName}InputSchema.groupBy`;
|
|
274
|
+
break;
|
|
275
|
+
case 'count':
|
|
276
|
+
inputType = `$Schema.${capModelName}InputSchema.count`;
|
|
263
277
|
break;
|
|
264
278
|
default:
|
|
265
|
-
|
|
279
|
+
break;
|
|
266
280
|
}
|
|
267
281
|
return inputType;
|
|
268
282
|
};
|
|
@@ -277,6 +291,7 @@ const getProcedureTypeByOpName = (opName) => {
|
|
|
277
291
|
case 'aggregate':
|
|
278
292
|
case 'aggregateRaw':
|
|
279
293
|
case 'groupBy':
|
|
294
|
+
case 'count':
|
|
280
295
|
procType = 'query';
|
|
281
296
|
break;
|
|
282
297
|
case 'createOne':
|
package/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;AACA,yCAAyE;AAEzE,uDAAkD;AAElD,uDAAkD;AAClD,wBAAyB;AAEzB,SAAgB,iBAAiB,CAC7B,MAAuB,EACvB,MAAc,EACd,QAAgB,EAChB,SAAiB,EACjB,UAAkB;IAElB,MAAM,QAAQ,GAAG,IAAA,gCAAwB,EAAC,UAAU,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAE/C,IAAI,QAAQ,KAAK,OAAO,EAAE;QACtB,mFAAmF;QACnF,MAAM,CAAC,KAAK,CAAC;UACX,MAAM,qBAAqB,QAAQ,+CAA+C,IAAA,iCAAc,EAC9F,SAAS,CACZ,IAAI,YAAY;
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zenstackhq/trpc",
|
|
3
3
|
"displayName": "ZenStack plugin for tRPC",
|
|
4
|
-
"version": "1.0.0
|
|
4
|
+
"version": "1.0.0",
|
|
5
5
|
"description": "ZenStack plugin for tRPC",
|
|
6
6
|
"main": "index.js",
|
|
7
7
|
"repository": {
|
|
@@ -12,12 +12,13 @@
|
|
|
12
12
|
"directory": "dist",
|
|
13
13
|
"linkDirectory": true
|
|
14
14
|
},
|
|
15
|
-
"keywords": [
|
|
15
|
+
"keywords": [
|
|
16
|
+
"trpc"
|
|
17
|
+
],
|
|
16
18
|
"author": "ZenStack Team",
|
|
17
19
|
"license": "MIT",
|
|
18
20
|
"dependencies": {
|
|
19
|
-
"@prisma/generator-helper": "
|
|
20
|
-
"@prisma/internals": "4.10.0",
|
|
21
|
+
"@prisma/generator-helper": "^5.0.0",
|
|
21
22
|
"change-case": "^4.1.2",
|
|
22
23
|
"lower-case-first": "^2.0.2",
|
|
23
24
|
"prettier": "^2.8.3",
|
|
@@ -25,14 +26,14 @@
|
|
|
25
26
|
"tslib": "^2.4.1",
|
|
26
27
|
"upper-case-first": "^2.0.2",
|
|
27
28
|
"zod": "3.21.1",
|
|
28
|
-
"@zenstackhq/sdk": "1.0.0
|
|
29
|
+
"@zenstackhq/sdk": "1.0.0"
|
|
29
30
|
},
|
|
30
31
|
"devDependencies": {
|
|
31
32
|
"@trpc/next": "^10.32.0",
|
|
32
33
|
"@trpc/react-query": "^10.32.0",
|
|
33
34
|
"@trpc/server": "^10.32.0",
|
|
34
35
|
"@types/jest": "^29.5.0",
|
|
35
|
-
"@types/
|
|
36
|
+
"@types/node": "^18.0.0",
|
|
36
37
|
"@types/prettier": "^2.7.2",
|
|
37
38
|
"copyfiles": "^2.4.1",
|
|
38
39
|
"jest": "^29.5.0",
|
|
@@ -40,13 +41,14 @@
|
|
|
40
41
|
"rimraf": "^3.0.2",
|
|
41
42
|
"ts-jest": "^29.0.5",
|
|
42
43
|
"typescript": "^4.9.4",
|
|
43
|
-
"@zenstackhq/testtools": "1.0.0
|
|
44
|
+
"@zenstackhq/testtools": "1.0.0"
|
|
44
45
|
},
|
|
45
46
|
"scripts": {
|
|
46
47
|
"clean": "rimraf dist",
|
|
47
48
|
"build": "pnpm lint && pnpm clean && tsc && copyfiles ./package.json ./README.md ./LICENSE 'res/**/*' dist && pnpm pack dist --pack-destination '../../../../.build'",
|
|
48
49
|
"watch": "tsc --watch",
|
|
49
50
|
"lint": "eslint src --ext ts",
|
|
51
|
+
"test": "ZENSTACK_TEST=1 jest",
|
|
50
52
|
"publish-dev": "pnpm publish --tag dev"
|
|
51
53
|
}
|
|
52
54
|
}
|