Compare commits

...

6 Commits

Author SHA1 Message Date
e9aa4ed2c0 export webhook client options 2023-12-08 14:33:51 +02:00
aa1d257cd3 v2.5.3 2023-12-06 13:07:46 +02:00
786f7db564 typing fix 2023-12-06 13:07:18 +02:00
d68584572d v2.5.2 2023-12-04 15:15:24 +02:00
3e55182657 Update typings 2023-12-04 15:15:03 +02:00
22f5549bc7 v2.5.1 2023-11-28 19:49:20 +02:00
6 changed files with 979 additions and 975 deletions

View File

@ -2,7 +2,8 @@ import MasterLogger from './src/MasterLogger.js';
import LoggerClient from './src/LoggerClient.js'; import LoggerClient from './src/LoggerClient.js';
import Defaults, { LogLevel } from './src/Defaults.js'; import Defaults, { LogLevel } from './src/Defaults.js';
export { WriteOptions, LogFunction } from './src/Types.js'; export { WebhookClientOptions } from '@navy.gif/discord-webhook';
export { WriteOptions, LogFunction, Loggable } from './src/Types.js';
export { LoggerClientOptions, LoggerMasterOptions } from './src/Defaults.js'; export { LoggerClientOptions, LoggerMasterOptions } from './src/Defaults.js';
const addLogLevel = (name: string, level: number) => const addLogLevel = (name: string, level: number) =>
@ -16,9 +17,10 @@ const addLogLevel = (name: string, level: number) =>
LogLevel[LogLevel[name] = level] = name; LogLevel[LogLevel[name] = level] = name;
}; };
export { export {
MasterLogger, MasterLogger,
LoggerClient, LoggerClient,
Defaults, LogLevel, addLogLevel, Defaults,
LogLevel,
addLogLevel,
}; };

View File

@ -1,6 +1,6 @@
{ {
"name": "@navy.gif/logger", "name": "@navy.gif/logger",
"version": "2.5.0", "version": "2.5.3",
"description": "Logging thing", "description": "Logging thing",
"author": "Navy.gif", "author": "Navy.gif",
"license": "MIT", "license": "MIT",
@ -29,7 +29,7 @@
"typescript": "^5.0.4" "typescript": "^5.0.4"
}, },
"dependencies": { "dependencies": {
"@navy.gif/discord-webhook": "^1.0.0", "@navy.gif/discord-webhook": "^1.2.2",
"chalk": "^4.1.2", "chalk": "^4.1.2",
"moment": "^2.29.4" "moment": "^2.29.4"
}, },

View File

@ -9,8 +9,10 @@ type TransportOptions = {
} & WriteOptions } & WriteOptions
const validKeys = [ 'labels' ]; const validKeys = [ 'labels' ];
const isTransportOpts = (obj: object): obj is TransportOptions => const isTransportOpts = (obj: unknown): obj is TransportOptions =>
{ {
if (!obj || typeof obj !== 'object')
return false;
const isWriteOption = isWriteOptions(obj); const isWriteOption = isWriteOptions(obj);
const keys = Object.keys(obj); const keys = Object.keys(obj);
return isWriteOption || keys.some(key => validKeys.includes(key)); return isWriteOption || keys.some(key => validKeys.includes(key));
@ -18,9 +20,7 @@ const isTransportOpts = (obj: object): obj is TransportOptions =>
class LoggerClient implements Logger class LoggerClient implements Logger
{ {
static MaxChars = 0; static MaxChars = 0;
[key: string]: LogFunction | unknown; [key: string]: LogFunction | unknown;
#_guard: string; #_guard: string;

View File

@ -208,7 +208,7 @@ class MasterLogger implements Logger
}); });
} }
write (type = 'info', ...args: [...entries: Loggable[], options: WriteOptions]) write (type = 'info', ...args: [...entries: Loggable[], options: WriteOptions | Loggable])
{ {
const last = args[args.length - 1]; const last = args[args.length - 1];
let { subheader = '', shard, broadcast = false, labels = [] }: WriteOptions = {}; let { subheader = '', shard, broadcast = false, labels = [] }: WriteOptions = {};

View File

@ -10,8 +10,10 @@ export const makePlainError = (err: Error) =>
}; };
const validKeys = [ 'subheader', 'shard', 'broadcast', 'labels' ]; const validKeys = [ 'subheader', 'shard', 'broadcast', 'labels' ];
export const isWriteOptions = (obj: object, extended = false): obj is WriteOptions => export const isWriteOptions = (obj: unknown, extended = false): obj is WriteOptions =>
{ {
if (!obj || typeof obj !== 'object')
return false;
const keys = Object.keys(obj); const keys = Object.keys(obj);
// Check for invalid keys, in some cases an arbitrary object might share keys // Check for invalid keys, in some cases an arbitrary object might share keys
// while still allowing for an option to be extended // while still allowing for an option to be extended

View File

@ -48,10 +48,10 @@
resolved "https://registry.corgi.wtf/@humanwhocodes%2fobject-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" resolved "https://registry.corgi.wtf/@humanwhocodes%2fobject-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
"@navy.gif/discord-webhook@^1.0.0": "@navy.gif/discord-webhook@^1.2.2":
version "1.2.0" version "1.2.2"
resolved "https://registry.corgi.wtf/@navy.gif/discord-webhook/-/discord-webhook-1.2.0.tgz#cb2780c7d3f09c6b49958459d9f01e45f3f187af" resolved "https://registry.corgi.wtf/@navy.gif/discord-webhook/-/discord-webhook-1.2.2.tgz#942f4f67aacaebbe6493bee4094acdaef6cff0e2"
integrity sha512-fGwzHkOB9XMc+dCHZGyMUtc/SzNnowC/MGt0Tr6Vwx5EVyO7TQe+1lB44yrOMsjdNpJg6Kp0x5tgQOLHqKlJzA== integrity sha512-lcO/o+iAeFUoLKl9u+a9cZSEnxmuczmI7qQqT1MWnSMDR5jQaiUu2sJRTvDTINfiGgu5kxqRd1NvmHMpkKabfg==
dependencies: dependencies:
node-fetch "2" node-fetch "2"