UNPKG

@gqty/cli

Version:

## Visit [https://gqty.dev/docs/cli/codegen](https://gqty.dev/docs/cli/codegen)

3 lines (2 loc) 1.3 kB
#!/usr/bin/env node import"@graphql-codegen/core";import"@graphql-codegen/typescript";import"@graphql-tools/utils";import"@graphql-tools/wrap";import*as g from"@inquirer/prompts";import"commander";import"cosmiconfig";import"cross-fetch";import"fast-glob";import"graphql";import"lodash-es/sortBy.js";import"prettier";import{getUserPackageManager as e}from"./getUserPackageManager.mjs";const y=async t=>{var s;const o=i(t),r=(s=e())!=null?s:"npm",a=c(r).concat(o);if(!await g.confirm({message:`Do you want us to run "${r} ${a[0]}" for you?`,default:!0}))return;const{spawnSync:n}=await import("child_process");n(r,a,{stdio:"inherit"})},d=async({dependencies:t,devDependencies:s},o)=>{var r;const a=new Set([...Object.keys(t!=null?t:{}),...Object.keys(s!=null?s:{})]),p=i(o).filter(u=>!a.has(u));if(p.length===0)return;const n=(r=e())!=null?r:"npm",m=c(n).concat(p),{spawnSync:l}=await import("child_process");l(n,m,{stdio:"inherit"})},c=t=>{switch(t){case"npm":return["install","--save-dev"];case"pnpm":return["add","--save-dev"];case"yarn":return["add","--dev"]}},i=t=>{const s=["gqty","graphql"];return t.react&&s.push("@gqty/react"),t.subscriptions===!0?s.push("graphql-ws"):t.subscriptions&&s.push(t.subscriptions),t.javascriptOutput||s.push("typescript"),s};export{y as promptInstall,d as runInstall};