diff --git a/package.json b/package.json index 4e713d731..45f00b072 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "zenstack-v3", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "ZenStack", "packageManager": "pnpm@10.12.1", "scripts": { diff --git a/packages/cli/package.json b/packages/cli/package.json index 3db5ea940..3eca5dffc 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -3,7 +3,7 @@ "publisher": "zenstack", "displayName": "ZenStack CLI", "description": "FullStack database toolkit with built-in access control and automatic API generation.", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "type": "module", "author": { "name": "ZenStack Team" diff --git a/packages/common-helpers/package.json b/packages/common-helpers/package.json index abf465394..48a19c0d0 100644 --- a/packages/common-helpers/package.json +++ b/packages/common-helpers/package.json @@ -1,6 +1,6 @@ { "name": "@zenstackhq/common-helpers", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "ZenStack Common Helpers", "type": "module", "scripts": { diff --git a/packages/create-zenstack/package.json b/packages/create-zenstack/package.json index db3c42421..6fe18eeb9 100644 --- a/packages/create-zenstack/package.json +++ b/packages/create-zenstack/package.json @@ -1,6 +1,6 @@ { "name": "create-zenstack", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "Create a new ZenStack project", "type": "module", "scripts": { diff --git a/packages/eslint-config/package.json b/packages/eslint-config/package.json index 312f2f1ea..fc9465ad8 100644 --- a/packages/eslint-config/package.json +++ b/packages/eslint-config/package.json @@ -1,6 +1,6 @@ { "name": "@zenstackhq/eslint-config", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "type": "module", "private": true, "license": "MIT" diff --git a/packages/ide/vscode/package.json b/packages/ide/vscode/package.json index e5f852938..b28ee350a 100644 --- a/packages/ide/vscode/package.json +++ b/packages/ide/vscode/package.json @@ -1,7 +1,7 @@ { "name": "zenstack", "publisher": "zenstack", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "displayName": "ZenStack Language Tools", "description": "VSCode extension for ZenStack ZModel language", "private": true, diff --git a/packages/language/package.json b/packages/language/package.json index ec6cd744c..bb7da03f1 100644 --- a/packages/language/package.json +++ b/packages/language/package.json @@ -1,7 +1,7 @@ { "name": "@zenstackhq/language", "description": "ZenStack ZModel language specification", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "license": "MIT", "author": "ZenStack Team", "files": [ diff --git a/packages/runtime/package.json b/packages/runtime/package.json index 5b3cc6cdc..b46b800f2 100644 --- a/packages/runtime/package.json +++ b/packages/runtime/package.json @@ -1,6 +1,6 @@ { "name": "@zenstackhq/runtime", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "ZenStack Runtime", "type": "module", "scripts": { diff --git a/packages/runtime/src/client/client-impl.ts b/packages/runtime/src/client/client-impl.ts index 6fa40a215..d646dd300 100644 --- a/packages/runtime/src/client/client-impl.ts +++ b/packages/runtime/src/client/client-impl.ts @@ -411,100 +411,156 @@ function createModelCrudHandler { - return createPromise('findUnique', args, new FindOperationHandler(client, model, inputValidator), true); + return createPromise( + 'findUnique', + args, + new FindOperationHandler(client, model, inputValidator), + true, + ); }, findUniqueOrThrow: (args: unknown) => { return createPromise( 'findUnique', args, - new FindOperationHandler(client, model, inputValidator), + new FindOperationHandler(client, model, inputValidator), true, true, ); }, findFirst: (args: unknown) => { - return createPromise('findFirst', args, new FindOperationHandler(client, model, inputValidator), true); + return createPromise( + 'findFirst', + args, + new FindOperationHandler(client, model, inputValidator), + true, + ); }, findFirstOrThrow: (args: unknown) => { return createPromise( 'findFirst', args, - new FindOperationHandler(client, model, inputValidator), + new FindOperationHandler(client, model, inputValidator), true, true, ); }, findMany: (args: unknown) => { - return createPromise('findMany', args, new FindOperationHandler(client, model, inputValidator), true); + return createPromise( + 'findMany', + args, + new FindOperationHandler(client, model, inputValidator), + true, + ); }, create: (args: unknown) => { - return createPromise('create', args, new CreateOperationHandler(client, model, inputValidator), true); + return createPromise( + 'create', + args, + new CreateOperationHandler(client, model, inputValidator), + true, + ); }, createMany: (args: unknown) => { - return createPromise('createMany', args, new CreateOperationHandler(client, model, inputValidator), false); + return createPromise( + 'createMany', + args, + new CreateOperationHandler(client, model, inputValidator), + false, + ); }, createManyAndReturn: (args: unknown) => { return createPromise( 'createManyAndReturn', args, - new CreateOperationHandler(client, model, inputValidator), + new CreateOperationHandler(client, model, inputValidator), true, ); }, update: (args: unknown) => { - return createPromise('update', args, new UpdateOperationHandler(client, model, inputValidator), true); + return createPromise( + 'update', + args, + new UpdateOperationHandler(client, model, inputValidator), + true, + ); }, updateMany: (args: unknown) => { - return createPromise('updateMany', args, new UpdateOperationHandler(client, model, inputValidator), false); + return createPromise( + 'updateMany', + args, + new UpdateOperationHandler(client, model, inputValidator), + false, + ); }, updateManyAndReturn: (args: unknown) => { return createPromise( 'updateManyAndReturn', args, - new UpdateOperationHandler(client, model, inputValidator), + new UpdateOperationHandler(client, model, inputValidator), true, ); }, upsert: (args: unknown) => { - return createPromise('upsert', args, new UpdateOperationHandler(client, model, inputValidator), true); + return createPromise( + 'upsert', + args, + new UpdateOperationHandler(client, model, inputValidator), + true, + ); }, delete: (args: unknown) => { - return createPromise('delete', args, new DeleteOperationHandler(client, model, inputValidator), true); + return createPromise( + 'delete', + args, + new DeleteOperationHandler(client, model, inputValidator), + true, + ); }, deleteMany: (args: unknown) => { - return createPromise('deleteMany', args, new DeleteOperationHandler(client, model, inputValidator), false); + return createPromise( + 'deleteMany', + args, + new DeleteOperationHandler(client, model, inputValidator), + false, + ); }, count: (args: unknown) => { - return createPromise('count', args, new CountOperationHandler(client, model, inputValidator), false); + return createPromise( + 'count', + args, + new CountOperationHandler(client, model, inputValidator), + false, + ); }, aggregate: (args: unknown) => { return createPromise( 'aggregate', args, - new AggregateOperationHandler(client, model, inputValidator), + new AggregateOperationHandler(client, model, inputValidator), false, ); }, groupBy: (args: unknown) => { - return createPromise('groupBy', args, new GroupByOperationHandler(client, model, inputValidator)); + return createPromise('groupBy', args, new GroupByOperationHandler(client, model, inputValidator)); }, } as ModelOperations; } diff --git a/packages/runtime/src/utils/type-utils.ts b/packages/runtime/src/utils/type-utils.ts index b28119a3f..f6d784f01 100644 --- a/packages/runtime/src/utils/type-utils.ts +++ b/packages/runtime/src/utils/type-utils.ts @@ -22,23 +22,19 @@ export type WrapType = Optional extends true ? T[] : T; -export type MapBaseType = T extends 'String' - ? string - : T extends 'Boolean' - ? boolean - : T extends 'Int' | 'Float' - ? number - : T extends 'BigInt' - ? bigint - : T extends 'Decimal' - ? Decimal - : T extends 'DateTime' - ? Date - : T extends 'Bytes' - ? Uint8Array - : T extends 'Json' - ? JsonValue - : unknown; +type TypeMap = { + String: string; + Boolean: boolean; + Int: number; + Float: number; + BigInt: bigint; + Decimal: Decimal; + DateTime: Date; + Bytes: Uint8Array; + Json: JsonValue; +}; + +export type MapBaseType = T extends keyof TypeMap ? TypeMap[T] : unknown; export type JsonValue = string | number | boolean | null | JsonObject | JsonArray; diff --git a/packages/runtime/test/client-api/computed-fields.test.ts b/packages/runtime/test/client-api/computed-fields.test.ts index d81d2784e..ca7a16e51 100644 --- a/packages/runtime/test/client-api/computed-fields.test.ts +++ b/packages/runtime/test/client-api/computed-fields.test.ts @@ -14,7 +14,7 @@ model User { { computedFields: { User: { - upperName: (eb) => eb.fn('upper', ['name']), + upperName: (eb: any) => eb.fn('upper', ['name']), }, }, } as any, @@ -90,7 +90,7 @@ model User { { computedFields: { User: { - upperName: (eb) => eb.lit(null), + upperName: (eb: any) => eb.lit(null), }, }, } as any, diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 47d6ca7c4..6f00f2130 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@zenstackhq/sdk", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "ZenStack SDK", "type": "module", "scripts": { diff --git a/packages/tanstack-query/package.json b/packages/tanstack-query/package.json index 395b39a58..2e9dd4ada 100644 --- a/packages/tanstack-query/package.json +++ b/packages/tanstack-query/package.json @@ -1,6 +1,6 @@ { "name": "@zenstackhq/tanstack-query", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "", "main": "index.js", "type": "module", diff --git a/packages/testtools/package.json b/packages/testtools/package.json index 4c9c95a84..93c7fd54a 100644 --- a/packages/testtools/package.json +++ b/packages/testtools/package.json @@ -1,6 +1,6 @@ { "name": "@zenstackhq/testtools", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "ZenStack Test Tools", "type": "module", "scripts": { diff --git a/packages/typescript-config/package.json b/packages/typescript-config/package.json index 293a7af0c..836d1b552 100644 --- a/packages/typescript-config/package.json +++ b/packages/typescript-config/package.json @@ -1,6 +1,6 @@ { "name": "@zenstackhq/typescript-config", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "private": true, "license": "MIT" } diff --git a/packages/zod/package.json b/packages/zod/package.json index a46ae4bcc..a370f7288 100644 --- a/packages/zod/package.json +++ b/packages/zod/package.json @@ -1,6 +1,6 @@ { "name": "@zenstackhq/zod", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "", "type": "module", "main": "index.js", diff --git a/samples/blog/package.json b/samples/blog/package.json index 3b462ced5..d1486aac4 100644 --- a/samples/blog/package.json +++ b/samples/blog/package.json @@ -1,6 +1,6 @@ { "name": "sample-blog", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "description": "", "main": "index.js", "scripts": { diff --git a/tests/e2e/package.json b/tests/e2e/package.json index 6798c7455..1ecc87b97 100644 --- a/tests/e2e/package.json +++ b/tests/e2e/package.json @@ -1,6 +1,6 @@ { "name": "e2e", - "version": "3.0.0-alpha.11", + "version": "3.0.0-alpha.12", "private": true, "scripts": { "test": "vitest run"