From 793300945c44c54f922652e21815e2fd31614dc5 Mon Sep 17 00:00:00 2001 From: Hugo FOYART <11079152+foyarash@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:16:16 +0100 Subject: [PATCH] fix: remove anyOf for one-to-many relations (#525) --- .changeset/clean-dolphins-report.md | 5 +++++ apps/example/options.tsx | 10 ++++++++++ packages/generator-prisma/src/dmmf.ts | 7 +++++++ 3 files changed, 22 insertions(+) create mode 100644 .changeset/clean-dolphins-report.md diff --git a/.changeset/clean-dolphins-report.md b/.changeset/clean-dolphins-report.md new file mode 100644 index 00000000..c5bcc27d --- /dev/null +++ b/.changeset/clean-dolphins-report.md @@ -0,0 +1,5 @@ +--- +"@premieroctet/next-admin-generator-prisma": patch +--- + +fix: remove anyOf for one-to-many relations (#513) diff --git a/apps/example/options.tsx b/apps/example/options.tsx index 70dd332a..08b677a2 100644 --- a/apps/example/options.tsx +++ b/apps/example/options.tsx @@ -341,9 +341,19 @@ export const options: NextAdminOptions = { icon: "UserIcon", list: { display: ["id", "user"], + fields: { + user: { + formatter: (user) => user.email, + }, + }, }, edit: { display: ["user", "bio"], + fields: { + user: { + optionFormatter: (user) => user.email, + }, + }, }, }, }, diff --git a/packages/generator-prisma/src/dmmf.ts b/packages/generator-prisma/src/dmmf.ts index 907cf6c4..ab916f73 100644 --- a/packages/generator-prisma/src/dmmf.ts +++ b/packages/generator-prisma/src/dmmf.ts @@ -128,6 +128,13 @@ export const insertDmmfData = ( relation: getRelationData(dmmf, dmmfField, dmmfModel.name), } ); + + if ( + dmmfField.kind === "object" && + (model.properties![propertyName] as NextAdminJSONSchema)?.anyOf + ) { + delete (model.properties![propertyName] as NextAdminJSONSchema).anyOf; + } } }); });