diff --git a/packages/client/src/generation/TSClient/TSClient.ts b/packages/client/src/generation/TSClient/TSClient.ts index d3687a0102d7..4b5c97abc703 100644 --- a/packages/client/src/generation/TSClient/TSClient.ts +++ b/packages/client/src/generation/TSClient/TSClient.ts @@ -39,7 +39,7 @@ export interface TSClientOptions { generator?: GeneratorConfig platforms?: Platform[] // TODO: consider making it non-nullable sqliteDatasourceOverrides?: DatasourceOverwrite[] - schemaDir: string + schemaPath: string outputDir: string activeProvider: string dataProxy?: boolean @@ -59,13 +59,12 @@ export class TSClient implements Generatable { generator, sqliteDatasourceOverrides, outputDir, - schemaDir, + schemaPath, runtimeDir, runtimeName, datasources, dataProxy, } = this.options - const schemaPath = path.join(schemaDir, 'schema.prisma') const envPaths = getEnvPaths(schemaPath, { cwd: outputDir }) const relativeEnvPaths = { @@ -83,7 +82,7 @@ export class TSClient implements Generatable { generator, relativeEnvPaths, sqliteDatasourceOverrides, - relativePath: path.relative(outputDir, schemaDir), + relativePath: path.relative(outputDir, path.dirname(schemaPath)), clientVersion: this.options.clientVersion, engineVersion: this.options.engineVersion, datasourceNames: datasources.map((d) => d.name), @@ -142,7 +141,7 @@ ${buildNFTAnnotations(dataProxy, engineType, platforms, relativeOutdir)} this.options.browser, this.options.generator, this.options.sqliteDatasourceOverrides, - this.options.schemaDir, + path.dirname(this.options.schemaPath), ) const collector = new ExportCollector() diff --git a/packages/client/src/generation/generateClient.ts b/packages/client/src/generation/generateClient.ts index 0d4b48f4a48b..342b0b10c632 100644 --- a/packages/client/src/generation/generateClient.ts +++ b/packages/client/src/generation/generateClient.ts @@ -33,8 +33,7 @@ export class DenylistError extends Error { export interface GenerateClientOptions { projectRoot?: string datamodel: string - datamodelPath: string - schemaDir?: string + schemaPath: string transpile?: boolean runtimeDirs?: { node: string; edge: string } outputDir: string @@ -57,7 +56,7 @@ export interface BuildClientResult { // eslint-disable-next-line @typescript-eslint/require-await export async function buildClient({ - schemaDir, + schemaPath, runtimeDirs, binaryPaths, outputDir, @@ -69,7 +68,7 @@ export async function buildClient({ projectRoot, activeProvider, dataProxy, -}: O.Required): Promise { +}: O.Required): Promise { // we define the basic options for the client generation const document = getPrismaClientDMMF(dmmf) const clientEngineType = getClientEngineType(generator!) @@ -81,7 +80,7 @@ export async function buildClient({ clientEngineType === ClientEngineType.Library ? (Object.keys(binaryPaths.libqueryEngine ?? {}) as Platform[]) : (Object.keys(binaryPaths.queryEngine ?? {}) as Platform[]), - schemaDir, + schemaPath, outputDir, clientVersion, engineVersion, @@ -171,8 +170,7 @@ async function getDefaultOutdir(outputDir: string): Promise { export async function generateClient(options: GenerateClientOptions): Promise { const { datamodel, - datamodelPath, - schemaDir = datamodelPath ? path.dirname(datamodelPath) : process.cwd(), + schemaPath, outputDir, transpile, generator, @@ -192,8 +190,7 @@ export async function generateClient(options: GenerateClientOptions): Promise