From effbe42ae2f33b036973dcc2bb64df364b83ad99 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Wed, 13 May 2026 23:30:49 +0000 Subject: [PATCH] fix(types): remove = never default from FindManyArgs TOrderBy param MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Same fix as FindFirstArgs — codegen always supplies a concrete TOrderBy, so the default never fires. Removing it avoids a confusing API surface where orderBy appears available but silently rejects all values. --- .../codegen/__snapshots__/client-generator.test.ts.snap | 2 +- .../codegen/src/__tests__/codegen/react-query-hooks.test.ts | 6 ++---- graphql/codegen/src/core/codegen/templates/select-types.ts | 2 +- sdk/constructive-cli/src/admin/orm/select-types.ts | 2 +- sdk/constructive-cli/src/auth/orm/select-types.ts | 2 +- sdk/constructive-cli/src/objects/orm/select-types.ts | 2 +- sdk/constructive-cli/src/public/orm/select-types.ts | 2 +- sdk/constructive-react/src/admin/orm/select-types.ts | 2 +- sdk/constructive-react/src/auth/orm/select-types.ts | 2 +- sdk/constructive-react/src/objects/orm/select-types.ts | 2 +- sdk/constructive-react/src/public/orm/select-types.ts | 2 +- sdk/constructive-sdk/src/admin/orm/select-types.ts | 2 +- sdk/constructive-sdk/src/auth/orm/select-types.ts | 2 +- sdk/constructive-sdk/src/objects/orm/select-types.ts | 2 +- sdk/constructive-sdk/src/public/orm/select-types.ts | 2 +- sdk/migrate-client/src/migrate/orm/select-types.ts | 2 +- 16 files changed, 17 insertions(+), 19 deletions(-) diff --git a/graphql/codegen/src/__tests__/codegen/__snapshots__/client-generator.test.ts.snap b/graphql/codegen/src/__tests__/codegen/__snapshots__/client-generator.test.ts.snap index e37dbec3a6..fe2967709d 100644 --- a/graphql/codegen/src/__tests__/codegen/__snapshots__/client-generator.test.ts.snap +++ b/graphql/codegen/src/__tests__/codegen/__snapshots__/client-generator.test.ts.snap @@ -386,7 +386,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/graphql/codegen/src/__tests__/codegen/react-query-hooks.test.ts b/graphql/codegen/src/__tests__/codegen/react-query-hooks.test.ts index 7031aeed72..b66c2a2078 100644 --- a/graphql/codegen/src/__tests__/codegen/react-query-hooks.test.ts +++ b/graphql/codegen/src/__tests__/codegen/react-query-hooks.test.ts @@ -337,10 +337,8 @@ describe('Query Hook Generators', () => { }); describe('Regression: FindManyArgs TCondition type arg', () => { - // Bug: queries.ts passed 3 type args to FindManyArgs (TSelect, TWhere, TOrderBy), - // but the template defines 4 params: FindManyArgs. - // This caused TOrderBy to land in the TCondition slot, defaulting TOrderBy to `never` - // and breaking all hook orderBy params. + // Regression guard: queries.ts passes 3 type args to FindManyArgs (TSelect, TWhere, TOrderBy). + // A prior bug had 4 params with defaults, causing TOrderBy to land in the wrong slot. it('does not include Condition type in generated hooks', () => { const result = generateListQueryHook(simpleUserTable, { diff --git a/graphql/codegen/src/core/codegen/templates/select-types.ts b/graphql/codegen/src/core/codegen/templates/select-types.ts index 7a46436399..476dd51918 100644 --- a/graphql/codegen/src/core/codegen/templates/select-types.ts +++ b/graphql/codegen/src/core/codegen/templates/select-types.ts @@ -21,7 +21,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-cli/src/admin/orm/select-types.ts b/sdk/constructive-cli/src/admin/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-cli/src/admin/orm/select-types.ts +++ b/sdk/constructive-cli/src/admin/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-cli/src/auth/orm/select-types.ts b/sdk/constructive-cli/src/auth/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-cli/src/auth/orm/select-types.ts +++ b/sdk/constructive-cli/src/auth/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-cli/src/objects/orm/select-types.ts b/sdk/constructive-cli/src/objects/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-cli/src/objects/orm/select-types.ts +++ b/sdk/constructive-cli/src/objects/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-cli/src/public/orm/select-types.ts b/sdk/constructive-cli/src/public/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-cli/src/public/orm/select-types.ts +++ b/sdk/constructive-cli/src/public/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-react/src/admin/orm/select-types.ts b/sdk/constructive-react/src/admin/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-react/src/admin/orm/select-types.ts +++ b/sdk/constructive-react/src/admin/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-react/src/auth/orm/select-types.ts b/sdk/constructive-react/src/auth/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-react/src/auth/orm/select-types.ts +++ b/sdk/constructive-react/src/auth/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-react/src/objects/orm/select-types.ts b/sdk/constructive-react/src/objects/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-react/src/objects/orm/select-types.ts +++ b/sdk/constructive-react/src/objects/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-react/src/public/orm/select-types.ts b/sdk/constructive-react/src/public/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-react/src/public/orm/select-types.ts +++ b/sdk/constructive-react/src/public/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-sdk/src/admin/orm/select-types.ts b/sdk/constructive-sdk/src/admin/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-sdk/src/admin/orm/select-types.ts +++ b/sdk/constructive-sdk/src/admin/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-sdk/src/auth/orm/select-types.ts b/sdk/constructive-sdk/src/auth/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-sdk/src/auth/orm/select-types.ts +++ b/sdk/constructive-sdk/src/auth/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-sdk/src/objects/orm/select-types.ts b/sdk/constructive-sdk/src/objects/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-sdk/src/objects/orm/select-types.ts +++ b/sdk/constructive-sdk/src/objects/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/constructive-sdk/src/public/orm/select-types.ts b/sdk/constructive-sdk/src/public/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/constructive-sdk/src/public/orm/select-types.ts +++ b/sdk/constructive-sdk/src/public/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[]; diff --git a/sdk/migrate-client/src/migrate/orm/select-types.ts b/sdk/migrate-client/src/migrate/orm/select-types.ts index 20ae6621eb..4b39d7e820 100644 --- a/sdk/migrate-client/src/migrate/orm/select-types.ts +++ b/sdk/migrate-client/src/migrate/orm/select-types.ts @@ -16,7 +16,7 @@ export interface PageInfo { endCursor?: string | null; } -export interface FindManyArgs { +export interface FindManyArgs { select?: TSelect; where?: TWhere; orderBy?: TOrderBy[];