@redaktyn/cli 1.6.4 → 1.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/redaktyn-ui.mjs CHANGED
@@ -1,5 +1,5 @@
1
- const m=process.env,u=process.stderr,T=!!m.REDAKTYN_FORCE_UI,g=T||!!u.isTTY&&m.TERM!=="dumb"&&!m.CI,h=g&&!m.NO_COLOR,x=g&&!!u.isTTY&&!m.CI&&!m.REDAKTYN_NO_ANIMATION&&!T,E=!m.REDAKTYN_ASCII&&m.TERM!=="linux"&&m.TERM!=="dumb",S=/truecolor|24bit/i.test(m.COLORTERM??""),N=/256color/i.test(m.TERM??""),w=(t,r,o)=>n=>h?`\x1B[${S?`38;2;${t}`:N?`38;5;${r}`:o}m${n}\x1B[0m`:String(n),e={clay:w("217;119;87",173,33),green:w("95;168;112",71,32),amber:w("212;164;76",178,33),red:w("208;93;93",167,31),blue:w("112;160;214",74,36),dim:t=>h?`\x1B[2m${t}\x1B[0m`:String(t),bold:t=>h?`\x1B[1m${t}\x1B[0m`:String(t),gray:t=>h?`\x1B[90m${t}\x1B[0m`:String(t)},O={clay:e.clay,green:e.green,amber:e.amber,red:e.red,blue:e.blue,dim:e.dim},s=E?{ok:"\u2714",fail:"\u2716",warn:"\u25B2",dot:"\xB7",arrow:"\u2192",down:"\u25BC",bar:"\u2502",mark:"\u25CE",full:"\u2588",empty:"\u2591",tl:"\u256D",tr:"\u256E",bl:"\u2570",br:"\u256F",h:"\u2500",v:"\u2502",lock:"\u{1F512}"}:{ok:"+",fail:"x",warn:"!",dot:"-",arrow:"->",down:"v",bar:"|",mark:"(o)",full:"#",empty:".",tl:"+",tr:"+",bl:"+",br:"+",h:"-",v:"|",lock:""},v=/\x1b\[[0-9;]*m/g,b=t=>String(t).replace(v,"").length,I=(t,r)=>t+" ".repeat(Math.max(0,r-b(t))),A=()=>Math.max(60,Math.min(u.columns||80,100)),p=(t="")=>u.write(t+`
2
- `);let R=!1;function _(t,r){if(!g||R)return;R=!0;const o=r?e.dim(` v${r}`):"";p(""),p(` ${e.clay(s.mark)} ${e.bold(e.clay("R E D A K T Y N"))}${o}`),p(` ${e.dim("zero-knowledge secret protection")}${t?e.dim(` ${s.dot} ${t}`):""}`),p("")}function B(t,r,{tone:o="clay",width:n}={}){const a=O[o]??e.clay,i=Math.max(b(t)+4,...r.map(b)),l=Math.min(n??i+2,A()-4),c=$=>b($)<=l-2?I($,l-2):String($).replace(v,"").slice(0,l-3)+"\u2026",d=`${s.tl}${s.h} ${t} ${s.h.repeat(Math.max(1,l-b(t)-3))}${s.tr}`,f=r.map($=>`${a(s.v)} ${c($)} ${a(s.v)}`);p(" "+a(d)),f.forEach($=>p(" "+$)),p(" "+a(`${s.bl}${s.h.repeat(l)}${s.br}`))}function H(t,{indent:r=2,labelWidth:o}={}){const n=o??Math.max(...t.map(([a])=>b(a)));return t.map(([a,i])=>`${" ".repeat(r)}${e.gray(I(a,n))} ${i}`)}const k=E?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];let y=!1;const M=()=>{y&&(u.write("\x1B[?25h"),y=!1)};process.on("exit",M),process.on("SIGINT",()=>{M(),u.write(`
3
- `),process.exit(130)});const C=t=>{const r=Date.now()-t;return r<1e3?`${r} ms`:`${(r/1e3).toFixed(1)} s`};function K(t){const r=Date.now();if(!g)return u.write(`${t}\u2026
4
- `),{update(){},succeed(){},fail(){},warn(){},pause(){},resume(){}};let o=t,n=null,a=0,i=null;x&&(u.write("\x1B[?25l"),y=!0,i=()=>u.write(`\r\x1B[2K ${e.clay(k[a++%k.length])} ${o}`),i(),n=setInterval(i,80));const l=(c,d,f=!0)=>{n&&clearInterval(n),x&&(u.write("\r\x1B[2K"),M()),p(` ${c} ${d??o}${f?e.dim(` ${C(r)}`):""}`)};return{pause(){n&&(clearInterval(n),n=null),x&&(u.write("\r\x1B[2K"),M())},resume(){x&&i&&!n&&(u.write("\x1B[?25l"),y=!0,i(),n=setInterval(i,80))},update(c){o=c,x||p(` ${e.clay(s.dot)} ${c}`)},succeed(c){l(e.green(s.ok),c)},fail(c){l(e.red(s.fail),c,!1)},warn(c){l(e.amber(s.warn),c,!1)}}}async function z(t,r,o){const n=K(t);try{const a=await r(n);return n.succeed(typeof o=="function"?o(a):o),a}catch(a){throw n.fail(`${t}: ${a instanceof Error?a.message:a}`),a}}function G(t,r,o=24){const n=r===0?o:Math.round(t/r*o);return e.clay(s.full.repeat(n))+e.gray(s.empty.repeat(o-n))+e.dim(` ${t}/${r}`)}const D=t=>new Promise(r=>setTimeout(r,t)),F="0123456789abcdef";async function P(t,r,{show:o=16,hold:n=450}={}){const a=r.slice(0,o),i=c=>c.replace(/(.{4})/g,"$1 ").trim();if(!x){p(`${t}${e.amber(i(a))} ${e.dim("\u2026")}`);return}const l=14;for(let c=0;c<=l;c++){const d=Math.floor(c/l*o);let f=a.slice(0,d);for(let $=d;$<o;$++)f+=F[Math.floor(Math.random()*16)];u.write(`\r\x1B[2K${t}${c<l?e.gray(i(f)):e.amber(i(f))} ${e.dim("\u2026")}`),await D(n/l)}u.write(`
5
- `)}function U(t){return t<1024?`${t} B`:t<1048576?`${(t/1024).toFixed(1)} KB`:`${(t/1048576).toFixed(1)} MB`}export{x as animated,_ as banner,G as bar,B as box,s as g,U as humanBytes,e as k,P as reveal,g as rich,H as rows,p as say,K as step,z as task,h as useColor,b as visibleLength};
1
+ const m=process.env,l=process.stderr,v=!!m.REDAKTYN_FORCE_UI,g=v||!!l.isTTY&&m.TERM!=="dumb"&&!m.CI,h=g&&!m.NO_COLOR,x=g&&!!l.isTTY&&!m.CI&&!m.REDAKTYN_NO_ANIMATION&&!v,y=!m.REDAKTYN_ASCII&&m.TERM!=="linux"&&m.TERM!=="dumb",O=/truecolor|24bit/i.test(m.COLORTERM??""),A=/256color/i.test(m.TERM??""),w=(t,e,n)=>c=>h?`\x1B[${O?`38;2;${t}`:A?`38;5;${e}`:n}m${c}\x1B[0m`:String(c),r={clay:w("217;119;87",173,33),green:w("95;168;112",71,32),amber:w("212;164;76",178,33),red:w("208;93;93",167,31),blue:w("112;160;214",74,36),dim:t=>h?`\x1B[2m${t}\x1B[0m`:String(t),bold:t=>h?`\x1B[1m${t}\x1B[0m`:String(t),gray:t=>h?`\x1B[90m${t}\x1B[0m`:String(t)},C={clay:r.clay,green:r.green,amber:r.amber,red:r.red,blue:r.blue,dim:r.dim},i=y?{ok:"\u2714",fail:"\u2716",warn:"\u25B2",dot:"\xB7",arrow:"\u2192",down:"\u25BC",bar:"\u2502",mark:"\u25CE",full:"\u2588",empty:"\u2591",tl:"\u256D",tr:"\u256E",bl:"\u2570",br:"\u256F",h:"\u2500",v:"\u2502",lock:"\u{1F512}"}:{ok:"+",fail:"x",warn:"!",dot:"-",arrow:"->",down:"v",bar:"|",mark:"(o)",full:"#",empty:".",tl:"+",tr:"+",bl:"+",br:"+",h:"-",v:"|",lock:""},I=/\x1b\[[0-9;]*m/g,b=t=>String(t).replace(I,"").length,R=(t,e)=>t+" ".repeat(Math.max(0,e-b(t))),K=()=>Math.max(60,Math.min(l.columns||80,100)),d=(t="")=>l.write(t+`
2
+ `);let k=!1;function B(t,e){if(!g||k)return;k=!0;const n=e?r.dim(` v${e}`):"";d(""),d(` ${r.clay(i.mark)} ${r.bold(r.clay("R E D A K T Y N"))}${n}`),d(` ${r.dim("zero-knowledge secret protection")}${t?r.dim(` ${i.dot} ${t}`):""}`),d("")}function H(t,e,{tone:n="clay",width:c}={}){const o=C[n]??r.clay,$=Math.max(b(t)+4,...e.map(b)),s=Math.min(c??$+2,K()-4),p=a=>b(a)<=s-2?R(a,s-2):String(a).replace(I,"").slice(0,s-3)+"\u2026",u=`${i.tl}${i.h} ${t} ${i.h.repeat(Math.max(1,s-b(t)-3))}${i.tr}`,f=e.map(a=>`${o(i.v)} ${p(a)} ${o(i.v)}`);d(" "+o(u)),f.forEach(a=>d(" "+a)),d(" "+o(`${i.bl}${i.h.repeat(s)}${i.br}`))}function z(t,{indent:e=2,labelWidth:n}={}){const c=n??Math.max(...t.map(([o])=>b(o)));return t.map(([o,$])=>`${" ".repeat(e)}${r.gray(R(o,c))} ${$}`)}const S=y?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"];let M=!1;const T=()=>{M&&(l.write("\x1B[?25h"),M=!1)};process.on("exit",T),process.on("SIGINT",()=>{T(),l.write(`
3
+ `),process.exit(130)});const D=t=>{const e=Date.now()-t;return e<1e3?`${e} ms`:`${(e/1e3).toFixed(1)} s`};function F(t,{rail:e=!1}={}){const n=e?"":" ",c=e?" ":" ",o=Date.now();if(!g)return l.write(`${t}\u2026
4
+ `),{update(){},succeed(){},fail(){},warn(){},pause(){},resume(){}};let $=t,s=null,p=0,u=null;x&&(l.write("\x1B[?25l"),M=!0,u=()=>l.write(`\r\x1B[2K${n}${r.clay(S[p++%S.length])}${c}${$}`),u(),s=setInterval(u,80));const f=(a,E,N=!0)=>{s&&clearInterval(s),x&&(l.write("\r\x1B[2K"),T()),d(`${n}${a}${c}${E??$}${N?r.dim(` ${D(o)}`):""}`)};return{pause(){s&&(clearInterval(s),s=null),x&&(l.write("\r\x1B[2K"),T())},resume(){x&&u&&!s&&(l.write("\x1B[?25l"),M=!0,u(),s=setInterval(u,80))},update(a){$=a,x||d(`${n}${r.clay(i.dot)}${c}${a}`)},succeed(a){f(e?r.green(y?"\u25C7":"o"):r.green(i.ok),a)},fail(a){f(e?r.red(y?"\u25A0":"x"):r.red(i.fail),a,!1)},warn(a){f(r.amber(i.warn),a,!1)}}}async function G(t,e,n){const c=F(t);try{const o=await e(c);return c.succeed(typeof n=="function"?n(o):n),o}catch(o){throw c.fail(`${t}: ${o instanceof Error?o.message:o}`),o}}function P(t,e,n=24){const c=e===0?n:Math.round(t/e*n);return r.clay(i.full.repeat(c))+r.gray(i.empty.repeat(n-c))+r.dim(` ${t}/${e}`)}const Y=t=>new Promise(e=>setTimeout(e,t)),_="0123456789abcdef";async function U(t,e,{show:n=16,hold:c=450}={}){const o=e.slice(0,n),$=p=>p.replace(/(.{4})/g,"$1 ").trim();if(!x){d(`${t}${r.amber($(o))} ${r.dim("\u2026")}`);return}const s=14;for(let p=0;p<=s;p++){const u=Math.floor(p/s*n);let f=o.slice(0,u);for(let a=u;a<n;a++)f+=_[Math.floor(Math.random()*16)];l.write(`\r\x1B[2K${t}${p<s?r.gray($(f)):r.amber($(f))} ${r.dim("\u2026")}`),await Y(c/s)}l.write(`
5
+ `)}function X(t){return t<1024?`${t} B`:t<1048576?`${(t/1024).toFixed(1)} KB`:`${(t/1048576).toFixed(1)} MB`}export{x as animated,B as banner,P as bar,H as box,i as g,X as humanBytes,r as k,U as reveal,g as rich,z as rows,d as say,F as step,G as task,h as useColor,b as visibleLength};