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.
- package/CHANGELOG.md +7 -1
- package/README.md +2 -2
- package/browser/src/ana-logger.mjs +1472 -0
- package/browser/src/constants.mjs +54 -0
- package/dist/analogger-browser.min.mjs +3 -2
- package/dist/analogger.min.css +1 -1
- package/esm/node_modules/define-property/index.mjs +1 -1
- package/esm/node_modules/is-accessor-descriptor/index.mjs +1 -1
- package/esm/node_modules/is-data-descriptor/index.mjs +1 -1
- package/esm/node_modules/is-descriptor/index.mjs +1 -1
- package/esm/node_modules/is-number/index.mjs +1 -1
- package/esm/node_modules/kind-of/index.mjs +1 -1
- package/esm/node_modules/window-size/index.mjs +1 -1
- package/esm/node_modules/window-size/utils.mjs +1 -1
- package/esm/{ana-logger.mjs → src/ana-logger.mjs} +116 -20
- package/esm/src/constants.mjs +1 -1
- package/package.json +29 -29
- package/src/ana-logger.cjs +113 -17
|
@@ -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=(
|
|
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
|
|
package/dist/analogger.min.css
CHANGED
|
@@ -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 "
|
|
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 "./
|
|
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
|
|
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
|
-
|
|
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 = !!
|
|
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
|
-
|
|
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.
|
|
1164
|
+
console.rawError("AnaLogger:", e.message);
|
|
1071
1165
|
}
|
|
1072
1166
|
}
|
|
1073
1167
|
|
|
1074
1168
|
/**
|
|
1075
|
-
* Check that a parameter
|
|
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
|
|
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();
|
package/esm/src/constants.mjs
CHANGED