@elsikora/eslint-config
Version:
ESLint configuration vision of ElsiKora
28 lines (24 loc) • 999 B
JavaScript
;
var applyRuleDocumentationUrl_utility = require('./apply-rule-documentation-url.utility.js');
/**
* Applies ElsiKora documentation URLs to every rule in a plugin.
* @param {ESLint.Plugin} plugin - ESLint plugin to decorate
* @param {string} pluginName - Final plugin name from the flat config
* @returns {ESLint.Plugin} Plugin with decorated rule metadata
*/
function applyPluginRuleDocumentationUrls(plugin, pluginName) {
if (!plugin.rules || !pluginName.startsWith("@elsikora/")) {
return plugin;
}
const pluginRules = plugin.rules;
const rules = {};
for (const [ruleName, rule] of Object.entries(pluginRules)) {
rules[ruleName] = applyRuleDocumentationUrl_utility.applyRuleDocumentationUrl(rule, `${pluginName}/${ruleName}`);
}
return {
...plugin,
rules,
};
}
exports.applyPluginRuleDocumentationUrls = applyPluginRuleDocumentationUrls;
//# sourceMappingURL=apply-plugin-rule-documentation-urls.utility.js.map