analogger 1.17.2 → 1.18.2

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.
@@ -0,0 +1,54 @@
1
+ /**
2
+ * DO NOT EDIT THIS FILE DIRECTLY.
3
+ * This file is generated following the conversion of
4
+ * @see [./src/constants.cjs]{@link ./src/constants.cjs}
5
+ *
6
+ **/
7
+ const constants = {
8
+ COLOR_TABLE: [
9
+ "#d2466e", // Error context color
10
+ "#FFA07A", // Default context color
11
+ "#FF7F50",
12
+ "#FF6347",
13
+ "#FFE4B5",
14
+ "#ADFF2F",
15
+ "#808000",
16
+ "#40E0D0",
17
+ "#1E90FF",
18
+ "#EE82EE",
19
+ "#708090",
20
+ "#DEB887",
21
+ "#FE642E",
22
+ "#210B61",
23
+ "#088A4B",
24
+ "#5E610B",
25
+ "#FA8258",
26
+ "#088A68",
27
+ "#B40431",
28
+ ],
29
+ SYSTEM: {
30
+ BROWSER: "BROWSER",
31
+ NODE: "NODE"
32
+ }
33
+
34
+ };
35
+
36
+ export const COLOR_TABLE = constants.COLOR_TABLE;
37
+ export const SYSTEM = constants.SYSTEM;
38
+ export const MAX_CHILDREN_DOM_ANALOGGER = 2000;
39
+ export const CLASS_REMOVED_NOTIF = "analogger-removed-notif";
40
+ export const CONSOLE_AREA_CLASSNAME = "analogger-view";
41
+ export const LINE_CLASSNAME = "to-esm-line";
42
+
43
+ export const ADD_TYPE = {
44
+ TOP: "TOP",
45
+ BOTTOM: "BOTTOM"
46
+ };
47
+
48
+ export const ANALOGGER_NAME = "ANALOGGER";
49
+
50
+
51
+
52
+ export const PREDEFINED_FORMATS = {
53
+ DEFAULT_FORMAT: "FORMAT1"
54
+ };
@@ -1,3 +1,4 @@
1
- var Le=Object.defineProperty;var Oe=(s,e,t)=>e in s?Le(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var h=(s,e,t)=>(Oe(s,typeof e!="symbol"?e+"":e,t),t),te=(s,e,t)=>{if(!e.has(s))throw TypeError("Cannot "+t)};var g=(s,e,t)=>(te(s,e,"read from private field"),t?t.call(s):e.get(s)),D=(s,e,t)=>{if(e.has(s))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(s):e.set(s,t)};var re=(s,e,t)=>(te(s,e,"access private method"),t);var se={Foreground:38,Background:48},_="\x1B[1D",oe="\x1B[0m"+_,I={Bold:"\x1B[1m"+_,Underline:"\x1B[4m"+_,Reversed:"\x1B[7m"+_},xe={Bold:"\x1B[1m"+_,Underline:"\x1B[4m"+_,Reversed:"\x1B[7m"+_},J={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4","indianred ":"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function ye(s){return!!J[s]}var ne=(s,e,t)=>s===e&&e===t?s<8?16:s>248?231:Math.round((s-8)/247*24)+232:16+36*Math.round(s/255*5)+6*Math.round(e/255*5)+Math.round(t/255*5),ie=s=>{let e=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;s=s.replace(e,function(r,o,n,i){return o+o+n+n+i+i});let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(s);return t?{red:parseInt(t[1],16),blue:parseInt(t[2],16),green:parseInt(t[3],16)}:{}},ae=function({red:s,green:e,blue:t}){let r=s<<16|e<<8|t<<0;return"#"+(16777216+r).toString(16).slice(1)},le=function(s){let e=s.matchAll(/\d+/g),t=[];for(let r of e){let o=parseInt(r[0]);if(o>255)return null;t.push(o)}return t.length!==3?null:{red:t[0],green:t[1],blue:t[2]}},Ae=function(s){let e=le(s);return e&&ae(e)},k=function(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+(t-e)*6*r:r<1/2?t:r<2/3?e+(t-e)*(2/3-r)*6:e},fe=({hue:s,saturation:e,lightness:t})=>{let r,o,n;if(e===0)r=o=n=t;else{let i=t<.5?t*(1+e):t+e-t*e,a=2*t-i;r=k(a,i,s+1/3),o=k(a,i,s),n=k(a,i,s-1/3)}return{red:Math.round(r*255),blue:Math.round(n*255),green:Math.round(o*255)}},ce=s=>{let e=s.toLowerCase();return typeof J[e]<"u"?J[e]:""};function F({red:s,blue:e,green:t},r=!0){if(s===void 0||e===void 0||t===void 0)return"";let o=ne(s,e,t);return`\x1B[${r?se.Foreground:se.Background};5;`+o+"m "+_}function M(s,e=!0){let{red:t,green:r,blue:o}=ie(s);return F({red:t,green:r,blue:o},e)}function U({hue:s,saturation:e,lightness:t},r){let{red:o,green:n,blue:i}=fe({hue:s,saturation:e,lightness:t});return F({red:o,green:n,blue:i},r)}function X(s,e=!0){try{let t;return s=s||"",s?((typeof s=="string"||s instanceof String)&&(s=s.trim()),ye(s)?(t=ce(s),M(t,e)):typeof s=="object"&&!!s.red&&!!s.blue&&!!s.green?F(s,e):typeof s=="object"&&!!s.hue&&!!s.saturation&&!!s.lightness?U(s,e):s.startsWith("#")?M(s,e):(s=s.toString(),/^[\da-fA-F]+$/.test(s)?M("#"+s,e):"")):""}catch(t){console.error("TO_ANSI_INVALID_ARGUMENT_ERROR",t.message)}}function P(s,{fg:e,bg:t,isUnderline:r=!1,isBold:o=!1,isReversed:n=!1}){let i=!1,a="";return e&&(i=!0,a=a+e),t&&(i=!0,a=a+t),r&&(i=!0,a=a+I.Underline),o&&(i=!0,a=a+I.Bold),n&&(i=!0,a=a+I.Reversed),i?a+s+oe:s}function we(s,{fg:e={},bg:t={},isUnderline:r=!1,isBold:o=!1,isReversed:n=!1}){return e&&(e=F({...e})),t&&(t=F({...t},!1)),P(s,{fg:e,bg:t,isUnderline:r,isBold:o,isReversed:n})}function _e(s,{fg:e="",bg:t="",isUnderline:r=!1,isBold:o=!1,isReversed:n=!1}){return e&&(e=U({...e})),t&&(t=U({...t},!1)),P(s,{fg:e,bg:t,isUnderline:r,isBold:o,isReversed:n})}function Re(s,{fg:e="",bg:t="",isUnderline:r=!1,isBold:o=!1,isReversed:n=!1}){return e&&(e=M(e)),t&&(t=M(t,!1)),P(s,{fg:e,bg:t,isUnderline:r,isBold:o,isReversed:n})}function Ne(s,e=null){if(!e)return s;let{fg:t="",bg:r="",isUnderline:o=!1,isBold:n=!1,isReversed:i=!1}=e;return t&&(t=X(t)),r&&(r=X(r,!1)),P(s,{fg:t,bg:r,isUnderline:o,isBold:n,isReversed:i})}var G={fromRgb:F,fromHexa:M,fromHsl:U,fromColor:X,getTextFromRgb:we,getTextFromHsl:_e,getTextFromHex:Re,getTextFromColor:Ne,colorNameToHex:ce,hslToRgb:fe,hexToRgb:ie,rgbToHex:ae,rgbToAnsi256:ne,rgbStringToRgb:le,rgbStringToHex:Ae,hue2rgb:k,RESET:oe,FONT_STYLE:I,STYLE:xe};var de={COLOR_TABLE:["#d2466e","#FFA07A","#FF7F50","#FF6347","#FFE4B5","#ADFF2F","#808000","#40E0D0","#1E90FF","#EE82EE","#708090","#DEB887","#FE642E","#210B61","#088A4B","#5E610B","#FA8258","#088A68","#B40431"],SYSTEM:{BROWSER:"BROWSER",NODE:"NODE"}},v=de.COLOR_TABLE,H=de.SYSTEM,z=2e3,K="analogger-removed-notif",Q="analogger-view",he="to-esm-line",j={TOP:"TOP",BOTTOM:"BOTTOM"},ue="ANALOGGER",Z={DEFAULT_FORMAT:"FORMAT1"};var{parse:ke,stringify:De}=JSON,{keys:Ue}=Object,Me=String,Fe="string";var ge="object",Se=(s,e)=>e;var me=(s,e,t)=>{let r=Me(e.push(t)-1);return s.set(t,r),r};var pe=(s,e,t)=>{let r=e&&typeof e===ge?(p,d)=>p===""||-1<e.indexOf(p)?d:void 0:e||Se,o=new Map,n=[],i=[],a=+me(o,n,r.call({"":s},"",s)),l=!a;for(;a<n.length;)l=!0,i[a]=De(n[a++],x,t);return"["+i.join(",")+"]";function x(p,d){if(l)return l=!l,d;let E=r.call(this,p,d);switch(typeof E){case ge:if(E===null)return E;case Fe:return o.get(E)||me(o,n,E)}return E}};var Y={};Y={};var O={DEFAULT:"DEFAULT",ERROR:"ERROR"},q=`
2
- `,V={airplane:"\u2708",anchor:"\u2693",arrow_backward:"\u25C0",arrow_double_up:"\u23EB",arrow_double_down:"\u23EC",arrow_forward:"\u25B6",arrow_lower_right:"\u2198",arrow_lower_left:"\u2199",arrow_right_hook:"\u21AA",arrow_up_down:"\u2195",arrow_upper_left:"\u2196",arrow_upper_right:"\u2197",ballot_box_with_check:"\u2611",biohazard:"\u2623",black_circle:"\u23FA",black_medium_small_square:"\u25FE",black_medium_square:"\u25FC",black_nib:"\u2712",black_small_square:"\u25AA",black_square:"\u23F9",chains:"\u26D3",check:"\u2714",chess_pawn:"\u265F",cloud_and_rain:"\u26C8",clubs:"\u2663",coffee:"\u2615",copyright:"\xA9",cross:"\u274C",diamonds:"\u2666",divisions_ign:"\u2797",double_triangle_right:"\u23ED",double_triangle_left:"\u23EE",email:"\u2709",eject:"\u23CF",exclamation_mark:"\u2757",fast_forward:"\u23E9",female_sign:"\u2640",fist:"\u270A",fuel_pump:"\u26FD",gear:"\u2699",hammer_and_pick:"\u2692",hand:"\u270B",hearts:"\u2665",infinity:"\u267E",information:"\u2139",left_right_arrow:"\u2194",leftwards_arrow_with_hook:"\u21A9",male_sign:"\u2642",minus_sign:"\u2796",no_entry:"\u26D4",partly_sunny:"\u26C5",pencil:"\u270F",phone:"\u260E",plus_sign:"\u2795",question:"\u2754",radioactive:"\u2622",raised_hand:"\u270B",recycle:"\u267B",registered:"\xAE",relaxed:"\u263A",rewind:"\u23EA",scissors:"\u2702",snowman:"\u2603",spades:"\u2660",sparkles:"\u2728",star:"\u2B50",sunny:"\u2600",tent:"\u26FA",trademark:"\u2122",triangle_with_vertical_bar:"\u23EF",umbrella:"\u2614",vertical_bars:"\u23F8",watch:"\u231A",white_frowning_face:"\u2639",white_medium_square:"\u25FB",white_medium_small_square:"\u25FD",white_small_square:"\u25AB",wheelchair:"\u267F",white_circle:"\u26AA",writing_hand:"\u270D"},L,S,B,C,W,Ee,w=class{constructor(){D(this,W);h(this,"system","");h(this,"logIndex",0);h(this,"logCounter",0);h(this,"contexts",[]);h(this,"targets",{});h(this,"activeTarget",null);h(this,"indexColor",0);h(this,"format","");h(this,"keepLog",!1);h(this,"logHistory",[]);h(this,"$containers",null);h(this,"options",{hideHookMessage:!1});D(this,L,console.log);D(this,S,console.info);D(this,B,console.warn);D(this,C,console.error);h(this,"isBrowser0",null);h(this,"originalFormatFunction");h(this,"removeDomOldEntries",e=>{if(e.childElementCount>z){let r=Math.ceil(z/10);for(let o=0;o<r;++o)e.removeChild(e.firstChild);return r}return 0});h(this,"scrollDivToBottom",e=>{let t=e.scrollHeight-(e.clientHeight+e.scrollTop),r=e.clientHeight||e.offsetHeight;t>r/2||(e.scrollTop=e.scrollHeight)});this.system=typeof process=="object"?H.NODE:H.BROWSER,this.format=this.onBuildLog.bind(this),this.originalFormatFunction=this.format,this.errorTargetHandler=this.onError.bind(this),this.errorUserTargetHandler=this.onErrorForUserTarget.bind(this),this.setOptions(this.options),this.rawLog=g(this,L),this.rawInfo=g(this,S),this.rawWarn=g(this,B),this.rawError=g(this,C),console.rawLog=g(this,L),console.rawInfo=g(this,S),console.rawWarn=g(this,B),console.rawError=g(this,C),console.table=this.table,console.buildTable=this.buildTable,console.isNode=this.isNode,console.isBrowser=this.isBrowser,console.truncateMessage=this.truncateMessage,console.rawLog=this.rawLog,console.rawInfo=this.rawInfo,console.rawWarn=this.rawWarn,console.rawError=this.rawError,console.isBrowser0=this.system===H.BROWSER,this.ALIGN=w.ALIGN,this.ENVIRONMENT_TYPE=w.ENVIRONMENT_TYPE}keepLogHistory(){this.keepLog=!0}releaseLogHistory(){this.keepLog=!1}resetLogHistory(){this.logHistory=[]}getLogHistory(e=!0,t=q){let r=JSON.parse(JSON.stringify(this.logHistory.slice(0)));return e?r.join(t):r}isNode(){return this.system===H.NODE}isBrowser(){return!this.isNode()}resetLogger(){this.options={},this.options.timeLenMax=10,this.options.contextLenMax=10,this.options.idLenMax=5,this.options.lidLenMax=6,this.options.messageLenMax=void 0,this.options.symbolLenMax=60,this.options.hideHookMessage=void 0,this.options.hidePassingTests=void 0,this.options.hideLog=void 0,this.options.hideError=void 0,this.options.oneConsolePerContext=!0,this.options.logToDom=void 0,this.options.logToFile=void 0,this.options.logToDomlogToFile=void 0,this.options.silent=!1}resetOptions(){this.resetLogger()}setOptions({contextLenMax:e=10,idLenMax:t=5,lidLenMax:r=6,symbolLenMax:o=2,messageLenMax:n=void 0,hideLog:i=void 0,hideError:a=void 0,hideHookMessage:l=void 0,hidePassingTests:x=void 0,logToDom:p=void 0,logToFile:d=void 0,oneConsolePerContext:E=void 0,silent:y=void 0}=null){this.options.contextLenMax=e,this.options.idLenMax=t,this.options.lidLenMax=r,this.options.messageLenMax=n,this.options.symbolLenMax=o,x!==void 0&&(this.options.hidePassingTests=!!x),l!==void 0&&(this.options.hideHookMessage=!!l),i!==void 0&&(this.options.hideLog=!!i),a!==void 0&&(this.options.hideError=!!a),E!==void 0&&(this.options.oneConsolePerContext=!!E),p!==void 0&&(this.options.logToDom=p||"#analogger"),d===!1?this.options.logToFile=!1:d!==void 0&&(this.isBrowser()||(this.options.logToFile=d||"./analogger.log"),g(this,L).call(this,"LogToFile is not supported in this environment. ")),y!==void 0&&(this.options.silent=!!y,this.options.hideLog=this.options.silent)}getOptions(){return this.options}truncateMessage(e="",{fit:t=0,align:r=w.ALIGN.LEFT,ellipsis:o="..."}={}){return e=""+e,t&&e.length>t&&(e=e.substring(0,t-o.length)+o),e=r===w.ALIGN.LEFT?e.padEnd(t," "):e.padStart(t," "),e}buildTable(e,{ellipsis:t="...",ColumnMinChars:r=6,columnMaxChars:o=0,verticalSeparator:n=" \u2502 ",horizontalSeparator:i="\u2500",availableLength:a=0,onCompleteHeaders:l=null,onCompleteSeparators:x=null,onCompleteLines:p=null}={}){let d="";if(Array.isArray(e)||(e=Object.values(Object.values(e))),!e||!e.length)return"";let y=e.map(f=>Object.assign({},f)),be=y[0],b=Object.keys(be);y.unshift(b),i=i.repeat(100);let m={};for(let f=1;f<y.length;++f){let c=y[f];for(let T=0;T<b.length;++T){let A=b[T],$=c[A];m[A]=m[A]||0;let N;try{N=JSON.stringify($).length}catch{}N=N||r,m[A]=Math.max(m[A],N,A.length)}}this.isBrowser0||(Y=Y||{},a||(a=Y.width||process.stdout.columns||120-n.length-1-5)),a=a-4;let ee=Object.values(m).reduce((f,c)=>f+c,0);if(a<ee){let f=a/ee;for(let c in m)m[c]=Math.floor(m[c]*f)-1,r&&m[c]<r&&(m[c]=r),o&&m[c]>o&&(m[c]=o),m[c]=m[c]}let u;u="";for(let f=0;f<b.length;++f){let c=b[f],T=m[c];u+=this.truncateMessage(c,{fit:T,ellipsis:t}),u+=n}l&&(u=l(u,b)),d+=this.truncateMessage(u,{fit:a}),d+=q,u="";let Te=i;for(let f=0;f<b.length;++f){let c=b[f],T=m[c];u+=this.truncateMessage(Te,{fit:T,ellipsis:""}),u+=n}x&&(u=x(u,b)),d+=this.truncateMessage(u,{fit:a}),d+=q;for(let f=1;f<y.length;++f){u="";let c=y[f];for(let T=0;T<b.length;++T){let A=b[T],$=c[A],N=m[A];u+=this.truncateMessage($,{fit:N,ellipsis:t}),u+=n}p&&(u=p(u,c)),d+=this.truncateMessage(u,{fit:a}),d+=q}return this.rawLog(d),d}onBuildLog({contextName:e,message:t="",lid:r="",symbol:o=""}={}){let n=new Date,i=("0"+n.getHours()).slice(-2)+":"+("0"+n.getMinutes()).slice(-2)+":"+("0"+n.getSeconds()).slice(-2);return i=this.truncateMessage(i,{fit:this.options.timeLenMax}),e=this.truncateMessage(e,{fit:this.options.contextLenMax,align:w.ALIGN.RIGHT}),r=this.truncateMessage(r,{fit:this.options.lidLenMax}),this.options.messageLenMax!==void 0&&(t=this.truncateMessage(t,{fit:this.options.messageLenMax})),o=this.truncateMessage(o,{fit:this.options.symbolLenMax}),`[${i}] ${e}: (${r}) ${o} ${t}`}onErrorForUserTarget(e,...t){this.errorUserTargetHandler(e,...t)}onError(e,...t){e.target===this.targets.USER&&this.onErrorForUserTarget(e,...t)}onDisplayLog(...e){this.log(...e)}onDisplayError(...e){this.error(...e)}setLogFormat(e){if(typeof e!="function")return console.error("Invalid parameter for setFormat. It is expecting a function or method."),!1;this.format=e.bind(this)}resetLogFormatter(){this.format=this.originalFormatFunction}setErrorHandler(e){this.errorTargetHandler=e.bind(this)}setErrorHandlerForUserTarget(e){this.errorUserTargetHandler=e.bind(this)}isContextValid(e){return typeof e=="object"&&!Array.isArray(e)&&e!==null?e.hasOwnProperty("contextName")&&e.hasOwnProperty("target"):!1}setContext(e,t){this.contexts[e]=t}setDefaultContext(e){this.setContext(O.DEFAULT,e)}generateDefaultContext(){let e=this.contexts[O.DEFAULT]||{};return e=Object.assign({},{name:O.DEFAULT,contextName:O.DEFAULT,target:"ALL",symbol:"\u26A1",color:v[1]},e),e.id=this.logIndex++,e}generateNewContext(){let e=this.generateDefaultContext();return e.color=v[this.indexColor++%(v.length-3)+2],e.symbol="",e}generateErrorContext(){let e=this.generateDefaultContext();return e.name=O.ERROR,e.contextName=O.ERROR,e.color=v[0],e.symbol="\u274C",e.error=!0,e}setContexts(e){let t=Object.keys(e);e[O.DEFAULT]=this.contexts[O.DEFAULT]=this.generateDefaultContext(),e[O.ERROR]=this.contexts[O.ERROR]=this.generateErrorContext(),t.forEach(r=>{let o=e[r]||{};o.contextName=r,o.name=r,this.contexts[r]=re(this,W,Ee).call(this,o),e[r]=this.contexts[r]})}setTargets(e={}){this.targets=Object.assign({},e,{ALL:"ALL",USER:"USER"})}setActiveTarget(e){this.activeTarget=e}isTargetAllowed(e){return!e||!this.activeTarget||e===this.targets.ALL?!0:this.activeTarget===e}setColumns(e,t,r){let o=0;for(let i in t){if(!["contextName","symbol","lid","text"].includes(i))continue;let a=t[i],l=document.createElement("span");l.classList.add("analogger-col",`analogger-col-${i}`,`analogger-col-${o}`),++o,l.textContent=a,e.append(l)}let n=document.createElement("span");n.classList.add("analogger-col","analogger-col-text",`analogger-col-${o}`),n.textContent=r,e.append(n)}addLineToDom(e,t,{context:r,addType:o}){if(o===j.BOTTOM?e.append(t):e.insertBefore(t,e.firstChild),this.removeDomOldEntries(e)){if(e.getElementsByClassName(K).length)return;r.contextName=ue,r.symbol="\u{1F5D1}",r.color="orange",r.className=K,clearTimeout(this.timerAddLineToDomID),this.timerAddLineToDomID=setTimeout(()=>{this.timerAddLineToDomID=null,this.writeLogToDom(r,"",{addType:j.TOP,message:"Oldest entries removed"})},500);return}this.scrollDivToBottom(e)}writeLogToDom(e,t,{addType:r=j.BOTTOM,message:o=""}={}){this.$containers=this.$containers||document.querySelectorAll(this.options.logToDom),t=o||t;for(let n=0;n<this.$containers.length;++n){let i=this.$containers[n],a=i.querySelector("."+Q);a||(a=document.createElement("div"),a.classList.add(Q),i.append(a));let l=document.createElement("div");l.classList.add(he),e.className&&l.classList.add(e.className),l.style.color=e.color,this.setColumns(l,e,t),setTimeout(function(x,p,{addType:d,context:E}){this.addLineToDom(x,p,{addType:d,context:E})}.bind(this,a,l,{addType:r,context:e}),0)}}writeLogToFile(e){try{fs.appendFileSync(this.options.logToFilePath,e+this.EOL)}catch(t){console.rawError("LOG_TO_FILE_FAILURE: ",t.message)}}convertArgumentsToText(e){let t=[],r,o=e.length;for(let n=0;n<o;++n){let i,a=e[n];try{i=JSON.stringify(a)}catch{}if(!i)try{i=pe(a)}catch{}t.push(i)}return r=t.join("\u2022"),r}processOutput(e={}){try{let t="";if(!this.isTargetAllowed(e.target))return;let r=Array.prototype.slice.call(arguments);r.shift(),t=this.convertArgumentsToText(r);let o="",n="";if(n=this.format({...e,message:t}),++this.logCounter,this.isBrowser()?(e.environnment=w.ENVIRONMENT_TYPE.BROWSER,this.options.logToDom&&this.writeLogToDom(e,n,{message:t}),o=`%c${n}`):(e.environnment=w.ENVIRONMENT_TYPE.NODE,o=G.getTextFromColor(n,{fg:e.color,bg:e.bgColor,isBold:e.bold,isUnderline:e.underline,isReversed:e.reversed}),this.options.logToFile&&this.writeLogToFile(n)),this.keepLog&&this.logHistory.push(o),this.options.hideLog)return;this.isBrowser()?g(this,L).call(this,o,`color: ${e.color}`):g(this,L).call(this,o),this.errorTargetHandler(e,r)}catch(t){console.error("AnaLogger:",t.message)}}isExtendedOptionsPassed(e){return typeof e!="object"?!1:e.hasOwnProperty("context")||e.hasOwnProperty("target")||e.hasOwnProperty("color")||e.hasOwnProperty("contextName")||e.hasOwnProperty("lid")}listSymbols(){for(let e in V)console.rawLog(V[e]+` ${e} `)}applySymbolByName(e){try{e.symbol&&V[e.symbol]&&(e.symbol=V[e.symbol])}catch{}}convertToContext(e,t){t=t||this.generateDefaultContext(),e=e||t;let r=e;if(e.context&&typeof e.context=="object"){let o=Object.assign({},e);delete o.context,r=Object.assign({},e.context,o)}return r=Object.assign({},t,r),delete r.context,this.applySymbolByName(r),r}log(e,...t){if(!this.isExtendedOptionsPassed(e)){let o=this.generateDefaultContext();this.processOutput.apply(this,[o,e,...t]);return}let r=this.convertToContext(e);this.processOutput.apply(this,[r,...t])}error(e,...t){if(this.options.hideError)return;if(!this.isExtendedOptionsPassed(e)){let i=this.generateErrorContext();this.processOutput.apply(this,[i,e,...t]);return}let r=this.generateErrorContext(),o=this.convertToContext(e,r),n=Array.prototype.slice.call(arguments,1);this.log(o,...n)}overrideError(){this.options.hideHookMessage||g(this,L).call(this,"AnaLogger: Hook placed on console.error"),console.error=this.onDisplayError.bind(this)}overrideConsole({log:e=!0,info:t=!0,warn:r=!0,error:o=!1}={}){this.options.hideHookMessage||g(this,L).call(this,"AnaLogger: Hook placed on console.log"),e&&(console.log=this.onDisplayLog.bind(this)),t&&(console.info=this.onDisplayLog.bind(this)),r&&(console.warn=this.onDisplayLog.bind(this)),o&&this.overrideError()}removeOverrideError(){console.warn=g(this,C)}removeOverride({log:e=!0,info:t=!0,warn:r=!0,error:o=!1}={}){e&&(console.log=g(this,L)),t&&(console.info=g(this,S)),r&&(console.warn=g(this,B)),o&&this.removeOverrideError()}info(...e){return this.log(...e)}warn(...e){return this.log(...e)}table(...e){return this.buildTable(...e)}alert(...e){if(this.isNode())return this.log(...e);let t=e.join(" | ");alert(t)}assert(e,t=!0,...r){let o;try{return typeof e=="function"?(o=e(...r),o!==t?(this.error("Asset failed"),!1):(this.options.hidePassingTests||this.log("SUCCESS: Assert passed"),!0)):e!==t?(this.error("Assert failed"),!1):(this.options.hidePassingTests||this.log("SUCCESS: Assert passed"),!0)}catch{this.error("Unexpected error in assert")}return!1}applyAnalogFormatting({activeTarget:e="",override:t=!1}={}){try{let n={STANDARD:null,TEST:{color:"#B18904",symbol:"diamonds"},C1:null,C2:null,C3:null,DEFAULT:{}},i=typeof process=="object"?process.env.DEVELOPER:"DEV",a=typeof process=="object"?process.env.DEVELOPER:"DEV1",l={ALL:"ALL",DEBUG:"DEBUG",DEV:i,DEV1:a,USER:"USER"};return this.setDefaultContext(n.DEFAULT),this.setTargets(l),e&&this.setActiveTarget(e),this.setOptions({silent:!1,hideError:!1,hideHookMessage:!0,lidLenMax:4}),t&&(this.overrideConsole(),this.overrideError()),!0}catch(r){console.error({lid:3249},r.message)}return!1}applyPredefinedFormat(e=Z.DEFAULT_FORMAT,{activeTarget:t="",override:r=!1}={}){if(e===Z.DEFAULT_FORMAT)return this.applyAnalogFormatting({activeTarget:t,override:r})}},R=w;L=new WeakMap,S=new WeakMap,B=new WeakMap,C=new WeakMap,W=new WeakSet,Ee=function(e){let t=e,r=this.generateNewContext();return t=Object.assign({},r,t),t.color.toLowerCase().indexOf("rgb")>-1?t.color=G.rgbStringToHex(t.color):t.color.indexOf("#")===-1&&(t.color=G.colorNameToHex(t.color)),t},h(R,"ALIGN",{LEFT:"LEFT",RIGHT:"RIGHT"}),h(R,"ENVIRONMENT_TYPE",{BROWSER:"BROWSER",NODE:"NODE",OTHER:"OTHER"});var Ve=R,Be=R,Ye=Be,We=new R;export{Ve as AnaLogger,We as anaLogger,Ye as default};
1
+ var Le=Object.defineProperty;var Oe=(o,e,t)=>e in o?Le(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t;var f=(o,e,t)=>(Oe(o,typeof e!="symbol"?e+"":e,t),t),re=(o,e,t)=>{if(!e.has(o))throw TypeError("Cannot "+t)};var u=(o,e,t)=>(re(o,e,"read from private field"),t?t.call(o):e.get(o)),M=(o,e,t)=>{if(e.has(o))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(o):e.set(o,t)};var se=(o,e,t)=>(re(o,e,"access private method"),t);var oe={Foreground:38,Background:48},_="\x1B[1D",ne="\x1B[0m"+_,v={Bold:"\x1B[1m"+_,Underline:"\x1B[4m"+_,Reversed:"\x1B[7m"+_},ye={Bold:"\x1B[1m"+_,Underline:"\x1B[4m"+_,Reversed:"\x1B[7m"+_},X={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4","indianred ":"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function xe(o){return!!X[o]}var ie=(o,e,t)=>o===e&&e===t?o<8?16:o>248?231:Math.round((o-8)/247*24)+232:16+36*Math.round(o/255*5)+6*Math.round(e/255*5)+Math.round(t/255*5),ae=o=>{let e=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;o=o.replace(e,function(r,s,n,i){return s+s+n+n+i+i});let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(o);return t?{red:parseInt(t[1],16),blue:parseInt(t[2],16),green:parseInt(t[3],16)}:{}},le=function({red:o,green:e,blue:t}){let r=o<<16|e<<8|t<<0;return"#"+(16777216+r).toString(16).slice(1)},fe=function(o){let e=o.matchAll(/\d+/g),t=[];for(let r of e){let s=parseInt(r[0]);if(s>255)return null;t.push(s)}return t.length!==3?null:{red:t[0],green:t[1],blue:t[2]}},we=function(o){let e=fe(o);return e&&le(e)},U=function(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+(t-e)*6*r:r<1/2?t:r<2/3?e+(t-e)*(2/3-r)*6:e},ce=({hue:o,saturation:e,lightness:t})=>{let r,s,n;if(e===0)r=s=n=t;else{let i=t<.5?t*(1+e):t+e-t*e,a=2*t-i;r=U(a,i,o+1/3),s=U(a,i,o),n=U(a,i,o-1/3)}return{red:Math.round(r*255),blue:Math.round(n*255),green:Math.round(s*255)}},de=o=>{let e=o.toLowerCase();return typeof X[e]<"u"?X[e]:""};function S({red:o,blue:e,green:t},r=!0){if(o===void 0||e===void 0||t===void 0)return"";let s=ie(o,e,t);return`\x1B[${r?oe.Foreground:oe.Background};5;`+s+"m "+_}function F(o,e=!0){let{red:t,green:r,blue:s}=ae(o);return S({red:t,green:r,blue:s},e)}function P({hue:o,saturation:e,lightness:t},r){let{red:s,green:n,blue:i}=ce({hue:o,saturation:e,lightness:t});return S({red:s,green:n,blue:i},r)}function z(o,e=!0){try{let t;return o=o||"",o?((typeof o=="string"||o instanceof String)&&(o=o.trim()),xe(o)?(t=de(o),F(t,e)):typeof o=="object"&&!!o.red&&!!o.blue&&!!o.green?S(o,e):typeof o=="object"&&!!o.hue&&!!o.saturation&&!!o.lightness?P(o,e):o.startsWith("#")?F(o,e):(o=o.toString(),/^[\da-fA-F]+$/.test(o)?F("#"+o,e):"")):""}catch(t){console.error("TO_ANSI_INVALID_ARGUMENT_ERROR",t.message)}}function G(o,{fg:e,bg:t,isUnderline:r=!1,isBold:s=!1,isReversed:n=!1}){let i=!1,a="";return e&&(i=!0,a=a+e),t&&(i=!0,a=a+t),r&&(i=!0,a=a+v.Underline),s&&(i=!0,a=a+v.Bold),n&&(i=!0,a=a+v.Reversed),i?a+o+ne:o}function Ae(o,{fg:e={},bg:t={},isUnderline:r=!1,isBold:s=!1,isReversed:n=!1}){return e&&(e=S({...e})),t&&(t=S({...t},!1)),G(o,{fg:e,bg:t,isUnderline:r,isBold:s,isReversed:n})}function _e(o,{fg:e="",bg:t="",isUnderline:r=!1,isBold:s=!1,isReversed:n=!1}){return e&&(e=P({...e})),t&&(t=P({...t},!1)),G(o,{fg:e,bg:t,isUnderline:r,isBold:s,isReversed:n})}function Ne(o,{fg:e="",bg:t="",isUnderline:r=!1,isBold:s=!1,isReversed:n=!1}){return e&&(e=F(e)),t&&(t=F(t,!1)),G(o,{fg:e,bg:t,isUnderline:r,isBold:s,isReversed:n})}function Re(o,e=null){if(!e)return o;let{fg:t="",bg:r="",isUnderline:s=!1,isBold:n=!1,isReversed:i=!1}=e;return t&&(t=z(t)),r&&(r=z(r,!1)),G(o,{fg:t,bg:r,isUnderline:s,isBold:n,isReversed:i})}var j={fromRgb:S,fromHexa:F,fromHsl:P,fromColor:z,getTextFromRgb:Ae,getTextFromHsl:_e,getTextFromHex:Ne,getTextFromColor:Re,colorNameToHex:de,hslToRgb:ce,hexToRgb:ae,rgbToHex:le,rgbToAnsi256:ie,rgbStringToRgb:fe,rgbStringToHex:we,hue2rgb:U,RESET:ne,FONT_STYLE:v,STYLE:ye};var he={COLOR_TABLE:["#d2466e","#FFA07A","#FF7F50","#FF6347","#FFE4B5","#ADFF2F","#808000","#40E0D0","#1E90FF","#EE82EE","#708090","#DEB887","#FE642E","#210B61","#088A4B","#5E610B","#FA8258","#088A68","#B40431"],SYSTEM:{BROWSER:"BROWSER",NODE:"NODE"}},B=he.COLOR_TABLE,I=he.SYSTEM,K=2e3,Q="analogger-removed-notif",Z="analogger-view",ue="to-esm-line",q={TOP:"TOP",BOTTOM:"BOTTOM"},ge="ANALOGGER",ee={DEFAULT_FORMAT:"FORMAT1"};var{parse:ve,stringify:De}=JSON,{keys:Ue}=Object,Me=String,Fe="string";var me="object",Se=(o,e)=>e;var pe=(o,e,t)=>{let r=Me(e.push(t)-1);return o.set(t,r),r};var Ee=(o,e,t)=>{let r=e&&typeof e===me?(p,h)=>p===""||-1<e.indexOf(p)?h:void 0:e||Se,s=new Map,n=[],i=[],a=+pe(s,n,r.call({"":o},"",o)),l=!a;for(;a<n.length;)l=!0,i[a]=De(n[a++],x,t);return"["+i.join(",")+"]";function x(p,h){if(l)return l=!l,h;let E=r.call(this,p,h);switch(typeof E){case me:if(E===null)return E;case Fe:return s.get(E)||pe(s,n,E)}return E}};var W={};W={};var y={DEFAULT:"DEFAULT",ERROR:"ERROR"},V=`
2
+ `,Y={airplane:"\u2708",anchor:"\u2693",arrow_backward:"\u25C0",arrow_double_up:"\u23EB",arrow_double_down:"\u23EC",arrow_forward:"\u25B6",arrow_lower_right:"\u2198",arrow_lower_left:"\u2199",arrow_right_hook:"\u21AA",arrow_up_down:"\u2195",arrow_upper_left:"\u2196",arrow_upper_right:"\u2197",ballot_box_with_check:"\u2611",biohazard:"\u2623",black_circle:"\u23FA",black_medium_small_square:"\u25FE",black_medium_square:"\u25FC",black_nib:"\u2712",black_small_square:"\u25AA",black_square:"\u23F9",chains:"\u26D3",check:"\u2714",chess_pawn:"\u265F",cloud_and_rain:"\u26C8",clubs:"\u2663",coffee:"\u2615",copyright:"\xA9",cross:"\u274C",diamonds:"\u2666",divisions_ign:"\u2797",double_triangle_right:"\u23ED",double_triangle_left:"\u23EE",email:"\u2709",eject:"\u23CF",exclamation_mark:"\u2757",fast_forward:"\u23E9",female_sign:"\u2640",fist:"\u270A",fuel_pump:"\u26FD",gear:"\u2699",hammer_and_pick:"\u2692",hand:"\u270B",hearts:"\u2665",infinity:"\u267E",information:"\u2139",left_right_arrow:"\u2194",leftwards_arrow_with_hook:"\u21A9",male_sign:"\u2642",minus_sign:"\u2796",no_entry:"\u26D4",partly_sunny:"\u26C5",pencil:"\u270F",phone:"\u260E",plus_sign:"\u2795",question:"\u2754",radioactive:"\u2622",raised_hand:"\u270B",recycle:"\u267B",registered:"\xAE",relaxed:"\u263A",rewind:"\u23EA",scissors:"\u2702",snowman:"\u2603",spades:"\u2660",sparkles:"\u2728",star:"\u2B50",sunny:"\u2600",tent:"\u26FA",trademark:"\u2122",triangle_with_vertical_bar:"\u23EF",umbrella:"\u2614",vertical_bars:"\u23F8",watch:"\u231A",white_frowning_face:"\u2639",white_medium_square:"\u25FB",white_medium_small_square:"\u25FD",white_small_square:"\u25AB",wheelchair:"\u267F",white_circle:"\u26AA",writing_hand:"\u270D"},b,C,H,k,$,be,O=class{constructor({name:e="default"}={}){M(this,$);f(this,"system","");f(this,"instanceId","");f(this,"instanceName","");f(this,"logIndex",0);f(this,"logCounter",0);f(this,"contexts",[]);f(this,"targets",{});f(this,"activeTarget",null);f(this,"indexColor",0);f(this,"format","");f(this,"keepLog",!1);f(this,"logHistory",[]);f(this,"$containers",null);f(this,"options",{hideHookMessage:!1});M(this,b,console.log);M(this,C,console.info);M(this,H,console.warn);M(this,k,console.error);f(this,"isBrowser0",null);f(this,"originalFormatFunction");f(this,"removeDomOldEntries",e=>{if(e.childElementCount>K){let r=Math.ceil(K/10);for(let s=0;s<r;++s)e.removeChild(e.firstChild);return r}return 0});f(this,"scrollDivToBottom",e=>{let t=e.scrollHeight-(e.clientHeight+e.scrollTop),r=e.clientHeight||e.offsetHeight;t>r/2||(e.scrollTop=e.scrollHeight)});this.system=typeof process=="object"?I.NODE:I.BROWSER,this.format=this.onBuildLog.bind(this),this.originalFormatFunction=this.format,this.instanceName=e,++O.instanceCount,this.instanceId=O.instanceCount+"-"+Date.now(),this.errorTargetHandler=this.onError.bind(this),this.errorUserTargetHandler=this.onErrorForUserTarget.bind(this),this.setOptions(this.options),this.rawLog=u(this,b),this.rawInfo=u(this,C),this.rawWarn=u(this,H),this.rawError=u(this,k),console.rawLog=u(this,b),console.raw=u(this,b),console.rawInfo=u(this,C),console.rawWarn=u(this,H),console.rawError=u(this,k),console.keepLogHistory=this.keepLogHistory,console.getLogHistory=this.getLogHistory,console.table=this.table,console.buildTable=this.buildTable,console.isNode=this.isNode,console.isBrowser=this.isBrowser,console.truncateMessage=this.truncateMessage,console.rawLog=this.rawLog,console.rawInfo=this.rawInfo,console.rawWarn=this.rawWarn,console.rawError=this.rawError,console.isBrowser0=this.system===I.BROWSER,this.ALIGN=O.ALIGN,this.ENVIRONMENT_TYPE=O.ENVIRONMENT_TYPE,this.resetLogHistory()}getName(){return this.instanceName}getId(){return this.instanceId}keepLogHistory(){this.keepLog=!0}releaseLogHistory(){this.keepLog=!1}resetLogHistory(){this.logHistory=[]}getLogHistory(e=!0,t=V){if(!this.logHistory)return"";let s=this.logHistory.slice(0),n=JSON.parse(JSON.stringify(s));return e?n.join(t):n}isNode(){return this.system===I.NODE}isBrowser(){return!this.isNode()}resetLogger(){this.options={},this.options.timeLenMax=10,this.options.contextLenMax=10,this.options.idLenMax=5,this.options.lidLenMax=6,this.options.messageLenMax=void 0,this.options.symbolLenMax=60,this.options.hideHookMessage=void 0,this.options.hidePassingTests=void 0,this.options.hideLog=void 0,this.options.hideError=void 0,this.options.oneConsolePerContext=!0,this.options.logToDom=void 0,this.options.logToFile=void 0,this.options.logToDomlogToFile=void 0}resetOptions(){this.resetLogger()}setOptions({contextLenMax:e=10,idLenMax:t=5,lidLenMax:r=6,symbolLenMax:s=2,messageLenMax:n=void 0,hideLog:i=void 0,hideError:a=void 0,hideHookMessage:l=void 0,hidePassingTests:x=void 0,logToDom:p=void 0,logToFile:h=void 0,oneConsolePerContext:E=void 0,silent:w=void 0}=null){this.options.contextLenMax=e,this.options.idLenMax=t,this.options.lidLenMax=r,this.options.messageLenMax=n,this.options.symbolLenMax=s,x!==void 0&&(this.options.hidePassingTests=!!x),l!==void 0&&(this.options.hideHookMessage=!!l);let R;w!==void 0?R=!!w:i!==void 0&&(R=!!i),R&&(this.options.hideLog=!!R),a!==void 0&&(this.options.hideError=!!a),E!==void 0&&(this.options.oneConsolePerContext=!!E),p!==void 0&&(this.options.logToDom=p||"#analogger"),h===!1?this.options.logToFile=!1:h!==void 0&&(this.isBrowser()||(this.options.logToFile=h||"./analogger.log"),u(this,b).call(this,"LogToFile is not supported in this environment. "))}getOptions(){return this.options}truncateMessage(e="",{fit:t=0,align:r=O.ALIGN.LEFT,ellipsis:s="..."}={}){return e=""+e,t&&e.length>t&&(e=e.substring(0,t-s.length)+s),e=r===O.ALIGN.LEFT?e.padEnd(t," "):e.padStart(t," "),e}buildTable(e,{ellipsis:t="...",ColumnMinChars:r=6,columnMaxChars:s=0,verticalSeparator:n=" \u2502 ",horizontalSeparator:i="\u2500",availableLength:a=0,onCompleteHeaders:l=null,onCompleteSeparators:x=null,onCompleteLines:p=null}={}){let h="";if(Array.isArray(e)||(e=Object.values(Object.values(e))),!e||!e.length)return"";let w=e.map(c=>Object.assign({},c)),R=w[0],T=Object.keys(R);w.unshift(T),i=i.repeat(100);let m={};for(let c=1;c<w.length;++c){let d=w[c];for(let L=0;L<T.length;++L){let A=T[L],J=d[A];m[A]=m[A]||0;let D;try{D=JSON.stringify(J).length}catch{}D=D||r,m[A]=Math.max(m[A],D,A.length)}}this.isBrowser0||(W=W||{},a||(a=W.width||process.stdout.columns||120-n.length-1-5)),a=a-4;let te=Object.values(m).reduce((c,d)=>c+d,0);if(a<te){let c=a/te;for(let d in m)m[d]=Math.floor(m[d]*c)-1,r&&m[d]<r&&(m[d]=r),s&&m[d]>s&&(m[d]=s),m[d]=m[d]}let g;g="";for(let c=0;c<T.length;++c){let d=T[c],L=m[d];g+=this.truncateMessage(d,{fit:L,ellipsis:t}),g+=n}l&&(g=l(g,T)),h+=this.truncateMessage(g,{fit:a}),h+=V,g="";let Te=i;for(let c=0;c<T.length;++c){let d=T[c],L=m[d];g+=this.truncateMessage(Te,{fit:L,ellipsis:""}),g+=n}x&&(g=x(g,T)),h+=this.truncateMessage(g,{fit:a}),h+=V;for(let c=1;c<w.length;++c){g="";let d=w[c];for(let L=0;L<T.length;++L){let A=T[L],J=d[A],D=m[A];g+=this.truncateMessage(J,{fit:D,ellipsis:t}),g+=n}p&&(g=p(g,d)),h+=this.truncateMessage(g,{fit:a}),h+=V}return this.rawLog(h),h}onBuildLog({contextName:e,message:t="",lid:r="",symbol:s=""}={}){let n=new Date,i=("0"+n.getHours()).slice(-2)+":"+("0"+n.getMinutes()).slice(-2)+":"+("0"+n.getSeconds()).slice(-2);return i=this.truncateMessage(i,{fit:this.options.timeLenMax}),e=this.truncateMessage(e,{fit:this.options.contextLenMax,align:O.ALIGN.RIGHT}),r=this.truncateMessage(r,{fit:this.options.lidLenMax}),this.options.messageLenMax!==void 0&&(t=this.truncateMessage(t,{fit:this.options.messageLenMax})),s=this.truncateMessage(s,{fit:this.options.symbolLenMax}),`[${i}] ${e}: (${r}) ${s} ${t}`}onErrorForUserTarget(e,...t){this.errorUserTargetHandler(e,...t)}onError(e,...t){e.target===this.targets.USER&&this.onErrorForUserTarget(e,...t)}onDisplayLog(...e){this.log(...e)}assistStask(e){try{let t=e.stack.split(`
3
+ `),r=[];for(let s=0;s<t.length;++s){let n=t[s];r.push(n)}return r}catch(t){console.rawError(t.message)}return e.message}onDisplayError(...e){try{let t=-1,r=null;for(let s=0;s<e.length;++s){let n=e[s];if(n instanceof Error&&n.stack){t=s,r=this.assistStask(n)||[];break}}if(!r){this.error(...e);return}for(let s=0;s<r.length;++s)e[t]=r[s],this.error(...e)}catch(t){console.rawError(t)}}setLogFormat(e){if(typeof e!="function")return console.error("Invalid parameter for setFormat. It is expecting a function or method."),!1;this.format=e.bind(this)}resetLogFormatter(){this.format=this.originalFormatFunction}setErrorHandler(e){this.errorTargetHandler=e.bind(this)}setErrorHandlerForUserTarget(e){this.errorUserTargetHandler=e.bind(this)}isContextValid(e){return typeof e=="object"&&!Array.isArray(e)&&e!==null?e.hasOwnProperty("contextName")&&e.hasOwnProperty("target"):!1}setContext(e,t){this.contexts[e]=t}setDefaultContext(e){this.setContext(y.DEFAULT,e)}generateDefaultContext(){let e=this.contexts[y.DEFAULT]||{};return e=Object.assign({},{name:y.DEFAULT,contextName:y.DEFAULT,target:"ALL",symbol:"\u26A1",color:B[1]},e),e.id=this.logIndex++,e}generateNewContext(){let e=this.generateDefaultContext();return e.color=B[this.indexColor++%(B.length-3)+2],e.symbol="",e}generateErrorContext(){let e=this.generateDefaultContext();return e.name=y.ERROR,e.contextName=y.ERROR,e.color=B[0],e.symbol="\u274C",e.error=!0,e}setContexts(e){let t=Object.keys(e);e[y.DEFAULT]=this.contexts[y.DEFAULT]=this.generateDefaultContext(),e[y.ERROR]=this.contexts[y.ERROR]=this.generateErrorContext(),t.forEach(r=>{let s=e[r]||{};s.contextName=r,s.name=r,this.contexts[r]=se(this,$,be).call(this,s),e[r]=this.contexts[r]})}setTargets(e={}){this.targets=Object.assign({},e,{ALL:"ALL",USER:"USER"})}setActiveTarget(e){this.activeTarget=e}isTargetAllowed(e){return!e||!this.activeTarget||e===this.targets.ALL?!0:this.activeTarget===e}setColumns(e,t,r){let s=0;for(let i in t){if(!["contextName","symbol","lid","text"].includes(i))continue;let a=t[i],l=document.createElement("span");l.classList.add("analogger-col",`analogger-col-${i}`,`analogger-col-${s}`),++s,l.textContent=a,e.append(l)}let n=document.createElement("span");n.classList.add("analogger-col","analogger-col-text",`analogger-col-${s}`),n.textContent=r,e.append(n)}addLineToDom(e,t,{context:r,addType:s}){if(s===q.BOTTOM?e.append(t):e.insertBefore(t,e.firstChild),this.removeDomOldEntries(e)){if(e.getElementsByClassName(Q).length)return;r.contextName=ge,r.symbol="\u{1F5D1}",r.color="orange",r.className=Q,clearTimeout(this.timerAddLineToDomID),this.timerAddLineToDomID=setTimeout(()=>{this.timerAddLineToDomID=null,this.writeLogToDom(r,"",{addType:q.TOP,message:"Oldest entries removed"})},500);return}this.scrollDivToBottom(e)}writeLogToDom(e,t,{addType:r=q.BOTTOM,message:s=""}={}){this.$containers=this.$containers||document.querySelectorAll(this.options.logToDom),t=s||t;for(let n=0;n<this.$containers.length;++n){let i=this.$containers[n],a=i.querySelector("."+Z);a||(a=document.createElement("div"),a.classList.add(Z),i.append(a));let l=document.createElement("div");l.classList.add(ue),e.className&&l.classList.add(e.className),l.style.color=e.color,this.setColumns(l,e,t),setTimeout(function(x,p,{addType:h,context:E}){this.addLineToDom(x,p,{addType:h,context:E})}.bind(this,a,l,{addType:r,context:e}),0)}}writeLogToFile(e){try{fs.appendFileSync(this.options.logToFilePath,e+this.EOL)}catch(t){console.rawError("LOG_TO_FILE_FAILURE: ",t.message)}}convertArgumentsToText(e){let t=[],r,s=e.length;for(let n=0;n<s;++n){let i,a=e[n];try{i=JSON.stringify(a)}catch{}if(!i)try{i=Ee(a)}catch{}t.push(i)}return r=t.join("\u2022"),r}processOutput(e={}){try{let t="";if(!this.isTargetAllowed(e.target))return;let r=Array.prototype.slice.call(arguments);r.shift(),t=this.convertArgumentsToText(r);let s="",n="";if(n=this.format({...e,message:t}),++this.logCounter,this.isBrowser()?(e.environnment=O.ENVIRONMENT_TYPE.BROWSER,this.options.logToDom&&this.writeLogToDom(e,n,{message:t}),s=`%c${n}`):(e.environnment=O.ENVIRONMENT_TYPE.NODE,s=j.getTextFromColor(n,{fg:e.color,bg:e.bgColor,isBold:e.bold,isUnderline:e.underline,isReversed:e.reversed}),this.options.logToFile&&this.writeLogToFile(n)),this.keepLog&&this.logHistory.push(s),this.options.hideLog)return;this.isBrowser()?u(this,b).call(this,s,`color: ${e.color}`):u(this,b).call(this,s),this.errorTargetHandler(e,r)}catch(t){console.rawError("AnaLogger:",t.message)}}isExtendedOptionsPassed(e){return typeof e!="object"?!1:e.hasOwnProperty("context")||e.hasOwnProperty("target")||e.hasOwnProperty("color")||e.hasOwnProperty("contextName")||e.hasOwnProperty("lid")}listSymbols(){for(let e in Y)console.rawLog(Y[e]+` ${e} `)}applySymbolByName(e){try{e.symbol&&Y[e.symbol]&&(e.symbol=Y[e.symbol])}catch{}}convertToContext(e,t){t=t||this.generateDefaultContext(),e=e||t;let r=e;if(e.context&&typeof e.context=="object"){let s=Object.assign({},e);delete s.context,r=Object.assign({},e.context,s)}return r=Object.assign({},t,r),delete r.context,this.applySymbolByName(r),r}log(e,...t){if(!this.isExtendedOptionsPassed(e)){let s=this.generateDefaultContext();this.processOutput.apply(this,[s,e,...t]);return}let r=this.convertToContext(e);this.processOutput.apply(this,[r,...t])}error(e,...t){if(this.options.hideError)return;if(!this.isExtendedOptionsPassed(e)){let i=this.generateErrorContext();this.processOutput.apply(this,[i,e,...t]);return}let r=this.generateErrorContext(),s=this.convertToContext(e,r),n=Array.prototype.slice.call(arguments,1);this.log(s,...n)}overrideError(){this.options.hideHookMessage||u(this,b).call(this,"AnaLogger: Hook placed on console.error"),console.error=this.onDisplayError.bind(this)}overrideConsole({log:e=!0,info:t=!0,warn:r=!0,error:s=!1}={}){this.options.hideHookMessage||u(this,b).call(this,"AnaLogger: Hook placed on console.log"),e&&(console.log=this.onDisplayLog.bind(this)),t&&(console.info=this.onDisplayLog.bind(this)),r&&(console.warn=this.onDisplayLog.bind(this)),s&&this.overrideError()}removeOverrideError(){console.warn=u(this,k)}removeOverride({log:e=!0,info:t=!0,warn:r=!0,error:s=!1}={}){e&&(console.log=u(this,b)),t&&(console.info=u(this,C)),r&&(console.warn=u(this,H)),s&&this.removeOverrideError()}info(...e){return this.log(...e)}warn(...e){return this.log(...e)}table(...e){return this.buildTable(...e)}alert(...e){if(this.isNode())return this.log(...e);let t=e.join(" | ");alert(t)}assert(e,t=!0,...r){let s;try{return typeof e=="function"?(s=e(...r),s!==t?(this.error("Asset failed"),!1):(this.options.hidePassingTests||this.log("SUCCESS: Assert passed"),!0)):e!==t?(this.error("Assert failed"),!1):(this.options.hidePassingTests||this.log("SUCCESS: Assert passed"),!0)}catch{this.error("Unexpected error in assert")}return!1}applyAnalogFormatting({activeTarget:e="",override:t=!1}={}){try{let s={STANDARD:null,TEST:{color:"#B18904",symbol:"diamonds"},C1:null,C2:null,C3:null,DEFAULT:{}},n=typeof process=="object"?process.env.DEVELOPER:"DEV",i=typeof process=="object"?process.env.DEVELOPER:"DEV1",a={ALL:"ALL",DEBUG:"DEBUG",DEV:n,DEV1:i,USER:"USER"};return this.setDefaultContext(s.DEFAULT),this.setTargets(a),e&&this.setActiveTarget(e),this.setOptions({silent:!1,hideError:!1,hideHookMessage:!0,lidLenMax:4}),t&&(this.overrideConsole(),this.overrideError()),!0}catch(r){console.error({lid:3249},r.message)}return!1}applyPredefinedFormat(e=ee.DEFAULT_FORMAT,{activeTarget:t="",override:r=!1}={}){if(e===ee.DEFAULT_FORMAT)return this.applyAnalogFormatting({activeTarget:t,override:r})}},N=O;b=new WeakMap,C=new WeakMap,H=new WeakMap,k=new WeakMap,$=new WeakSet,be=function(e){let t=e,r=this.generateNewContext();return t=Object.assign({},r,t),t.color.toLowerCase().indexOf("rgb")>-1?t.color=j.rgbStringToHex(t.color):t.color.indexOf("#")===-1&&(t.color=j.colorNameToHex(t.color)),t},f(N,"ALIGN",{LEFT:"LEFT",RIGHT:"RIGHT"}),f(N,"ENVIRONMENT_TYPE",{BROWSER:"BROWSER",NODE:"NODE",OTHER:"OTHER"}),f(N,"instanceCount",0);var Ve=N,Ce=N,Ye=Ce,We=new N;export{Ve as AnaLogger,We as anaLogger,Ye as default};
3
4
 
@@ -1 +1 @@
1
- .analogger{background-color:#462210;border:4px solid #16122a;box-shadow:3px 4px 9px 0px rgba(0,0,0,.75);height:320px;overflow:hidden;margin:1rem;padding:13px 0 0 0;width:80%;max-height:300px}.analogger .analogger-view{background-color:#0c0c0c;box-sizing:border-box;color:#faebd7;display:block;font-family:sans-serif;font-size:12px;line-height:30px;height:calc(100% - 20px);margin:20px 0 0 0;padding:12px;overflow:auto;position:relative;width:100%}.analogger .analogger-view .to-esm-line{align-items:stretch;display:flex;justify-content:flex-start;height:26px;line-height:26px;overflow:hidden;vertical-align:middle;white-space:nowrap}.analogger .analogger-view .to-esm-line.analogger-removed-notif{background-color:rgba(223,73,73,.51);color:#abb9b7;font-size:9px}.analogger .analogger-view .to-esm-line.analogger-removed-notif .analogger-col-symbol{font-size:18px}.analogger .analogger-view .to-esm-line .analogger-col{overflow:hidden;padding:0 4px;text-overflow:ellipsis;white-space:nowrap}.analogger .analogger-view .to-esm-line .analogger-col-contextName{flex-grow:1;max-width:60px;text-align:right}.analogger .analogger-view .to-esm-line .analogger-col-target{flex-grow:1;max-width:60px;text-align:right}.analogger .analogger-view .to-esm-line .analogger-col-symbol{flex-grow:1;max-width:40px;text-align:center}.analogger .analogger-view .to-esm-line .analogger-col-text{flex-grow:1}.analogger .analogger-view::-webkit-scrollbar-thumb{border:5px solid transparent;border-radius:100px;background-color:#514b6e;background-clip:content-box}.analogger .analogger-view::-webkit-scrollbar{width:14px}.analogger .analogger-view::-webkit-scrollbar-track{background-color:#382525;border-radius:100px}.analogger .analogger-view::-webkit-scrollbar-thumb{border-radius:100px;border:4px solid transparent;background-clip:content-box;background-color:#9f6c53}
1
+ .analogger{background-color:#462210;border:4px solid #16122a;box-shadow:3px 4px 9px 0px rgba(0,0,0,.75);height:320px;overflow:hidden;margin:1rem;padding:13px 0 0 0;width:80%;max-height:300px}.analogger .analogger-view{background-color:#0c0c0c;box-sizing:border-box;color:#faebd7;display:block;font-family:sans-serif;font-size:12px;line-height:30px;height:calc(100% - 20px);margin:20px 0 0 0;padding:12px;overflow:auto;position:relative;width:100%}.analogger .analogger-view .to-esm-line{align-items:stretch;display:flex;justify-content:flex-start;height:26px;line-height:26px;overflow:hidden;vertical-align:middle;white-space:nowrap}.analogger .analogger-view .to-esm-line.analogger-removed-notif{background-color:rgba(223,73,73,.51);color:#abb9b7;font-size:9px}.analogger .analogger-view .to-esm-line.analogger-removed-notif .analogger-col-symbol{font-size:18px}.analogger .analogger-view .to-esm-line .analogger-col{overflow:hidden;padding:0 4px;text-overflow:ellipsis;white-space:nowrap}.analogger .analogger-view .to-esm-line .analogger-col-contextName{flex-grow:1;max-width:60px;text-align:right}.analogger .analogger-view .to-esm-line .analogger-col-target{flex-grow:1;max-width:60px;text-align:right}.analogger .analogger-view .to-esm-line .analogger-col-symbol{flex-grow:1;max-width:40px;text-align:center}.analogger .analogger-view .to-esm-line .analogger-col-text{flex-grow:1}.analogger .analogger-view::-webkit-scrollbar-thumb{border:5px solid transparent;border-radius:100px;background-color:#514b6e;background-clip:content-box}.analogger .analogger-view::-webkit-scrollbar{width:14px}.analogger .analogger-view::-webkit-scrollbar-track{background-color:#382525;border-radius:100px}.analogger .analogger-view::-webkit-scrollbar-thumb{border-radius:100px;border:4px solid transparent;background-clip:content-box;background-color:#9f6c53}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./node_modules/define-property/index.js]{@link ./node_modules/define-property/index.js}
4
+ * @see [./node_modules/define-property/index.js]{@link ./node_modules/define-property/index.js}
5
5
  *
6
6
  **/
7
7
  import isDescriptor from "../is-descriptor/index.mjs";
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./node_modules/is-accessor-descriptor/index.js]{@link ./node_modules/is-accessor-descriptor/index.js}
4
+ * @see [./node_modules/is-accessor-descriptor/index.js]{@link ./node_modules/is-accessor-descriptor/index.js}
5
5
  *
6
6
  **/
7
7
  import typeOf from "../kind-of/index.mjs";
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./node_modules/is-data-descriptor/index.js]{@link ./node_modules/is-data-descriptor/index.js}
4
+ * @see [./node_modules/is-data-descriptor/index.js]{@link ./node_modules/is-data-descriptor/index.js}
5
5
  *
6
6
  **/
7
7
  import typeOf from "../kind-of/index.mjs";
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./node_modules/is-descriptor/index.js]{@link ./node_modules/is-descriptor/index.js}
4
+ * @see [./node_modules/is-descriptor/index.js]{@link ./node_modules/is-descriptor/index.js}
5
5
  *
6
6
  **/
7
7
  import typeOf from "../kind-of/index.mjs";
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./node_modules/is-number/index.js]{@link ./node_modules/is-number/index.js}
4
+ * @see [./node_modules/is-number/index.js]{@link ./node_modules/is-number/index.js}
5
5
  *
6
6
  **/
7
7
  /*!
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./node_modules/kind-of/index.js]{@link ./node_modules/kind-of/index.js}
4
+ * @see [./node_modules/kind-of/index.js]{@link ./node_modules/kind-of/index.js}
5
5
  *
6
6
  **/
7
7
  var toString = Object.prototype.toString;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./node_modules/window-size/index.js]{@link ./node_modules/window-size/index.js}
4
+ * @see [./node_modules/window-size/index.js]{@link ./node_modules/window-size/index.js}
5
5
  *
6
6
  **/
7
7
  import define from "../define-property/index.mjs";
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./node_modules/window-size/utils.js]{@link ./node_modules/window-size/utils.js}
4
+ * @see [./node_modules/window-size/utils.js]{@link ./node_modules/window-size/utils.js}
5
5
  *
