From 217f74a67af97e66d0322545f79f9cb40d5aca5b Mon Sep 17 00:00:00 2001 From: James Mulholland Date: Fri, 12 Sep 2025 19:40:41 +0100 Subject: [PATCH] fix graphql search --- src/linear/issues/search-issues.server.ts | 12 +++++++----- src/linear/projects/search-projects.server.ts | 6 +++--- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/linear/issues/search-issues.server.ts b/src/linear/issues/search-issues.server.ts index 46f23b2..bf08a85 100644 --- a/src/linear/issues/search-issues.server.ts +++ b/src/linear/issues/search-issues.server.ts @@ -1,22 +1,24 @@ import {z} from "zod" import {postToLinear} from "../post-to-linear" -import {type LinearIssue, linearIssueFragment, linearIssueSchema} from "./schema" +import {linearIssueFragment, linearIssueSchema} from "./schema" const query = `query SearchIssues($searchQuery: String!) { - issues(filter: { title: { startsWithIgnoreCase: $searchQuery } }) { + searchIssues(term: $searchQuery) { nodes { ${linearIssueFragment} } } }` -export default async function searchIssues(searchQuery: string): Promise { +export default async function searchIssues( + searchQuery: string +): Promise<{id: string; title: string; identifier: string}[]> { const result = await postToLinear({query, variables: {searchQuery}}) - if (result.data.issues.nodes.length === 0) { + if (result.data.searchIssues.nodes.length === 0) { return [] } - return z.array(linearIssueSchema).parse(result.data.issues.nodes) + return z.array(linearIssueSchema).parse(result.data.searchIssues.nodes) } diff --git a/src/linear/projects/search-projects.server.ts b/src/linear/projects/search-projects.server.ts index 4c32be9..67c4679 100644 --- a/src/linear/projects/search-projects.server.ts +++ b/src/linear/projects/search-projects.server.ts @@ -4,7 +4,7 @@ import {postToLinear} from "../post-to-linear" import {type LinearProject, linearProjectFragment, linearProjectSchema} from "./schema" const query = `query SearchProjects($searchQuery: String!) { - projects(filter: { name: { startsWithIgnoreCase: $searchQuery } }) { + searchProjects(term: $searchQuery) { nodes { ${linearProjectFragment} } @@ -14,9 +14,9 @@ const query = `query SearchProjects($searchQuery: String!) { export default async function searchProjects(searchQuery: string): Promise { const result = await postToLinear({query, variables: {searchQuery}}) - if (result.data.projects.nodes.length === 0) { + if (result.data.searchProjects.nodes.length === 0) { return [] } - return z.array(linearProjectSchema).parse(result.data.projects.nodes) + return z.array(linearProjectSchema).parse(result.data.searchProjects.nodes) }