From c058e18effc0c96951561a64fdb961d30dc6ff8a Mon Sep 17 00:00:00 2001 From: yeliex Date: Thu, 7 Aug 2025 14:45:48 +0800 Subject: [PATCH 1/3] feat: add ignoreForeignOnInputModel config to support include foreignIds in the generated input model --- src/config.ts | 4 ++++ src/generators/plain.ts | 1 + 2 files changed, 5 insertions(+) diff --git a/src/config.ts b/src/config.ts index ed7ced5..bd5040f 100644 --- a/src/config.ts +++ b/src/config.ts @@ -35,6 +35,10 @@ const configSchema = Type.Object( * Prevents the updatedAt field from being generated in the input model */ ignoreUpdatedAtOnInputModel: Type.Boolean({ default: true }), + /** + * Prevents the foreignId field from being generated in the input model + */ + ignoreForeignOnInputModel: Type.Boolean({ default: true }), /** * How the nullable union should be named */ diff --git a/src/generators/plain.ts b/src/generators/plain.ts index f127ae7..2ebdcfb 100644 --- a/src/generators/plain.ts +++ b/src/generators/plain.ts @@ -81,6 +81,7 @@ export function stringifyPlain( return undefined; if ( + getConfig().ignoreForeignOnInputModel && (isInputModelCreate || isInputModelUpdate) && (field.name.toLowerCase().endsWith("id") || field.name.toLowerCase().endsWith("foreign") || From ff01ff454c6cc51844b7a86dc3f9f8dcc5149ff2 Mon Sep 17 00:00:00 2001 From: m1212e <14091540+m1212e@users.noreply.github.com> Date: Thu, 7 Aug 2025 12:09:34 +0200 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=A7=BC=20format=20&=20lint?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- biome.json | 30 ++++++++++++++++++++++-------- bun.lockb | Bin 20821 -> 39403 bytes package.json | 15 ++++++++------- src/annotations/options.ts | 5 ++--- src/generators/plain.ts | 6 +++--- src/generators/where.ts | 2 +- 6 files changed, 36 insertions(+), 22 deletions(-) diff --git a/biome.json b/biome.json index 5968645..08231df 100644 --- a/biome.json +++ b/biome.json @@ -1,7 +1,16 @@ { - "$schema": "https://biomejs.dev/schemas/1.8.3/schema.json", - "organizeImports": { - "enabled": true + "$schema": "https://biomejs.dev/schemas/2.1.3/schema.json", + "vcs": { + "enabled": true, + "clientKind": "git", + "useIgnoreFile": true + }, + "files": { + "ignoreUnknown": false + }, + "formatter": { + "enabled": true, + "indentStyle": "space" }, "linter": { "enabled": true, @@ -9,12 +18,17 @@ "recommended": true } }, - "formatter": { - "indentStyle": "space" + "javascript": { + "formatter": { + "quoteStyle": "double" + } }, - "vcs": { - "clientKind": "git", + "assist": { "enabled": true, - "useIgnoreFile": true + "actions": { + "source": { + "organizeImports": "on" + } + } } } diff --git a/bun.lockb b/bun.lockb index 78cfba415478029acbd45a10533bdbe737beb71b..c6f002fe57128e9a30bdedec78709462942cce75 100755 GIT binary patch literal 39403 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 literal 20821 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 exludeAdditionalProperties?: boolean; } = {}): string { - if(exludeAdditionalProperties === undefined) { - exludeAdditionalProperties = !getConfig().additionalProperties + if (exludeAdditionalProperties === undefined) { + exludeAdditionalProperties = !getConfig().additionalProperties; } - const stringifiedOptions: string[] = []; for (const annotation of input?.annotations ?? []) { if (isOptionsVariant(annotation)) { diff --git a/src/generators/plain.ts b/src/generators/plain.ts index 2ebdcfb..ac9e710 100644 --- a/src/generators/plain.ts +++ b/src/generators/plain.ts @@ -8,8 +8,8 @@ import { getConfig } from "../config"; import type { ProcessedModel } from "../model"; import { processedEnums } from "./enum"; import { - type PrimitivePrismaFieldType, isPrimitivePrismaFieldType, + type PrimitivePrismaFieldType, stringifyPrimitiveType, } from "./primitiveField"; import { wrapWithArray } from "./wrappers/array"; @@ -31,7 +31,7 @@ export function processPlain(models: DMMF.Model[] | Readonly) { export function stringifyPlain( data: DMMF.Model, isInputModelCreate = false, - isInputModelUpdate = false + isInputModelUpdate = false, ) { const annotations = extractAnnotations(data.documentation); @@ -115,7 +115,7 @@ export function stringifyPlain( } else if (processedEnums.find((e) => e.name === field.type)) { // biome-ignore lint/style/noNonNullAssertion: we checked this manually stringifiedType = processedEnums.find( - (e) => e.name === field.type + (e) => e.name === field.type, )!.stringRepresentation; } else { return undefined; diff --git a/src/generators/where.ts b/src/generators/where.ts index aad4306..95492d2 100644 --- a/src/generators/where.ts +++ b/src/generators/where.ts @@ -8,8 +8,8 @@ import { getConfig } from "../config"; import type { ProcessedModel } from "../model"; import { processedEnums } from "./enum"; import { - type PrimitivePrismaFieldType, isPrimitivePrismaFieldType, + type PrimitivePrismaFieldType, stringifyPrimitiveType, } from "./primitiveField"; import { wrapWithArray } from "./wrappers/array"; From 80e2a0807d63935a9c2592a42f0f6c262ed03fcc Mon Sep 17 00:00:00 2001 From: m1212e <14091540+m1212e@users.noreply.github.com> Date: Thu, 7 Aug 2025 12:16:49 +0200 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=A7=BC=20format=20&=20lint:=20fix=20l?= =?UTF-8?q?inter=20issues?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- biome.json | 5 ++++- src/config.ts | 2 +- src/index.ts | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/biome.json b/biome.json index 08231df..00eb99f 100644 --- a/biome.json +++ b/biome.json @@ -15,7 +15,10 @@ "linter": { "enabled": true, "rules": { - "recommended": true + "recommended": true, + "correctness": { + "noUnusedVariables": "warn" + } } }, "javascript": { diff --git a/src/config.ts b/src/config.ts index bd5040f..85bf5f9 100644 --- a/src/config.ts +++ b/src/config.ts @@ -67,7 +67,7 @@ const configSchema = Type.Object( /** * When enabled, this option ensures that only primitive types are generated as JSON types. * This ensures compatibility with tooling that only supports the serilization to JSON primitive types. - * + * * This can be false (off), true (will result in formatted string type) or "transformer" which will use Tybepox transformers * to output native JS Date types but transforms those to strings on processing * diff --git a/src/index.ts b/src/index.ts index 00f42bc..bb3dfb3 100644 --- a/src/index.ts +++ b/src/index.ts @@ -33,7 +33,7 @@ generatorHandler({ try { await access(getConfig().output); await rm(getConfig().output, { recursive: true }); - } catch (error) {} + } catch (_error) {} await mkdir(getConfig().output, { recursive: true });