nsole
Version:
A drop-in isomorphic console.* replacement that's pretty, small, fast, and flexible
2 lines (1 loc) • 1.82 kB
JavaScript
var u=(G,F,a,f,K,U="_id",L="_def",x="_lvl",k="PTAG_",Q="_FORCE",B={},C=()=>{},D=(I,E="s")=>(typeof I)[0]==E,R=D(globalThis,"o")?globalThis:B,i=([I,E,m],T)=>[E??R[k+I]??m,R[k+I+Q]].map((O)=>T>2?D(O)?JSON.parse(O):O:O),[[V,n],[X,Z],[v,c],[t,H]]=[["ID",G,"{}"],["LVL",F,5],["PLG",f],["DEF",null,B]].map(i),M={debug:[5,">","#89A"],log:[4,">","#2AE"],info:[4,"i","#1AA"],check:[3,"?","#D6D"],warn:[2,"!","#F77"],error:[1,"X","#F36"],_dl:["[","]","|"],_css:["color:#0000;margin:-1px 0 -1px -1ch;padding:1px;","border-radius:2px;color:#282828;color:light-dark(#FFF, #282828);background:^^^;background:light-dark(oklch(from ^^^ calc(l - .018) c h), ^^^);","color:^;color:light-dark(oklch(from ^ calc(l - .08) c h), oklch(from ^ calc(l + .05) c h));","border-right:2px solid ^;border-right-color:light-dark(oklch(from ^ calc(l - .018) c h), ^);","color:^;font-weight:900;font-family:Menlo,Consolas,monospace;margin:-1px 0;padding:1px 3px;"],...t,...a??B,...H??B},P=(I,E=M)=>({...E,...I??M}),$=0>K,N=console)=>new Proxy({[U]:V,[L]:P(),[x]:X},{get:(I,E)=>{let m=I[L]??M,T=m[E];Z=R[k+"LVL"+Q];let O=~~(Z??I[x]),b=E==x||E==U||E==L?I[E]:O&&(O==-1||!T&&(E in N))?N[E]??N.log:!O||T?.[0]>O?C:null;if(!b&&((I[E]??C)===C||$)){I[L]=T?m:P({[E]:[1,E,"#A58"]},m),T=I[L][E];let Y=(n??I[U]??"").replace("{}",E),S=c??v,[A,j,y,W,g,q,z]=S?S(T,E,Y,I):T;if(A!==T[0]){if(D(A,"f"))return A;Y=D(A)?A:Y}z=H?._dl??z??m._dl,q=H?._css??q??m._css;let w="NO_COLOR"in R||(W??m._fg)=="";w=$?!w:K??!w;let[d,r,s]=z.map((_)=>w?`%c${_}%c`:_),[J,l,p,o,e]=q;I[E]=(N[g??E]??N.log).bind(N,d+(E==j?"*":j)+r+Y+s,...w?[J,l,J,p,J+o,""].map((_)=>_?((e??"")+_).replace(/\^+/g,(h)=>(h=="^"?W??y:h=="^^"?W??m._fg:y)??"#000C"):_):[])}return b||I[E]},set:(I,E,m)=>{I[E]=E==x?m??X:E==U?m??V:P(m,I[L]);for(let T in I[L])I[T]=C;return!0}});var TE=u;export{u as ptagi,TE as default};