@nice-move/cli
Version:
Frontend develop helper for frontend development
5 lines • 6.73 kB
JavaScript
import e from"node:process";import t from"node:tty";import n from"node:os";const r=10,i=(e=0)=>t=>`\u001B[${t+e}m`,a=(e=0)=>t=>`\u001B[${38+e};5;${t}m`,o=(e=0)=>(t,n,r)=>`\u001B[${38+e};2;${t};${n};${r}m`,s={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},c=Object.keys(s.modifier),l=Object.keys(s.color),u=Object.keys(s.bgColor),d=[...l,...u];function f(){let e=new Map;for(let[t,n]of Object.entries(s)){for(let[t,r]of Object.entries(n))s[t]={open:`\u001B[${r[0]}m`,close:`\u001B[${r[1]}m`},n[t]=s[t],e.set(r[0],r[1]);Object.defineProperty(s,t,{value:n,enumerable:!1})}return Object.defineProperty(s,`codes`,{value:e,enumerable:!1}),s.color.close=`\x1B[39m`,s.bgColor.close=`\x1B[49m`,s.color.ansi=i(),s.color.ansi256=a(),s.color.ansi16m=o(),s.bgColor.ansi=i(r),s.bgColor.ansi256=a(r),s.bgColor.ansi16m=o(r),Object.defineProperties(s,{rgbToAnsi256:{value(e,t,n){return e===t&&t===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(e){let t=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!t)return[0,0,0];let[n]=t;n.length===3&&(n=[...n].map(e=>e+e).join(``));let r=Number.parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>s.rgbToAnsi256(...s.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let t,n,r;if(e>=232)t=((e-232)*10+8)/255,n=t,r=t;else{e-=16;let i=e%36;t=Math.floor(e/36)/5,n=Math.floor(i/6)/5,r=i%6/5}let i=Math.max(t,n,r)*2;if(i===0)return 30;let a=30+(Math.round(r)<<2|Math.round(n)<<1|Math.round(t));return i===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,t,n)=>s.ansi256ToAnsi(s.rgbToAnsi256(e,t,n)),enumerable:!1},hexToAnsi:{value:e=>s.ansi256ToAnsi(s.hexToAnsi256(e)),enumerable:!1}}),s}const p=f();var m=p;function h(t,n=globalThis.Deno?globalThis.Deno.args:e.argv){let r=t.startsWith(`-`)?``:t.length===1?`-`:`--`,i=n.indexOf(r+t),a=n.indexOf(`--`);return i!==-1&&(a===-1||i<a)}const{env:g}=e;let _;h(`no-color`)||h(`no-colors`)||h(`color=false`)||h(`color=never`)?_=0:(h(`color`)||h(`colors`)||h(`color=true`)||h(`color=always`))&&(_=1);function v(){if(`FORCE_COLOR`in g)return g.FORCE_COLOR===`true`?1:g.FORCE_COLOR===`false`?0:g.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(g.FORCE_COLOR,10),3)}function y(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function b(t,{streamIsTTY:r,sniffFlags:i=!0}={}){let a=v();a!==void 0&&(_=a);let o=i?_:a;if(o===0)return 0;if(i){if(h(`color=16m`)||h(`color=full`)||h(`color=truecolor`))return 3;if(h(`color=256`))return 2}if(`TF_BUILD`in g&&`AGENT_NAME`in g)return 1;if(t&&!r&&o===void 0)return 0;let s=o||0;if(g.TERM===`dumb`)return s;if(e.platform===`win32`){let e=n.release().split(`.`);return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if(`CI`in g)return[`GITHUB_ACTIONS`,`GITEA_ACTIONS`,`CIRCLECI`].some(e=>e in g)?3:[`TRAVIS`,`APPVEYOR`,`GITLAB_CI`,`BUILDKITE`,`DRONE`].some(e=>e in g)||g.CI_NAME===`codeship`?1:s;if(`TEAMCITY_VERSION`in g)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(g.TEAMCITY_VERSION)?1:0;if(g.COLORTERM===`truecolor`||g.TERM===`xterm-kitty`)return 3;if(`TERM_PROGRAM`in g){let e=Number.parseInt((g.TERM_PROGRAM_VERSION||``).split(`.`)[0],10);switch(g.TERM_PROGRAM){case`iTerm.app`:return e>=3?3:2;case`Apple_Terminal`:return 2}}return/-256(color)?$/i.test(g.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(g.TERM)||`COLORTERM`in g?1:s}function x(e,t={}){let n=b(e,{streamIsTTY:e&&e.isTTY,...t});return y(n)}const S={stdout:x({isTTY:t.isatty(1)}),stderr:x({isTTY:t.isatty(2)})};var C=S;function w(e,t,n){let r=e.indexOf(t);if(r===-1)return e;let i=t.length,a=0,o=``;do o+=e.slice(a,r)+t+n,a=r+i,r=e.indexOf(t,a);while(r!==-1);return o+=e.slice(a),o}function T(e,t,n,r){let i=0,a=``;do{let o=e[r-1]===`\r`;a+=e.slice(i,o?r-1:r)+t+(o?`\r
`:`
`)+n,i=r+1,r=e.indexOf(`
`,i)}while(r!==-1);return a+=e.slice(i),a}const{stdout:E,stderr:D}=C,O=Symbol(`GENERATOR`),k=Symbol(`STYLER`),A=Symbol(`IS_EMPTY`),j=[`ansi`,`ansi`,`ansi256`,`ansi16m`],M=Object.create(null),N=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw Error("The `level` option should be an integer from 0 to 3");let n=E?E.level:0;e.level=t.level===void 0?n:t.level},P=e=>{let t=(...e)=>e.join(` `);return N(t,e),Object.setPrototypeOf(t,F.prototype),t};function F(e){return P(e)}Object.setPrototypeOf(F.prototype,Function.prototype);for(let[e,t]of Object.entries(m))M[e]={get(){let n=B(this,z(t.open,t.close,this[k]),this[A]);return Object.defineProperty(this,e,{value:n}),n}};M.visible={get(){let e=B(this,this[k],!0);return Object.defineProperty(this,`visible`,{value:e}),e}};const I=(e,t,n,...r)=>e===`rgb`?t===`ansi16m`?m[n].ansi16m(...r):t===`ansi256`?m[n].ansi256(m.rgbToAnsi256(...r)):m[n].ansi(m.rgbToAnsi(...r)):e===`hex`?I(`rgb`,t,n,...m.hexToRgb(...r)):m[n][e](...r),L=[`rgb`,`hex`,`ansi256`];for(let e of L){M[e]={get(){let{level:t}=this;return function(...n){let r=z(I(e,j[t],`color`,...n),m.color.close,this[k]);return B(this,r,this[A])}}};let t=`bg`+e[0].toUpperCase()+e.slice(1);M[t]={get(){let{level:t}=this;return function(...n){let r=z(I(e,j[t],`bgColor`,...n),m.bgColor.close,this[k]);return B(this,r,this[A])}}}}const R=Object.defineProperties(()=>{},{...M,level:{enumerable:!0,get(){return this[O].level},set(e){this[O].level=e}}}),z=(e,t,n)=>{let r,i;return n===void 0?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},B=(e,t,n)=>{let r=(...e)=>V(r,e.length===1?``+e[0]:e.join(` `));return Object.setPrototypeOf(r,R),r[O]=e,r[k]=t,r[A]=n,r},V=(e,t)=>{if(e.level<=0||!t)return e[A]?``:t;let n=e[k];if(n===void 0)return t;let{openAll:r,closeAll:i}=n;if(t.includes(`\x1B`))for(;n!==void 0;)t=w(t,n.close,n.open),n=n.parent;let a=t.indexOf(`
`);return a!==-1&&(t=T(t,i,r,a)),r+t+i};Object.defineProperties(F.prototype,M);const H=F(),U=F({level:D?D.level:0});var W=H;export{W as source_default};