Updated logger
This commit is contained in:
		| @@ -1,6 +1,6 @@ | |||||||
| { | { | ||||||
| 	"name": "@ztimson/js-utilities", | 	"name": "@ztimson/js-utilities", | ||||||
| 	"version": "0.3.4", | 	"version": "0.3.5", | ||||||
| 	"description": "JavaScript Utility library", | 	"description": "JavaScript Utility library", | ||||||
| 	"author": "Zak Timson", | 	"author": "Zak Timson", | ||||||
| 	"license": "MIT", | 	"license": "MIT", | ||||||
|   | |||||||
| @@ -56,7 +56,7 @@ export type LoggerEvents = TypedEvents & { | |||||||
| }; | }; | ||||||
|  |  | ||||||
| export class Logger extends TypedEmitter<LoggerEvents> { | export class Logger extends TypedEmitter<LoggerEvents> { | ||||||
| 	static LOG_LEVEL: LOG_LEVEL = LOG_LEVEL.INFO; | 	static LOG_LEVEL: LOG_LEVEL = LOG_LEVEL.VERBOSE; | ||||||
|  |  | ||||||
| 	constructor(public readonly namespace?: string) { | 	constructor(public readonly namespace?: string) { | ||||||
| 		super(); | 		super(); | ||||||
| @@ -78,7 +78,7 @@ export class Logger extends TypedEmitter<LoggerEvents> { | |||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	debug(...args: string[]) { | 	debug(...args: string[]) { | ||||||
| 		if(LOG_LEVEL.VERBOSE >= Logger.LOG_LEVEL) { | 		if(Logger.LOG_LEVEL >= LOG_LEVEL.VERBOSE) { | ||||||
| 			const str = this.format(...args); | 			const str = this.format(...args); | ||||||
| 			Logger.emit(LOG_LEVEL.VERBOSE, str); | 			Logger.emit(LOG_LEVEL.VERBOSE, str); | ||||||
| 			console.debug(CliForeground.LIGHT_GREY + str + CliEffects.CLEAR); | 			console.debug(CliForeground.LIGHT_GREY + str + CliEffects.CLEAR); | ||||||
| @@ -86,7 +86,7 @@ export class Logger extends TypedEmitter<LoggerEvents> { | |||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	error(...args: string[]) { | 	error(...args: string[]) { | ||||||
| 		if(LOG_LEVEL.ERROR >= Logger.LOG_LEVEL) { | 		if(Logger.LOG_LEVEL >= LOG_LEVEL.ERROR) { | ||||||
| 			const str = this.format(...args); | 			const str = this.format(...args); | ||||||
| 			Logger.emit(LOG_LEVEL.ERROR, str); | 			Logger.emit(LOG_LEVEL.ERROR, str); | ||||||
| 			console.error(CliForeground.RED + str + CliEffects.CLEAR); | 			console.error(CliForeground.RED + str + CliEffects.CLEAR); | ||||||
| @@ -94,7 +94,7 @@ export class Logger extends TypedEmitter<LoggerEvents> { | |||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	info(...args: string[]) { | 	info(...args: string[]) { | ||||||
| 		if(LOG_LEVEL.INFO >= Logger.LOG_LEVEL) { | 		if(Logger.LOG_LEVEL >= LOG_LEVEL.INFO) { | ||||||
| 			const str = this.format(...args); | 			const str = this.format(...args); | ||||||
| 			Logger.emit(LOG_LEVEL.INFO, str); | 			Logger.emit(LOG_LEVEL.INFO, str); | ||||||
| 			console.info(CliForeground.BLUE + str + CliEffects.CLEAR); | 			console.info(CliForeground.BLUE + str + CliEffects.CLEAR); | ||||||
| @@ -102,7 +102,7 @@ export class Logger extends TypedEmitter<LoggerEvents> { | |||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	log(...args: string[]) { | 	log(...args: string[]) { | ||||||
| 		if(LOG_LEVEL.INFO >= Logger.LOG_LEVEL) { | 		if(Logger.LOG_LEVEL >= LOG_LEVEL.INFO) { | ||||||
| 			const str = this.format(...args); | 			const str = this.format(...args); | ||||||
| 			Logger.emit(LOG_LEVEL.INFO, str); | 			Logger.emit(LOG_LEVEL.INFO, str); | ||||||
| 			console.log(CliEffects.CLEAR + str); | 			console.log(CliEffects.CLEAR + str); | ||||||
| @@ -110,7 +110,7 @@ export class Logger extends TypedEmitter<LoggerEvents> { | |||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	warn(...args: string[]) { | 	warn(...args: string[]) { | ||||||
| 		if(LOG_LEVEL.WARN >= Logger.LOG_LEVEL) { | 		if(Logger.LOG_LEVEL >= LOG_LEVEL.WARN) { | ||||||
| 			const str = this.format(...args); | 			const str = this.format(...args); | ||||||
| 			Logger.emit(LOG_LEVEL.WARN, str); | 			Logger.emit(LOG_LEVEL.WARN, str); | ||||||
| 			console.warn(CliForeground.YELLOW + str + CliEffects.CLEAR); | 			console.warn(CliForeground.YELLOW + str + CliEffects.CLEAR); | ||||||
|   | |||||||
							
								
								
									
										72
									
								
								src/redis.ts
									
									
									
									
									
								
							
							
						
						
									
										72
									
								
								src/redis.ts
									
									
									
									
									
								
							| @@ -1,72 +0,0 @@ | |||||||
| // import {createClient, RedisClientType} from 'redis'; |  | ||||||
| // import {environment} from '../environments/environment'; |  | ||||||
| // |  | ||||||
| // export type RedisKey = string | string[]; |  | ||||||
| // |  | ||||||
| // export let Redis!: RedisClientType & { |  | ||||||
| // 	// get/set shimmed for JSON |  | ||||||
| // 	jGet: (redisKey: string) => Promise<any>, |  | ||||||
| // 	jSet: (redisKey: string, obj: any, opts?: any) => Promise<void>, |  | ||||||
| // 	// hGet/hSet shimmed for objects |  | ||||||
| // 	oGet: (redisKey: string) => Promise<any>; |  | ||||||
| // 	oSet: (redisKey: string, obj: any) => Promise<void>, |  | ||||||
| // 	// Helpers |  | ||||||
| // 	findKeys: (filter: RedisKey) => Promise<string[]>, |  | ||||||
| // 	forEach: (filter: RedisKey, cb: (key: string) => any) => Promise<void>, |  | ||||||
| // }; |  | ||||||
| // |  | ||||||
| // export async function connectRedis(retry = 3) { |  | ||||||
| // 	Redis = <any>createClient({ |  | ||||||
| // 		url: `redis://host:port` |  | ||||||
| // 	}); |  | ||||||
| // 	if(!Redis && retry > 0) { |  | ||||||
| // 		await connectRedis(retry - 1); |  | ||||||
| // 	} else if(!!Redis) { |  | ||||||
| // 		Redis.jGet = async (redisKey: string) => { |  | ||||||
| // 			const val = await Redis.get(redisKey); |  | ||||||
| // 			return val ? JSON.parse(val) || val : null; |  | ||||||
| // 		}; |  | ||||||
| // 		Redis.jSet = (redisKey: string, obj: any, opts?: any) => { |  | ||||||
| // 			return Redis.set(redisKey, JSON.stringify(obj), opts).then(() => {}); |  | ||||||
| // 		}; |  | ||||||
| // 		Redis.oGet = async (redisKey: string) => { |  | ||||||
| // 			if(!(await Redis.hLen(redisKey))) return null; |  | ||||||
| // 			const val = await Redis.hGetAll(redisKey); |  | ||||||
| // 			Object.entries(val).forEach(([key, v]) => val[key] = JSON.parse(v)); |  | ||||||
| // 			return val; |  | ||||||
| // 		}; |  | ||||||
| // 		Redis.oSet = (redisKey: string, obj: any) => { |  | ||||||
| // 			const r = Redis.multi(); |  | ||||||
| // 			Object.entries(obj).forEach(([key, val]) => { |  | ||||||
| // 				r.hSet(redisKey, key, JSON.stringify(val)); |  | ||||||
| // 			}); |  | ||||||
| // 			return r.exec().then(() => {}); |  | ||||||
| // 		}; |  | ||||||
| // 		Redis.findKeys = async (filter: RedisKey): Promise<string[]> => { |  | ||||||
| // 			const found: string[] = []; |  | ||||||
| // 			await Redis.forEach(filter, (key: string) => found.push(key)); |  | ||||||
| // 			return found; |  | ||||||
| // 		} |  | ||||||
| // 		Redis.forEach = async (filter: RedisKey, cb: (key: string) => any): Promise<void> => { |  | ||||||
| // 			for await (const k of Redis.scanIterator({MATCH: createKey(filter)})) { |  | ||||||
| // 				const rtn = cb(k); |  | ||||||
| // 				if(rtn instanceof Promise) await rtn; |  | ||||||
| // 			} |  | ||||||
| // 		} |  | ||||||
| // 		await Redis.connect(); |  | ||||||
| // 	} |  | ||||||
| // } |  | ||||||
| // |  | ||||||
| // export function createKey(...keys: (string | string[])[]) { |  | ||||||
| // 	return keys.flat().map(k => k == null ? '*' : k).join(':'); |  | ||||||
| // } |  | ||||||
| // |  | ||||||
| // export function namespacedKey(namespace: string, key: RedisKey): string { |  | ||||||
| // 	return createKey(namespace, ...(Array.isArray(key) ? key : [key])); |  | ||||||
| // } |  | ||||||
| // |  | ||||||
| // export function nameSpacer(namespace: string) { |  | ||||||
| // 	return (key: RedisKey) => { |  | ||||||
| // 		return namespacedKey(namespace, key); |  | ||||||
| // 	}; |  | ||||||
| // } |  | ||||||
		Reference in New Issue
	
	Block a user