6
6
  **/
7
7
  import os from "os";
@@ -1,17 +1,17 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./src/ana-logger.cjs]{@link ./src/ana-logger.cjs}
4
+ * @see [./src/ana-logger.cjs]{@link ./src/ana-logger.cjs}
5
5
  *
6
6
  **/
7
7
  import path from "path";
8
8
  import fs from "fs";
9
9
  import os from "os";
10
- import terminalSize from "./node_modules/window-size/index.mjs";
10
+ import terminalSize from "../node_modules/window-size/index.mjs";
11
11
  import toAnsi from "to-ansi";
12
12
  import {COLOR_TABLE, SYSTEM, MAX_CHILDREN_DOM_ANALOGGER, CLASS_REMOVED_NOTIF, ADD_TYPE, CONSOLE_AREA_CLASSNAME,
13
13
  PREDEFINED_FORMATS, ANALOGGER_NAME, LINE_CLASSNAME
14
- } from "./src/constants.mjs";
14
+ } from "./constants.mjs";
15
15
  import {stringify} from "flatted";
16
16
  let _terminalSize = {};
17
17
 
@@ -128,6 +128,9 @@ class ____AnaLogger
128
128
  {
129
129
  system = "";
130
130
 
131
+ instanceId = "";
132
+ instanceName = "";
133
+
131
134
  logIndex = 0;
132
135
  logCounter = 0;
133
136
  contexts = [];
@@ -165,14 +168,21 @@ class ____AnaLogger
165
168
  NODE : "NODE",
166
169
  OTHER : "OTHER"
167
170
  };
