From ae97dc0a5f1501a8be09fa38f3f555295dabc9fa Mon Sep 17 00:00:00 2001 From: imbytecat Date: Tue, 18 Feb 2025 12:30:47 +0800 Subject: [PATCH] simple --- codegen.ts | 2 +- graphql.config.ts | 4 +- .../__generated__/fragment-masking.ts | 0 {src => graphql}/__generated__/gql.ts | 0 {src => graphql}/__generated__/graphql.ts | 0 {src => graphql}/__generated__/index.ts | 0 package.json | 2 +- src/apollo-client.ts | 6 --- src/gql.ts | 6 +-- src/graphql-client.ts | 3 ++ src/index.apollo.ts | 10 ----- src/index.ts | 38 +++---------------- 12 files changed, 16 insertions(+), 55 deletions(-) rename {src => graphql}/__generated__/fragment-masking.ts (100%) rename {src => graphql}/__generated__/gql.ts (100%) rename {src => graphql}/__generated__/graphql.ts (100%) rename {src => graphql}/__generated__/index.ts (100%) delete mode 100644 src/apollo-client.ts create mode 100644 src/graphql-client.ts delete mode 100644 src/index.apollo.ts diff --git a/codegen.ts b/codegen.ts index 776939c..e591694 100644 --- a/codegen.ts +++ b/codegen.ts @@ -5,7 +5,7 @@ const config: CodegenConfig = { // this assumes that all your source files are in a top-level `src/` directory - you might need to adjust this to your file structure documents: ['src/**/*.{ts,tsx}'], generates: { - './src/__generated__/': { + './graphql/__generated__/': { preset: 'client', plugins: [], presetConfig: { diff --git a/graphql.config.ts b/graphql.config.ts index fbf515f..61ab5f8 100644 --- a/graphql.config.ts +++ b/graphql.config.ts @@ -4,7 +4,7 @@ export default { projects: { directus: { schema: "http://172.16.6.246:8055/graphql?access_token=WkVWFMiFcrjsXRZqsL30Cd4Sboe0DRk-", - documents: '**/*.{graphql,js,ts,jsx,tsx}', + documents: 'src/**/*.{graphql,js,ts,jsx,tsx}', extensions: { languageService: { cacheSchemaFileForLookup: true @@ -12,4 +12,4 @@ export default { } }, }, -}; \ No newline at end of file +}; diff --git a/src/__generated__/fragment-masking.ts b/graphql/__generated__/fragment-masking.ts similarity index 100% rename from src/__generated__/fragment-masking.ts rename to graphql/__generated__/fragment-masking.ts diff --git a/src/__generated__/gql.ts b/graphql/__generated__/gql.ts similarity index 100% rename from src/__generated__/gql.ts rename to graphql/__generated__/gql.ts diff --git a/src/__generated__/graphql.ts b/graphql/__generated__/graphql.ts similarity index 100% rename from src/__generated__/graphql.ts rename to graphql/__generated__/graphql.ts diff --git a/src/__generated__/index.ts b/graphql/__generated__/index.ts similarity index 100% rename from src/__generated__/index.ts rename to graphql/__generated__/index.ts diff --git a/package.json b/package.json index da7696b..95b7cce 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,6 @@ "name": "graphql-demo", "scripts": { "dev": "bun run --watch src/index.ts", - "dev-apollo": "bun run --watch src/index.apollo.ts", "compile": "graphql-codegen", "watch": "graphql-codegen -w" }, @@ -21,6 +20,7 @@ "@apollo/client": "^3.13.1", "axios": "^1.7.9", "graphql": "^16.10.0", + "graphql-request": "^7.1.2", "graphql-tag": "^2.12.6", "ofetch": "^1.4.1" } diff --git a/src/apollo-client.ts b/src/apollo-client.ts deleted file mode 100644 index 754a408..0000000 --- a/src/apollo-client.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ApolloClient, InMemoryCache } from '@apollo/client'; - -export const client = new ApolloClient({ - uri: process.env.GRAPHQL_ENDPOINT_WITH_TOKEN, - cache: new InMemoryCache(), -}); diff --git a/src/gql.ts b/src/gql.ts index 16913df..8f57c5d 100644 --- a/src/gql.ts +++ b/src/gql.ts @@ -1,6 +1,6 @@ -import { gql } from "@apollo/client"; +import { gql } from "graphql-request"; -export const getUserProjectsGQL = gql(` +export const getUserProjectsGQL = gql` query GetUserProjects { demo_users { id @@ -13,4 +13,4 @@ export const getUserProjectsGQL = gql(` } } } -`); \ No newline at end of file +`; diff --git a/src/graphql-client.ts b/src/graphql-client.ts new file mode 100644 index 0000000..1af43a5 --- /dev/null +++ b/src/graphql-client.ts @@ -0,0 +1,3 @@ +import { GraphQLClient } from "graphql-request"; + +export const graphqlClient = new GraphQLClient(process.env.GRAPHQL_ENDPOINT_WITH_TOKEN!); diff --git a/src/index.apollo.ts b/src/index.apollo.ts deleted file mode 100644 index 5b0e6a1..0000000 --- a/src/index.apollo.ts +++ /dev/null @@ -1,10 +0,0 @@ -import type { GetUserProjectsQuery, GetUserProjectsQueryVariables } from "./__generated__/graphql" -import { client } from "./apollo-client" -import { getUserProjectsGQL } from "./gql" - -(async () => { - const result = await client.query({ - query: getUserProjectsGQL, - }) - console.log(result.data?.demo_users.map(user => user?.projects?.map(project => project?.demo_projects_id))) -})() diff --git a/src/index.ts b/src/index.ts index b32d76c..0156c41 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,34 +1,8 @@ -import { ofetch } from 'ofetch'; -import gql from 'graphql-tag' -import { print } from 'graphql'; - -/** GraphQL */ - -const gqlText = print(gql(` - query get { - demo_projects { - id - } - }` -)); - -console.log(gqlText); - -// const gqlText = gql( -// `query {w - +import type { GetUserProjectsQuery, GetUserProjectsQueryVariables } from "../graphql/__generated__/graphql" +import { graphqlClient } from "./graphql-client" +import { getUserProjectsGQL } from "./gql" (async () => { - const result = await ofetch("http://172.16.6.246:8055/graphql", { - method: 'POST', - headers: { - 'Authorization': 'Bearer WkVWFMiFcrjsXRZqsL30Cd4Sboe0DRk-', - 'Content-Type': 'application/json', - }, - body: { - query: gqlText, - variables: {} - }, - }) - console.log(JSON.stringify(result, null, 2)); -})(); + const result = await graphqlClient.request(getUserProjectsGQL) + console.log(result.demo_users.map(user => user?.projects?.map(project => project?.demo_projects_id))) +})()