Compare commits

...

3 Commits
0.3.5 ... 0.3.7

Author SHA1 Message Date
3deb536323 fixed gravatar default image
All checks were successful
Build / Build NPM Project (push) Successful in 14s
Build / Tag Version (push) Successful in 6s
Build / Publish (push) Successful in 7s
2024-03-20 20:44:53 -04:00
f6b0e63751 Updated gravatar function to supply default image
All checks were successful
Build / Build NPM Project (push) Successful in 20s
Build / Tag Version (push) Successful in 4s
Build / Publish (push) Successful in 8s
2024-03-20 19:26:13 -04:00
d52f9cfdc3 Fixed logger
All checks were successful
Build / Build NPM Project (push) Successful in 32s
Build / Tag Version (push) Successful in 10s
Build / Publish (push) Successful in 29s
2024-03-04 11:11:11 -05:00
4 changed files with 35 additions and 39 deletions

View File

@ -1,6 +1,6 @@
{
"name": "@ztimson/js-utilities",
"version": "0.3.5",
"version": "0.3.7",
"description": "JavaScript Utility library",
"author": "Zak Timson",
"license": "MIT",

View File

@ -4,7 +4,6 @@ export * from './errors';
export * from './logger';
export * from './misc';
export * from './objects';
// export * from './redis';
export * from './string';
export * from './time';
export * from './xhr';

View File

@ -43,9 +43,11 @@ export const CliBackground = {
export enum LOG_LEVEL {
VERBOSE,
INFO,
WARN,
ERROR
DEBUG = 0,
LOG = 1,
INFO = 2,
WARN = 3,
ERROR = 4,
}
export type LoggerEvents = TypedEvents & {
@ -70,7 +72,6 @@ export class Logger extends TypedEmitter<LoggerEvents> {
return !end ? padding + t : t + padding;
}
private format(...text: string[]): string {
const now = new Date();
const timestamp = `${now.getFullYear()}-${now.getMonth() + 1}-${now.getDate()} ${this.pad(now.getHours().toString(), 2, '0')}:${this.pad(now.getMinutes().toString(), 2, '0')}:${this.pad(now.getSeconds().toString(), 2, '0')}.${this.pad(now.getMilliseconds().toString(), 3, '0', true)}`;
@ -78,42 +79,37 @@ export class Logger extends TypedEmitter<LoggerEvents> {
}
debug(...args: string[]) {
if(Logger.LOG_LEVEL >= LOG_LEVEL.VERBOSE) {
const str = this.format(...args);
Logger.emit(LOG_LEVEL.VERBOSE, str);
console.debug(CliForeground.LIGHT_GREY + str + CliEffects.CLEAR);
}
}
error(...args: string[]) {
if(Logger.LOG_LEVEL >= LOG_LEVEL.ERROR) {
const str = this.format(...args);
Logger.emit(LOG_LEVEL.ERROR, str);
console.error(CliForeground.RED + str + CliEffects.CLEAR);
}
}
info(...args: string[]) {
if(Logger.LOG_LEVEL >= LOG_LEVEL.INFO) {
const str = this.format(...args);
Logger.emit(LOG_LEVEL.INFO, str);
console.info(CliForeground.BLUE + str + CliEffects.CLEAR);
}
if(Logger.LOG_LEVEL > LOG_LEVEL.VERBOSE) return;
const str = this.format(...args);
Logger.emit(LOG_LEVEL.VERBOSE, str);
console.debug(CliForeground.LIGHT_GREY + str + CliEffects.CLEAR);
}
log(...args: string[]) {
if(Logger.LOG_LEVEL >= LOG_LEVEL.INFO) {
const str = this.format(...args);
Logger.emit(LOG_LEVEL.INFO, str);
console.log(CliEffects.CLEAR + str);
}
if(Logger.LOG_LEVEL > LOG_LEVEL.INFO) return;
const str = this.format(...args);
Logger.emit(LOG_LEVEL.INFO, str);
console.log(CliEffects.CLEAR + str);
}
info(...args: string[]) {
if(Logger.LOG_LEVEL > LOG_LEVEL.INFO) return;
const str = this.format(...args);
Logger.emit(LOG_LEVEL.INFO, str);
console.info(CliForeground.BLUE + str + CliEffects.CLEAR);
}
warn(...args: string[]) {
if(Logger.LOG_LEVEL >= LOG_LEVEL.WARN) {
const str = this.format(...args);
Logger.emit(LOG_LEVEL.WARN, str);
console.warn(CliForeground.YELLOW + str + CliEffects.CLEAR);
}
if(Logger.LOG_LEVEL > LOG_LEVEL.WARN) return;
const str = this.format(...args);
Logger.emit(LOG_LEVEL.WARN, str);
console.warn(CliForeground.YELLOW + str + CliEffects.CLEAR);
}
error(...args: string[]) {
if(Logger.LOG_LEVEL > LOG_LEVEL.ERROR) return;
const str = this.format(...args);
Logger.emit(LOG_LEVEL.ERROR, str);
console.error(CliForeground.RED + str + CliEffects.CLEAR);
}
}

View File

@ -16,11 +16,12 @@ export function formEncode(data: any): string {
* Get profile image from Gravatar
*
* @param {string} email Account email address
* @param {string} def Default image, can be a link or '404', see: https://docs.gravatar.com/general/images/
* @returns {string} Gravatar URL
*/
export function gravatar(email: string) {
export function gravatar(email: string, def='mp') {
if(!email) return '';
return `https://www.gravatar.com/avatar/${md5(email)}`;
return `https://www.gravatar.com/avatar/${md5(email)}?d=${def}`;
}
/** Parts of a URL */