171
+
172
+ static instanceCount = 0;
173
+
168
174
  originalFormatFunction;
169
175
 
170
- constructor()
176
+ constructor({name = "default"} = {})
171
177
  {
172
178
  this.system = (typeof process === "object") ? SYSTEM.NODE : SYSTEM.BROWSER;
173
179
  this.format = this.onBuildLog.bind(this);
174
180
  this.originalFormatFunction = this.format;
175
181
 
182
+ this.instanceName = name;
183
+ ++____AnaLogger.instanceCount;
184
+ this.instanceId = ____AnaLogger.instanceCount + "-" + Date.now();
185
+
176
186
  this.errorTargetHandler = this.onError.bind(this);
177
187
  this.errorUserTargetHandler = this.onErrorForUserTarget.bind(this);
178
188
 
@@ -184,10 +194,15 @@ class ____AnaLogger
184
194
  this.rawError = this.#realConsoleError;
185
195
 
186
196
  console.rawLog = this.#realConsoleLog;
197
+ console.raw = this.#realConsoleLog;
198
+
187
199
  console.rawInfo = this.#realConsoleInfo;
188
200
  console.rawWarn = this.#realConsoleWarn;
189
201
  console.rawError = this.#realConsoleError;
190
202
 
203
+ console.keepLogHistory = this.keepLogHistory;
204
+ console.getLogHistory = this.getLogHistory;
205
+
191
206
  console.table = this.table;
192
207
  console.buildTable = this.buildTable;
193
208
  console.isNode = this.isNode;
@@ -201,6 +216,18 @@ class ____AnaLogger
201
216
 
202
217
  this.ALIGN = ____AnaLogger.ALIGN;
203
218
  this.ENVIRONMENT_TYPE = ____AnaLogger.ENVIRONMENT_TYPE;
219
+
220
+ this.resetLogHistory();
221
+ }
222
+
223
+ getName()
224
+ {
225
+ return this.instanceName;
226
+ }
227
+
228
+ getId()
229
+ {
230
+ return this.instanceId;
204
231
  }
205
232
 
206
233
  keepLogHistory()
@@ -220,7 +247,13 @@ class ____AnaLogger
220
247
 
221
248
  getLogHistory(join = true, symbol = EOL)
222
249
  {
223
- const history = JSON.parse(JSON.stringify(this.logHistory.slice(0)));
250
+ const historyLog = this.logHistory;
251
+ if (!historyLog)
252
+ {
253
+ return "";
254
+ }
255
+ const logs = this.logHistory.slice(0);
256
+ const history = JSON.parse(JSON.stringify(logs));
224
257
  if (!join)
225
258
  {
226
259
  return history;
@@ -263,8 +296,6 @@ class ____AnaLogger
263
296
  this.options.logToDom = undefined;
264
297
  this.options.logToFile = undefined;
265
298
  this.options.logToDomlogToFile = undefined;
266
- this.options.silent = false;
267
-
268
299
  }
269
300
 
270
301
  resetOptions()
@@ -304,9 +335,20 @@ class ____AnaLogger
304
335
  this.options.hideHookMessage = !!hideHookMessage;
305
336
  }
306
337
 
307
- if (hideLog !== undefined)
338
+ // TODO: Make one of silent or hideToLog options obsolete
339
+ let solveSilent = undefined;
340
+ if (silent !== undefined)
341
+ {
342
+ solveSilent = !!silent;
343
+ }
344
+ else if (hideLog !== undefined)
345
+ {
346
+ solveSilent = !!hideLog;
347
+ }
348
+
349
+ if (solveSilent)
308
350
  {
309
- this.options.hideLog = !!hideLog;
351
+ this.options.hideLog = !!solveSilent;
310
352
  }
