@salesforce-ux/eslint-plugin-slds
Version:
ESLint plugin provides custom linting rules specifically built for Salesforce Lightning Design System 2 (SLDS 2 beta)
59 lines (58 loc) • 2.17 kB
JavaScript
"use strict";
// Unified ESLint plugin config for both v8 (legacy) and v9+ (flat)
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const enforce_bem_usage_1 = __importDefault(require("./rules/enforce-bem-usage"));
const no_deprecated_classes_slds2_1 = __importDefault(require("./rules/no-deprecated-classes-slds2"));
const modal_close_button_issue_1 = __importDefault(require("./rules/modal-close-button-issue"));
const parser_1 = __importDefault(require("@html-eslint/parser"));
const plugin = {
meta: {
name: "@salesforce-ux/eslint-plugin-slds",
version: process.env.PLUGIN_VERSION
},
configs: {},
rules: {
"enforce-bem-usage": enforce_bem_usage_1.default,
"no-deprecated-classes-slds2": no_deprecated_classes_slds2_1.default,
"modal-close-button-issue": modal_close_button_issue_1.default
}
};
Object.assign(plugin.configs, {
// flat config format for ESLint v9+
"flat/recommended": [
{
plugins: {
"@salesforce-ux/slds": plugin,
},
rules: {
"@salesforce-ux/slds/enforce-bem-usage": "error",
"@salesforce-ux/slds/no-deprecated-classes-slds2": "error",
"@salesforce-ux/slds/modal-close-button-issue": "error"
},
languageOptions: {
parser: parser_1.default,
ecmaVersion: 2021,
sourceType: "module"
},
files: ["**/*.html", "**/*.cmp"]
}
],
// legacy config for ESLint v8-
recommended: {
plugins: ["@salesforce-ux/slds"],
rules: {
"@salesforce-ux/slds/enforce-bem-usage": "error",
"@salesforce-ux/slds/no-deprecated-classes-slds2": "error",
"@salesforce-ux/slds/modal-close-button-issue": "error"
},
parser: parser_1.default,
parserOptions: {
ecmaVersion: 2021,
sourceType: "module"
}
}
});
module.exports = plugin;