diff --git a/packages/plugins/openapi/src/rpc-generator.ts b/packages/plugins/openapi/src/rpc-generator.ts index 0adb3ed8c..22a19e133 100644 --- a/packages/plugins/openapi/src/rpc-generator.ts +++ b/packages/plugins/openapi/src/rpc-generator.ts @@ -1,7 +1,16 @@ // Inspired by: https://github.com/omar-dulaimi/prisma-trpc-generator import { PluginError, PluginOptions, analyzePolicies, requireOption, resolvePath } from '@zenstackhq/sdk'; -import { DataModel, Model, TypeDef, TypeDefField, TypeDefFieldType, isDataModel, isEnum, isTypeDef } from '@zenstackhq/sdk/ast'; +import { + DataModel, + Model, + TypeDef, + TypeDefField, + TypeDefFieldType, + isDataModel, + isEnum, + isTypeDef, +} from '@zenstackhq/sdk/ast'; import { AggregateOperationSupport, addMissingInputObjectTypesForAggregate, @@ -48,7 +57,7 @@ export class RPCOpenAPIGenerator extends OpenAPIGeneratorBase { output = resolvePath(output, this.options); // input types - this.inputObjectTypes.push(...this.dmmf.schema.inputObjectTypes.prisma); + this.inputObjectTypes.push(...(this.dmmf.schema.inputObjectTypes.prisma ?? [])); this.outputObjectTypes.push(...this.dmmf.schema.outputObjectTypes.prisma); // add input object types that are missing from Prisma dmmf @@ -649,13 +658,13 @@ export class RPCOpenAPIGenerator extends OpenAPIGeneratorBase { for (const _enum of [...(this.dmmf.schema.enumTypes.model ?? []), ...this.dmmf.schema.enumTypes.prisma]) { schemas[upperCaseFirst(_enum.name)] = this.generateEnumComponent(_enum); } - + // Also add enums from AST that might not be in DMMF (e.g., only used in TypeDefs) for (const enumDecl of this.model.declarations.filter(isEnum)) { if (!schemas[upperCaseFirst(enumDecl.name)]) { schemas[upperCaseFirst(enumDecl.name)] = { type: 'string', - enum: enumDecl.fields.map(f => f.name) + enum: enumDecl.fields.map((f) => f.name), }; } } @@ -765,12 +774,15 @@ export class RPCOpenAPIGenerator extends OpenAPIGeneratorBase { return result; } - private generateField(def: { kind: DMMF.FieldKind; type: string; isList: boolean; isRequired: boolean; name?: string }, modelName?: string) { + private generateField( + def: { kind: DMMF.FieldKind; type: string; isList: boolean; isRequired: boolean; name?: string }, + modelName?: string + ) { // For Json fields, check if there's a corresponding TypeDef in the original model if (def.kind === 'scalar' && def.type === 'Json' && modelName && def.name) { - const dataModel = this.model.declarations.find(d => isDataModel(d) && d.name === modelName) as DataModel; + const dataModel = this.model.declarations.find((d) => isDataModel(d) && d.name === modelName) as DataModel; if (dataModel) { - const field = dataModel.fields.find(f => f.name === def.name); + const field = dataModel.fields.find((f) => f.name === def.name); if (field?.type.reference?.ref && isTypeDef(field.type.reference.ref)) { // This Json field references a TypeDef return this.wrapArray( @@ -876,7 +888,7 @@ export class RPCOpenAPIGenerator extends OpenAPIGeneratorBase { if (type.reference?.ref) { return this.ref(type.reference.ref.name, true); } - + // For scalar types, reuse the existing mapping logic // Note: Json type is handled as empty schema for consistency return match(type.type) @@ -913,7 +925,7 @@ export class RPCOpenAPIGenerator extends OpenAPIGeneratorBase { .with(P.union('JSON', 'Json'), () => { // For Json fields, check if there's a specific TypeDef reference // Otherwise, return empty schema for arbitrary JSON - const isTypeDefType = this.model.declarations.some(d => isTypeDef(d) && d.name === type); + const isTypeDefType = this.model.declarations.some((d) => isTypeDef(d) && d.name === type); return isTypeDefType ? this.ref(type, false) : {}; }) .otherwise((type) => this.ref(type.toString(), false)); diff --git a/packages/plugins/trpc/tests/projects/nuxt-trpc-v10/package.json b/packages/plugins/trpc/tests/projects/nuxt-trpc-v10/package.json index 8878cf2ab..d8049b8eb 100644 --- a/packages/plugins/trpc/tests/projects/nuxt-trpc-v10/package.json +++ b/packages/plugins/trpc/tests/projects/nuxt-trpc-v10/package.json @@ -10,7 +10,7 @@ "postinstall": "nuxt prepare" }, "dependencies": { - "@prisma/client": "6.14.x", + "@prisma/client": "6.15.x", "@trpc/client": "^10.45.2", "@trpc/server": "^10.45.2", "nuxt": "^3.14.1592", @@ -21,7 +21,7 @@ }, "devDependencies": { "esbuild": "^0.24.0", - "prisma": "6.14.x", + "prisma": "6.15.x", "typescript": "^5.6.2", "vue-tsc": "^2.1.10" } diff --git a/packages/plugins/trpc/tests/projects/nuxt-trpc-v11/package.json b/packages/plugins/trpc/tests/projects/nuxt-trpc-v11/package.json index 70f7cee39..c6171f71e 100644 --- a/packages/plugins/trpc/tests/projects/nuxt-trpc-v11/package.json +++ b/packages/plugins/trpc/tests/projects/nuxt-trpc-v11/package.json @@ -10,7 +10,7 @@ "postinstall": "nuxt prepare" }, "dependencies": { - "@prisma/client": "6.14.x", + "@prisma/client": "6.15.x", "@trpc/client": "^11.0.0-rc.563", "@trpc/server": "^11.0.0-rc.563", "nuxt": "^3.14.1592", @@ -21,7 +21,7 @@ }, "devDependencies": { "esbuild": "^0.24.0", - "prisma": "6.14.x", + "prisma": "6.15.x", "typescript": "^5.6.2", "vue-tsc": "^2.1.10" } diff --git a/packages/plugins/trpc/tests/projects/t3-trpc-v11/package.json b/packages/plugins/trpc/tests/projects/t3-trpc-v11/package.json index 7eb7ab042..c6b7088e4 100644 --- a/packages/plugins/trpc/tests/projects/t3-trpc-v11/package.json +++ b/packages/plugins/trpc/tests/projects/t3-trpc-v11/package.json @@ -15,7 +15,7 @@ "start": "next start" }, "dependencies": { - "@prisma/client": "6.14.x", + "@prisma/client": "6.15.x", "@t3-oss/env-nextjs": "^0.10.1", "@tanstack/react-query": "^5.50.0", "@trpc/client": "^11.0.0-rc.446", @@ -39,7 +39,7 @@ "@typescript-eslint/parser": "^8.1.0", "eslint": "^8.57.0", "eslint-config-next": "^14.2.4", - "prisma": "6.14.x", + "prisma": "6.15.x", "typescript": "^5.5.3" }, "ct3aMetadata": { diff --git a/packages/runtime/package.json b/packages/runtime/package.json index ee4c006eb..696553a1d 100644 --- a/packages/runtime/package.json +++ b/packages/runtime/package.json @@ -113,7 +113,7 @@ "zod-validation-error": "catalog:" }, "peerDependencies": { - "@prisma/client": "5.0.0 - 6.14.x", + "@prisma/client": "5.0.0 - 6.15.x", "zod": "catalog:" }, "author": { diff --git a/packages/schema/package.json b/packages/schema/package.json index 84c7b89a3..4929694ee 100644 --- a/packages/schema/package.json +++ b/packages/schema/package.json @@ -116,11 +116,11 @@ "zod-validation-error": "catalog:" }, "peerDependencies": { - "prisma": "5.0.0 - 6.14.x", + "prisma": "5.0.0 - 6.15.x", "zod": "catalog:" }, "devDependencies": { - "@prisma/client": "6.14.x", + "@prisma/client": "6.15.x", "@types/async-exit-hook": "^2.0.0", "@types/pluralize": "^0.0.29", "@types/semver": "^7.3.13", diff --git a/packages/schema/src/plugins/enhancer/enhance/index.ts b/packages/schema/src/plugins/enhancer/enhance/index.ts index 313674569..81ab61a5c 100644 --- a/packages/schema/src/plugins/enhancer/enhance/index.ts +++ b/packages/schema/src/plugins/enhancer/enhance/index.ts @@ -479,7 +479,7 @@ export type Enhanced = // they may be incorrectly represented as required, we need to fix that for input types // also, if a FK field is of such case, its corresponding relation field should be optional const createInputPattern = new RegExp(`^(.+?)(Unchecked)?Create.*Input$`); - for (const inputType of dmmf.schema.inputObjectTypes.prisma) { + for (const inputType of dmmf.schema.inputObjectTypes.prisma ?? []) { const match = inputType.name.match(createInputPattern); const modelName = this.resolveName(match?.[1]); if (modelName) { @@ -570,8 +570,8 @@ export type Enhanced = const project = new Project(); // remove delegate_aux_* fields from the prismaNamespace.ts - const internalFilename = `${prismaClientDir}/internal/prismaNamespace.ts` - const internalFilenameFixed = `${prismaClientDir}/internal/prismaNamespace-fixed.ts` + const internalFilename = `${prismaClientDir}/internal/prismaNamespace.ts`; + const internalFilenameFixed = `${prismaClientDir}/internal/prismaNamespace-fixed.ts`; const internalSf = project.addSourceFileAtPath(internalFilename); const syntaxList = internalSf.getChildren()[0]; if (!Node.isSyntaxList(syntaxList)) { diff --git a/packages/schema/src/plugins/zod/generator.ts b/packages/schema/src/plugins/zod/generator.ts index 7a7a94b39..68922a662 100644 --- a/packages/schema/src/plugins/zod/generator.ts +++ b/packages/schema/src/plugins/zod/generator.ts @@ -89,7 +89,7 @@ export class ZodSchemaGenerator { (o) => !excludeModels.find((e) => e === o.model) ); - const inputObjectTypes = prismaClientDmmf.schema.inputObjectTypes.prisma.filter( + const inputObjectTypes = (prismaClientDmmf.schema.inputObjectTypes.prisma ?? []).filter( (type) => !excludeModels.some((e) => type.name.toLowerCase().startsWith(e.toLocaleLowerCase())) && // exclude delegate aux related types diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 27333338d..3d9c39fa8 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -18,8 +18,8 @@ "author": "", "license": "MIT", "dependencies": { - "@prisma/generator-helper": "6.14.x", - "@prisma/internals": "6.14.x", + "@prisma/generator-helper": "6.15.x", + "@prisma/internals": "6.15.x", "@zenstackhq/language": "workspace:*", "@zenstackhq/runtime": "workspace:*", "langium": "1.3.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 19cf7f671..ffb106501 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -383,8 +383,8 @@ importers: packages/runtime: dependencies: '@prisma/client': - specifier: 5.0.0 - 6.14.x - version: 6.13.0(prisma@6.0.0)(typescript@5.9.2) + specifier: 5.0.0 - 6.15.x + version: 6.15.0(prisma@6.0.0)(typescript@5.9.2) bcryptjs: specifier: ^2.4.3 version: 2.4.3 @@ -484,7 +484,7 @@ importers: specifier: ^4.0.0 version: 4.0.1 prisma: - specifier: 5.0.0 - 6.14.x + specifier: 5.0.0 - 6.15.x version: 6.0.0 semver: specifier: ^7.5.2 @@ -527,8 +527,8 @@ importers: version: 4.0.1(zod@3.25.76) devDependencies: '@prisma/client': - specifier: 6.14.x - version: 6.13.0(prisma@6.0.0)(typescript@5.9.2) + specifier: 6.15.x + version: 6.15.0(prisma@6.0.0)(typescript@5.9.2) '@types/async-exit-hook': specifier: ^2.0.0 version: 2.0.2 @@ -579,11 +579,11 @@ importers: packages/sdk: dependencies: '@prisma/generator-helper': - specifier: 6.14.x - version: 6.13.0 + specifier: 6.15.x + version: 6.15.0 '@prisma/internals': - specifier: 6.14.x - version: 6.13.0(typescript@5.9.2) + specifier: 6.15.x + version: 6.15.0(typescript@5.9.2) '@zenstackhq/language': specifier: workspace:* version: link:../language/dist @@ -922,10 +922,6 @@ packages: resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} engines: {node: '>=6.9.0'} - '@babel/code-frame@7.27.1': - resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} - engines: {node: '>=6.9.0'} - '@babel/compat-data@7.24.7': resolution: {integrity: sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==} engines: {node: '>=6.9.0'} @@ -1016,10 +1012,6 @@ packages: resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.27.1': - resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} - engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.7': resolution: {integrity: sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==} engines: {node: '>=6.9.0'} @@ -2488,8 +2480,8 @@ packages: prisma: optional: true - '@prisma/client@6.13.0': - resolution: {integrity: sha512-8m2+I3dQovkV8CkDMluiwEV1TxV9EXdT6xaCz39O6jYw7mkf5gwfmi+cL4LJsEPwz5tG7sreBwkRpEMJedGYUQ==} + '@prisma/client@6.15.0': + resolution: {integrity: sha512-wR2LXUbOH4cL/WToatI/Y2c7uzni76oNFND7+23ypLllBmIS8e3ZHhO+nud9iXSXKFt1SoM3fTZvHawg63emZw==} engines: {node: '>=18.18'} peerDependencies: prisma: '*' @@ -2500,8 +2492,8 @@ packages: typescript: optional: true - '@prisma/config@6.13.0': - resolution: {integrity: sha512-OYMM+pcrvj/NqNWCGESSxVG3O7kX6oWuGyvufTUNnDw740KIQvNyA4v0eILgkpuwsKIDU36beZCkUtIt0naTog==} + '@prisma/config@6.15.0': + resolution: {integrity: sha512-KMEoec9b2u6zX0EbSEx/dRpx1oNLjqJEBZYyK0S3TTIbZ7GEGoVyGyFRk4C72+A38cuPLbfQGQvgOD+gBErKlA==} '@prisma/debug@5.14.0': resolution: {integrity: sha512-iq56qBZuFfX3fCxoxT8gBX33lQzomBU0qIUaEj1RebsKVz1ob/BVH1XSBwwwvRVtZEV1b7Fxx2eVu34Ge/mg3w==} @@ -2509,14 +2501,14 @@ packages: '@prisma/debug@6.0.0': resolution: {integrity: sha512-eUjoNThlDXdyJ1iQ2d7U6aTVwm59EwvODb5zFVNJEokNoSiQmiYWNzZIwZyDmZ+j51j42/0iTaHIJ4/aZPKFRg==} - '@prisma/debug@6.13.0': - resolution: {integrity: sha512-um+9pfKJW0ihmM83id9FXGi5qEbVJ0Vxi1Gm0xpYsjwUBnw6s2LdPBbrsG9QXRX46K4CLWCTNvskXBup4i9hlw==} + '@prisma/debug@6.15.0': + resolution: {integrity: sha512-y7cSeLuQmyt+A3hstAs6tsuAiVXSnw9T55ra77z0nbNkA8Lcq9rNcQg6PI00by/+WnE/aMRJ/W7sZWn2cgIy1g==} - '@prisma/dmmf@6.13.0': - resolution: {integrity: sha512-69qWP2ddIpI2L3VyQkwGjhtyj1CNXUJ0qZPLa1VmZ27h20rUXBPflLAel9EtOyct/GSTjSq8qjBbhW5ohrfbSw==} + '@prisma/dmmf@6.15.0': + resolution: {integrity: sha512-HAUnWmxjtx8sJevhNhimSfAgho5JR6+H51DpQMZd1C5m1m4jOYkNIZ6oAdujls+Yo9iObfix4sUcvHmQY2HFQQ==} - '@prisma/driver-adapter-utils@6.13.0': - resolution: {integrity: sha512-72gQS/rz0KRV1bvi37OGu5PgMAzTQplFZuTo1kSb4hK7sm0PTvl7+V4NFHdwXEUecTq/+FnF9Ts9Ac+iKPnEow==} + '@prisma/driver-adapter-utils@6.15.0': + resolution: {integrity: sha512-tzcMG1eEBM3IJ8TBHo4jGeoUaalctqGXbrvxIoZb8jSEtgR82IUhdVyHHLVTlT8MdrHovcQJJ3jfcQfJARRnaQ==} '@prisma/engines-version@5.14.0-25.e9771e62de70f79a5e1c604a2d7c8e2a0a874b48': resolution: {integrity: sha512-ip6pNkRo1UxWv+6toxNcYvItNYaqQjXdFNGJ+Nuk2eYtRoEdoF13wxo7/jsClJFFenMPVNVqXQDV0oveXnR1cA==} @@ -2524,8 +2516,8 @@ packages: '@prisma/engines-version@5.23.0-27.5dbef10bdbfb579e07d35cc85fb1518d357cb99e': resolution: {integrity: sha512-JmIds0Q2/vsOmnuTJYxY4LE+sajqjYKhLtdOT6y4imojqv5d/aeVEfbBGC74t8Be1uSp0OP8lxIj2OqoKbLsfQ==} - '@prisma/engines-version@6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd': - resolution: {integrity: sha512-MpPyKSzBX7P/ZY9odp9TSegnS/yH3CSbchQE9f0yBg3l2QyN59I6vGXcoYcqKC9VTniS1s18AMmhyr1OWavjHg==} + '@prisma/engines-version@6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb': + resolution: {integrity: sha512-a/46aK5j6L3ePwilZYEgYDPrhBQ/n4gYjLxT5YncUTJJNRnTCVjPF86QdzUOLRdYjCLfhtZp9aum90W0J+trrg==} '@prisma/engines@5.14.0': resolution: {integrity: sha512-lgxkKZ6IEygVcw6IZZUlPIfLQ9hjSYAtHjZ5r64sCLDgVzsPFCi2XBBJgzPMkOQ5RHzUD4E/dVdpn9+ez8tk1A==} @@ -2533,8 +2525,8 @@ packages: '@prisma/engines@6.0.0': resolution: {integrity: sha512-ZZCVP3q22ifN6Ex6C8RIcTDBlRtMJS2H1ljV0knCiWNGArvvkEbE88W3uDdq/l4+UvyvHpGzdf9ZsCWSQR7ZQQ==} - '@prisma/engines@6.13.0': - resolution: {integrity: sha512-D+1B79LFvtWA0KTt8ALekQ6A/glB9w10ETknH5Y9g1k2NYYQOQy93ffiuqLn3Pl6IPJG3EsK/YMROKEaq8KBrA==} + '@prisma/engines@6.15.0': + resolution: {integrity: sha512-opITiR5ddFJ1N2iqa7mkRlohCZqVSsHhRcc29QXeldMljOf4FSellLT0J5goVb64EzRTKcIDeIsJBgmilNcKxA==} '@prisma/fetch-engine@5.14.0': resolution: {integrity: sha512-VrheA9y9DMURK5vu8OJoOgQpxOhas3qF0IBHJ8G/0X44k82kc8E0w98HCn2nhnbOOMwbWsJWXfLC2/F8n5u0gQ==} @@ -2542,17 +2534,17 @@ packages: '@prisma/fetch-engine@6.0.0': resolution: {integrity: sha512-j2m+iO5RDPRI7SUc7sHo8wX7SA4iTkJ+18Sxch8KinQM46YiCQD1iXKN6qU79C1Fliw5Bw/qDyTHaTsa3JMerA==} - '@prisma/fetch-engine@6.13.0': - resolution: {integrity: sha512-grmmq+4FeFKmaaytA8Ozc2+Tf3BC8xn/DVJos6LL022mfRlMZYjT3hZM0/xG7+5fO95zFG9CkDUs0m1S2rXs5Q==} + '@prisma/fetch-engine@6.15.0': + resolution: {integrity: sha512-xcT5f6b+OWBq6vTUnRCc7qL+Im570CtwvgSj+0MTSGA1o9UDSKZ/WANvwtiRXdbYWECpyC3CukoG3A04VTAPHw==} '@prisma/generator-helper@5.14.0': resolution: {integrity: sha512-xVc71cmTnPZ0lnSs4FAY6Ta72vFJ3webrQwKMQ2ujr6hDG1VPIEf820T1TOS3ZZQd/OKigNKXnq3co8biz9/qw==} - '@prisma/generator-helper@6.13.0': - resolution: {integrity: sha512-6v5k9sGMhRDAnWxVfIo7QlewgVyOhr2NykyNh/PaH55g0LDswiTSYDfPPKyCPLxjDG0eA7FFX+gDyf94QkLT1A==} + '@prisma/generator-helper@6.15.0': + resolution: {integrity: sha512-QHwXmVo52tcbbqT72He+3iEjNFQmf26Pxt/FrA9rvM/AmpTeSVdwFWf7tJVk1p0CH/mL8hmgHMzzt6wjy3Aa3A==} - '@prisma/generator@6.13.0': - resolution: {integrity: sha512-vlV1qiEEb1w7D1J0h5/rz3ppgM/BRcJP5xz2QqHBlbjcAWzJjHkHsxeuC/OmkO4uHZXe9T2dGtf/nTw29UsBzA==} + '@prisma/generator@6.15.0': + resolution: {integrity: sha512-STY+e1wHAwl6rvnsmGG6/6ckVG9oRsYVP7W80N9dHSRxx2Wq1A9TxQBWRE8pep2Rq9hSoXNxJV0xcYwzC9K7Vg==} '@prisma/get-platform@5.14.0': resolution: {integrity: sha512-/yAyBvcEjRv41ynZrhdrPtHgk47xLRRq/o5eWGcUpBJ1YrUZTYB8EoPiopnP7iQrMATK8stXQdPOoVlrzuTQZw==} @@ -2560,14 +2552,14 @@ packages: '@prisma/get-platform@6.0.0': resolution: {integrity: sha512-PS6nYyIm9g8C03E4y7LknOfdCw/t2KyEJxntMPQHQZCOUgOpF82Ma60mdlOD08w90I3fjLiZZ0+MadenR3naDQ==} - '@prisma/get-platform@6.13.0': - resolution: {integrity: sha512-Nii2pX50fY4QKKxQwm7/vvqT6Ku8yYJLZAFX4e2vzHwRdMqjugcOG5hOSLjxqoXb0cvOspV70TOhMzrw8kqAnw==} + '@prisma/get-platform@6.15.0': + resolution: {integrity: sha512-Jbb+Xbxyp05NSR1x2epabetHiXvpO8tdN2YNoWoA/ZsbYyxxu/CO/ROBauIFuMXs3Ti+W7N7SJtWsHGaWte9Rg==} '@prisma/internals@5.14.0': resolution: {integrity: sha512-s0JRNDmR2bvcyy0toz89jy7SbbjANAs4e9KCReNvSm5czctIaZzDf68tcOXdtH0G7m9mKhVhNPdS9lMky0DhWA==} - '@prisma/internals@6.13.0': - resolution: {integrity: sha512-bVvbtT3hPem+oPr0R7ssfsT+gzi+29wux90SGSS5bytNkRwz+Ndbxk/H4w1ErLwN5ekizm2Uk51J6rwlkajbkQ==} + '@prisma/internals@6.15.0': + resolution: {integrity: sha512-0OptdhDwTSuICwk+Z8Oy47/jYF6ARD6ntUy71iQ64Pw0zDoSlUIhNLPKGngtZMo2iN0Dk7HPdgZj9dD9JvlCxw==} peerDependencies: typescript: '>=5.1.0' peerDependenciesMeta: @@ -2580,17 +2572,17 @@ packages: '@prisma/prisma-schema-wasm@5.14.0-25.e9771e62de70f79a5e1c604a2d7c8e2a0a874b48': resolution: {integrity: sha512-WeTmJ0mK8ALoKJUQFO+465k9lm1JWS4ODUg7akJq1wjgyDU1RTAzDFli8ESmNJlMVgJgoAd6jXmzcnoA0HT9Lg==} - '@prisma/prisma-schema-wasm@6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd': - resolution: {integrity: sha512-qGm3hbUD9lFWXVqY48v+82F0bWyJHSAFFTKssCzbEsIUDOofmy3d50M9U9fyyOoRrKMekj9YfNhcdThMkIaxxw==} + '@prisma/prisma-schema-wasm@6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb': + resolution: {integrity: sha512-vLhm9JB2xWzl3TxM0HRqbbDNuoqOuVP+veYUuxCeRfCoX6wMu65nTY0+Dxs0LPUWRzViM+antAmHUlDgnWLelw==} - '@prisma/schema-engine-wasm@6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd': - resolution: {integrity: sha512-GqtV354QSP6svheo1FYb87i/OXFw3QF8kX11MFRYTbsB3a4n+uyx9fo646yIASPQ9WPZJeFo02TARWUx69IV/A==} + '@prisma/schema-engine-wasm@6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb': + resolution: {integrity: sha512-dmndTnOWV/8Evx+jrzRaXE+Qr6teeMmEUNRoAiGpbfWjFalZBYdt1Os3h1SHsTAgOFm6cafGlBR6eh0vBB8A3A==} '@prisma/schema-files-loader@5.14.0': resolution: {integrity: sha512-n1QHR2C63dARKPZe0WPn7biybcBHzXe+BEmiHC5Drq9KPWnpmQtIfGpqm1ZKdvCZfcA5FF3wgpSMPK4LnB0obQ==} - '@prisma/schema-files-loader@6.13.0': - resolution: {integrity: sha512-qalemg1t21AMa4JE6ZSgWn2bVJLV7SHYCJSnweur8CVwTKvZnNFlQMFJBHQsnvulvpm/Dvw3nBDebTL3Q04liw==} + '@prisma/schema-files-loader@6.15.0': + resolution: {integrity: sha512-Yxgj/H0B2ic8q982PKITgeFUCAgAqhc/cg+7bBL1VbcMqfV5PXD/Jm8mBA4v261EUTgUdkHYZnZhwepajzJWsg==} '@protobufjs/aspromise@1.1.2': resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} @@ -4621,6 +4613,10 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + empathic@2.0.0: + resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==} + engines: {node: '>=14'} + emphasize@4.2.0: resolution: {integrity: sha512-yGKvcFUHlBsUPwlxTlzKLR8+zhpbitkFOMCUxN8fTJng9bdH3WNzUGkhdaGdjndSUgqmMPBN7umfwnUdLz5Axg==} @@ -4945,10 +4941,6 @@ packages: resolution: {integrity: sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==} engines: {node: '>=4.0.0'} - find-up-simple@1.0.1: - resolution: {integrity: sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ==} - engines: {node: '>=18'} - find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -5370,10 +5362,6 @@ packages: resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} engines: {node: '>=8'} - index-to-position@1.1.0: - resolution: {integrity: sha512-XPdx9Dq4t9Qk1mTMbWONJqU7boCoumEH7fRET37HX5+khDUl3J2W6PdALxhILYlIYx2amlwYcRPp28p0tSiojg==} - engines: {node: '>=18'} - inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. @@ -6626,10 +6614,6 @@ packages: resolution: {integrity: sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw==} engines: {node: '>=16'} - parse-json@8.3.0: - resolution: {integrity: sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==} - engines: {node: '>=18'} - parse-path@7.0.0: resolution: {integrity: sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==} @@ -7222,18 +7206,10 @@ packages: resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} engines: {node: '>=0.10.0'} - read-package-up@11.0.0: - resolution: {integrity: sha512-MbgfoNPANMdb4oRBNg5eqLbB2t2r+o5Ua1pNt8BqGp4I0FJZhuVSOj3PaBPni4azWuSzEdNn2evevzVmEk1ohQ==} - engines: {node: '>=18'} - read-pkg@8.1.0: resolution: {integrity: sha512-PORM8AgzXeskHO/WEv312k9U03B8K9JSiWF/8N9sUuFjBa+9SF2u6K7VClzXwDXab51jCd8Nd36CNM+zR97ScQ==} engines: {node: '>=16'} - read-pkg@9.0.1: - resolution: {integrity: sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA==} - engines: {node: '>=18'} - read@1.0.7: resolution: {integrity: sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==} engines: {node: '>=0.8'} @@ -8947,12 +8923,6 @@ snapshots: '@babel/highlight': 7.24.7 picocolors: 1.0.1 - '@babel/code-frame@7.27.1': - dependencies: - '@babel/helper-validator-identifier': 7.27.1 - js-tokens: 4.0.0 - picocolors: 1.1.1 - '@babel/compat-data@7.24.7': {} '@babel/core@7.24.7': @@ -9088,8 +9058,6 @@ snapshots: '@babel/helper-validator-identifier@7.24.7': {} - '@babel/helper-validator-identifier@7.27.1': {} - '@babel/helper-validator-option@7.24.7': {} '@babel/helpers@7.24.7': @@ -10602,17 +10570,17 @@ snapshots: optionalDependencies: prisma: 6.0.0 - '@prisma/client@6.13.0(prisma@6.0.0)(typescript@5.9.2)': + '@prisma/client@6.15.0(prisma@6.0.0)(typescript@5.9.2)': optionalDependencies: prisma: 6.0.0 typescript: 5.9.2 - '@prisma/config@6.13.0': + '@prisma/config@6.15.0': dependencies: c12: 3.1.0 deepmerge-ts: 7.1.5 effect: 3.16.12 - read-package-up: 11.0.0 + empathic: 2.0.0 transitivePeerDependencies: - magicast @@ -10620,19 +10588,19 @@ snapshots: '@prisma/debug@6.0.0': {} - '@prisma/debug@6.13.0': {} + '@prisma/debug@6.15.0': {} - '@prisma/dmmf@6.13.0': {} + '@prisma/dmmf@6.15.0': {} - '@prisma/driver-adapter-utils@6.13.0': + '@prisma/driver-adapter-utils@6.15.0': dependencies: - '@prisma/debug': 6.13.0 + '@prisma/debug': 6.15.0 '@prisma/engines-version@5.14.0-25.e9771e62de70f79a5e1c604a2d7c8e2a0a874b48': {} '@prisma/engines-version@5.23.0-27.5dbef10bdbfb579e07d35cc85fb1518d357cb99e': {} - '@prisma/engines-version@6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd': {} + '@prisma/engines-version@6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb': {} '@prisma/engines@5.14.0': dependencies: @@ -10648,12 +10616,12 @@ snapshots: '@prisma/fetch-engine': 6.0.0 '@prisma/get-platform': 6.0.0 - '@prisma/engines@6.13.0': + '@prisma/engines@6.15.0': dependencies: - '@prisma/debug': 6.13.0 - '@prisma/engines-version': 6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd - '@prisma/fetch-engine': 6.13.0 - '@prisma/get-platform': 6.13.0 + '@prisma/debug': 6.15.0 + '@prisma/engines-version': 6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb + '@prisma/fetch-engine': 6.15.0 + '@prisma/get-platform': 6.15.0 '@prisma/fetch-engine@5.14.0': dependencies: @@ -10667,23 +10635,23 @@ snapshots: '@prisma/engines-version': 5.23.0-27.5dbef10bdbfb579e07d35cc85fb1518d357cb99e '@prisma/get-platform': 6.0.0 - '@prisma/fetch-engine@6.13.0': + '@prisma/fetch-engine@6.15.0': dependencies: - '@prisma/debug': 6.13.0 - '@prisma/engines-version': 6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd - '@prisma/get-platform': 6.13.0 + '@prisma/debug': 6.15.0 + '@prisma/engines-version': 6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb + '@prisma/get-platform': 6.15.0 '@prisma/generator-helper@5.14.0': dependencies: '@prisma/debug': 5.14.0 - '@prisma/generator-helper@6.13.0': + '@prisma/generator-helper@6.15.0': dependencies: - '@prisma/debug': 6.13.0 - '@prisma/dmmf': 6.13.0 - '@prisma/generator': 6.13.0 + '@prisma/debug': 6.15.0 + '@prisma/dmmf': 6.15.0 + '@prisma/generator': 6.15.0 - '@prisma/generator@6.13.0': {} + '@prisma/generator@6.15.0': {} '@prisma/get-platform@5.14.0': dependencies: @@ -10693,9 +10661,9 @@ snapshots: dependencies: '@prisma/debug': 6.0.0 - '@prisma/get-platform@6.13.0': + '@prisma/get-platform@6.15.0': dependencies: - '@prisma/debug': 6.13.0 + '@prisma/debug': 6.15.0 '@prisma/internals@5.14.0': dependencies: @@ -10709,20 +10677,20 @@ snapshots: arg: 5.0.2 prompts: 2.4.2 - '@prisma/internals@6.13.0(typescript@5.9.2)': - dependencies: - '@prisma/config': 6.13.0 - '@prisma/debug': 6.13.0 - '@prisma/dmmf': 6.13.0 - '@prisma/driver-adapter-utils': 6.13.0 - '@prisma/engines': 6.13.0 - '@prisma/fetch-engine': 6.13.0 - '@prisma/generator': 6.13.0 - '@prisma/generator-helper': 6.13.0 - '@prisma/get-platform': 6.13.0 - '@prisma/prisma-schema-wasm': 6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd - '@prisma/schema-engine-wasm': 6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd - '@prisma/schema-files-loader': 6.13.0 + '@prisma/internals@6.15.0(typescript@5.9.2)': + dependencies: + '@prisma/config': 6.15.0 + '@prisma/debug': 6.15.0 + '@prisma/dmmf': 6.15.0 + '@prisma/driver-adapter-utils': 6.15.0 + '@prisma/engines': 6.15.0 + '@prisma/fetch-engine': 6.15.0 + '@prisma/generator': 6.15.0 + '@prisma/generator-helper': 6.15.0 + '@prisma/get-platform': 6.15.0 + '@prisma/prisma-schema-wasm': 6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb + '@prisma/schema-engine-wasm': 6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb + '@prisma/schema-files-loader': 6.15.0 arg: 5.0.2 prompts: 2.4.2 optionalDependencies: @@ -10734,18 +10702,18 @@ snapshots: '@prisma/prisma-schema-wasm@5.14.0-25.e9771e62de70f79a5e1c604a2d7c8e2a0a874b48': {} - '@prisma/prisma-schema-wasm@6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd': {} + '@prisma/prisma-schema-wasm@6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb': {} - '@prisma/schema-engine-wasm@6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd': {} + '@prisma/schema-engine-wasm@6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb': {} '@prisma/schema-files-loader@5.14.0': dependencies: '@prisma/prisma-schema-wasm': 5.14.0-17.56ca112d5a19c9925b53af75c3c6b7ada97f9f85 fs-extra: 11.1.1 - '@prisma/schema-files-loader@6.13.0': + '@prisma/schema-files-loader@6.15.0': dependencies: - '@prisma/prisma-schema-wasm': 6.13.0-35.361e86d0ea4987e9f53a565309b3eed797a6bcbd + '@prisma/prisma-schema-wasm': 6.15.0-5.85179d7826409ee107a6ba334b5e305ae3fba9fb fs-extra: 11.3.0 '@protobufjs/aspromise@1.1.2': {} @@ -13077,6 +13045,8 @@ snapshots: emoji-regex@9.2.2: {} + empathic@2.0.0: {} + emphasize@4.2.0: dependencies: chalk: 4.1.2 @@ -13600,8 +13570,6 @@ snapshots: dependencies: array-back: 3.1.0 - find-up-simple@1.0.1: {} - find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -14085,8 +14053,6 @@ snapshots: indent-string@4.0.0: {} - index-to-position@1.1.0: {} - inflight@1.0.6: dependencies: once: 1.4.0 @@ -15774,12 +15740,6 @@ snapshots: lines-and-columns: 2.0.4 type-fest: 3.13.1 - parse-json@8.3.0: - dependencies: - '@babel/code-frame': 7.27.1 - index-to-position: 1.1.0 - type-fest: 4.41.0 - parse-path@7.0.0: dependencies: protocols: 2.0.1 @@ -16370,12 +16330,6 @@ snapshots: dependencies: loose-envify: 1.4.0 - read-package-up@11.0.0: - dependencies: - find-up-simple: 1.0.1 - read-pkg: 9.0.1 - type-fest: 4.41.0 - read-pkg@8.1.0: dependencies: '@types/normalize-package-data': 2.4.4 @@ -16383,14 +16337,6 @@ snapshots: parse-json: 7.1.1 type-fest: 4.41.0 - read-pkg@9.0.1: - dependencies: - '@types/normalize-package-data': 2.4.4 - normalize-package-data: 6.0.2 - parse-json: 8.3.0 - type-fest: 4.41.0 - unicorn-magic: 0.1.0 - read@1.0.7: dependencies: mute-stream: 0.0.8 diff --git a/tests/integration/test-run/package.json b/tests/integration/test-run/package.json index e5aff4495..fe3585f77 100644 --- a/tests/integration/test-run/package.json +++ b/tests/integration/test-run/package.json @@ -10,9 +10,9 @@ "author": "", "license": "ISC", "dependencies": { - "@prisma/client": "6.14.x", + "@prisma/client": "6.15.x", "@zenstackhq/runtime": "file:../../../packages/runtime/dist", - "prisma": "6.14.x", + "prisma": "6.15.x", "react": "^18.2.0", "swr": "^1.3.0", "zenstack": "file:../../../packages/schema/dist", diff --git a/tests/integration/tests/cli/plugins.test.ts b/tests/integration/tests/cli/plugins.test.ts index ffb841cd3..218ce31d3 100644 --- a/tests/integration/tests/cli/plugins.test.ts +++ b/tests/integration/tests/cli/plugins.test.ts @@ -75,7 +75,7 @@ describe('CLI Plugins Tests', () => { 'swr', '@tanstack/react-query@5.56.x', '@trpc/server', - '@prisma/client@6.14.x', + '@prisma/client@6.15.x', `${path.join(__dirname, '../../../../.build/zenstackhq-language-' + ver + '.tgz')}`, `${path.join(__dirname, '../../../../.build/zenstackhq-sdk-' + ver + '.tgz')}`, `${path.join(__dirname, '../../../../.build/zenstackhq-runtime-' + ver + '.tgz')}`, @@ -85,7 +85,7 @@ describe('CLI Plugins Tests', () => { const devDepPkgs = [ 'typescript', '@types/react', - 'prisma@6.14.x', + 'prisma@6.15.x', `${path.join(__dirname, '../../../../.build/zenstack-' + ver + '.tgz')}`, `${path.join(__dirname, '../../../../.build/zenstackhq-tanstack-query-' + ver + '.tgz')}`, `${path.join(__dirname, '../../../../.build/zenstackhq-swr-' + ver + '.tgz')}`, diff --git a/tests/integration/tests/frameworks/nextjs/test-project/package.json b/tests/integration/tests/frameworks/nextjs/test-project/package.json index cae2a6a0a..8a7b46e61 100644 --- a/tests/integration/tests/frameworks/nextjs/test-project/package.json +++ b/tests/integration/tests/frameworks/nextjs/test-project/package.json @@ -9,7 +9,7 @@ "lint": "next lint" }, "dependencies": { - "@prisma/client": "6.14.x", + "@prisma/client": "6.15.x", "@types/node": "18.11.18", "@types/react": "18.0.27", "@types/react-dom": "18.0.10", @@ -26,6 +26,6 @@ "@zenstackhq/swr": "../../../../../../../packages/plugins/swr/dist" }, "devDependencies": { - "prisma": "6.14.x" + "prisma": "6.15.x" } } diff --git a/tests/integration/tests/frameworks/trpc/test-project/package.json b/tests/integration/tests/frameworks/trpc/test-project/package.json index 8b854c04e..da148a929 100644 --- a/tests/integration/tests/frameworks/trpc/test-project/package.json +++ b/tests/integration/tests/frameworks/trpc/test-project/package.json @@ -9,7 +9,7 @@ "lint": "next lint" }, "dependencies": { - "@prisma/client": "6.14.x", + "@prisma/client": "6.15.x", "@tanstack/react-query": "^4.22.4", "@trpc/client": "^10.34.0", "@trpc/next": "^10.34.0", @@ -31,6 +31,6 @@ "@zenstackhq/trpc": "../../../../../../../packages/plugins/trpc/dist" }, "devDependencies": { - "prisma": "6.14.x" + "prisma": "6.15.x" } }