Skip to content

Commit 97311fd

Browse files
committed
fix: add type declarations for log-error
1 parent 5d261a0 commit 97311fd

File tree

7 files changed

+31
-50
lines changed

7 files changed

+31
-50
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
.husky/_
22
packages/errors/**/*.d.*
33
packages/fetch-error-handler/**/*.d.*
4-
packages/log-error/**/*.d.*
54
packages/logger/**/*.d.*
65
packages/middleware-log-errors/**/*.d.*
76
packages/middleware-render-error-info/**/*.d.*

jsconfig.build.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
"include": [
1111
"packages/errors/**/*.js",
1212
"packages/fetch-error-handler/**/*.js",
13-
"packages/log-error/**/*.js",
1413
"packages/logger/**/*.js",
1514
"packages/middleware-log-errors/**/*.js",
1615
"packages/middleware-render-error-info/**/*.js"

packages/log-error/.npmignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
!*.d.ts
2-
!*.d.ts.map
31
CHANGELOG.md
42
docs
53
test

packages/log-error/lib/index.js

Lines changed: 5 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -4,44 +4,14 @@ const serializeError = require('@dotcom-reliability-kit/serialize-error');
44
const serializeRequest = require('@dotcom-reliability-kit/serialize-request');
55

66
/**
7-
* @typedef {(...logData: any) => any} LogMethod
8-
*/
9-
10-
/**
11-
* @typedef {object} Logger
12-
* @property {LogMethod} error
13-
* A function to log an error.
14-
* @property {LogMethod} [fatal]
15-
* A function to log a fatal error.
16-
* @property {LogMethod} warn
17-
* A function to log a warning.
18-
*/
19-
20-
/**
21-
* @typedef {object} ErrorLoggingOptions
22-
* @property {(string | Error & Record<string, any>)} error
23-
* The error to log.
24-
* @property {string[]} [includeHeaders]
25-
* An array of request headers to include in the log.
26-
* @property {Logger & {[key: string]: any}} [logger]
27-
* The logger to use to output errors. Defaults to Reliability Kit logger.
28-
* @property {(string | import('@dotcom-reliability-kit/serialize-request').Request)} [request]
29-
* An request object to include in the log.
30-
*/
31-
32-
/**
33-
* @typedef {object} InternalErrorLoggingOptions
34-
* @property {string} event
35-
* The event to log.
36-
* @property {("error" | "fatal" | "warn")} level
37-
* The log level to use. One of "error", "fatal", or "warn".
7+
* @typedef {import('@dotcom-reliability-kit/log-error').ErrorLoggingOptions} ErrorLoggingOptions
388
*/
399

4010
/**
4111
* Log an error object with optional request information.
4212
*
4313
* @private
44-
* @param {ErrorLoggingOptions & InternalErrorLoggingOptions} options
14+
* @param {ErrorLoggingOptions & {event: string, level: 'error' | 'fatal' | 'warn'}} options
4515
* The data to log.
4616
* @returns {void}
4717
*/
@@ -110,10 +80,7 @@ function extractErrorMessage(serializedError) {
11080
/**
11181
* Log a handled error.
11282
*
113-
* @public
114-
* @param {ErrorLoggingOptions} options
115-
* The data to log.
116-
* @returns {void}
83+
* @type {typeof import('@dotcom-reliability-kit/log-error').logHandledError}
11784
*/
11885
function logHandledError({ error, includeHeaders, logger, request }) {
11986
logError({
@@ -129,10 +96,7 @@ function logHandledError({ error, includeHeaders, logger, request }) {
12996
/**
13097
* Log a recoverable error.
13198
*
132-
* @public
133-
* @param {ErrorLoggingOptions} options
134-
* The data to log.
135-
* @returns {void}
99+
* @type {typeof import('@dotcom-reliability-kit/log-error').logHandledError}
136100
*/
137101
function logRecoverableError({ error, includeHeaders, logger, request }) {
138102
logError({
@@ -148,10 +112,7 @@ function logRecoverableError({ error, includeHeaders, logger, request }) {
148112
/**
149113
* Log an unhandled error.
150114
*
151-
* @public
152-
* @param {ErrorLoggingOptions} options
153-
* The data to log.
154-
* @returns {void}
115+
* @type {typeof import('@dotcom-reliability-kit/log-error').logHandledError}
155116
*/
156117
function logUnhandledError({ error, includeHeaders, logger, request }) {
157118
logError({

packages/log-error/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
"node": "18.x || 20.x || 22.x",
1515
"npm": "8.x || 9.x || 10.x"
1616
},
17-
"main": "lib",
17+
"main": "lib/index.js",
18+
"types": "types/index.d.ts",
1819
"dependencies": {
1920
"@dotcom-reliability-kit/app-info": "^3.2.0",
2021
"@dotcom-reliability-kit/logger": "^3.1.2",

packages/log-error/types/index.d.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import { Request } from '@dotcom-reliability-kit/serialize-request';
2+
3+
declare module '@dotcom-reliability-kit/log-error' {
4+
type LogMethod = (...logData: any) => any;
5+
6+
export type Logger = {
7+
error: LogMethod;
8+
fatal?: LogMethod;
9+
warn: LogMethod;
10+
};
11+
12+
export type ErrorLoggingOptions = {
13+
error: string | (Error & Record<string, any>);
14+
includeHeaders?: string[];
15+
logger?: Logger & { [key: string]: any };
16+
request?: string | Request;
17+
};
18+
19+
export function logHandledError(options: ErrorLoggingOptions): void;
20+
21+
export function logRecoverableError(options: ErrorLoggingOptions): void;
22+
23+
export function logUnhandledError(options: ErrorLoggingOptions): void;
24+
}

scripts/clean-generated-types.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
find ./packages/errors -name "*.d.ts*" | xargs -r rm
44
find ./packages/fetch-error-handler -name "*.d.ts*" | xargs -r rm
5-
find ./packages/log-error -name "*.d.ts*" | xargs -r rm
65
find ./packages/logger -name "*.d.ts*" | xargs -r rm
76
find ./packages/middleware-log-errors -name "*.d.ts*" | xargs -r rm
87
find ./packages/middleware-render-error-info -name "*.d.ts*" | xargs -r rm

0 commit comments

Comments
 (0)