UNPKG

@muppet-kit/shared

Version:

Shared utilities and types for Muppet Kit.

4 lines (3 loc) 2.1 kB
var y=Object.defineProperty;var n=(o,c)=>y(o,"name",{value:c,configurable:!0});import*as T from"node:readline";import{serve as b}from"@hono/node-server";import{bold as x,blue as $,dim as s,cyan as w,underline as g,bgHex as M,yellow as q}from"ansis";import{loadConfig as C}from"c12";import h from"open";function E(o=80,c=6){for(let t=0;t<c;t++){let i=" ";for(let e=0;e<o;e++){const r=e/(o-1),f=Math.round(0+r*152),a=Math.round(191+r*64),l=Math.round(255-r*251),u=`#${f.toString(16).padStart(2,"0")}${a.toString(16).padStart(2,"0")}${l.toString(16).padStart(2,"0")}`;i+=M(u)(" ")}console.log(i)}}n(E,"createGradient");async function F({options:o,app:c}){console.log(),console.log(),E(30,1),console.log(`${x(" muppet")} ${$(`v${o.version}`)}`),console.log();const{config:t,source:i}=await C({dotenv:!0,...o?.config?{configFile:o?.config}:{name:"muppet"},defaultConfig:{port:3553,host:"localhost"}});i&&(console.log(s(" config ")+$(i)),console.log()),o?.port&&(t.port=Number(o?.port)),o?.host&&(t.host=o?.host);let e,r;function f(){clearTimeout(r),r=setTimeout(()=>{console.log(q(` restarting... `)),a()},500)}n(f,"restartServer");function a(){e&&e.close(),e=b({fetch:c(t).fetch,port:t.port,hostname:t.host})}n(a,"initServer");const l=`http://${t.host}:${t.port}`,u=[{name:"r",fullname:"restart",action(){f()}},{name:"o",fullname:"open",action(){h(l)}},{name:"q",fullname:"quit",action(){try{e?.close()}finally{process.exit()}}}];function S(){process.stdin.resume(),process.stdin.setEncoding("utf8"),T.emitKeypressEvents(process.stdin),process.stdin.isTTY&&process.stdin.setRawMode(!0),process.stdin.on("keypress",(v,d)=>{if(d.ctrl&&d.name==="c")process.exit();else{const[p]=u.filter(m=>m.name===v);if(p)try{p.action()}catch(m){console.error(`Failed to execute shortcut ${p.fullname}`,m)}}})}n(S,"bindShortcut"),console.log(`${s(" inspector ")} > ${w(`${l}/`)}`),S(),a(),t.auto_open&&await h(l,{wait:!1}),console.log(),console.log(`${s(" shortcuts ")} > ${g("r")}${s("estart | ")}${g("o")}${s("pen | ")}${g("q")}${s("uit")}`)}n(F,"inspectorAction");export{F as inspectorAction};