311
353
 
312
354
  if (hideError !== undefined)
@@ -344,12 +386,6 @@ class ____AnaLogger
344
386
 
345
387
  }
346
388
 
347
- if (silent !== undefined)
348
- {
349
- this.options.silent = !!silent;
350
- this.options.hideLog = this.options.silent;
351
- }
352
-
353
389
  }
354
390
 
355
391
  getOptions()
@@ -600,13 +636,71 @@ class ____AnaLogger
600
636
  this.log(...args);
601
637
  }
602
638
 
639
+ assistStask(error)
640
+ {
641
+ try
642
+ {
643
+ const lines = error.stack.split("\n");
644
+ const stack = [];
645
+
646
+ for (let i = 0; i < lines.length; ++i)
647
+ {
648
+ const line = lines[i];
649
+ stack.push(line);
650
+ }
651
+
652
+ return stack;
653
+ }
654
+ catch (e)
655
+ {
656
+ console.rawError(e.message);
657
+ }
658
+
659
+ return error.message;
660
+ }
661
+
603
662
  /**
604
663
  * Forward input to real console log
605
664
  * @param args
606
665
  */
607
666
  onDisplayError(...args)
608
667
  {
609
- this.error(...args);
668
+ try
669
+ {
670
+ let mainIndex = -1
671
+ let extracted = null;
672
+ for (let i = 0; i < args.length; ++i)
673
+ {
674
+ const arg = args[i];
675
+ if (arg instanceof Error)
676
+ {
677
+ if (arg.stack)
678
+ {
679
+ mainIndex = i;
680
+ extracted = this.assistStask(arg) || []
681
+ break;
682
+ }
683
+ }
684
+ }
685
+
686
+ if (!extracted)
687
+ {
688
+ this.error(...args);
689
+ return
690
+ }
691
+
692
+ for (let i = 0; i < extracted.length; ++i)
693
+ {
694
+ args[mainIndex] = extracted[i];
695
+ this.error(...args);
696
+ }
697
+
698
+ }
699
+ catch (e)
700
+ {
701
+ console.rawError(e);
702
+ }
703
+
610
704
  }
