Socket
Socket
Sign inDemoInstall

@tsed/logger

Package Overview
Dependencies
Maintainers
1
Versions
60
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@tsed/logger - npm Package Compare versions

Comparing version 6.7.7 to 6.7.8

1

.barrelsby.json

@@ -11,3 +11,2 @@ {

".spec.ts",
"utils",
"LayoutReplacer"

@@ -14,0 +13,0 @@ ],

20

lib/browser/logger.umd.js

@@ -1,14 +0,14 @@

(function(a,u){typeof exports=="object"&&typeof module<"u"?u(exports):typeof define=="function"&&define.amd?define(["exports"],u):(a=typeof globalThis<"u"?globalThis:a||self,u(a["@tsed/logger"]={}))})(this,function(a){"use strict";var Ge=Object.defineProperty;var Xe=(a,u,d)=>u in a?Ge(a,u,{enumerable:!0,configurable:!0,writable:!0,value:d}):a[u]=d;var h=(a,u,d)=>(Xe(a,typeof u!="symbol"?u+"":u,d),d),fe=(a,u,d)=>{if(!u.has(a))throw TypeError("Cannot "+d)};var he=(a,u,d)=>(fe(a,u,"read from private field"),d?d.call(a):u.get(a)),pe=(a,u,d)=>{if(u.has(a))throw TypeError("Cannot add the same private member more than once");u instanceof WeakSet?u.add(a):u.set(a,d)},Y=(a,u,d,A)=>(fe(a,u,"write to private field"),A?A.call(a,d):u.set(a,d),d);var M;const u=new Map;class d{static get(e,t){typeof e!="string"&&(e=e.$name),u.has(e)||(e="colored",console.warn(e+" layout doesn't exists"));const n=u.get(e);return new n.provide(t)}}class A{constructor(e){pe(this,M,void 0);this.config=e,this.configure(e)}get appenderOptions(){return this.__proto__.constructor.$appenderOptions}configure(e){var t;return Object.assign(this.config,e),Y(this,M,d.get(((t=this.appenderOptions)==null?void 0:t.defaultLayout)||"colored",this.config)),this.config.layout&&Y(this,M,d.get(this.config.layout.type,this.config.layout)),this}layout(...e){return he(this,M).transform(...e)}}M=new WeakMap;const D=new Map;function q(r){return e=>{e.$appenderOptions=r,e.$name=r.name,D.set(r.name,{provide:e})}}var de=Object.defineProperty,ve=Object.getOwnPropertyDescriptor,ye=(r,e,t,n)=>{for(var s=n>1?void 0:n?ve(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&de(e,t,s),s};a.ConsoleAppender=class extends A{constructor(){super(...arguments);h(this,"log",console.log.bind(console))}write(t){this.log(this.layout(t,this.config.timezoneOffset))}},a.ConsoleAppender=ye([q({name:"console"})],a.ConsoleAppender);class K extends Map{toJSON(){return[...this.entries()].reduce((e,[t,n])=>({...e,[t]:n}),{})}}class V{constructor(e,t,n,s){h(this,"_startTime",new Date);this.categoryName=e,this.level=t,this.data=n,this.context=s}get startTime(){return this.data&&this.data[0]&&this.data[0].time?this.data[0].time:this._startTime}get formatedLevel(){return this.formattedLevel}get formattedLevel(){return(this.level.toString()+" ").slice(0,5)}get cluster(){return{}}get pid(){return this.context.get("pid")}isMessage(){return this.data.length&&typeof this.data[0]!="object"}getData(){return this.isMessage()?{}:this.data[0]}getMessage(){return this.isMessage()?this.data:void 0}}class g{constructor(e,t){this.level=e,this.levelStr=t,this.level=e,this.levelStr=t}static getLevel(e,t){if(e instanceof g)return e;if(typeof e=="string"){const n=e.toUpperCase();return G[n]||t}return this.getLevel(e.toString())}toString(){return this.levelStr}isLessThanOrEqualTo(e){return typeof e=="string"&&(e=g.getLevel(e)),this.level<=e.level}isGreaterThanOrEqualTo(e){return typeof e=="string"&&(e=g.getLevel(e)),this.level>=e.level}isEqualTo(e){return typeof e=="string"&&(e=g.getLevel(e)),this.level===e.level}}const G={ALL:new g(Number.MIN_VALUE,"ALL"),TRACE:new g(5e3,"TRACE"),DEBUG:new g(1e4,"DEBUG"),INFO:new g(2e4,"INFO"),WARN:new g(3e4,"WARN"),ERROR:new g(4e4,"ERROR"),FATAL:new g(5e4,"FATAL"),MARK:new g(9007199254740992,"MARK"),OFF:new g(Number.MAX_VALUE,"OFF")};function b(){return G}class O{constructor(e){this.config=e}}var X={exports:{}};(function(r){function e(p,f){for(var y=p.toString();y.length<f;)y="0"+y;return y}function t(p){return e(p,2)}function n(p){var f=Math.abs(p),y=String(Math.floor(f/60)),m=String(f%60);return y=("0"+y).slice(-2),m=("0"+m).slice(-2),p===0?"Z":(p<0?"+":"-")+y+":"+m}function s(p,f){typeof p!="string"&&(f=p,p=r.exports.ISO8601_FORMAT),f||(f=r.exports.now());var y=t(f.getDate()),m=t(f.getMonth()+1),P=t(f.getFullYear()),x=t(P.substring(2,4)),Z=p.indexOf("yyyy")>-1?P:x,R=t(f.getHours()),H=t(f.getMinutes()),I=t(f.getSeconds()),B=e(f.getMilliseconds(),3),l=n(f.getTimezoneOffset()),c=p.replace(/dd/g,y).replace(/MM/g,m).replace(/y{1,4}/g,Z).replace(/hh/g,R).replace(/mm/g,H).replace(/ss/g,I).replace(/SSS/g,B).replace(/O/g,l);return c}function i(p,f,y,m){p["set"+(m?"":"UTC")+f](y)}function o(p,f,y){var m=p.indexOf("O")<0,P=!1,x=[{pattern:/y{1,4}/,regexp:"\\d{1,4}",fn:function(l,c){i(l,"FullYear",c,m)}},{pattern:/MM/,regexp:"\\d{1,2}",fn:function(l,c){i(l,"Month",c-1,m),l.getMonth()!==c-1&&(P=!0)}},{pattern:/dd/,regexp:"\\d{1,2}",fn:function(l,c){P&&i(l,"Month",l.getMonth()-1,m),i(l,"Date",c,m)}},{pattern:/hh/,regexp:"\\d{1,2}",fn:function(l,c){i(l,"Hours",c,m)}},{pattern:/mm/,regexp:"\\d\\d",fn:function(l,c){i(l,"Minutes",c,m)}},{pattern:/ss/,regexp:"\\d\\d",fn:function(l,c){i(l,"Seconds",c,m)}},{pattern:/SSS/,regexp:"\\d\\d\\d",fn:function(l,c){i(l,"Milliseconds",c,m)}},{pattern:/O/,regexp:"[+-]\\d{1,2}:?\\d{2}?|Z",fn:function(l,c){c==="Z"?c=0:c=c.replace(":","");var ue=Math.abs(c),Ve=(c>0?-1:1)*(ue%100+Math.floor(ue/100)*60);l.setUTCMinutes(l.getUTCMinutes()+Ve)}}],Z=x.reduce(function(l,c){return c.pattern.test(l.regexp)?(c.index=l.regexp.match(c.pattern).index,l.regexp=l.regexp.replace(c.pattern,"("+c.regexp+")")):c.index=-1,l},{regexp:p,index:[]}),R=x.filter(function(l){return l.index>-1});R.sort(function(l,c){return l.index-c.index});var H=new RegExp(Z.regexp),I=H.exec(f);if(I){var B=y||r.exports.now();return R.forEach(function(l,c){l.fn(B,I[c+1])}),B}throw new Error("String '"+f+"' could not be parsed as '"+p+"'")}function S(p,f,y){if(!p)throw new Error("pattern must be supplied");return o(p,f,y)}function v(){return new Date}r.exports=s,r.exports.asString=s,r.exports.parse=S,r.exports.now=v,r.exports.ISO8601_FORMAT="yyyy-MM-ddThh:mm:ss.SSS",r.exports.ISO8601_WITH_TZ_OFFSET_FORMAT="yyyy-MM-ddThh:mm:ss.SSSO",r.exports.DATETIME_FORMAT="dd MM yyyy hh:mm:ss.SSS",r.exports.ABSOLUTETIME_FORMAT="hh:mm:ss.SSS"})(X);var _=X.exports;const Q={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[90,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};function k(r){return r?`\x1B[${Q[r][0]}m`:""}function ee(r){return r?`\x1B[${Q[r][1]}m`:""}function ge(r,e){return k(e)+r+ee(e)}function me(r){return r.replace(/\[\d+m|\\u\d+b/gi,"")}function Oe(r,e){let t;return r?(t=parseInt(r.substr(1),10),e.substring(0,t)):e}function _e(r,e){let t;if(r)if(r.charAt(0)==="-")for(t=parseInt(r.substr(1),10);e.length<t;)e+=" ";else for(t=parseInt(r,10);e.length<t;)e=` ${e}`;return e}function we(r,e,t){let n=r;return n=Oe(e,n),n=_e(t,n),n}const L={format(r,...e){return""}};function te(r,e,t){return ge(L.format("[%s] [%s] [%s] - ",_.asString(r.startTime,t),r.formattedLevel,r.categoryName),e)}function w(r){return e=>{e.$name=r.name,u.set(r.name,{provide:e})}}var Te=Object.defineProperty,Se=Object.getOwnPropertyDescriptor,be=(r,e,t,n)=>{for(var s=n>1?void 0:n?Se(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Te(e,t,s),s};a.BasicLayout=class extends O{transform(e,t){return te(e,void 0,t)+L.format(...[].concat(e.data))}},a.BasicLayout=be([w({name:"basic"})],a.BasicLayout);var E=(r=>(r.ALL="grey",r.INFO="green",r.DEBUG="cyan",r.WARN="yellow",r.TRACE="blue",r.ERROR="red",r.FATAL="magenta",r.OFF="grey",r))(E||{}),Le=Object.defineProperty,Me=Object.getOwnPropertyDescriptor,Ae=(r,e,t,n)=>{for(var s=n>1?void 0:n?Me(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Le(e,t,s),s};a.ColoredLayout=class extends O{transform(e,t){const n=e.level.toString(),s=E[n];return te(e,s,t)+L.format(...[].concat(e.data))}},a.ColoredLayout=Ae([w({name:"colored"})],a.ColoredLayout);var Ee=Object.defineProperty,Pe=Object.getOwnPropertyDescriptor,De=(r,e,t,n)=>{for(var s=n>1?void 0:n?Pe(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Ee(e,t,s),s};a.DummyLayout=class extends O{transform(e,t){return e.data[0]}},a.DummyLayout=De([w({name:"dummy"})],a.DummyLayout);function re(r){const e={...r.context.toJSON(),startTime:r.startTime,categoryName:r.categoryName,level:r.level.toString()};return e.data=r.data.reduce((t,n)=>typeof n=="object"?(Object.assign(e,n),n.data?[].concat(t,n.data):t):[...t,me(L.format(n))],[]),e}var Ne=Object.defineProperty,Fe=Object.getOwnPropertyDescriptor,$e=(r,e,t,n)=>{for(var s=n>1?void 0:n?Fe(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Ne(e,t,s),s};a.JsonLayout=class extends O{transform(e,t){const n=re(e);return JSON.stringify(n)+(this.config.separator||"")}},a.JsonLayout=$e([w({name:"json"})],a.JsonLayout);var je=Object.defineProperty,Ce=Object.getOwnPropertyDescriptor,xe=(r,e,t,n)=>{for(var s=n>1?void 0:n?Ce(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&je(e,t,s),s};a.MessagePassThroughLayout=class extends O{transform(e,t){return L.format(...[].concat(e.data))}},a.MessagePassThroughLayout=xe([w({name:"messagePassThrough"})],a.MessagePassThroughLayout);var Re=Object.defineProperty,Ie=Object.getOwnPropertyDescriptor,Be=(r,e,t,n)=>{for(var s=n>1?void 0:n?Ie(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Re(e,t,s),s};a.ObjectLayout=class extends O{transform(e,t){return re(e)}},a.ObjectLayout=Be([w({name:"object"})],a.ObjectLayout);var ne=Object.defineProperty,ze=Object.getOwnPropertyDescriptor,Ue=(r,e,t)=>e in r?ne(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Je=(r,e,t,n)=>{for(var s=n>1?void 0:n?ze(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&ne(e,t,s),s},se=(r,e,t)=>(Ue(r,typeof e!="symbol"?e+"":e,t),t),ae=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)},z=(r,e,t)=>(ae(r,e,"read from private field"),t?t.call(r):e.get(r)),U=(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)},J=(r,e,t,n)=>(ae(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),N,F,$;const We=/%(-?[0-9]+)?(\.?[0-9]+)?([[\]cdhmnpjrzxy%])(\{([^}]+)\})?|([^%]+)/,Ze="%r %p %c - %m%n";a.PatternLayout=class extends O{constructor(e){super(e),U(this,N,void 0),U(this,F,void 0),U(this,$,void 0),se(this,"replaceToken",(t,n,s)=>z(this,N)[t](n,s)),J(this,$,e&&e.pattern||Ze),J(this,F,e&&e.tokens),J(this,N,new a.PatternLayout.LayoutReplacer(z(this,F),this.config.timezoneOffset).build())}transform(e,t){let n="",s,i=z(this,$);for(;(s=We.exec(i))!==null;){const o=s[1],S=s[2],v=s[3],p=s[5],f=s[6];if(f)n+=f.toString();else{const y=this.replaceToken(v,e,p);n+=we(y,S,o)}i=i.substr(s.index+s[0].length)}return n}},N=new WeakMap,F=new WeakMap,$=new WeakMap,se(a.PatternLayout,"LayoutReplacer"),a.PatternLayout=Je([w({name:"pattern"})],a.PatternLayout);class ie{constructor(){h(this,"_appenders",new Map);h(this,"_lvls",new Map)}get size(){return this._appenders.size}has(e){return this._appenders.has(e)}get(e){return this._appenders.get(e)}set(e,t){var S;const n=typeof t.type=="string"?t.type:(S=t.type)==null?void 0:S.$name,s={level:["debug","info","trace","error","warn","fatal"],...t,type:n,options:t.options||{}};if(!D.has(s.type)){const v=new Error(`Appender ${s.type} doesn't exists. Check your configuration:
(function(a,u){typeof exports=="object"&&typeof module<"u"?u(exports):typeof define=="function"&&define.amd?define(["exports"],u):(a=typeof globalThis<"u"?globalThis:a||self,u(a["@tsed/logger"]={}))})(this,function(a){"use strict";var Ge=Object.defineProperty;var Xe=(a,u,d)=>u in a?Ge(a,u,{enumerable:!0,configurable:!0,writable:!0,value:d}):a[u]=d;var h=(a,u,d)=>(Xe(a,typeof u!="symbol"?u+"":u,d),d),_e=(a,u,d)=>{if(!u.has(a))throw TypeError("Cannot "+d)};var we=(a,u,d)=>(_e(a,u,"read from private field"),d?d.call(a):u.get(a)),Te=(a,u,d)=>{if(u.has(a))throw TypeError("Cannot add the same private member more than once");u instanceof WeakSet?u.add(a):u.set(a,d)},Q=(a,u,d,M)=>(_e(a,u,"write to private field"),M?M.call(a,d):u.set(a,d),d);var A;const u=new Map;class d{static get(e,t){typeof e!="string"&&(e=e.$name),u.has(e)||(e="colored",console.warn(e+" layout doesn't exists"));const n=u.get(e);return new n.provide(t)}}class M{constructor(e){Te(this,A,void 0);this.config=e,this.configure(e)}get appenderOptions(){return this.__proto__.constructor.$appenderOptions}configure(e){var t;return Object.assign(this.config,e),Q(this,A,d.get(((t=this.appenderOptions)==null?void 0:t.defaultLayout)||"colored",this.config)),this.config.layout&&Q(this,A,d.get(this.config.layout.type,this.config.layout)),this}layout(...e){return we(this,A).transform(...e)}}A=new WeakMap;const N=new Map;function k(r){return e=>{e.$appenderOptions=r,e.$name=r.name,N.set(r.name,{provide:e})}}var Se=Object.defineProperty,be=Object.getOwnPropertyDescriptor,Le=(r,e,t,n)=>{for(var s=n>1?void 0:n?be(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Se(e,t,s),s};a.ConsoleAppender=class extends M{constructor(){super(...arguments);h(this,"log",console.log.bind(console))}write(t){this.log(this.layout(t,this.config.timezoneOffset))}},a.ConsoleAppender=Le([k({name:"console"})],a.ConsoleAppender);class ee extends Map{toJSON(){return[...this.entries()].reduce((e,[t,n])=>({...e,[t]:n}),{})}}class te{constructor(e,t,n,s){h(this,"_startTime",new Date);this.categoryName=e,this.level=t,this.data=n,this.context=s}get startTime(){return this.data&&this.data[0]&&this.data[0].time?this.data[0].time:this._startTime}get formatedLevel(){return this.formattedLevel}get formattedLevel(){return(this.level.toString()+" ").slice(0,5)}get cluster(){return{}}get pid(){return this.context.get("pid")}isMessage(){return this.data.length&&typeof this.data[0]!="object"}getData(){return this.isMessage()?{}:this.data[0]}getMessage(){return this.isMessage()?this.data:void 0}}class g{constructor(e,t){this.level=e,this.levelStr=t,this.level=e,this.levelStr=t}static getLevel(e,t){if(e instanceof g)return e;if(typeof e=="string"){const n=e.toUpperCase();return re[n]||t}return this.getLevel(e.toString())}toString(){return this.levelStr}isLessThanOrEqualTo(e){return typeof e=="string"&&(e=g.getLevel(e)),this.level<=e.level}isGreaterThanOrEqualTo(e){return typeof e=="string"&&(e=g.getLevel(e)),this.level>=e.level}isEqualTo(e){return typeof e=="string"&&(e=g.getLevel(e)),this.level===e.level}}const re={ALL:new g(Number.MIN_VALUE,"ALL"),TRACE:new g(5e3,"TRACE"),DEBUG:new g(1e4,"DEBUG"),INFO:new g(2e4,"INFO"),WARN:new g(3e4,"WARN"),ERROR:new g(4e4,"ERROR"),FATAL:new g(5e4,"FATAL"),MARK:new g(9007199254740992,"MARK"),OFF:new g(Number.MAX_VALUE,"OFF")};function b(){return re}class O{constructor(e){this.config=e}}var ne={exports:{}};(function(r){function e(p,f){for(var y=p.toString();y.length<f;)y="0"+y;return y}function t(p){return e(p,2)}function n(p){var f=Math.abs(p),y=String(Math.floor(f/60)),m=String(f%60);return y=("0"+y).slice(-2),m=("0"+m).slice(-2),p===0?"Z":(p<0?"+":"-")+y+":"+m}function s(p,f){typeof p!="string"&&(f=p,p=r.exports.ISO8601_FORMAT),f||(f=r.exports.now());var y=t(f.getDate()),m=t(f.getMonth()+1),D=t(f.getFullYear()),R=t(D.substring(2,4)),G=p.indexOf("yyyy")>-1?D:R,I=t(f.getHours()),X=t(f.getMinutes()),z=t(f.getSeconds()),B=e(f.getMilliseconds(),3),c=n(f.getTimezoneOffset()),l=p.replace(/dd/g,y).replace(/MM/g,m).replace(/y{1,4}/g,G).replace(/hh/g,I).replace(/mm/g,X).replace(/ss/g,z).replace(/SSS/g,B).replace(/O/g,c);return l}function i(p,f,y,m){p["set"+(m?"":"UTC")+f](y)}function o(p,f,y){var m=p.indexOf("O")<0,D=!1,R=[{pattern:/y{1,4}/,regexp:"\\d{1,4}",fn:function(c,l){i(c,"FullYear",l,m)}},{pattern:/MM/,regexp:"\\d{1,2}",fn:function(c,l){i(c,"Month",l-1,m),c.getMonth()!==l-1&&(D=!0)}},{pattern:/dd/,regexp:"\\d{1,2}",fn:function(c,l){D&&i(c,"Month",c.getMonth()-1,m),i(c,"Date",l,m)}},{pattern:/hh/,regexp:"\\d{1,2}",fn:function(c,l){i(c,"Hours",l,m)}},{pattern:/mm/,regexp:"\\d\\d",fn:function(c,l){i(c,"Minutes",l,m)}},{pattern:/ss/,regexp:"\\d\\d",fn:function(c,l){i(c,"Seconds",l,m)}},{pattern:/SSS/,regexp:"\\d\\d\\d",fn:function(c,l){i(c,"Milliseconds",l,m)}},{pattern:/O/,regexp:"[+-]\\d{1,2}:?\\d{2}?|Z",fn:function(c,l){l==="Z"?l=0:l=l.replace(":","");var Oe=Math.abs(l),Ve=(l>0?-1:1)*(Oe%100+Math.floor(Oe/100)*60);c.setUTCMinutes(c.getUTCMinutes()+Ve)}}],G=R.reduce(function(c,l){return l.pattern.test(c.regexp)?(l.index=c.regexp.match(l.pattern).index,c.regexp=c.regexp.replace(l.pattern,"("+l.regexp+")")):l.index=-1,c},{regexp:p,index:[]}),I=R.filter(function(c){return c.index>-1});I.sort(function(c,l){return c.index-l.index});var X=new RegExp(G.regexp),z=X.exec(f);if(z){var B=y||r.exports.now();return I.forEach(function(c,l){c.fn(B,z[l+1])}),B}throw new Error("String '"+f+"' could not be parsed as '"+p+"'")}function S(p,f,y){if(!p)throw new Error("pattern must be supplied");return o(p,f,y)}function v(){return new Date}r.exports=s,r.exports.asString=s,r.exports.parse=S,r.exports.now=v,r.exports.ISO8601_FORMAT="yyyy-MM-ddThh:mm:ss.SSS",r.exports.ISO8601_WITH_TZ_OFFSET_FORMAT="yyyy-MM-ddThh:mm:ss.SSSO",r.exports.DATETIME_FORMAT="dd MM yyyy hh:mm:ss.SSS",r.exports.ABSOLUTETIME_FORMAT="hh:mm:ss.SSS"})(ne);var _=ne.exports;const se={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[90,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};function U(r){return r?`\x1B[${se[r][0]}m`:""}function x(r){return r?`\x1B[${se[r][1]}m`:""}function ae(r,e){return U(e)+r+x(e)}function ie(r){return r.replace(/\[\d+m|\\u\d+b/gi,"")}function oe(r,e){let t;return r?(t=parseInt(r.substr(1),10),e.substring(0,t)):e}function le(r,e){let t;if(r)if(r.charAt(0)==="-")for(t=parseInt(r.substr(1),10);e.length<t;)e+=" ";else for(t=parseInt(r,10);e.length<t;)e=` ${e}`;return e}function ce(r,e,t){let n=r;return n=oe(e,n),n=le(t,n),n}const L={format(r,...e){return""}};function J(r,e,t){return ae(L.format("[%s] [%s] [%s] - ",_.asString(r.startTime,t),r.formattedLevel,r.categoryName),e)}function w(r){return e=>{e.$name=r.name,u.set(r.name,{provide:e})}}var Ae=Object.defineProperty,Me=Object.getOwnPropertyDescriptor,Ee=(r,e,t,n)=>{for(var s=n>1?void 0:n?Me(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Ae(e,t,s),s};a.BasicLayout=class extends O{transform(e,t){return J(e,void 0,t)+L.format(...[].concat(e.data))}},a.BasicLayout=Ee([w({name:"basic"})],a.BasicLayout);var E=(r=>(r.ALL="grey",r.INFO="green",r.DEBUG="cyan",r.WARN="yellow",r.TRACE="blue",r.ERROR="red",r.FATAL="magenta",r.OFF="grey",r))(E||{}),Pe=Object.defineProperty,De=Object.getOwnPropertyDescriptor,Ne=(r,e,t,n)=>{for(var s=n>1?void 0:n?De(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Pe(e,t,s),s};a.ColoredLayout=class extends O{transform(e,t){const n=e.level.toString(),s=E[n];return J(e,s,t)+L.format(...[].concat(e.data))}},a.ColoredLayout=Ne([w({name:"colored"})],a.ColoredLayout);var je=Object.defineProperty,Ce=Object.getOwnPropertyDescriptor,Fe=(r,e,t,n)=>{for(var s=n>1?void 0:n?Ce(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&je(e,t,s),s};a.DummyLayout=class extends O{transform(e,t){return e.data[0]}},a.DummyLayout=Fe([w({name:"dummy"})],a.DummyLayout);function W(r){const e={...r.context.toJSON(),startTime:r.startTime,categoryName:r.categoryName,level:r.level.toString()};return e.data=r.data.reduce((t,n)=>typeof n=="object"?(Object.assign(e,n),n.data?[].concat(t,n.data):t):[...t,ie(L.format(n))],[]),e}var $e=Object.defineProperty,Re=Object.getOwnPropertyDescriptor,Ie=(r,e,t,n)=>{for(var s=n>1?void 0:n?Re(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&$e(e,t,s),s};a.JsonLayout=class extends O{transform(e,t){const n=W(e);return JSON.stringify(n)+(this.config.separator||"")}},a.JsonLayout=Ie([w({name:"json"})],a.JsonLayout);var ze=Object.defineProperty,Be=Object.getOwnPropertyDescriptor,Ue=(r,e,t,n)=>{for(var s=n>1?void 0:n?Be(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&ze(e,t,s),s};a.MessagePassThroughLayout=class extends O{transform(e,t){return L.format(...[].concat(e.data))}},a.MessagePassThroughLayout=Ue([w({name:"messagePassThrough"})],a.MessagePassThroughLayout);var xe=Object.defineProperty,Je=Object.getOwnPropertyDescriptor,We=(r,e,t,n)=>{for(var s=n>1?void 0:n?Je(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&xe(e,t,s),s};a.ObjectLayout=class extends O{transform(e,t){return W(e)}},a.ObjectLayout=We([w({name:"object"})],a.ObjectLayout);var ue=Object.defineProperty,Ze=Object.getOwnPropertyDescriptor,He=(r,e,t)=>e in r?ue(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ye=(r,e,t,n)=>{for(var s=n>1?void 0:n?Ze(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&ue(e,t,s),s},fe=(r,e,t)=>(He(r,typeof e!="symbol"?e+"":e,t),t),he=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)},Z=(r,e,t)=>(he(r,e,"read from private field"),t?t.call(r):e.get(r)),H=(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)},Y=(r,e,t,n)=>(he(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),j,C,F;const qe=/%(-?[0-9]+)?(\.?[0-9]+)?([[\]cdhmnpjrzxy%])(\{([^}]+)\})?|([^%]+)/,Ke="%r %p %c - %m%n";a.PatternLayout=class extends O{constructor(e){super(e),H(this,j,void 0),H(this,C,void 0),H(this,F,void 0),fe(this,"replaceToken",(t,n,s)=>Z(this,j)[t](n,s)),Y(this,F,e&&e.pattern||Ke),Y(this,C,e&&e.tokens),Y(this,j,new a.PatternLayout.LayoutReplacer(Z(this,C),this.config.timezoneOffset).build())}transform(e,t){let n="",s,i=Z(this,F);for(;(s=qe.exec(i))!==null;){const o=s[1],S=s[2],v=s[3],p=s[5],f=s[6];if(f)n+=f.toString();else{const y=this.replaceToken(v,e,p);n+=ce(y,S,o)}i=i.substr(s.index+s[0].length)}return n}},j=new WeakMap,C=new WeakMap,F=new WeakMap,fe(a.PatternLayout,"LayoutReplacer"),a.PatternLayout=Ye([w({name:"pattern"})],a.PatternLayout);class pe{constructor(){h(this,"_appenders",new Map);h(this,"_lvls",new Map)}get size(){return this._appenders.size}has(e){return this._appenders.has(e)}get(e){return this._appenders.get(e)}set(e,t){var S;const n=typeof t.type=="string"?t.type:(S=t.type)==null?void 0:S.$name,s={level:["debug","info","trace","error","warn","fatal"],...t,type:n,options:t.options||{}};if(!N.has(s.type)){const v=new Error(`Appender ${s.type} doesn't exists. Check your configuration:
${JSON.stringify(s)}
`);throw v.name="UNKNOW_APPENDER",v}const i=D.get(s.type).provide,o=new i(s);return"build"in o&&o.build(),this._appenders.set(e,{name:e,instance:o,config:s}),this._lvls.clear(),this}delete(e){let t=this._appenders.delete(e);return t&&this._lvls.clear(),t}clear(){this._appenders.clear(),this._lvls.clear()}forEach(e,t){this._appenders.forEach(e,t)}toArray(){const e=[];return this._appenders.forEach(t=>e.push(t)),e}byLogLevel(e){const t=e.toString();if(this._lvls.has(t))return this._lvls.get(t);const n=this.toArray().filter(s=>s.config.levels?s.config.levels.find(i=>i.toUpperCase()===e.toString()):!0).map(s=>s.instance);return this._lvls.set(e.toString(),n),n}}function j(r,e=" "){let t="";for(;r--;)t+=e;return t}function He(r,e){let t="┌",n=Object.keys(r);return n.forEach((s,i)=>{i!==0&&i!==n.length&&(t+="┬"),t+=j(r[s]+2*e.padding,"─")}),t+="┐",t}function Ye(r,e){let t="└",n=Object.keys(r);return n.forEach((s,i)=>{i!==0&&i!==n.length&&(t+="┴"),t+=j(r[s]+2*e.padding,"─")}),t+="┘",t}function qe(r,e,t="─"){let n="";return Object.keys(r).forEach(s=>{n+="│",n+=j(r[s]+2*e.padding,t)}),n+="│",n}function oe(r,e,t){let n="";return Object.keys(e).forEach(s=>{n+="│ ",n+=r[s],n+=j(e[s]+2*(t.padding-1)-r[s].length," "),n+=" "}),n+="│",n}function Ke(r,e={}){e.padding=e.padding||1,e.header===void 0&&(e.header={},Object.keys(r[0]).forEach(s=>e.header[s]=s));const t={};Object.keys(e.header).forEach(s=>t[s]=e.header[s].length),r.forEach(s=>{Object.keys(t).forEach(i=>t[i]=Math.max((""+s[i]).length,t[i]))});let n="";return n+=He(t,e)+`
`,n+=oe(e.header,t,e)+`
`,r.forEach(s=>{n+=qe(t,e)+`
`,n+=oe(s,t,e)+`
`}),n+=Ye(t,e),n}class C{constructor(e="default"){h(this,"_appenders",new ie);h(this,"_level");h(this,"_context",new K);this._name=e,this.level="all"}get appenders(){return this._appenders}get level(){return this._level.toString()}set level(e){this._level=g.getLevel(e,"debug")}get context(){return this._context}get name(){return this._name}set name(e){this._name=e}static createStack(){return new Error().stack.replace(`Error
`);throw v.name="UNKNOW_APPENDER",v}const i=N.get(s.type).provide,o=new i(s);return"build"in o&&o.build(),this._appenders.set(e,{name:e,instance:o,config:s}),this._lvls.clear(),this}delete(e){let t=this._appenders.delete(e);return t&&this._lvls.clear(),t}clear(){this._appenders.clear(),this._lvls.clear()}forEach(e,t){this._appenders.forEach(e,t)}toArray(){const e=[];return this._appenders.forEach(t=>e.push(t)),e}byLogLevel(e){const t=e.toString();if(this._lvls.has(t))return this._lvls.get(t);const n=this.toArray().filter(s=>s.config.levels?s.config.levels.find(i=>i.toUpperCase()===e.toString()):!0).map(s=>s.instance);return this._lvls.set(e.toString(),n),n}}function P(r,e=" "){let t="";for(;r--;)t+=e;return t}function de(r,e){let t="┌",n=Object.keys(r);return n.forEach((s,i)=>{i!==0&&i!==n.length&&(t+="┬"),t+=P(r[s]+2*e.padding,"─")}),t+="┐",t}function ve(r,e){let t="└",n=Object.keys(r);return n.forEach((s,i)=>{i!==0&&i!==n.length&&(t+="┴"),t+=P(r[s]+2*e.padding,"─")}),t+="┘",t}function ye(r,e,t="─"){let n="";return Object.keys(r).forEach(s=>{n+="│",n+=P(r[s]+2*e.padding,t)}),n+="│",n}function q(r,e,t){let n="";return Object.keys(e).forEach(s=>{n+="│ ",n+=r[s],n+=P(e[s]+2*(t.padding-1)-r[s].length," "),n+=" "}),n+="│",n}function ge(r,e={}){e.padding=e.padding||1,e.header===void 0&&(e.header={},Object.keys(r[0]).forEach(s=>e.header[s]=s));const t={};Object.keys(e.header).forEach(s=>t[s]=e.header[s].length),r.forEach(s=>{Object.keys(t).forEach(i=>t[i]=Math.max((""+s[i]).length,t[i]))});let n="";return n+=de(t,e)+`
`,n+=q(e.header,t,e)+`
`,r.forEach(s=>{n+=ye(t,e)+`
`,n+=q(s,t,e)+`
`}),n+=ve(t,e),n}class ${constructor(e="default"){h(this,"_appenders",new pe);h(this,"_level");h(this,"_context",new ee);this._name=e,this.level="all"}get appenders(){return this._appenders}get level(){return this._level.toString()}set level(e){this._level=g.getLevel(e,"debug")}get context(){return this._context}get name(){return this._name}set name(e){this._name=e}static createStack(){return new Error().stack.replace(`Error
`,"").split(`
`).filter((t,n)=>n>=2).join(`
`)}isLevelEnabled(e){return this._level.isLessThanOrEqualTo(e)}debug(...e){return this.write(b().DEBUG,e)}info(...e){return this.write(b().INFO,e)}warn(...e){return this.write(b().WARN,e)}error(...e){return this.write(b().ERROR,e)}fatal(...e){return this.write(b().FATAL,e)}trace(...e){const t=`
`+C.createStack()+`
`;return e.push(t),this.write(b().TRACE,e)}start(){return this.level="ALL",this}stop(){return this.level="OFF",this}shutdown(){this.stop();const e=this.appenders.toArray().filter(t=>!!t.instance.shutdown).map(t=>t.instance.shutdown());return Promise.all(e)}drawTable(e,t={}){return Ke(e,t)}printTable(e,t={}){return this.info(`
${this.drawTable(e,t)}`),this}write(e,t){if(!this.isLevelEnabled(e))return this;const n=new V(this._name,e,t,this._context);return this.appenders.byLogLevel(e).forEach(s=>{s.write(n)}),this}}function ce(r,...e){const t=/(%?)(%([ojds]))/g;if(typeof r=="object"&&(r=JSON.stringify(r,null,2)),e.length){const n=(s,i,o,S)=>{let v=e.shift();switch(S){case"o":if(Array.isArray(v)){v=JSON.stringify(v);break}case"s":v=""+v;break;case"d":v=Number(v);break;case"j":v=JSON.stringify(v);break}return i?(e.unshift(v),s):v};r=String(r).replace(t,n)}return e.length&&(r+=" "+e.join(" ")),r=String(r).replace(/%{2,2}/g,"%"),""+r}const T=class T{constructor(e,t){h(this,"categoryName",(e,t)=>{let n=e.categoryName;if(t){const s=parseInt(t,10),i=n.split(".");s<i.length&&(n=i.slice(i.length-s).join("."))}return n});h(this,"formatAsDate",(e,t)=>{let n=_.ISO8601_FORMAT;return t&&(n=t,n==="ISO8601"?n=_.ISO8601_FORMAT:n==="ISO8601_WITH_TZ_OFFSET"?n=_.ISO8601_WITH_TZ_OFFSET_FORMAT:n==="ABSOLUTE"?n=_.ABSOLUTETIME_FORMAT:n==="DATE"&&(n=_.DATETIME_FORMAT)),_.asString(n,e.startTime,this.timezoneOffset)});h(this,"hostname",()=>T.HOSTNAME||"");h(this,"formatMessage",e=>T.formatter(...e.data));h(this,"formatJson",e=>JSON.stringify(e.data));h(this,"endOfLine",()=>T.EOL);h(this,"logLevel",e=>e.level.toString());h(this,"startTime",e=>_.asString("hh:mm:ss",e.startTime,this.timezoneOffset));h(this,"startColour",e=>{const t=e.level.toString();return k(E[t])});h(this,"endColour",e=>{const t=e.level.toString();return ee(E[t])});h(this,"percent",()=>"%");h(this,"pid",e=>e&&e.pid?e.pid.toString():"");h(this,"clusterInfo",(e,t)=>e.cluster&&t?t.replace("%m",e.cluster.master).replace("%w",e.cluster.worker).replace("%i",e.cluster.workerId):e.cluster?`${e.cluster.worker}@${e.cluster.master}`:this.pid());h(this,"userDefined",(e,t)=>typeof this.tokens[t]<"u"?typeof this.tokens[t]=="function"?this.tokens[t](e):this.tokens[t]:null);this.tokens=e,this.timezoneOffset=t}build(){return{c:this.categoryName,d:this.formatAsDate,h:this.hostname,m:this.formatMessage,j:this.formatJson,n:this.endOfLine,p:this.logLevel,r:this.startTime,"[":this.startColour,"]":this.endColour,y:this.clusterInfo,z:this.pid,"%":this.percent,x:this.userDefined}}};h(T,"EOL",`
`),h(T,"HOSTNAME",""),h(T,"formatter",ce);let W=T;const le=new C("default");le.appenders.set("console",{type:"console",levels:["info","debug","trace","fatal","error","warn"]}),a.PatternLayout.LayoutReplacer=W,L.format=ce,a.$log=le,a.Appender=q,a.AppendersRegistry=D,a.BaseAppender=A,a.BaseLayout=O,a.LOG_COLORS=E,a.Layout=w,a.Layouts=d,a.LayoutsRegistry=u,a.LogContext=K,a.LogEvent=V,a.LogLevel=g,a.Logger=C,a.LoggerAppenders=ie,a.levels=b,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})});
`+$.createStack()+`
`;return e.push(t),this.write(b().TRACE,e)}start(){return this.level="ALL",this}stop(){return this.level="OFF",this}shutdown(){this.stop();const e=this.appenders.toArray().filter(t=>!!t.instance.shutdown).map(t=>t.instance.shutdown());return Promise.all(e)}drawTable(e,t={}){return ge(e,t)}printTable(e,t={}){return this.info(`
${this.drawTable(e,t)}`),this}write(e,t){if(!this.isLevelEnabled(e))return this;const n=new te(this._name,e,t,this._context);return this.appenders.byLogLevel(e).forEach(s=>{s.write(n)}),this}}function K(r,...e){const t=/(%?)(%([ojds]))/g;if(typeof r=="object"&&(r=JSON.stringify(r,null,2)),e.length){const n=(s,i,o,S)=>{let v=e.shift();switch(S){case"o":if(Array.isArray(v)){v=JSON.stringify(v);break}case"s":v=""+v;break;case"d":v=Number(v);break;case"j":v=JSON.stringify(v);break}return i?(e.unshift(v),s):v};r=String(r).replace(t,n)}return e.length&&(r+=" "+e.join(" ")),r=String(r).replace(/%{2,2}/g,"%"),""+r}const T=class T{constructor(e,t){h(this,"categoryName",(e,t)=>{let n=e.categoryName;if(t){const s=parseInt(t,10),i=n.split(".");s<i.length&&(n=i.slice(i.length-s).join("."))}return n});h(this,"formatAsDate",(e,t)=>{let n=_.ISO8601_FORMAT;return t&&(n=t,n==="ISO8601"?n=_.ISO8601_FORMAT:n==="ISO8601_WITH_TZ_OFFSET"?n=_.ISO8601_WITH_TZ_OFFSET_FORMAT:n==="ABSOLUTE"?n=_.ABSOLUTETIME_FORMAT:n==="DATE"&&(n=_.DATETIME_FORMAT)),_.asString(n,e.startTime,this.timezoneOffset)});h(this,"hostname",()=>T.HOSTNAME||"");h(this,"formatMessage",e=>T.formatter(...e.data));h(this,"formatJson",e=>JSON.stringify(e.data));h(this,"endOfLine",()=>T.EOL);h(this,"logLevel",e=>e.level.toString());h(this,"startTime",e=>_.asString("hh:mm:ss",e.startTime,this.timezoneOffset));h(this,"startColour",e=>{const t=e.level.toString();return U(E[t])});h(this,"endColour",e=>{const t=e.level.toString();return x(E[t])});h(this,"percent",()=>"%");h(this,"pid",e=>e&&e.pid?e.pid.toString():"");h(this,"clusterInfo",(e,t)=>e.cluster&&t?t.replace("%m",e.cluster.master).replace("%w",e.cluster.worker).replace("%i",e.cluster.workerId):e.cluster?`${e.cluster.worker}@${e.cluster.master}`:this.pid());h(this,"userDefined",(e,t)=>typeof this.tokens[t]<"u"?typeof this.tokens[t]=="function"?this.tokens[t](e):this.tokens[t]:null);this.tokens=e,this.timezoneOffset=t}build(){return{c:this.categoryName,d:this.formatAsDate,h:this.hostname,m:this.formatMessage,j:this.formatJson,n:this.endOfLine,p:this.logLevel,r:this.startTime,"[":this.startColour,"]":this.endColour,y:this.clusterInfo,z:this.pid,"%":this.percent,x:this.userDefined}}};h(T,"EOL",`
`),h(T,"HOSTNAME",""),h(T,"formatter",K);let V=T;const me=new $("default");me.appenders.set("console",{type:"console",levels:["info","debug","trace","fatal","error","warn"]}),a.PatternLayout.LayoutReplacer=V,L.format=K,a.$log=me,a.Appender=k,a.AppendersRegistry=N,a.BaseAppender=M,a.BaseLayout=O,a.LOG_COLORS=E,a.Layout=w,a.Layouts=d,a.LayoutsRegistry=u,a.LogContext=ee,a.LogEvent=te,a.LogLevel=g,a.Logger=$,a.LoggerAppenders=pe,a.StringUtils=L,a.buildEndLine=ve,a.buildLine=ye,a.buildLineData=q,a.buildStartLine=de,a.charRepeater=P,a.colorize=ae,a.colorizeEnd=x,a.colorizeStart=U,a.drawTable=ge,a.format=K,a.levels=b,a.logEventToObject=W,a.pad=le,a.removeColors=ie,a.timestampLevelAndCategory=J,a.truncate=oe,a.truncateAndPad=ce,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})});

@@ -5,1 +5,2 @@ /**

export * from "./exports";
export * from "./utils/format";

@@ -26,3 +26,8 @@ /**

export * from "./layouts/registries/LayoutsRegistry";
export * from "./layouts/utils/StringUtils";
export * from "./layouts/utils/colorizeUtils";
export * from "./layouts/utils/logEventToObject";
export * from "./layouts/utils/timestampLevelAndCategory";
export * from "./logger/class/Logger";
export * from "./logger/class/LoggerAppenders";
export * from "./logger/utils/tableUtils";

@@ -8,2 +8,3 @@ "use strict";

tslib_1.__exportStar(require("./exports"), exports);
tslib_1.__exportStar(require("./utils/format"), exports);
//# sourceMappingURL=index.js.map

@@ -29,4 +29,9 @@ "use strict";

tslib_1.__exportStar(require("./layouts/registries/LayoutsRegistry"), exports);
tslib_1.__exportStar(require("./layouts/utils/StringUtils"), exports);
tslib_1.__exportStar(require("./layouts/utils/colorizeUtils"), exports);
tslib_1.__exportStar(require("./layouts/utils/logEventToObject"), exports);
tslib_1.__exportStar(require("./layouts/utils/timestampLevelAndCategory"), exports);
tslib_1.__exportStar(require("./logger/class/Logger"), exports);
tslib_1.__exportStar(require("./logger/class/LoggerAppenders"), exports);
tslib_1.__exportStar(require("./logger/utils/tableUtils"), exports);
//# sourceMappingURL=index.js.map

@@ -5,2 +5,3 @@ /**

export * from "./exports.js";
export * from "./utils/format.js";
//# sourceMappingURL=index.js.map

@@ -26,4 +26,9 @@ /**

export * from "./layouts/registries/LayoutsRegistry.js";
export * from "./layouts/utils/StringUtils.js";
export * from "./layouts/utils/colorizeUtils.js";
export * from "./layouts/utils/logEventToObject.js";
export * from "./layouts/utils/timestampLevelAndCategory.js";
export * from "./logger/class/Logger.js";
export * from "./logger/class/LoggerAppenders.js";
export * from "./logger/utils/tableUtils.js";
//# sourceMappingURL=index.js.map

@@ -5,1 +5,2 @@ /**

export * from "./exports";
export * from "./utils/format";

@@ -26,3 +26,8 @@ /**

export * from "./layouts/registries/LayoutsRegistry";
export * from "./layouts/utils/StringUtils";
export * from "./layouts/utils/colorizeUtils";
export * from "./layouts/utils/logEventToObject";
export * from "./layouts/utils/timestampLevelAndCategory";
export * from "./logger/class/Logger";
export * from "./logger/class/LoggerAppenders";
export * from "./logger/utils/tableUtils";
{
"name": "@tsed/logger",
"version": "6.7.7",
"version": "6.7.8",
"description": "A multi channel logger written in TypeScript.",

@@ -5,0 +5,0 @@ "author": "Romain Lenzotti",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc