Skip to content

Commit 6503089

Browse files
authored
refactor: generator layer (#1142)
1 parent 4ce18c6 commit 6503089

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+843
-1111
lines changed

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,8 @@
7070
"homepage": "https://github.com/jasonkuhrt/graffle",
7171
"scripts": {
7272
"serve:pokemon": "tsx tests/_/services/pokemonManual.ts",
73-
"gen:graffle": "tsx tests/_/schemas/generate.ts && pnpm build && cd website && pnpm gen:graffle",
73+
"gen:graffle": "pnpm gen:graffle:tests && pnpm build && cd website && pnpm gen:graffle",
74+
"gen:graffle:tests": "tsx tests/_/schemas/generate.ts",
7475
"graffle": "tsx ./src/cli/generate.ts",
7576
"gen:examples": "tsx scripts/generate-examples-derivatives/generate.ts && pnpm format",
7677
"dev": "rm -rf dist && tsc --watch",

src/cli/generate.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import { Command } from '@molt/command'
44
import * as Path from 'node:path'
55
import { z } from 'zod'
6-
import { generateFiles } from '../layers/4_generator/files.js'
6+
import { Generator } from '../layers/4_generator/__.js'
77
import { urlParseSafe } from '../lib/prelude.js'
88

99
const args = Command.create().description(`Generate a type safe GraphQL client.`)
@@ -89,7 +89,7 @@ const defaultSchemaUrl = typeof args.defaultSchemaUrl === `string`
8989
? new URL(args.defaultSchemaUrl)
9090
: args.defaultSchemaUrl
9191

92-
await generateFiles({
92+
await Generator.generate({
9393
sourceSchema: url
9494
? { type: `url`, url }
9595
: { type: `sdl`, dirPath: Path.dirname(args.schema) },

src/entrypoints/generator.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
export { generateFiles as generate } from '../layers/4_generator/files.js'
1+
export { generate } from '../layers/4_generator/_.js'

src/layers/4_generator/_.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export * from './config.js'
2+
export * from './generate.js'

src/layers/4_generator/__.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export * as Generator from './_.js'

src/layers/4_generator/__snapshots__/files.test.ts.snap renamed to src/layers/4_generator/__snapshots__/generate.test.ts.snap

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -201,8 +201,8 @@ import type * as Schema from './SchemaBuildtime.js'
201201
202202
export interface Index {
203203
name: Data.Name
204-
RootTypesPresent: ['Query', 'Mutation']
205-
RootUnion: Schema.Root.Query | Schema.Root.Mutation
204+
RootTypesPresent: ['Mutation', 'Query']
205+
RootUnion: Schema.Root.Mutation | Schema.Root.Query
206206
Root: {
207207
Query: Schema.Root.Query
208208
Mutation: Schema.Root.Mutation
@@ -270,12 +270,12 @@ export interface Index {
270270
ErrorTwo: { __typename: 'ErrorTwo' }
271271
}
272272
rootResultFields: {
273+
Subscription: {}
274+
Mutation: {}
273275
Query: {
274276
result: 'result'
275277
resultNonNull: 'resultNonNull'
276278
}
277-
Mutation: {}
278-
Subscription: {}
279279
}
280280
}
281281
}
@@ -284,7 +284,7 @@ export interface Index {
284284
285285
exports[`schema2 7`] = `
286286
"import type * as $ from '../../../../../../src/entrypoints/schema.js'
287-
import type * as $Scalar from './Scalar.ts'
287+
import type * as $Scalar from './Scalar.js'
288288
289289
// ------------------------------------------------------------ //
290290
// Root //
@@ -898,7 +898,7 @@ export const Query = $.Object$(\`Query\`, {
898898
})
899899
export const $Index: Index = {
900900
name: Data.Name,
901-
RootTypesPresent: ['Query', 'Mutation'] as const,
901+
RootTypesPresent: ['Mutation', 'Query'] as const,
902902
RootUnion: undefined as any, // Type level only.
903903
Root: {
904904
Query,
@@ -967,12 +967,12 @@ export const $Index: Index = {
967967
ErrorTwo: { __typename: 'ErrorTwo' },
968968
},
969969
rootResultFields: {
970+
Subscription: {},
971+
Mutation: {},
970972
Query: {
971973
result: 'result' as const,
972974
resultNonNull: 'resultNonNull' as const,
973975
},
974-
Mutation: {},
975-
Subscription: {},
976976
},
977977
},
978978
}

0 commit comments

Comments
 (0)