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