611
705
 
612
706
  /**
@@ -1067,12 +1161,14 @@ class ____AnaLogger
1067
1161
  catch (e)
1068
1162
  {
1069
1163
  /* istanbul ignore next */
1070
- console.error("AnaLogger:", e.message);
1164
+ console.rawError("AnaLogger:", e.message);
1071
1165
  }
1072
1166
  }
1073
1167
 
1074
1168
  /**
1075
- * Check that a parameter (should be the first) uses the expected format.
1169
+ * Check that a parameter uses the expected AnaLogger format.
1170
+ * For this, the first parameter should be an object that contains at least
1171
+ * a logging id (lid), a target, a contextName, etc
1076
1172
  * @param options
1077
1173
  * @returns {boolean}
1078
1174
  */
@@ -1321,7 +1417,7 @@ class ____AnaLogger
1321
1417
  {
1322
1418
  try
1323
1419
  {
1324
- const silent = false, lidLenMax = 4;
1420
+ const lidLenMax = 4;
1325
1421
 
1326
1422
  const LOG_CONTEXTS = {
1327
1423
  STANDARD: null,
@@ -1348,7 +1444,7 @@ class ____AnaLogger
1348
1444
 
1349
1445
  activeTarget && this.setActiveTarget(activeTarget);
1350
1446
 
1351
- this.setOptions({silent, hideError: false, hideHookMessage: true, lidLenMax});
1447
+ this.setOptions({silent: false, hideError: false, hideHookMessage: true, lidLenMax});
1352
1448
  if (override)
1353
1449
  {
1354
1450
  this.overrideConsole();
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * DO NOT EDIT THIS FILE DIRECTLY.
3
3
  * This file is generated following the conversion of
4
- * [./src/constants.cjs]{@link ./src/constants.cjs}
4
+ * @see [./src/constants.cjs]{@link ./src/constants.cjs}
5
5
  *
6
6
  **/
7
7
  const constants = {