analogger 1.12.1 → 1.12.4
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/dist/analogger-browser.min.mjs +3 -5
- package/generated/terminal/ana-logger.mjs +49 -17
- package/generated/terminal/node_modules/define-property/index.mjs +37 -0
- package/generated/terminal/node_modules/flatted/cjs/index.mjs +105 -0
- package/generated/terminal/node_modules/is-accessor-descriptor/index.mjs +74 -0
- package/generated/terminal/node_modules/is-data-descriptor/index.mjs +55 -0
- package/generated/terminal/node_modules/is-descriptor/index.mjs +30 -0
- package/generated/terminal/node_modules/is-number/index.mjs +24 -0
- package/generated/terminal/node_modules/kind-of/index.mjs +135 -0
- package/generated/terminal/node_modules/to-ansi/index.mjs +682 -0
- package/generated/terminal/node_modules/window-size/index.mjs +38 -0
- package/generated/terminal/node_modules/window-size/utils.mjs +132 -0
- package/package.json +12 -14
- package/src/cjs/ana-logger.cjs +3 -8
- package/.genserverc.cjs +0 -26
- package/.toesm.cjs +0 -32
- package/src/cjs/bump.js +0 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
## [1.12.
|
|
1
|
+
## [1.12.4](https://github.com/thimpat/analogger/compare/v1.12.3...v1.12.4) (2022-05-04)
|
|
2
2
|
|
|
3
|
+
## [1.12.3](https://github.com/thimpat/analogger/compare/v1.12.2...v1.12.3) (2022-05-04)
|
|
4
|
+
|
|
5
|
+
## [1.12.2](https://github.com/thimpat/analogger/compare/v1.12.1...v1.12.2) (2022-05-04)
|
|
6
|
+
|
|
7
|
+
## [1.12.1](https://github.com/thimpat/analogger/compare/v1.12.0...v1.12.1) (2022-04-22)
|
|
8
|
+
|
|
3
9
|
# [1.12.0](https://github.com/thimpat/analogger/compare/v1.11.0...v1.12.0) (2022-04-22)
|
|
4
10
|
|
|
5
11
|
# [1.11.0](https://github.com/thimpat/analogger/compare/v1.10.3...v1.11.0) (2022-04-22)
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
const r={};{r.c2ab651f80fb492fbe78eb68d2de2259ff02b9c2b6c247f509c80a3717b221ee={};const{parse:b,stringify:g}=JSON,h=Object["keys"],u=String,p="string",m={},T="object",E=(e,o)=>o,L=e=>e instanceof u?u(e):e,U=(e,o)=>typeof o===p?new u(o):o,x=(r,a,s,n)=>{const i=[];for(let e=h(s),o=e["length"],t=0;t<o;t++){var c,f=e[t],l=s[f];l instanceof u?typeof(c=r[l])!==T||a.has(c)?s[f]=n.call(s,f,c):(a.add(c),s[f]=m,i.push({k:f,a:[r,a,c,n]})):s[f]!==m&&(s[f]=n.call(s,f,l))}for(let e=i["length"],o=0;o<e;o++){var{k:t,a:d}=i[o];s[t]=n.call(s,t,x.apply(null,d))}return s},v=(e,o,t)=>{o=u(o.push(t)-1);return e.set(t,o),o},C=(e,o)=>{var e=b(e,U).map(L),t=e[0];const r=o||E;o=typeof t===T&&t?x(e,new Set,t,r):t;return r.call({"":o},"",o)},y=(e,t,o)=>{const r=t&&typeof t===T?(e,o)=>""===e||-1<t.indexOf(e)?o:void 0:t||E,a=new Map,s=[],n=[];let i=+v(a,s,r.call({"":e},"",e)),c=!i;for(;i<s.length;)c=!0,n[i]=g(s[i++],f,o);return"["+n.join(",")+"]";function f(e,o){if(c)return c=!c,o;var t=r.call(this,e,o);switch(typeof t){case T:if(null===t)return t;case p:return a.get(t)||v(a,s,t)}return t}};r.c2ab651f80fb492fbe78eb68d2de2259ff02b9c2b6c247f509c80a3717b221ee.parse=C,r.c2ab651f80fb492fbe78eb68d2de2259ff02b9c2b6c247f509c80a3717b221ee.stringify=y,r.c2ab651f80fb492fbe78eb68d2de2259ff02b9c2b6c247f509c80a3717b221ee.toJSON=e=>b(y(e)),r.c2ab651f80fb492fbe78eb68d2de2259ff02b9c2b6c247f509c80a3717b221ee.fromJSON=e=>C(g(e))}{r["6a5da197dfd806673b1bcbadb3c7aa12c8f7b1cea215c2ad8c7de9c4035c7a58"]={};const B=["#d2466e","#FFA07A","#FF7F50","#FF6347","#FFE4B5","#ADFF2F","#808000","#40E0D0","#1E90FF","#EE82EE","#708090","#DEB887","#FE642E","#210B61","#088A4B","#5E610B","#FA8258","#088A68","#B40431"],I={BROWSER:"BROWSER",NODE:"NODE"};var e=B,a=I;r["6a5da197dfd806673b1bcbadb3c7aa12c8f7b1cea215c2ad8c7de9c4035c7a58"].COLOR_TABLE=e,r["6a5da197dfd806673b1bcbadb3c7aa12c8f7b1cea215c2ad8c7de9c4035c7a58"].COLOR_TABLE=e,r["6a5da197dfd806673b1bcbadb3c7aa12c8f7b1cea215c2ad8c7de9c4035c7a58"].SYSTEM=a,r["6a5da197dfd806673b1bcbadb3c7aa12c8f7b1cea215c2ad8c7de9c4035c7a58"].SYSTEM=a}r.c9b7ccd633a2afdc912a334e9d6e2f81b36188e2c7f947552f00f8686614416d={},r.c9b7ccd633a2afdc912a334e9d6e2f81b36188e2c7f947552f00f8686614416d.default=function(e,o,t,r){var a=(e+(r||"")).toString().includes("%");if("string"==typeof e?[e,o,t,r]=e.match(/(0?\.?\d{1,3})%?\b/g).map(e=>Number(e)):void 0!==r&&(r=Number.parseFloat(r)),"number"!=typeof e||"number"!=typeof o||"number"!=typeof t||255<e||255<o||255<t)throw new TypeError("Expected three numbers below 256");if("number"==typeof r){if(!a&&0<=r&&r<=1)r=Math.round(255*r);else{if(!(a&&0<=r&&r<=100))throw new TypeError(`Expected alpha value (${r}) as a fraction or percentage`);r=Math.round(255*r/100)}r=(256|r).toString(16).slice(1)}else r="";return(t|o<<8|e<<16|1<<24).toString(16).slice(1)+r};{r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"]={};const R={Foreground:38,Background:48},O="[1D",w="[0m"+O,F={Bold:"[1m"+O,Underline:"[4m"+O,Reversed:"[7m"+O},S=(e={Bold:"[1m"+O,Underline:"[4m"+O,Reversed:"[7m"+O},{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"}),A=(e,o,t)=>e===o&&o===t?e<8?16:248<e?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(o/255*5)+Math.round(t/255*5),M=e=>{e=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(e,o,t,r){return o+o+t+t+r+r});e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return e?{red:parseInt(e[1],16),blue:parseInt(e[2],16),green:parseInt(e[3],16)}:{}},N=function(e,o,t){return t<0&&(t+=1),1<t&&--t,t<1/6?e+6*(o-e)*t:t<.5?o:t<2/3?e+(o-e)*(2/3-t)*6:e},D=e=>{e=e.toLowerCase();return void 0!==S[e]?S[e]:""};function n({red:e,blue:o,green:t},r=!0){if(void 0===e||void 0===o||void 0===t)return"";e=A(e,o,t);return`[${r?R.Foreground:R.Background};5;`+e+"m "+O}function i(e,o=!0){var{red:e,green:t,blue:r}=M(e);return n({red:e,green:t,blue:r},o)}function c({hue:e,saturation:o,lightness:t},r){var{red:e,green:o,blue:t}=(({hue:e,saturation:o,lightness:t})=>{let r,a,s;return 0===o?r=a=s=t:(o=2*t-(t=t<.5?t*(1+o):t+o-t*o),r=N(o,t,e+1/3),a=N(o,t,e),s=N(o,t,e-1/3)),{red:Math.round(255*r),blue:Math.round(255*s),green:Math.round(255*a)}})({hue:e,saturation:o,lightness:t});return n({red:e,green:o,blue:t},r)}function f(e,o=!0){try{return(e=e||"")?(("string"==typeof e||e instanceof String)&&(e=e.trim()),t=e,S[t]?i(D(e),o):"object"==typeof e&&e.red&&e.blue&&e.green?n(e,o):"object"==typeof e&&e.hue&&e.saturation&&e.lightness?c(e,o):e.startsWith("#")?i(e,o):(e=e.toString(),/^[\da-fA-F]+$/.test(e)?i("#"+e,o):"")):""}catch(e){console.error("TO_ANSI_INVALID_ARGUMENT_ERROR",e.message)}var t}function l(e,{fg:o,bg:t,isUnderline:r=!1,isBold:a=!1,isReversed:s=!1}){let n=!1,i="";return o&&(n=!0,i+=o),t&&(n=!0,i+=t),r&&(n=!0,i+=F.Underline),a&&(n=!0,i+=F.Bold),s&&(n=!0,i+=F.Reversed),n?i+e+w:e}function o(e,{fg:o={},bg:t={},isUnderline:r=!1,isBold:a=!1,isReversed:s=!1}){return l(e,{fg:o=o&&n({...o}),bg:t=t&&n({...t},!1),isUnderline:r,isBold:a,isReversed:s})}function t(e,{fg:o="",bg:t="",isUnderline:r=!1,isBold:a=!1,isReversed:s=!1}){return l(e,{fg:o=o&&c({...o}),bg:t=t&&c({...t},!1),isUnderline:r,isBold:a,isReversed:s})}function s(e,{fg:o="",bg:t="",isUnderline:r=!1,isBold:a=!1,isReversed:s=!1}){return l(e,{fg:o=o&&i(o),bg:t=t&&i(t,!1),isUnderline:r,isBold:a,isReversed:s})}function d(e,o=null){if(!o)return e;let{fg:t="",bg:r="",isUnderline:a=!1,isBold:s=!1,isReversed:n=!1}=o;return t=t&&f(t),r=r&&f(r,!1),l(e,{fg:t,bg:r,isUnderline:a,isBold:s,isReversed:n})}r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].default={fromRgb:n,fromHexa:i,fromHsl:c,fromColor:f,getTextFromRgb:o,getTextFromHsl:t,getTextFromHex:s,getTextFromColor:d,hexToRgb:M,rgbToAnsi256:A,hue2rgb:N,RESET:w,FONT_STYLE:F,STYLE:e},r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].colourNameToHex=D,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].colourNameToHex=D,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].colourNameToHex=D,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromRgb=n,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromRgb=n,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromRgb=n,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromHexa=i,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromHexa=i,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromHexa=i,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromHsl=c,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromHsl=c,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromHsl=c,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromColor=f,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromColor=f,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].fromColor=f,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromRgb=o,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromRgb=o,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromRgb=o,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromHsl=t,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromHsl=t,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromHsl=t,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromHex=s,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromHex=s,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromHex=s,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromColor=d,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromColor=d,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].getTextFromColor=d,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].hexToRgb=M,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].hexToRgb=M,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].hexToRgb=M,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].rgbToAnsi256=A,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].rgbToAnsi256=A,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].rgbToAnsi256=A,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].hue2rgb=N,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].hue2rgb=N,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].hue2rgb=N,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].RESET=w,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].RESET=w,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].RESET=w,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].FONT_STYLE=F,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].FONT_STYLE=F,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].FONT_STYLE=F,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].STYLE=e,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].STYLE=e,r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].STYLE=e}{r.fdca3cc4106dc9ab218bbfdcd9068a9c76b71967b0894f3a805ed42b9b279e7a={};let s=r["18fe8cadb35cbe57fc3273397d9b1f522e4538f6ebec2ac10f7999293a0299b6"].default,t=r.c9b7ccd633a2afdc912a334e9d6e2f81b36188e2c7f947552f00f8686614416d.default,{COLOR_TABLE:o,SYSTEM:e}=r["6a5da197dfd806673b1bcbadb3c7aa12c8f7b1cea215c2ad8c7de9c4035c7a58"],n=r.c2ab651f80fb492fbe78eb68d2de2259ff02b9c2b6c247f509c80a3717b221ee["stringify"],R={};R={};const H={DEFAULT:"DEFAULT",ERROR:"ERROR"};class k{system="";logIndex=0;logCounter=0;contexts=[];targets={};activeTarget=null;indexColor=0;format="";keepLog=!1;logHistory=[];$containers=null;options={hideHookMessage:!1};#realConsoleLog=console.log;#realConsoleInfo=console.info;#realConsoleWarn=console.warn;#realConsoleError=console.error;isBrowser0=null;static ALIGN={LEFT:"LEFT",RIGHT:"RIGHT"};static ENVIRONMENT_TYPE={BROWSER:"BROWSER",NODE:"NODE",OTHER:"OTHER"};originalFormatFunction;constructor(){if(k.Instance)return k.Instance;(k.Instance=this).system="object"==typeof process?e.NODE:e.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=this.#realConsoleLog,this.rawInfo=this.#realConsoleInfo,this.rawWarn=this.#realConsoleWarn,this.rawError=this.#realConsoleError,console.rawLog=this.#realConsoleLog,console.rawInfo=this.#realConsoleInfo,console.rawWarn=this.#realConsoleWarn,console.rawError=this.#realConsoleError,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===e.BROWSER,this.ALIGN=k.ALIGN,this.ENVIRONMENT_TYPE=k.ENVIRONMENT_TYPE}keepLogHistory(){this.keepLog=!0}releaseLogHistory(){this.keepLog=!1}resetLogHistory(){this.logHistory=[]}getLogHistory(e=!0,o=`
|
|
2
|
-
`){const t=JSON.parse(JSON.stringify(this.logHistory.slice(0)));return e?t.join(o):t}isNode(){return this.system===e.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:o=5,lidLenMax:t=6,symbolLenMax:r=2,messageLenMax:a=void 0,hideLog:s=void 0,hideError:n=void 0,hideHookMessage:i=void 0,hidePassingTests:c=void 0,logToDom:f=void 0,logToFile:l=void 0,oneConsolePerContext:d=void 0,silent:b=void 0}=null){this.options.contextLenMax=e,this.options.idLenMax=o,this.options.lidLenMax=t,this.options.messageLenMax=a,this.options.symbolLenMax=r,void 0!==c&&(this.options.hidePassingTests=!!c),void 0!==i&&(this.options.hideHookMessage=!!i),void 0!==s&&(this.options.hideLog=!!s),void 0!==n&&(this.options.hideError=!!n),void 0!==d&&(this.options.oneConsolePerContext=!!d),void 0!==f&&(this.options.logToDom=f||"#analogger"),!1===l?this.options.logToFile=!1:void 0!==l&&(this.isBrowser()||(this.options.logToFile=l||"./analogger.log"),this.#realConsoleLog("LogToFile is not supported in this environment. ")),void 0!==b&&(this.options.silent=!!b,this.options.hideLog=this.options.silent)}getOptions(){return this.options}truncateMessage(e="",{fit:o=0,align:t=k.ALIGN.LEFT,ellipsis:r="..."}={}){return e=""+e,o&&e.length>o&&(e=e.substring(0,o-r.length)+r),e=t===k.ALIGN.LEFT?e.padEnd(o," "):e.padStart(o," ")}buildTable(o,{ellipsis:t="...",ColumnMinChars:r=6,columnMaxChars:e=0,verticalSeparator:a=" │ ",horizontalSeparator:s="─",availableLength:n=0,onCompleteHeaders:i=null,onCompleteSeparators:c=null,onCompleteLines:f=null}={}){let l="";if(!(o=Array.isArray(o)?o:Object.values(Object.values(o)))||!o.length)return"";var d=o[0],b=Object.keys(d);o.unshift(b),s=s.repeat(100);const g={};for(let e=1;e<o.length;++e){var h=o[e];for(let o=0;o<b.length;++o){var u=b[o];const x=h[u];g[u]=g[u]||0;let e;try{e=JSON.stringify(x).length}catch(e){}e=e||r,g[u]=Math.max(g[u],e,u.length)}}this.isBrowser0||(R=R||{},n=n||(R.width||process.stdout.columns||120-a.length-1-5)),n-=4;d=Object.values(g).reduce((e,o)=>e+o,0);if(n<d){var p,m=n/d;for(p in g)g[p]=Math.floor(g[p]*m)-1,r&&g[p]<r&&(g[p]=r),e&&g[p]>e&&(g[p]=e),g[p]=g[p]}let T;T="";for(let e=0;e<b.length;++e){var E=b[e],L=g[E];T=T+this.truncateMessage(E,{fit:L,ellipsis:t})+a}i&&(T=i(T,b)),l=l+this.truncateMessage(T,{fit:n})+`
|
|
3
|
-
|
|
4
|
-
`;for(let e=1;e<o.length;++e){T="";var C=o[e];for(let e=0;e<b.length;++e){var y=b[e];const x=C[y];y=g[y];T=T+this.truncateMessage(x,{fit:y,ellipsis:t})+a}f&&(T=f(T,C)),l=l+this.truncateMessage(T,{fit:n})+`
|
|
5
|
-
`}return this.rawLog(l),l}onBuildLog({contextName:e,message:o="",lid:t="",symbol:r=""}={}){const a=new Date;var s=("0"+a.getHours()).slice(-2)+":"+("0"+a.getMinutes()).slice(-2)+":"+("0"+a.getSeconds()).slice(-2),s=this.truncateMessage(s,{fit:this.options.timeLenMax});return e=this.truncateMessage(e,{fit:this.options.contextLenMax,align:k.ALIGN.RIGHT}),t=this.truncateMessage(t,{fit:this.options.lidLenMax}),void 0!==this.options.messageLenMax&&(o=this.truncateMessage(o,{fit:this.options.messageLenMax})),`[${s}] ${e}: (${t}) ${r=this.truncateMessage(r,{fit:this.options.symbolLenMax})} `+o}onErrorForUserTarget(e,...o){this.errorUserTargetHandler(e,...o)}onError(e,...o){e.target===this.targets.USER&&this.onErrorForUserTarget(e,...o)}onDisplayLog(...e){this.log(...e)}onDisplayError(...e){this.error(...e)}setLogFormat(e){if("function"!=typeof e)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"object"==typeof e&&!Array.isArray(e)&&null!==e&&(e.hasOwnProperty("contextName")&&e.hasOwnProperty("target"))}setContext(e,o){this.contexts[e]=o}setDefaultContext(e){this.setContext(H.DEFAULT,e)}generateDefaultContext(){let e=this.contexts[H.DEFAULT]||{};return(e=Object.assign({},{name:H.DEFAULT,contextName:H.DEFAULT,target:"ALL",symbol:"⚡",color:o[1]},e)).id=this.logIndex++,e}generateNewContext(){const e=this.generateDefaultContext();return e.color=o[this.indexColor++%(o.length-3)+2],e.symbol="",e}generateErrorContext(){const e=this.generateDefaultContext();return e.name=H.ERROR,e.contextName=H.ERROR,e.color=o[0],e.symbol="❌",e.error=!0,e}#allegeProperties(e){let o=e;e=this.generateNewContext();return-1<(o=Object.assign({},e,o)).color.toLowerCase().indexOf("rgb")?o.color="#"+t(o.color):-1===o.color.indexOf("#")&&0,o}setContexts(t){const e=Object.keys(t);t[H.DEFAULT]=this.contexts[H.DEFAULT]=this.generateDefaultContext(),t[H.ERROR]=this.contexts[H.ERROR]=this.generateErrorContext(),e.forEach(e=>{const o=t[e]||{};o.contextName=e,o.name=e,this.contexts[e]=this.#allegeProperties(o),t[e]=this.contexts[e]})}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||this.activeTarget===e)}setColumns(e,o,t){let r=0;for(var a in o)if("name"!==a){var s=o[a];const n=document.createElement("span");n.classList.add("analogger-col","analogger-col-"+a,"analogger-col-"+r),++r,n.textContent=s,e.append(n)}const n=document.createElement("span");n.classList.add("analogger-col","analogger-col-text","analogger-col-"+r),n.textContent=t,e.append(n)}writeLogToDom(t,r){this.$containers=this.$containers||document.querySelectorAll(this.options.logToDom);for(let o=0;o<this.$containers.length;++o){const a=this.$containers[o];let e=a.querySelector(".analogger-view");e||((e=document.createElement("div")).classList.add("analogger-view"),a.append(e));const s=document.createElement("div");s.classList.add("to-esm-line"),s.style.color=t.color,s.setAttribute("data-log-counter",this.logCounter),s.setAttribute("data-log-index",this.logIndex),this.setColumns(s,t,r),e.append(s)}}writeLogToFile(e){try{fs.appendFileSync(this.options.logToFilePath,e+this.EOL)}catch(e){console.rawError("LOG_TO_FILE_FAILURE: ",e.message)}}convertArgumentsToText(t){const r=[];var e=t.length;for(let o=0;o<e;++o){let e;var a=t[o];try{e=JSON.stringify(a)}catch(e){}if(!e)try{e=n(a)}catch(e){}r.push(e)}return r.join("•")}processOutput(t={}){try{var r;if(!this.isTargetAllowed(t.target))return;let e=Array.prototype.slice.call(arguments),o=(e.shift(),r=this.convertArgumentsToText(e),"");var a=this.format({...t,message:r});if(++this.logCounter,this.isBrowser()?(t.environnment=k.ENVIRONMENT_TYPE.BROWSER,this.options.logToDom&&this.writeLogToDom(t,a),o="%c"+a):(t.environnment=k.ENVIRONMENT_TYPE.NODE,o=s.getTextFromColor(a,{fg:t.color}),this.options.logToFile&&this.writeLogToFile(a)),this.keepLog&&this.logHistory.push(o),this.options.hideLog)return;this.isBrowser()?this.#realConsoleLog(o,"color: "+t.color):this.#realConsoleLog(o),this.errorTargetHandler(t,e)}catch(e){console.error("AnaLogger:",e.message)}}isExtendedOptionsPassed(e){return"object"==typeof e&&(e.hasOwnProperty("context")||e.hasOwnProperty("target")||e.hasOwnProperty("color")||e.hasOwnProperty("lid"))}convertToContext(e,o){o=o||this.generateDefaultContext();let t=e=e||o;if(e.context&&"object"==typeof e.context){const r=Object.assign({},e);delete r.context,t=Object.assign({},e.context,r)}return delete(t=Object.assign({},o,t)).context,t}log(e,...o){if(!this.isExtendedOptionsPassed(e))return t=this.generateDefaultContext(),void this.processOutput.apply(this,[t,e,...o]);var t=this.convertToContext(e);this.processOutput.apply(this,[t,...o])}error(e,...o){if(!this.options.hideError){if(!this.isExtendedOptionsPassed(e))return t=this.generateErrorContext(),void this.processOutput.apply(this,[t,e,...o]);var t=this.generateErrorContext(),t=this.convertToContext(e,t),r=Array.prototype.slice.call(arguments,1);this.log(t,...r)}}overrideError(){this.options.hideHookMessage||this.#realConsoleLog("AnaLogger: Hook placed on console.error"),console.error=this.onDisplayError.bind(this)}overrideConsole({log:e=!0,info:o=!0,warn:t=!0,error:r=!1}={}){this.options.hideHookMessage||this.#realConsoleLog("AnaLogger: Hook placed on console.log"),e&&(console.log=this.onDisplayLog.bind(this)),o&&(console.info=this.onDisplayLog.bind(this)),t&&(console.warn=this.onDisplayLog.bind(this)),r&&this.overrideError()}removeOverrideError(){console.warn=this.#realConsoleError}removeOverride({log:e=!0,info:o=!0,warn:t=!0,error:r=!1}={}){e&&(console.log=this.#realConsoleLog),o&&(console.info=this.#realConsoleInfo),t&&(console.warn=this.#realConsoleWarn),r&&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);e=e.join(" | ");alert(e)}assert(e,o=!0,...t){try{return"function"==typeof e?e(...t)!==o?(this.error("Asset failed"),!1):(this.options.hidePassingTests||this.log("SUCCESS: Assert passed"),!0):e!==o?(this.error("Assert failed"),!1):(this.options.hidePassingTests||this.log("SUCCESS: Assert passed"),!0)}catch(e){this.error("Unexpected error in assert")}return!1}}a=new k,r.fdca3cc4106dc9ab218bbfdcd9068a9c76b71967b0894f3a805ed42b9b279e7a.default=a,r.fdca3cc4106dc9ab218bbfdcd9068a9c76b71967b0894f3a805ed42b9b279e7a.anaLogger=a,r.fdca3cc4106dc9ab218bbfdcd9068a9c76b71967b0894f3a805ed42b9b279e7a.anaLogger=a,r.fdca3cc4106dc9ab218bbfdcd9068a9c76b71967b0894f3a805ed42b9b279e7a.anaLogger=a}r["02a13848aa1c91a4f43bd5a4475b37cb9e24aa798021414c390eed16e0655312"]={},e={STANDARD:{},TEST:{color:"#B18904",symbol:"⏰"},TEST2:{color:"rgb(127, 127, 127)",symbol:"⏰"},TEST3:{color:"blue",symbol:"⏰"},C1:null,C2:null,C3:null,DEFAULT:{}},a={ALL:"ALL",DEV1:"TOM",DEV2:"TIM",DEV3:"ME",USER:"USER"},r["02a13848aa1c91a4f43bd5a4475b37cb9e24aa798021414c390eed16e0655312"].LOG_CONTEXTS=e,r["02a13848aa1c91a4f43bd5a4475b37cb9e24aa798021414c390eed16e0655312"].LOG_CONTEXTS=e,r["02a13848aa1c91a4f43bd5a4475b37cb9e24aa798021414c390eed16e0655312"].LOG_TARGETS=a,r["02a13848aa1c91a4f43bd5a4475b37cb9e24aa798021414c390eed16e0655312"].LOG_TARGETS=a;{r["792f8fd2c559b9e29dd6933388aead7d27d0df34181f0c7d0506b12c0c80c091"]={};var{LOG_CONTEXTS:e,LOG_TARGETS:a}=r["02a13848aa1c91a4f43bd5a4475b37cb9e24aa798021414c390eed16e0655312"];let o=r.fdca3cc4106dc9ab218bbfdcd9068a9c76b71967b0894f3a805ed42b9b279e7a["anaLogger"];o.keepLogHistory(),o.setContexts(e),o.setTargets(a),o.setActiveTarget(a.DEV3),o.setOptions({logToDom:".analogger"}),o.setOptions({silent:!0}),console.log("=========================="),o.log(e.C1,"You should not see this C1"),o.log(e.C2,"You should not see this C2"),o.log(e.C3,"You should not see this C3"),o.setOptions({silent:!1,hideError:!1,logToFile:"./logme.log"}),o.log(e.C1,"You should see this C100"),o.log(e.C2,"You should see this C200"),o.log(e.C3,"You should see this C300"),console.log("============= From History ==========================="),console.log(o.getLogHistory()),console.log("============= From History (Closed) =================="),o.assert(!0),o.assert(!1),o.assert(()=>!0,!0),o.assert((e,o)=>e===o,!0,2,2),console.log("-------------------------- console.log is about to be overridden"),o.overrideConsole(),console.log("Log After override <= Console.log is overridden"),console.error("-------------------------- console.error is about to be overridden"),o.overrideError(),console.error("Hook on Error placed after override <= Console.error is also overridden"),console.log("=========================="),o.log(e.STANDARD,"Basic Log example 2","+Something 0","+Something 1"),o.log({context:e.TEST,lid:1e5},"Test Log example"),o.log({context:e.TEST,target:a.DEV3,lid:100001},"Test Log example with active target"),o.log({context:e.TEST,target:a.DEV1,lid:100002},"Test Log example with DEV1 target"),o.log({context:e.TEST,target:a.DEV2,lid:100003},"Test Log example with DEV2 target"),o.log("Test Log example with DEFAULT target"),o.log(e.TEST,"Test Log example","+Something 3"),o.log(e.C1,"Test Log example C1"),o.log(e.C2,"Test Log example C2"),o.log(e.C3,"Test Log example C3"),console.log(e.C1,"Test Log example C4"),console.log(e.C1,"Test Log example C5"),console.log(e.C1,"Test Log example C6"),console.error({context:e.ERROR,lid:2e5},"Testing Error 1"),console.error(e.ERROR,"Testing Error 2"),console.error("Testing Error 3"),console.error(void 0,"Testing Error 4"),console.error({context:e.ERROR,target:a.USER,lid:200010},"Testing Error 4"),o.info("Hello from alert",{aaa:1012}),o.setActiveTarget(a.USER),o.setErrorHandlerForUserTarget(function(e){o.log("User explicitly see this message"),o.info("User explicitly see this message",e)}),console.error({context:e.ERROR,target:a.USER,lid:200020},"Testing Error that triggers a special handler"),o.setLogFormat(function({contextName:e,message:o}){return e+": "+o}),console.log(e.C1,"Test Log example C4 with new format"),console.log(e.C1,"Test Log example C5 with new format"),console.log(e.C1,"Test Log example C6 with new format"),o.log("Basic Log example 1")}
|
|
1
|
+
var pe=Object.defineProperty,me=Object.defineProperties;var be=Object.getOwnPropertyDescriptors;var K=Object.getOwnPropertySymbols;var Ee=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable;var J=(r,e,t)=>e in r?pe(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,A=(r,e)=>{for(var t in e||(e={}))Ee.call(e,t)&&J(r,t,e[t]);if(K)for(var t of K(e))xe.call(e,t)&&J(r,t,e[t]);return r},Q=(r,e)=>me(r,be(e));var g=(r,e,t)=>(J(r,typeof e!="symbol"?e+"":e,t),t),Z=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var d=(r,e,t)=>(Z(r,e,"read from private field"),t?t.call(r):e.get(r)),F=(r,e,t)=>{if(e.has(r))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(r):e.set(r,t)};var ee=(r,e,t)=>(Z(r,e,"access private method"),t);var te={Foreground:38,Background:48},y="\x1B[1D",re="\x1B[0m"+y,C={Bold:"\x1B[1m"+y,Underline:"\x1B[4m"+y,Reversed:"\x1B[7m"+y},Te={Bold:"\x1B[1m"+y,Underline:"\x1B[4m"+y,Reversed:"\x1B[7m"+y},V={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 Le(r){return!!V[r]}var se=(r,e,t)=>r===e&&e===t?r<8?16:r>248?231:Math.round((r-8)/247*24)+232:16+36*Math.round(r/255*5)+6*Math.round(e/255*5)+Math.round(t/255*5),ne=r=>{let e=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;r=r.replace(e,function(s,n,o,i){return n+n+o+o+i+i});let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(r);return t?{red:parseInt(t[1],16),blue:parseInt(t[2],16),green:parseInt(t[3],16)}:{}},oe=function({red:r,green:e,blue:t}){let s=r<<16|e<<8|t<<0;return"#"+(16777216+s).toString(16).slice(1)},ie=function(r){let e=r.matchAll(/\d+/g),t=[];for(let s of e){let n=parseInt(s[0]);if(n>255)return null;t.push(n)}return t.length!==3?null:{red:t[0],green:t[1],blue:t[2]}},Oe=function(r){let e=ie(r);return e&&oe(e)},P=function(e,t,s){return s<0&&(s+=1),s>1&&(s-=1),s<1/6?e+(t-e)*6*s:s<1/2?t:s<2/3?e+(t-e)*(2/3-s)*6:e},fe=({hue:r,saturation:e,lightness:t})=>{let s,n,o;if(e===0)s=n=o=t;else{let i=t<.5?t*(1+e):t+e-t*e,f=2*t-i;s=P(f,i,r+1/3),n=P(f,i,r),o=P(f,i,r-1/3)}return{red:Math.round(s*255),blue:Math.round(o*255),green:Math.round(n*255)}},ae=r=>{let e=r.toLowerCase();return typeof V[e]!="undefined"?V[e]:""};function S({red:r,blue:e,green:t},s=!0){if(r===void 0||e===void 0||t===void 0)return"";let n=se(r,e,t);return`\x1B[${s?te.Foreground:te.Background};5;`+n+"m "+y}function M(r,e=!0){let{red:t,green:s,blue:n}=ne(r);return S({red:t,green:s,blue:n},e)}function k({hue:r,saturation:e,lightness:t},s){let{red:n,green:o,blue:i}=fe({hue:r,saturation:e,lightness:t});return S({red:n,green:o,blue:i},s)}function z(r,e=!0){try{let t;return r=r||"",r?((typeof r=="string"||r instanceof String)&&(r=r.trim()),Le(r)?(t=ae(r),M(t,e)):typeof r=="object"&&!!r.red&&!!r.blue&&!!r.green?S(r,e):typeof r=="object"&&!!r.hue&&!!r.saturation&&!!r.lightness?k(r,e):r.startsWith("#")?M(r,e):(r=r.toString(),/^[\da-fA-F]+$/.test(r)?M("#"+r,e):"")):""}catch(t){console.error("TO_ANSI_INVALID_ARGUMENT_ERROR",t.message)}}function $(r,{fg:e,bg:t,isUnderline:s=!1,isBold:n=!1,isReversed:o=!1}){let i=!1,f="";return e&&(i=!0,f=f+e),t&&(i=!0,f=f+t),s&&(i=!0,f=f+C.Underline),n&&(i=!0,f=f+C.Bold),o&&(i=!0,f=f+C.Reversed),i?f+r+re:r}function we(r,{fg:e={},bg:t={},isUnderline:s=!1,isBold:n=!1,isReversed:o=!1}){return e&&(e=S(A({},e))),t&&(t=S(A({},t),!1)),$(r,{fg:e,bg:t,isUnderline:s,isBold:n,isReversed:o})}function ye(r,{fg:e="",bg:t="",isUnderline:s=!1,isBold:n=!1,isReversed:o=!1}){return e&&(e=k(A({},e))),t&&(t=k(A({},t),!1)),$(r,{fg:e,bg:t,isUnderline:s,isBold:n,isReversed:o})}function Re(r,{fg:e="",bg:t="",isUnderline:s=!1,isBold:n=!1,isReversed:o=!1}){return e&&(e=M(e)),t&&(t=M(t,!1)),$(r,{fg:e,bg:t,isUnderline:s,isBold:n,isReversed:o})}function Ae(r,e=null){if(!e)return r;let{fg:t="",bg:s="",isUnderline:n=!1,isBold:o=!1,isReversed:i=!1}=e;return t&&(t=z(t)),s&&(s=z(s,!1)),$(r,{fg:t,bg:s,isUnderline:n,isBold:o,isReversed:i})}var W={fromRgb:S,fromHexa:M,fromHsl:k,fromColor:z,getTextFromRgb:we,getTextFromHsl:ye,getTextFromHex:Re,getTextFromColor:Ae,colorNameToHex:ae,hslToRgb:fe,hexToRgb:ne,rgbToHex:oe,rgbToAnsi256:se,rgbStringToRgb:ie,rgbStringToHex:Oe,hue2rgb:P,RESET:re,FONT_STYLE:C,STYLE:Te};var le={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"}},H=le.COLOR_TABLE,B=le.SYSTEM;var{parse:Ue,stringify:Ne}=JSON,{keys:je}=Object,Fe=String,Me="string";var ce="object",Se=(r,e)=>e;var de=(r,e,t)=>{let s=Fe(e.push(t)-1);return r.set(t,s),s};var he=(r,e,t)=>{let s=e&&typeof e===ce?(T,h)=>T===""||-1<e.indexOf(T)?h:void 0:e||Se,n=new Map,o=[],i=[],f=+de(n,o,s.call({"":r},"",r)),p=!f;for(;f<o.length;)p=!0,i[f]=Ne(o[f++],R,t);return"["+i.join(",")+"]";function R(T,h){if(p)return p=!p,h;let L=s.call(this,T,h);switch(typeof L){case ce:if(L===null)return L;case Me:return n.get(L)||de(n,o,L)}return L}};var _={};_={};var O={DEFAULT:"DEFAULT",ERROR:"ERROR"},Y=`
|
|
2
|
+
`,x,D,v,I,G,ue,m=class{constructor(){F(this,G);g(this,"system","");g(this,"logIndex",0);g(this,"logCounter",0);g(this,"contexts",[]);g(this,"targets",{});g(this,"activeTarget",null);g(this,"indexColor",0);g(this,"format","");g(this,"keepLog",!1);g(this,"logHistory",[]);g(this,"$containers",null);g(this,"options",{hideHookMessage:!1});F(this,x,console.log);F(this,D,console.info);F(this,v,console.warn);F(this,I,console.error);g(this,"isBrowser0",null);g(this,"originalFormatFunction");if(m.Instance)return m.Instance;m.Instance=this,this.system=typeof process=="object"?B.NODE:B.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=d(this,x),this.rawInfo=d(this,D),this.rawWarn=d(this,v),this.rawError=d(this,I),console.rawLog=d(this,x),console.rawInfo=d(this,D),console.rawWarn=d(this,v),console.rawError=d(this,I),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===B.BROWSER,this.ALIGN=m.ALIGN,this.ENVIRONMENT_TYPE=m.ENVIRONMENT_TYPE}keepLogHistory(){this.keepLog=!0}releaseLogHistory(){this.keepLog=!1}resetLogHistory(){this.logHistory=[]}getLogHistory(e=!0,t=Y){let s=JSON.parse(JSON.stringify(this.logHistory.slice(0)));return e?s.join(t):s}isNode(){return this.system===B.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:s=6,symbolLenMax:n=2,messageLenMax:o=void 0,hideLog:i=void 0,hideError:f=void 0,hideHookMessage:p=void 0,hidePassingTests:R=void 0,logToDom:T=void 0,logToFile:h=void 0,oneConsolePerContext:L=void 0,silent:j=void 0}=null){this.options.contextLenMax=e,this.options.idLenMax=t,this.options.lidLenMax=s,this.options.messageLenMax=o,this.options.symbolLenMax=n,R!==void 0&&(this.options.hidePassingTests=!!R),p!==void 0&&(this.options.hideHookMessage=!!p),i!==void 0&&(this.options.hideLog=!!i),f!==void 0&&(this.options.hideError=!!f),L!==void 0&&(this.options.oneConsolePerContext=!!L),T!==void 0&&(this.options.logToDom=T||"#analogger"),h===!1?this.options.logToFile=!1:h!==void 0&&(this.isBrowser()||(this.options.logToFile=h||"./analogger.log"),d(this,x).call(this,"LogToFile is not supported in this environment. ")),j!==void 0&&(this.options.silent=!!j,this.options.hideLog=this.options.silent)}getOptions(){return this.options}truncateMessage(e="",{fit:t=0,align:s=m.ALIGN.LEFT,ellipsis:n="..."}={}){return e=""+e,t&&e.length>t&&(e=e.substring(0,t-n.length)+n),e=s===m.ALIGN.LEFT?e.padEnd(t," "):e.padStart(t," "),e}buildTable(e,{ellipsis:t="...",ColumnMinChars:s=6,columnMaxChars:n=0,verticalSeparator:o=" \u2502 ",horizontalSeparator:i="\u2500",availableLength:f=0,onCompleteHeaders:p=null,onCompleteSeparators:R=null,onCompleteLines:T=null}={}){let h="";if(Array.isArray(e)||(e=Object.values(Object.values(e))),!e||!e.length)return"";let j=e[0],b=Object.keys(j);e.unshift(b),i=i.repeat(100);let u={};for(let l=1;l<e.length;++l){let a=e[l];for(let E=0;E<b.length;++E){let w=b[E],q=a[w];u[w]=u[w]||0;let N;try{N=JSON.stringify(q).length}catch(ve){}N=N||s,u[w]=Math.max(u[w],N,w.length)}}this.isBrowser0||(_=_||{},f||(f=_.width||process.stdout.columns||120-o.length-1-5)),f=f-4;let X=Object.values(u).reduce((l,a)=>l+a,0);if(f<X){let l=f/X;for(let a in u)u[a]=Math.floor(u[a]*l)-1,s&&u[a]<s&&(u[a]=s),n&&u[a]>n&&(u[a]=n),u[a]=u[a]}let c;c="";for(let l=0;l<b.length;++l){let a=b[l],E=u[a];c+=this.truncateMessage(a,{fit:E,ellipsis:t}),c+=o}p&&(c=p(c,b)),h+=this.truncateMessage(c,{fit:f}),h+=Y,c="";let ge=i;for(let l=0;l<b.length;++l){let a=b[l],E=u[a];c+=this.truncateMessage(ge,{fit:E,ellipsis:""}),c+=o}R&&(c=R(c,b)),h+=this.truncateMessage(c,{fit:f}),h+=Y;for(let l=1;l<e.length;++l){c="";let a=e[l];for(let E=0;E<b.length;++E){let w=b[E],q=a[w],N=u[w];c+=this.truncateMessage(q,{fit:N,ellipsis:t}),c+=o}T&&(c=T(c,a)),h+=this.truncateMessage(c,{fit:f}),h+=Y}return this.rawLog(h),h}onBuildLog({contextName:e,message:t="",lid:s="",symbol:n=""}={}){let o=new Date,i=("0"+o.getHours()).slice(-2)+":"+("0"+o.getMinutes()).slice(-2)+":"+("0"+o.getSeconds()).slice(-2);return i=this.truncateMessage(i,{fit:this.options.timeLenMax}),e=this.truncateMessage(e,{fit:this.options.contextLenMax,align:m.ALIGN.RIGHT}),s=this.truncateMessage(s,{fit:this.options.lidLenMax}),this.options.messageLenMax!==void 0&&(t=this.truncateMessage(t,{fit:this.options.messageLenMax})),n=this.truncateMessage(n,{fit:this.options.symbolLenMax}),`[${i}] ${e}: (${s}) ${n} ${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:H[1]},e),e.id=this.logIndex++,e}generateNewContext(){let e=this.generateDefaultContext();return e.color=H[this.indexColor++%(H.length-3)+2],e.symbol="",e}generateErrorContext(){let e=this.generateDefaultContext();return e.name=O.ERROR,e.contextName=O.ERROR,e.color=H[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(s=>{let n=e[s]||{};n.contextName=s,n.name=s,this.contexts[s]=ee(this,G,ue).call(this,n),e[s]=this.contexts[s]})}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,s){let n=0;for(let i in t){if(i==="name")continue;let f=t[i],p=document.createElement("span");p.classList.add("analogger-col",`analogger-col-${i}`,`analogger-col-${n}`),++n,p.textContent=f,e.append(p)}let o=document.createElement("span");o.classList.add("analogger-col","analogger-col-text",`analogger-col-${n}`),o.textContent=s,e.append(o)}writeLogToDom(e,t){this.$containers=this.$containers||document.querySelectorAll(this.options.logToDom);for(let s=0;s<this.$containers.length;++s){let n=this.$containers[s],o=n.querySelector(".analogger-view");o||(o=document.createElement("div"),o.classList.add("analogger-view"),n.append(o));let i=document.createElement("div");i.classList.add("to-esm-line"),i.style.color=e.color,i.setAttribute("data-log-counter",this.logCounter),i.setAttribute("data-log-index",this.logIndex),this.setColumns(i,e,t),o.append(i)}}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=[],s,n=e.length;for(let o=0;o<n;++o){let i,f=e[o];try{i=JSON.stringify(f)}catch(p){}if(!i)try{i=he(f)}catch(p){}t.push(i)}return s=t.join("\u2022"),s}processOutput(e={}){try{let t="";if(!this.isTargetAllowed(e.target))return;let s=Array.prototype.slice.call(arguments);s.shift(),t=this.convertArgumentsToText(s);let n="",o="";if(o=this.format(Q(A({},e),{message:t})),++this.logCounter,this.isBrowser()?(e.environnment=m.ENVIRONMENT_TYPE.BROWSER,this.options.logToDom&&this.writeLogToDom(e,o),n=`%c${o}`):(e.environnment=m.ENVIRONMENT_TYPE.NODE,n=W.getTextFromColor(o,{fg:e.color}),this.options.logToFile&&this.writeLogToFile(o)),this.keepLog&&this.logHistory.push(n),this.options.hideLog)return;this.isBrowser()?d(this,x).call(this,n,`color: ${e.color}`):d(this,x).call(this,n),this.errorTargetHandler(e,s)}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("lid")}convertToContext(e,t){t=t||this.generateDefaultContext(),e=e||t;let s=e;if(e.context&&typeof e.context=="object"){let n=Object.assign({},e);delete n.context,s=Object.assign({},e.context,n)}return s=Object.assign({},t,s),delete s.context,s}log(e,...t){if(!this.isExtendedOptionsPassed(e)){let n=this.generateDefaultContext();this.processOutput.apply(this,[n,e,...t]);return}let s=this.convertToContext(e);this.processOutput.apply(this,[s,...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 s=this.generateErrorContext(),n=this.convertToContext(e,s),o=Array.prototype.slice.call(arguments,1);this.log(n,...o)}overrideError(){this.options.hideHookMessage||d(this,x).call(this,"AnaLogger: Hook placed on console.error"),console.error=this.onDisplayError.bind(this)}overrideConsole({log:e=!0,info:t=!0,warn:s=!0,error:n=!1}={}){this.options.hideHookMessage||d(this,x).call(this,"AnaLogger: Hook placed on console.log"),e&&(console.log=this.onDisplayLog.bind(this)),t&&(console.info=this.onDisplayLog.bind(this)),s&&(console.warn=this.onDisplayLog.bind(this)),n&&this.overrideError()}removeOverrideError(){console.warn=d(this,I)}removeOverride({log:e=!0,info:t=!0,warn:s=!0,error:n=!1}={}){e&&(console.log=d(this,x)),t&&(console.info=d(this,D)),s&&(console.warn=d(this,v)),n&&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,...s){let n;try{return typeof e=="function"?(n=e(...s),n!==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(o){this.error("Unexpected error in assert")}return!1}},U=m;x=new WeakMap,D=new WeakMap,v=new WeakMap,I=new WeakMap,G=new WeakSet,ue=function(e){let t=e,s=this.generateNewContext();return t=Object.assign({},s,t),t.color.toLowerCase().indexOf("rgb")>-1?t.color=W.rgbStringToHex(t.color):t.color.indexOf("#")===-1&&(t.color=W.colorNameToHex(t.color)),t},g(U,"ALIGN",{LEFT:"LEFT",RIGHT:"RIGHT"}),g(U,"ENVIRONMENT_TYPE",{BROWSER:"BROWSER",NODE:"NODE",OTHER:"OTHER"});var De=new U,We=De;export{De as anaLogger,We as default};
|
|
3
|
+
|
|
@@ -9,7 +9,6 @@ import fs from "fs";
|
|
|
9
9
|
import os from "os";
|
|
10
10
|
import terminalSize from "./node_modules/window-size/index.mjs";
|
|
11
11
|
import toAnsi from "./node_modules/to-ansi/index.mjs";
|
|
12
|
-
import rgbHex from "./node_modules/rgb-hex/index.mjs";
|
|
13
12
|
import {COLOR_TABLE, SYSTEM} from "./src/cjs/constants.mjs";
|
|
14
13
|
import {stringify} from "./node_modules/flatted/cjs/index.mjs";
|
|
15
14
|
terminalSize = {};
|
|
@@ -21,7 +20,6 @@ terminalSize = {};
|
|
|
21
20
|
|
|
22
21
|
|
|
23
22
|
|
|
24
|
-
|
|
25
23
|
const PREDEFINED_CONTEXT_NAMES = {
|
|
26
24
|
"DEFAULT": "DEFAULT",
|
|
27
25
|
"ERROR" : "ERROR"
|
|
@@ -239,7 +237,11 @@ class AnaLogger
|
|
|
239
237
|
this.options.logToDom = logToDom || "#analogger";
|
|
240
238
|
}
|
|
241
239
|
|
|
242
|
-
if (logToFile
|
|
240
|
+
if (logToFile === false)
|
|
241
|
+
{
|
|
242
|
+
this.options.logToFile = false;
|
|
243
|
+
}
|
|
244
|
+
else if (logToFile !== undefined)
|
|
243
245
|
{
|
|
244
246
|
if (!this.isBrowser())
|
|
245
247
|
{
|
|
@@ -248,7 +250,6 @@ class AnaLogger
|
|
|
248
250
|
/** to-esm-browser: remove **/
|
|
249
251
|
// these require won't get compiled by to-esm
|
|
250
252
|
this.options.logToFilePath = path.resolve(this.options.logToFile);
|
|
251
|
-
this.logFile = fs.createWriteStream(this.options.logToFilePath, {flags: "a"});
|
|
252
253
|
this.EOL = os.EOL;
|
|
253
254
|
/** to-esm-browser: end-remove **/
|
|
254
255
|
}
|
|
@@ -256,7 +257,6 @@ class AnaLogger
|
|
|
256
257
|
/** to-esm-browser: add
|
|
257
258
|
this.#realConsoleLog("LogToFile is not supported in this environment. ")
|
|
258
259
|
**/
|
|
259
|
-
|
|
260
260
|
}
|
|
261
261
|
|
|
262
262
|
if (silent !== undefined)
|
|
@@ -293,6 +293,9 @@ class AnaLogger
|
|
|
293
293
|
* @param verticalSeparator
|
|
294
294
|
* @param horizontalSeparator
|
|
295
295
|
* @param availableLength
|
|
296
|
+
* @param onCompleteHeaders
|
|
297
|
+
* @param onCompleteSeparators
|
|
298
|
+
* @param onCompleteLines
|
|
296
299
|
*/
|
|
297
300
|
buildTable(table, {
|
|
298
301
|
ellipsis = "...",
|
|
@@ -300,7 +303,10 @@ class AnaLogger
|
|
|
300
303
|
columnMaxChars = 0,
|
|
301
304
|
verticalSeparator = " │ ",
|
|
302
305
|
horizontalSeparator = "─",
|
|
303
|
-
availableLength = 0
|
|
306
|
+
availableLength = 0,
|
|
307
|
+
onCompleteHeaders = null,
|
|
308
|
+
onCompleteSeparators = null,
|
|
309
|
+
onCompleteLines = null
|
|
304
310
|
} = {})
|
|
305
311
|
{
|
|
306
312
|
let text = "";
|
|
@@ -310,7 +316,7 @@ class AnaLogger
|
|
|
310
316
|
{
|
|
311
317
|
table = Object.values(Object.values(table));
|
|
312
318
|
}
|
|
313
|
-
|
|
319
|
+
|
|
314
320
|
if (!table || !table.length)
|
|
315
321
|
{
|
|
316
322
|
return "";
|
|
@@ -356,7 +362,11 @@ class AnaLogger
|
|
|
356
362
|
}
|
|
357
363
|
}
|
|
358
364
|
|
|
365
|
+
availableLength = availableLength - 4;
|
|
366
|
+
|
|
359
367
|
let totalLength = Object.values(fits).reduce((a, b) => a + b, 0);
|
|
368
|
+
|
|
369
|
+
/* istanbul ignore next */
|
|
360
370
|
if (availableLength < totalLength)
|
|
361
371
|
{
|
|
362
372
|
const ratio = (availableLength) / totalLength;
|
|
@@ -380,7 +390,7 @@ class AnaLogger
|
|
|
380
390
|
|
|
381
391
|
let strLine;
|
|
382
392
|
|
|
383
|
-
//
|
|
393
|
+
// Headers
|
|
384
394
|
strLine = "";
|
|
385
395
|
for (let i = 0; i < titles.length; ++i)
|
|
386
396
|
{
|
|
@@ -389,9 +399,15 @@ class AnaLogger
|
|
|
389
399
|
strLine += this.truncateMessage(colName, {fit, ellipsis});
|
|
390
400
|
strLine += verticalSeparator;
|
|
391
401
|
}
|
|
402
|
+
|
|
403
|
+
if (onCompleteHeaders)
|
|
404
|
+
{
|
|
405
|
+
strLine = onCompleteHeaders(strLine, titles);
|
|
406
|
+
}
|
|
392
407
|
text += this.truncateMessage(strLine, {fit: availableLength});
|
|
393
408
|
text += EOL;
|
|
394
409
|
|
|
410
|
+
|
|
395
411
|
// Separators
|
|
396
412
|
strLine = "";
|
|
397
413
|
const colContent = horizontalSeparator;
|
|
@@ -402,6 +418,12 @@ class AnaLogger
|
|
|
402
418
|
strLine += this.truncateMessage(colContent, {fit, ellipsis: ""});
|
|
403
419
|
strLine += verticalSeparator;
|
|
404
420
|
}
|
|
421
|
+
|
|
422
|
+
if (onCompleteSeparators)
|
|
423
|
+
{
|
|
424
|
+
strLine = onCompleteSeparators(strLine, titles);
|
|
425
|
+
}
|
|
426
|
+
|
|
405
427
|
text += this.truncateMessage(strLine, {fit: availableLength});
|
|
406
428
|
text += EOL;
|
|
407
429
|
|
|
@@ -419,6 +441,12 @@ class AnaLogger
|
|
|
419
441
|
strLine += this.truncateMessage(colContent, {fit, ellipsis});
|
|
420
442
|
strLine += verticalSeparator;
|
|
421
443
|
}
|
|
444
|
+
|
|
445
|
+
if (onCompleteLines)
|
|
446
|
+
{
|
|
447
|
+
strLine = onCompleteLines(strLine, line);
|
|
448
|
+
}
|
|
449
|
+
|
|
422
450
|
text += this.truncateMessage(strLine, {fit: availableLength});
|
|
423
451
|
text += EOL;
|
|
424
452
|
}
|
|
@@ -561,7 +589,7 @@ class AnaLogger
|
|
|
561
589
|
contextName: PREDEFINED_CONTEXT_NAMES.DEFAULT,
|
|
562
590
|
target : "ALL",
|
|
563
591
|
symbol : "⚡",
|
|
564
|
-
color: COLOR_TABLE[1]
|
|
592
|
+
color : COLOR_TABLE[1]
|
|
565
593
|
}, defaultContext);
|
|
566
594
|
|
|
567
595
|
defaultContext.id = this.logIndex++;
|
|
@@ -597,15 +625,11 @@ class AnaLogger
|
|
|
597
625
|
|
|
598
626
|
if (converted.color.toLowerCase().indexOf("rgb") > -1)
|
|
599
627
|
{
|
|
600
|
-
converted.color =
|
|
628
|
+
converted.color = toAnsi.rgbStringToHex(converted.color);
|
|
601
629
|
}
|
|
602
630
|
else if (converted.color.indexOf("#") === -1)
|
|
603
631
|
{
|
|
604
|
-
|
|
605
|
-
if (colorConvert)
|
|
606
|
-
{
|
|
607
|
-
converted.color = "#" + colorConvert.keyword.hex(converted.color);
|
|
608
|
-
}
|
|
632
|
+
converted.color = toAnsi.colorNameToHex(converted.color);
|
|
609
633
|
}
|
|
610
634
|
|
|
611
635
|
return converted;
|
|
@@ -715,7 +739,15 @@ class AnaLogger
|
|
|
715
739
|
|
|
716
740
|
writeLogToFile(text)
|
|
717
741
|
{
|
|
718
|
-
|
|
742
|
+
try
|
|
743
|
+
{
|
|
744
|
+
fs.appendFileSync(this.options.logToFilePath, text + this.EOL);
|
|
745
|
+
}
|
|
746
|
+
catch (e)
|
|
747
|
+
{
|
|
748
|
+
/* istanbul ignore next */
|
|
749
|
+
console.rawError("LOG_TO_FILE_FAILURE: ", e.message);
|
|
750
|
+
}
|
|
719
751
|
}
|
|
720
752
|
|
|
721
753
|
convertArgumentsToText(args)
|
|
@@ -795,7 +827,7 @@ class AnaLogger
|
|
|
795
827
|
else
|
|
796
828
|
{
|
|
797
829
|
context.environnment = AnaLogger.ENVIRONMENT_TYPE.NODE;
|
|
798
|
-
output = toAnsi.
|
|
830
|
+
output = toAnsi.getTextFromColor(text, {fg: context.color});
|
|
799
831
|
|
|
800
832
|
if (this.options.logToFile)
|
|
801
833
|
{
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DO NOT EDIT THIS FILE DIRECTLY.
|
|
3
|
+
* This file is generated following the conversion of
|
|
4
|
+
* [./node_modules/define-property/index.js]{@link ./node_modules/define-property/index.js}
|
|
5
|
+
*
|
|
6
|
+
**/
|
|
7
|
+
import isDescriptor from "../is-descriptor/index.mjs";
|
|
8
|
+
/*!
|
|
9
|
+
* define-property <https://github.com/jonschlinkert/define-property>
|
|
10
|
+
*
|
|
11
|
+
* Copyright (c) 2015, 2017, Jon Schlinkert.
|
|
12
|
+
* Released under the MIT License.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
'use strict';
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
export default function defineProperty(obj, prop, val) {
|
|
19
|
+
if (typeof obj !== 'object' && typeof obj !== 'function') {
|
|
20
|
+
throw new TypeError('expected an object or function.');
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
if (typeof prop !== 'string') {
|
|
24
|
+
throw new TypeError('expected `prop` to be a string.');
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
if (isDescriptor(val) && ('set' in val || 'get' in val)) {
|
|
28
|
+
return Object.defineProperty(obj, prop, val);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return Object.defineProperty(obj, prop, {
|
|
32
|
+
configurable: true,
|
|
33
|
+
enumerable: false,
|
|
34
|
+
writable: true,
|
|
35
|
+
value: val
|
|
36
|
+
});
|
|
37
|
+
};
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DO NOT EDIT THIS FILE DIRECTLY.
|
|
3
|
+
* This file is generated following the conversion of
|
|
4
|
+
* [./node_modules/flatted/cjs/index.js]{@link ./node_modules/flatted/cjs/index.js}
|
|
5
|
+
*
|
|
6
|
+
**/
|
|
7
|
+
'use strict';
|
|
8
|
+
/*! (c) 2020 Andrea Giammarchi */
|
|
9
|
+
|
|
10
|
+
const {parse: $parse, stringify: $stringify} = JSON;
|
|
11
|
+
const {keys} = Object;
|
|
12
|
+
|
|
13
|
+
const Primitive = String; // it could be Number
|
|
14
|
+
const primitive = 'string'; // it could be 'number'
|
|
15
|
+
|
|
16
|
+
const ignore = {};
|
|
17
|
+
const object = 'object';
|
|
18
|
+
|
|
19
|
+
const noop = (_, value) => value;
|
|
20
|
+
|
|
21
|
+
const primitives = value => (
|
|
22
|
+
value instanceof Primitive ? Primitive(value) : value
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
const Primitives = (_, value) => (
|
|
26
|
+
typeof value === primitive ? new Primitive(value) : value
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
const revive = (input, parsed, output, $) => {
|
|
30
|
+
const lazy = [];
|
|
31
|
+
for (let ke = keys(output), {length} = ke, y = 0; y < length; y++) {
|
|
32
|
+
const k = ke[y];
|
|
33
|
+
const value = output[k];
|
|
34
|
+
if (value instanceof Primitive) {
|
|
35
|
+
const tmp = input[value];
|
|
36
|
+
if (typeof tmp === object && !parsed.has(tmp)) {
|
|
37
|
+
parsed.add(tmp);
|
|
38
|
+
output[k] = ignore;
|
|
39
|
+
lazy.push({k, a: [input, parsed, tmp, $]});
|
|
40
|
+
}
|
|
41
|
+
else
|
|
42
|
+
output[k] = $.call(output, k, tmp);
|
|
43
|
+
}
|
|
44
|
+
else if (output[k] !== ignore)
|
|
45
|
+
output[k] = $.call(output, k, value);
|
|
46
|
+
}
|
|
47
|
+
for (let {length} = lazy, i = 0; i < length; i++) {
|
|
48
|
+
const {k, a} = lazy[i];
|
|
49
|
+
output[k] = $.call(output, k, revive.apply(null, a));
|
|
50
|
+
}
|
|
51
|
+
return output;
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
const set = (known, input, value) => {
|
|
55
|
+
const index = Primitive(input.push(value) - 1);
|
|
56
|
+
known.set(value, index);
|
|
57
|
+
return index;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export const parse = (text, reviver) => {
|
|
61
|
+
const input = $parse(text, Primitives).map(primitives);
|
|
62
|
+
const value = input[0];
|
|
63
|
+
const $ = reviver || noop;
|
|
64
|
+
const tmp = typeof value === object && value ?
|
|
65
|
+
revive(input, new Set, value, $) :
|
|
66
|
+
value;
|
|
67
|
+
return $.call({'': tmp}, '', tmp);
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
export const stringify = (value, replacer, space) => {
|
|
72
|
+
const $ = replacer && typeof replacer === object ?
|
|
73
|
+
(k, v) => (k === '' || -1 < replacer.indexOf(k) ? v : void 0) :
|
|
74
|
+
(replacer || noop);
|
|
75
|
+
const known = new Map;
|
|
76
|
+
const input = [];
|
|
77
|
+
const output = [];
|
|
78
|
+
let i = +set(known, input, $.call({'': value}, '', value));
|
|
79
|
+
let firstRun = !i;
|
|
80
|
+
while (i < input.length) {
|
|
81
|
+
firstRun = true;
|
|
82
|
+
output[i] = $stringify(input[i++], replace, space);
|
|
83
|
+
}
|
|
84
|
+
return '[' + output.join(',') + ']';
|
|
85
|
+
function replace(key, value) {
|
|
86
|
+
if (firstRun) {
|
|
87
|
+
firstRun = !firstRun;
|
|
88
|
+
return value;
|
|
89
|
+
}
|
|
90
|
+
const after = $.call(this, key, value);
|
|
91
|
+
switch (typeof after) {
|
|
92
|
+
case object:
|
|
93
|
+
if (after === null) return after;
|
|
94
|
+
case primitive:
|
|
95
|
+
return known.get(after) || set(known, input, after);
|
|
96
|
+
}
|
|
97
|
+
return after;
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
export const toJSON = any => $parse(stringify(any));
|
|
103
|
+
|
|
104
|
+
export const fromJSON = any => parse($stringify(any));
|
|
105
|
+
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DO NOT EDIT THIS FILE DIRECTLY.
|
|
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}
|
|
5
|
+
*
|
|
6
|
+
**/
|
|
7
|
+
import typeOf from "../kind-of/index.mjs";
|
|
8
|
+
/*!
|
|
9
|
+
* is-accessor-descriptor <https://github.com/jonschlinkert/is-accessor-descriptor>
|
|
10
|
+
*
|
|
11
|
+
* Copyright (c) 2015-2017, Jon Schlinkert.
|
|
12
|
+
* Released under the MIT License.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
'use strict';
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
var accessor = {
|
|
19
|
+
get: 'function',
|
|
20
|
+
set: 'function',
|
|
21
|
+
configurable: 'boolean',
|
|
22
|
+
enumerable: 'boolean'
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
function isAccessorDescriptor(obj, prop) {
|
|
26
|
+
if (typeof prop === 'string') {
|
|
27
|
+
var val = Object.getOwnPropertyDescriptor(obj, prop);
|
|
28
|
+
return typeof val !== 'undefined';
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (typeOf(obj) !== 'object') {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if (has(obj, 'value') || has(obj, 'writable')) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (!has(obj, 'get') || typeof obj.get !== 'function') {
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// tldr: it's valid to have "set" be undefined
|
|
44
|
+
// "set" might be undefined if `Object.getOwnPropertyDescriptor`
|
|
45
|
+
// was used to get the value, and only `get` was defined by the user
|
|
46
|
+
if (has(obj, 'set') && typeof obj[key] !== 'function' && typeof obj[key] !== 'undefined') {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
for (var key in obj) {
|
|
51
|
+
if (!accessor.hasOwnProperty(key)) {
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
if (typeOf(obj[key]) === accessor[key]) {
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
if (typeof obj[key] !== 'undefined') {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
function has(obj, key) {
|
|
67
|
+
return {}.hasOwnProperty.call(obj, key);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Expose `isAccessorDescriptor`
|
|
72
|
+
*/
|
|
73
|
+
|
|
74
|
+
export default isAccessorDescriptor;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DO NOT EDIT THIS FILE DIRECTLY.
|
|
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}
|
|
5
|
+
*
|
|
6
|
+
**/
|
|
7
|
+
import typeOf from "../kind-of/index.mjs";
|
|
8
|
+
/*!
|
|
9
|
+
* is-data-descriptor <https://github.com/jonschlinkert/is-data-descriptor>
|
|
10
|
+
*
|
|
11
|
+
* Copyright (c) 2015-2017, Jon Schlinkert.
|
|
12
|
+
* Released under the MIT License.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
'use strict';
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
export default function isDataDescriptor(obj, prop) {
|
|
19
|
+
// data descriptor properties
|
|
20
|
+
var data = {
|
|
21
|
+
configurable: 'boolean',
|
|
22
|
+
enumerable: 'boolean',
|
|
23
|
+
writable: 'boolean'
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
if (typeOf(obj) !== 'object') {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
if (typeof prop === 'string') {
|
|
31
|
+
var val = Object.getOwnPropertyDescriptor(obj, prop);
|
|
32
|
+
return typeof val !== 'undefined';
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if (!('value' in obj) && !('writable' in obj)) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
for (var key in obj) {
|
|
40
|
+
if (key === 'value') continue;
|
|
41
|
+
|
|
42
|
+
if (!data.hasOwnProperty(key)) {
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (typeOf(obj[key]) === data[key]) {
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
if (typeof obj[key] !== 'undefined') {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return true;
|
|
55
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DO NOT EDIT THIS FILE DIRECTLY.
|
|
3
|
+
* This file is generated following the conversion of
|
|
4
|
+
* [./node_modules/is-descriptor/index.js]{@link ./node_modules/is-descriptor/index.js}
|
|
5
|
+
*
|
|
6
|
+
**/
|
|
7
|
+
import typeOf from "../kind-of/index.mjs";
|
|
8
|
+
import isAccessor from "../is-accessor-descriptor/index.mjs";
|
|
9
|
+
import isData from "../is-data-descriptor/index.mjs";
|
|
10
|
+
/*!
|
|
11
|
+
* is-descriptor <https://github.com/jonschlinkert/is-descriptor>
|
|
12
|
+
*
|
|
13
|
+
* Copyright (c) 2015-2017, Jon Schlinkert.
|
|
14
|
+
* Released under the MIT License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
'use strict';
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
export default function isDescriptor(obj, key) {
|
|
23
|
+
if (typeOf(obj) !== 'object') {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
if ('get' in obj) {
|
|
27
|
+
return isAccessor(obj, key);
|
|
28
|
+
}
|
|
29
|
+
return isData(obj, key);
|
|
30
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DO NOT EDIT THIS FILE DIRECTLY.
|
|
3
|
+
* This file is generated following the conversion of
|
|
4
|
+
* [./node_modules/is-number/index.js]{@link ./node_modules/is-number/index.js}
|
|
5
|
+
*
|
|
6
|
+
**/
|
|
7
|
+
/*!
|
|
8
|
+
* is-number <https://github.com/jonschlinkert/is-number>
|
|
9
|
+
*
|
|
10
|
+
* Copyright (c) 2014-present, Jon Schlinkert.
|
|
11
|
+
* Released under the MIT License.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
'use strict';
|
|
15
|
+
|
|
16
|
+
export default function(num) {
|
|
17
|
+
if (typeof num === 'number') {
|
|
18
|
+
return num - num === 0;
|
|
19
|
+
}
|
|
20
|
+
if (typeof num === 'string' && num.trim() !== '') {
|
|
21
|
+
return Number.isFinite ? Number.isFinite(+num) : isFinite(+num);
|
|
22
|
+
}
|
|
23
|
+
return false;
|
|
24
|
+
};
|