@hkdigital/lib-core 0.4.45 → 0.4.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,9 +2,13 @@
2
2
  * Create a client-side logger with console adapter
3
3
  *
4
4
  * @param {string} name
5
- * @param {string} [level=INFO] - Initial log level
5
+ *
6
+ * @param {import('../../typedef.js').LogLevel} level
7
+ * Initial log level
8
+ *
6
9
  * @param {Object} [consoleOptions] - Additional console options
10
+ *
7
11
  * @returns {Logger} Configured logger instance
8
12
  */
9
- export function createClientLogger(name: string, level?: string, consoleOptions?: Object): Logger;
13
+ export function createClientLogger(name: string, level: import("../../typedef.js").LogLevel, consoleOptions?: Object): Logger;
10
14
  import { Logger } from '../logger/index.js';
@@ -1,20 +1,30 @@
1
1
  import { Logger } from '../logger/index.js';
2
2
  import { ConsoleAdapter } from '../adapters/console.js';
3
- import { INFO, LOG } from '../../levels.js';
3
+ import { DEBUG, LOG, LEVELS } from '../../levels.js';
4
4
 
5
5
  /**
6
6
  * Create a client-side logger with console adapter
7
7
  *
8
8
  * @param {string} name
9
- * @param {string} [level=INFO] - Initial log level
9
+ *
10
+ * @param {import('../../typedef.js').LogLevel} level
11
+ * Initial log level
12
+ *
10
13
  * @param {Object} [consoleOptions] - Additional console options
14
+ *
11
15
  * @returns {Logger} Configured logger instance
12
16
  */
13
- export function createClientLogger(name, level = INFO, consoleOptions = {}) {
17
+ export function createClientLogger(name, level, consoleOptions = {}) {
18
+
19
+ if( !level || !LEVELS[level] ) {
20
+ throw new Error('Missing or invalid parameter [level]');
21
+ }
22
+
14
23
  const logger = new Logger(name, level);
15
24
  const adapter = new ConsoleAdapter({ ...consoleOptions, level });
16
25
 
17
26
  // Connect adapter to logger events
27
+ // @ts-ignore (just accept logEvent)
18
28
  logger.on(LOG, (logEvent) => adapter.handleLog(logEvent));
19
29
 
20
30
  return logger;
@@ -2,9 +2,13 @@
2
2
  * Create a server-side logger with pino adapter
3
3
  *
4
4
  * @param {string} name
5
- * @param {string} [level=INFO] - Initial log level
5
+ *
6
+ * @param {import('../../typedef.js').LogLevel} level
7
+ * Initial log level
8
+ *
6
9
  * @param {Object} [pinoOptions] - Additional pino options
10
+ *
7
11
  * @returns {Logger} Configured logger instance
8
12
  */
9
- export function createServerLogger(name: string, level?: string, pinoOptions?: Object): Logger;
13
+ export function createServerLogger(name: string, level: import("../../typedef.js").LogLevel, pinoOptions?: Object): Logger;
10
14
  import { Logger } from '../logger/index.js';
@@ -1,31 +1,30 @@
1
1
  import { Logger } from '../logger/index.js';
2
2
  import { PinoAdapter } from '../adapters/pino.js';
3
- import { INFO, LOG } from '../../levels.js';
4
- // import { expectNoSSRContext } from '../../../util/ssr/index.js';
3
+ import { LOG, LEVELS } from '../../levels.js';
5
4
 
6
5
  /**
7
6
  * Create a server-side logger with pino adapter
8
7
  *
9
8
  * @param {string} name
10
- * @param {string} [level=INFO] - Initial log level
9
+ *
10
+ * @param {import('../../typedef.js').LogLevel} level
11
+ * Initial log level
12
+ *
11
13
  * @param {Object} [pinoOptions] - Additional pino options
14
+ *
12
15
  * @returns {Logger} Configured logger instance
13
16
  */
14
- export function createServerLogger(name, level = INFO, pinoOptions = {}) {
15
- // Guard against SSR serialization issues
16
- // expectNoSSRContext();
17
+ export function createServerLogger(name, level, pinoOptions = {}) {
18
+
19
+ if( !level || !LEVELS[level] ) {
20
+ throw new Error('Missing or invalid parameter [level]');
21
+ }
17
22
 
18
23
  const logger = new Logger(name, level);
19
24
  const adapter = new PinoAdapter(pinoOptions);
20
25
 
21
26
  // Connect adapter to logger events
22
- //
23
- // @note pino might fail if:
24
- // pino tries to create a worker thread for pino-pretty before the
25
- // development environment is fully ready, causing the transport target
26
- // determination to fail
27
- // -> Stop and start the dev server
28
- //
27
+ // @ts-ignore (just accept logEvent)
29
28
  logger.on(LOG, (logEvent) => adapter.handleLog(logEvent));
30
29
 
31
30
  return logger;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hkdigital/lib-core",
3
- "version": "0.4.45",
3
+ "version": "0.4.46",
4
4
  "author": {
5
5
  "name": "HKdigital",
6
6
  "url": "https://hkdigital.nl"