Created
August 14, 2025 17:43
-
-
Save vinnymac/0fd3ee4c9ed5655fbffd9e48c6c9a1fd to your computer and use it in GitHub Desktop.
Patch to workaround issue in the soft delete extension that prevents compatibility with newer versions of Prisma
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/dist/lib/helpers/createParams.js b/dist/lib/helpers/createParams.js | |
index d389df498fbac20e7e1d306d52d997339c83e656..66bba54e5424d7706b168a2c857ea987de3ac519 100644 | |
--- a/dist/lib/helpers/createParams.js | |
+++ b/dist/lib/helpers/createParams.js | |
@@ -5,22 +5,29 @@ const client_1 = require("@prisma/client"); | |
const nestedReads_1 = require("../utils/nestedReads"); | |
const uniqueFieldsByModel = {}; | |
const uniqueIndexFieldsByModel = {}; | |
-client_1.Prisma.dmmf.datamodel.models.forEach((model) => { | |
- // add unique fields derived from indexes | |
- const uniqueIndexFields = []; | |
- model.uniqueFields.forEach((field) => { | |
- uniqueIndexFields.push(field.join("_")); | |
- }); | |
- uniqueIndexFieldsByModel[model.name] = uniqueIndexFields; | |
- // add id field and unique fields from @unique decorator | |
- const uniqueFields = []; | |
- model.fields.forEach((field) => { | |
- if (field.isId || field.isUnique) { | |
- uniqueFields.push(field.name); | |
+// Fix for Prisma 6 compatibility - check if dmmf exists and has the expected structure | |
+if (client_1.Prisma.dmmf && client_1.Prisma.dmmf.datamodel && client_1.Prisma.dmmf.datamodel.models) { | |
+ client_1.Prisma.dmmf.datamodel.models.forEach((model) => { | |
+ // add unique fields derived from indexes | |
+ const uniqueIndexFields = []; | |
+ if (model.uniqueFields) { | |
+ model.uniqueFields.forEach((field) => { | |
+ uniqueIndexFields.push(field.join("_")); | |
+ }); | |
+ } | |
+ uniqueIndexFieldsByModel[model.name] = uniqueIndexFields; | |
+ // add id field and unique fields from @unique decorator | |
+ const uniqueFields = []; | |
+ if (model.fields) { | |
+ model.fields.forEach((field) => { | |
+ if (field.isId || field.isUnique) { | |
+ uniqueFields.push(field.name); | |
+ } | |
+ }); | |
} | |
+ uniqueFieldsByModel[model.name] = uniqueFields; | |
}); | |
- uniqueFieldsByModel[model.name] = uniqueFields; | |
-}); | |
+} | |
const createDeleteParams = ({ field, createValue }, params) => { | |
var _a, _b; | |
if (!params.model || |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment