feat: adding linter for commits
This commit is contained in:
51
node_modules/@commitlint/load/lib/utils/load-parser-opts.js
generated
vendored
Normal file
51
node_modules/@commitlint/load/lib/utils/load-parser-opts.js
generated
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.loadParserOpts = void 0;
|
||||
function isObjectLike(obj) {
|
||||
return Boolean(obj) && typeof obj === 'object'; // typeof null === 'object'
|
||||
}
|
||||
function isParserOptsFunction(obj) {
|
||||
return typeof obj.parserOpts === 'function';
|
||||
}
|
||||
async function loadParserOpts(pendingParser) {
|
||||
if (!pendingParser || typeof pendingParser !== 'object') {
|
||||
return undefined;
|
||||
}
|
||||
// Await for the module, loaded with require
|
||||
const parser = await pendingParser;
|
||||
// exit early, no opts to resolve
|
||||
if (!parser.parserOpts) {
|
||||
return parser;
|
||||
}
|
||||
// Pull nested parserOpts, might happen if overwritten with a module in main config
|
||||
if (typeof parser.parserOpts === 'object') {
|
||||
// Await parser opts if applicable
|
||||
parser.parserOpts = await parser.parserOpts;
|
||||
if (isObjectLike(parser.parserOpts) &&
|
||||
isObjectLike(parser.parserOpts.parserOpts)) {
|
||||
parser.parserOpts = parser.parserOpts.parserOpts;
|
||||
}
|
||||
return parser;
|
||||
}
|
||||
// Create parser opts from factory
|
||||
if (isParserOptsFunction(parser) &&
|
||||
typeof parser.name === 'string' &&
|
||||
parser.name.startsWith('conventional-changelog-')) {
|
||||
return new Promise((resolve) => {
|
||||
const result = parser.parserOpts((_, opts) => {
|
||||
resolve(Object.assign(Object.assign({}, parser), { parserOpts: opts === null || opts === void 0 ? void 0 : opts.parserOpts }));
|
||||
});
|
||||
// If result has data or a promise, the parser doesn't support factory-init
|
||||
// due to https://github.com/nodejs/promises-debugging/issues/16 it just quits, so let's use this fallback
|
||||
if (result) {
|
||||
Promise.resolve(result).then((opts) => {
|
||||
resolve(Object.assign(Object.assign({}, parser), { parserOpts: opts === null || opts === void 0 ? void 0 : opts.parserOpts }));
|
||||
});
|
||||
}
|
||||
return;
|
||||
});
|
||||
}
|
||||
return parser;
|
||||
}
|
||||
exports.loadParserOpts = loadParserOpts;
|
||||
//# sourceMappingURL=load-parser-opts.js.map
|
||||
Reference in New Issue
Block a user