Alt description missing in image

add-resolver

npm run add:resolver -- --args <workspacePath> <resolverName> <resolverDescription> <resolverType> ...
npx turbo gen resolver --args <workspacePath> <resolverName> <resolverDescription> <resolverType> ...
        • add-resolver.ts

Prompt Arguments

ArgumentTypeQuestion / Description
workspacePathautocompleteWhere would you like to add this resolver?
=> e.g. features/@app-core
resolverNametextWhat is the resolver name?
=> string
resolverDescriptiontextOptional description: What will this data resolver do?
=> string
resolverTyperadioWill this resolver query or mutate data?
=> query / mutation
generatableschecklistWhat would you like to generate linked to this resolver?
=> GRAPHQL / GET / POST / PUT / DELETE / formHook
inputSchemaTargetautocompleteWhich schema should we use for the resolver inputs?
=> e.g. HealthCheckInput
inputSchemaNametextWhat will you call this new input schema?
=> string
outputSchemaTargetautocompleteWhich schema should we use for the resolver output?
=> e.g. HealthCheckOutput
outputSchemaNametextWhat will you call this new output schema?
=> string
apiPathtextWhat API path would you like to use for REST?
=> e.g. /api/some/endpoint/with/[params]/
formHookNametextWhat should the form hook be called?
=> e.g. useSomeResolver

Resulting File Changes

/apps/next/
 └── app/(generated)/{routePath}/route.ts ❇️ # <- e.g. '/api/some/endpoint/with/[params]/' (Next.js route handler)
 
/{workspacePath}/ # <- e.g. 'features/@app-core/' or 'packages/some-package/'
 └── resolvers/
     └── {resolverName}.bridge.ts ❇️ # <- Bridge Metadata file for the resolver and API
     └── {resolverName}.resolver.ts ❇️ # <- Reusable Fn with Business logic (server only)
     └── {resolverName}.{resolverType}.ts ❇️ # <- e.g. `query` / `mutation` fetcher
 └── routes/
     └── {apiPath}/ ❇️ # <- e.g. '/api/some/endpoint/with/[params]/'
         └── route.ts ❇️ # <- If `GET` / `POST` / `PUT` / `DELETE` / `GRAPHQL` was selected
 └── hooks/
     └── {formHookFileName}.ts ❇️ # <- If `formHook` selected, e.g. `useResolverFormState.ts`