UNPKG

@notadd/cli

Version:

notadd core none dependence

38 lines (37 loc) 1.42 kB
import { Command } from '@notadd/cli-core'; import { join, dirname } from 'path'; import { ensureDirSync, writeFileSync } from 'fs-extra'; import { Injector, MAIN_PATH, Controller, Param } from '@notadd/core'; import { toGraphql } from '@notadd/ast.ts-graphql' @Controller() export class GraphqlCommand { constructor(public injector: Injector) { } @Command('grpc/?:main') createGrpc(@Param('main') main: string) { try { const root = process.cwd() const output = join(root, main || 'notadd.graphql'); ensureDirSync(dirname(output)) const graphql =toGraphql(this.injector.get<string>(MAIN_PATH, 'main.ts') || 'main.ts'); if(graphql){ writeFileSync(output, graphql.graphql) } } catch (e) { console.log(`${e.message}`, e) } } @Command('graphql/?:main') createGraphql(@Param('main') main: string) { try { const root = process.cwd() const output = join(root, main || 'notadd.graphql'); ensureDirSync(dirname(output)) const graphql =toGraphql(this.injector.get<string>(MAIN_PATH, 'main.ts') || 'main.ts'); if(graphql){ writeFileSync(output, graphql.graphql) } } catch (e) { console.log(`${e.message}`, e) } } }