nx-mesh
Version:
GraphQL Mesh support for Nx
2 lines (1 loc) • 1.53 kB
JavaScript
var p=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var O=Object.getOwnPropertyNames;var T=Object.prototype.hasOwnProperty;var S=(e,t)=>{for(var r in t)p(e,r,{get:t[r],enumerable:!0})},h=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of O(t))!T.call(e,o)&&o!==r&&p(e,o,{get:()=>t[o],enumerable:!(n=E(t,o))||n.enumerable});return e};var k=e=>h(p({},"__esModule",{value:!0}),e);var b={};S(b,{default:()=>A});module.exports=k(b);var c=require("@nrwl/devkit"),x=require("node:path");var d=e=>{let t={};return Object.entries(e).forEach(([r,n])=>{let o=`--${r}`,s;Array.isArray(n)?s=n.join(" "):s=n,s!==void 0&&s!==""&&(t[o]=`${s}`)}),t},g=e=>Object.entries(e).flat();var C=require("node:child_process");var l=e=>{let t={};return Object.keys(e).forEach(r=>{let n=e[r],o=r.toUpperCase();r==="debug"&&n!==void 0&&(t[o]=(+n).toString())}),t};var u=e=>{let t=d(e.args),r=l(e.env);return{args:t,env:r}};var m;async function f(e,t,r,n){let{args:o,env:s}=u(t),v=g(o);return new Promise((y,a)=>{m=(0,C.spawn)("npx",["graphql-mesh",e,...v],{stdio:n?.stdio??[0,1,2],cwd:r.root,env:{...process.env,...s,FORCE_COLOR:"true"}}),process.on("exit",()=>m.kill()),process.on("SIGTERM",()=>m.kill()),m.on("error",i=>{a(i)}),m.on("exit",i=>{i===0?y(i):a(i)})})}async function*A(e,t){if(e.dir===void 0)throw new Error("Please define the 'dir' value");c.logger.info("Validating GraphQL Mesh artifacts..."),await f("validate",{args:{dir:(0,x.resolve)(t.root,e.dir),require:e.require},env:{debug:e.debug}},t),yield{success:!0}}