UNPKG

@ts-ioc/logs

Version:

tsioc is AOP, Ioc container, via typescript decorator

3 lines (2 loc) 13 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("tslib"),require("@ts-ioc/core"),require("@ts-ioc/aop")):"function"==typeof define&&define.amd?define(["tslib","@ts-ioc/core","@ts-ioc/aop"],t):(e.logs=e.logs||{},e.logs.umd=e.logs.umd||{},e.logs.umd.js=t(e.tslib,e["@ts-ioc/core"],e["@ts-ioc/aop"]))}(this,function(r,a,i){"use strict";function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function t(e,t){return e(t={exports:{}},t.exports),t.exports}r=r&&r.hasOwnProperty("default")?r.default:r,a=a&&a.hasOwnProperty("default")?a.default:a,i=i&&i.hasOwnProperty("default")?i.default:i;var s=t(function(e,t){var n,o;Object.defineProperty(t,"__esModule",{value:!0}),(n=t.Level||(t.Level={})).log="log",n.trace="trace",n.debug="debug",n.info="info",n.warn="warn",n.error="error",n.fatal="fatal",(o=t.Levels||(t.Levels={}))[o.trace=0]="trace",o[o.debug=1]="debug",o[o.info=2]="info",o[o.warn=3]="warn",o[o.error=4]="error",o[o.fatal=5]="fatal"});e(s);s.Level,s.Levels;var g=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.LoggerManagerToken=new a.InjectToken("DI_ILoggerManager")});e(g);g.LoggerManagerToken;var o=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.ConfigureLoggerManagerToken=new a.InjectToken("DI_IConfigureLoggerManager")});e(o);o.ConfigureLoggerManagerToken;var c=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.LogConfigureToken=new a.InjectToken("DI_LogConfigure")});e(c);c.LogConfigureToken;var u=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){this.container=e,this.setLogConfigure(t)}return Object.defineProperty(e.prototype,"config",{get:function(){return this._config||(this.container.has(c.LogConfigureToken)?this._config=this.container.resolve(c.LogConfigureToken):this._config={adapter:"console"}),this._config},enumerable:!0,configurable:!0}),e.prototype.setLogConfigure=function(e){e&&(a.isClass(e)?this.container.has(c.LogConfigureToken)?this.container.has(e)||(this.container.register(e),this._config=this.container.get(e)):(this.container.register(c.LogConfigureToken,e),this._config=this.container.get(c.LogConfigureToken)):this._config=e,this._logManger=null)},Object.defineProperty(e.prototype,"logManger",{get:function(){if(!this._logManger){var e=this.config||{},t=e.adapter||"console",n=void 0;n=a.isString(t)?new a.Registration(g.LoggerManagerToken,t):t,this._logManger=this.container.get(n),e.config&&this._logManger.configure(e.config)}return this._logManger},enumerable:!0,configurable:!0}),e.prototype.configure=function(e){this.logManger.configure(e)},e.prototype.getLogger=function(e){return this.logManger.getLogger(e)},e.getClassAnnations=function(){return{name:"ConfigureLoggerManger",params:{constructor:["container","config"],setLogConfigure:["config"],configure:["config"],getLogger:["name"]}}},e=r.__decorate([i.NonePointcut(),a.Injectable(o.ConfigureLoggerManagerToken),r.__param(0,a.Inject(a.ContainerToken)),r.__metadata("design:paramtypes",[Object,Object])],e)}();t.ConfigureLoggerManger=n});e(u);u.ConfigureLoggerManger;var l=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){this.logger=new o}return e.prototype.configure=function(e){e&&e.level&&(this.logger.level=e.level)},e.prototype.getLogger=function(e){return this.logger},e.getClassAnnations=function(){return{name:"ConsoleLogManager",params:{constructor:[],configure:["config"],getLogger:["name"]}}},e=r.__decorate([i.NonePointcut(),a.Singleton(),a.Injectable(g.LoggerManagerToken,"console"),r.__metadata("design:paramtypes",[])],e)}();t.ConsoleLogManager=n;var o=function(){function e(){}return e.prototype.log=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];console.log.apply(console,[e].concat(t))},e.prototype.trace=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];this.level&&0!==s.Levels[this.level]||console.debug.apply(console,[e].concat(t))},e.prototype.debug=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];(!this.level||s.Levels[this.level]<=1)&&console.debug.apply(console,[e].concat(t))},e.prototype.info=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];(!this.level||s.Levels[this.level]<=2)&&console.info.apply(console,[e].concat(t))},e.prototype.warn=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];(!this.level||s.Levels[this.level]<=3)&&console.warn.apply(console,[e].concat(t))},e.prototype.error=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];(!this.level||s.Levels[this.level]<=4)&&console.error.apply(console,[e].concat(t))},e.prototype.fatal=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];(!this.level||s.Levels[this.level]<=5)&&console.error.apply(console,[e].concat(t))},e.getClassAnnations=function(){return{name:"ConsoleLog",params:{constructor:[],log:["message","args"],trace:["message","args"],debug:["message","args"],info:["message","args"],warn:["message","args"],error:["message","args"],fatal:["message","args"]}}},e}()});e(l);l.ConsoleLogManager;var f=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.LogFormaterToken=new a.InjectToken("DI_LogFormater");var n=function(){function e(){}return e.prototype.format=function(e,t){var n;switch(e.state){case i.JoinpointState.Before:case i.JoinpointState.Pointcut:n=e.state+' invoke method "'+e.fullName+'"\n with args: '+this.stringifyArgs(e.params,e.args)+".\n";break;case i.JoinpointState.After:n=e.state+' invoke method "'+e.fullName+'".\n';break;case i.JoinpointState.AfterReturning:n='Invoke method "'+e.fullName+'"\n returning value: '+this.stringify(e.returningValue)+".\n";break;case i.JoinpointState.AfterThrowing:n='Invoke method "'+e.fullName+'"\n throw error: '+this.stringify(e.throwing)+".\n";break;default:n=""}return this.joinMessage([n,t])},e.prototype.stringifyArgs=function(e,o){var r=this,t=e.map(function(e,t){var n=o.length>=t?o[t]:null;return' <param name: "'+(e.name||"")+'"> '+r.stringify(n)}).join(",\n");return t?this.joinMessage([" [\n",t,"\n]"],""):"[]"},e.prototype.joinMessage=function(e,t){return void 0===t&&(t="; "),e.filter(function(e){return e}).map(function(e){return a.isString(e)?e:e.toString()}).join(t)},e.prototype.stringifyArray=function(e){var t=this;return e.length?"[\n"+e.map(function(e){return t.stringify(e)}).join(",\n")+"\n].":"[]"},e.prototype.stringify=function(e){var t="";switch(typeof e){case"string":t='"'+e+'"';break;case"boolean":case"number":case"symbol":t=e.toString();break;case"object":t=a.isNull(e)?"null":a.isArray(e)?this.stringifyArray(e):a.isDate(e)?"[Date: "+e.toString()+"]":e instanceof a.Container?"["+a.lang.getClassName(e)+"]":"["+a.lang.getClassName(e)+": "+this.toJsonString(e)+"]";break;default:a.isClass(e)?t="[class: "+a.lang.getClassName(e)+"]":a.isFunction(e)&&(t="[function: "+a.lang.getClassName(e)+"]")}return t},e.prototype.toJsonString=function(e){try{return JSON.stringify(e)}catch(e){return"object"}},e.getClassAnnations=function(){return{name:"LogFormater",params:{constructor:[],format:["joinPoint","message"],stringifyArgs:["params","args"],joinMessage:["messgs","separator"],stringifyArray:["args"],stringify:["target"],toJsonString:["target"]}}},e=r.__decorate([i.NonePointcut(),a.Singleton(t.LogFormaterToken),r.__metadata("design:paramtypes",[])],e)}();t.LogFormater=n});e(f);f.LogFormaterToken,f.LogFormater;var p=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){this.container=e,this.config=t}return Object.defineProperty(e.prototype,"logger",{get:function(){return this._logger||(this._logger=this.logManger.getLogger()),this._logger},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"logManger",{get:function(){return this._logManger||(this._logManger=this.container.resolve(o.ConfigureLoggerManagerToken,{config:this.config})),this._logManger},enumerable:!0,configurable:!0}),e.prototype.processLog=function(n,e,o,r){var a=this;e&&e.length?e.forEach(function(e){var t=!1;e.express&&e.express(n)?t=!0:e.express||(t=!0),t&&a.writeLog(e.logname?a.logManger.getLogger(e.logname):a.logger,n,a.joinMessage(o,e.message),e.level||r)}):this.writeLog(this.logger,n,o,r)},e.prototype.joinMessage=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e.filter(function(e){return e}).map(function(e){return a.isString(e)?e:e.toString()}).join("; ")},e.prototype.writeLog=function(e,t,n,o){var r=this.formatMessage(t,n);if(o)e[o](r);else switch(t.state){case i.JoinpointState.Before:case i.JoinpointState.After:case i.JoinpointState.AfterReturning:e.debug(r);break;case i.JoinpointState.Pointcut:e.info(r);break;case i.JoinpointState.AfterThrowing:e.error(r)}},e.prototype.formatMessage=function(e,t){var n,o=this.logManger.config;return o.format=o.format||f.LogFormaterToken,a.isToken(o.format)?n=this.container.getService(o.format,a.lang.getClass(this)):a.isFunction(o.format)?n={format:o.format}:a.isObject(o.format)&&a.isFunction(o.format.format)&&(n=o.format),n?n.format(e,t):""},e.getClassAnnations=function(){return{name:"LoggerAspect",params:{constructor:["container","config"],processLog:["joinPoint","annotation","message","level"],joinMessage:["messgs"],writeLog:["logger","joinPoint","message","level"],formatMessage:["joinPoint","message"]}}},e=r.__decorate([a.Abstract(),r.__metadata("design:paramtypes",[Object,Object])],e)}();t.LoggerAspect=n});e(p);p.LoggerAspect;var _=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var n=function(t){function e(e){return t.call(this,e)||this}return r.__extends(e,t),e.prototype.logging=function(e,t){this.processLog(e,t)},e.getClassAnnations=function(){return{name:"AnnotationLogerAspect",params:{constructor:["container"],logging:["joinPoint","annotation"]}}},r.__decorate([i.Pointcut("@annotation(Logger)","annotation"),r.__metadata("design:type",Function),r.__metadata("design:paramtypes",[i.Joinpoint,Array]),r.__metadata("design:returntype",void 0)],e.prototype,"logging",null),e=r.__decorate([a.Singleton(),i.Aspect(),r.__param(0,a.Inject(a.ContainerToken)),r.__metadata("design:paramtypes",[Object])],e)}(p.LoggerAspect);t.AnnotationLogerAspect=n});e(_);_.AnnotationLogerAspect;var m=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=a.createClassMethodDecorator("Logger",function(e){e.next({isMetadata:function(e){return a.isClassMetadata(e,"logname")},match:function(e){return a.isString(e)},setMetadata:function(e,t){e.logname=t}}),e.next({match:function(e){return a.isFunction(e)},setMetadata:function(e,t){e.express=t}}),e.next({match:function(e){return a.isString(e)},setMetadata:function(e,t){e.message=t}}),e.next({match:function(e){return a.isString(e)},setMetadata:function(e,t){e.level=s.Level[t]}})})});e(m);m.Logger;var n=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e){this.container=e}return e.prototype.setup=function(){var e=this.container;e.has(i.AopModule)||e.register(i.AopModule),e.get(a.LifeScopeToken).registerDecorator(m.Logger,a.LifeState.onInit,a.CoreActions.bindParameterProviders),e.register(u.ConfigureLoggerManger),e.register(_.AnnotationLogerAspect),e.register(f.LogFormater),e.register(l.ConsoleLogManager)},e.getClassAnnations=function(){return{name:"LogModule",params:{constructor:["container"],setup:[]}}},e=r.__decorate([a.IocExt("setup"),r.__param(0,a.Inject(a.ContainerToken)),r.__metadata("design:paramtypes",[Object])],e)}();t.LogModule=n});e(n);n.LogModule;var d=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0});var n=function(t){function e(e){return t.call(this,e)||this}return r.__extends(e,t),e.prototype.logging=function(e){var t;switch(e.state){case i.JoinpointState.AfterThrowing:t=s.Level.error;break;case i.JoinpointState.AfterReturning:t=s.Level.debug;break;case i.JoinpointState.After:case i.JoinpointState.Before:t=s.Level.trace}this.processLog(e,null,null,t)},e.getClassAnnations=function(){return{name:"DebugLogAspect",params:{constructor:["container"],logging:["joinPoint"]}}},r.__decorate([i.Around("execution(*.*)"),r.__metadata("design:type",Function),r.__metadata("design:paramtypes",[i.Joinpoint]),r.__metadata("design:returntype",void 0)],e.prototype,"logging",null),e=r.__decorate([a.Singleton,i.Aspect,r.__param(0,a.Inject(a.ContainerToken)),r.__metadata("design:paramtypes",[Object])],e)}(p.LoggerAspect);t.DebugLogAspect=n});e(d);d.DebugLogAspect;var h=t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),r.__exportStar(d,t)});return e(h),e(t(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),r.__exportStar(s,t),r.__exportStar(g,t),r.__exportStar(o,t),r.__exportStar(u,t),r.__exportStar(l,t),r.__exportStar(c,t),r.__exportStar(f,t),r.__exportStar(p,t),r.__exportStar(_,t),r.__exportStar(m,t),r.__exportStar(n,t),r.__exportStar(h,t)}))}); //# sourceMappingURL=sourcemaps/logs.umd.min.js.map