Skip to content

Commit

Permalink
fix: default string values breaks build
Browse files Browse the repository at this point in the history
  • Loading branch information
maoosi committed Jan 9, 2024
1 parent c5b3ba5 commit e4f1c65
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 9 deletions.
4 changes: 2 additions & 2 deletions bin/test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ await $`zx bin/build.mjs`

// prisma client for tests
console.log(chalk.blue('\n🧪 [test] run prisma generate'))
await $`npx prisma generate --schema tests/generator/schemas/crud.prisma`.quiet()
await $`npx prisma generate --schema tests/generator/schemas/@gql.prisma`.quiet()
await $`npx prisma generate --schema tests/generator/schemas/crud.prisma`
await $`npx prisma generate --schema tests/generator/schemas/@gql.prisma`

// unit tests
console.log(chalk.blue('🧪 [test] run unit tests\n'))
Expand Down
22 changes: 15 additions & 7 deletions packages/generator/src/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -860,7 +860,7 @@ export default class SchemaBuilder {
return {
name: field.name,
scalar: model.getScalar(field),
defaultValue: field.default,
default: { value: field.default, kind: field.kind },
}
}
}) || [],
Expand Down Expand Up @@ -889,7 +889,7 @@ export default class SchemaBuilder {
return {
name: field.name,
scalar: model.getScalar(field),
defaultValue: field.default,
default: { value: field.default, kind: field.kind },
}
}
}) || [],
Expand Down Expand Up @@ -919,7 +919,7 @@ export default class SchemaBuilder {
?.map(field => ({
name: field.name,
scalar: model.getScalar(field),
defaultValue: field.default,
default: { value: field.default, kind: field.kind },
})) || [],
})
}
Expand Down Expand Up @@ -1388,9 +1388,14 @@ export default class SchemaBuilder {
return [
`input ${i.name} {`,
i.fields.map((f) => {
const defaultValue = ['boolean', 'string', 'number'].includes(typeof f.defaultValue)
? ` = ${f.defaultValue}`
: ''
let defaultValue = ``
if (f?.default && ['boolean', 'number'].includes(typeof f.default.value)) {
defaultValue = ` = ${f.default?.value}`
} else if (f?.default && ['string'].includes(typeof f.default.value)) {
defaultValue = f.default.kind === 'enum'
? ` = ${String(f.default?.value)}`
: ` = "${String(f.default?.value).replace(/"/g, "\\\"")}"`
}
return `${f.name}: ${f.scalar}${defaultValue}`
}).join('\n'),
'}',
Expand Down Expand Up @@ -1460,7 +1465,10 @@ type ParsedModel = {
type GqlField = {
name: string
scalar: string
defaultValue?: any
default?: {
value: any
kind: DMMF.Field['kind']
}
directives?: string[]
}

Expand Down

0 comments on commit e4f1c65

Please sign in to comment.