Skip to content

Commit dcd5a06

Browse files
committed
Make instance logLevel setter able to process string input
1 parent ac215cf commit dcd5a06

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

packages/logger/src/logger.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -141,14 +141,15 @@ export class Logger {
141141
* The log level of the given Logger instance.
142142
*/
143143
private _logLevel = defaultLogLevel;
144-
get logLevel(): LogLevel {
144+
get logLevel(): LogLevel | LogLevelString {
145145
return this._logLevel;
146146
}
147-
set logLevel(val: LogLevel) {
148-
if (!(val in LogLevel)) {
149-
throw new TypeError('Invalid value assigned to `logLevel`');
147+
set logLevel(val: LogLevel | LogLevelString) {
148+
const newLevel = typeof val === 'string' ? levelStringToEnum[val] : val;
149+
if (!(newLevel in LogLevel)) {
150+
throw new TypeError(`Invalid value "${val}" assigned to \`logLevel\``);
150151
}
151-
this._logLevel = val;
152+
this._logLevel = newLevel;
152153
}
153154

154155
/**
@@ -205,9 +206,8 @@ export class Logger {
205206
}
206207

207208
export function setLogLevel(level: LogLevelString | LogLevel): void {
208-
const newLevel = typeof level === 'string' ? levelStringToEnum[level] : level;
209209
instances.forEach(inst => {
210-
inst.logLevel = newLevel;
210+
inst.logLevel = level;
211211
});
212212
}
213213

0 commit comments

Comments
 (0)