diff --git a/@commitlint/load/src/utils/load-parser-opts.ts b/@commitlint/load/src/utils/load-parser-opts.ts index 104d3392a4..d82d196f60 100644 --- a/@commitlint/load/src/utils/load-parser-opts.ts +++ b/@commitlint/load/src/utils/load-parser-opts.ts @@ -5,7 +5,7 @@ function isObjectLike(obj: unknown): obj is Record { } function isPromiseLike(obj: unknown): obj is Promise { - return typeof obj === 'object' && typeof (obj as any).then === 'function'; + return isObjectLike(obj) && typeof (obj as any).then === 'function'; } function isParserOptsFunction( @@ -21,14 +21,11 @@ function isParserOptsFunction( export async function loadParserOpts( pendingParser: string | ParserPreset | Promise | undefined ): Promise { - if (!pendingParser || typeof pendingParser === 'string') { + if (!pendingParser || typeof pendingParser !== 'object') { return undefined; } // Await for the module, loaded with require const parser = await pendingParser; - if (typeof pendingParser !== 'object') { - return undefined; - } // Await parser opts if applicable if (isPromiseLike(parser.parserOpts)) {