blob: d2eb8cceb856ab939a2856d1a74b135aaa3e38d3 [file] [log] [blame]
import consistent_output_default from "./rules/consistent-output.js";
import fixer_return_default from "./rules/fixer-return.js";
import meta_property_ordering_default from "./rules/meta-property-ordering.js";
import no_deprecated_context_methods_default from "./rules/no-deprecated-context-methods.js";
import no_deprecated_report_api_default from "./rules/no-deprecated-report-api.js";
import no_identical_tests_default from "./rules/no-identical-tests.js";
import no_meta_replaced_by_default from "./rules/no-meta-replaced-by.js";
import no_meta_schema_default_default from "./rules/no-meta-schema-default.js";
import no_missing_message_ids_default from "./rules/no-missing-message-ids.js";
import no_missing_placeholders_default from "./rules/no-missing-placeholders.js";
import no_only_tests_default from "./rules/no-only-tests.js";
import no_property_in_node_default from "./rules/no-property-in-node.js";
import no_unused_message_ids_default from "./rules/no-unused-message-ids.js";
import no_unused_placeholders_default from "./rules/no-unused-placeholders.js";
import no_useless_token_range_default from "./rules/no-useless-token-range.js";
import prefer_message_ids_default from "./rules/prefer-message-ids.js";
import prefer_object_rule_default from "./rules/prefer-object-rule.js";
import prefer_output_null_default from "./rules/prefer-output-null.js";
import prefer_placeholders_default from "./rules/prefer-placeholders.js";
import prefer_replace_text_default from "./rules/prefer-replace-text.js";
import report_message_format_default from "./rules/report-message-format.js";
import require_meta_default_options_default from "./rules/require-meta-default-options.js";
import require_meta_docs_description_default from "./rules/require-meta-docs-description.js";
import require_meta_docs_recommended_default from "./rules/require-meta-docs-recommended.js";
import require_meta_docs_url_default from "./rules/require-meta-docs-url.js";
import require_meta_fixable_default from "./rules/require-meta-fixable.js";
import require_meta_has_suggestions_default from "./rules/require-meta-has-suggestions.js";
import require_meta_schema_description_default from "./rules/require-meta-schema-description.js";
import require_meta_schema_default from "./rules/require-meta-schema.js";
import require_meta_type_default from "./rules/require-meta-type.js";
import require_test_case_name_default from "./rules/require-test-case-name.js";
import test_case_property_ordering_default from "./rules/test-case-property-ordering.js";
import test_case_shorthand_strings_default from "./rules/test-case-shorthand-strings.js";
import unique_test_case_names_default from "./rules/unique-test-case-names.js";
import { createRequire } from "node:module";
//#region lib/index.ts
const packageMetadata = createRequire(import.meta.url)("../package.json");
const PLUGIN_NAME = packageMetadata.name.replace(/^eslint-plugin-/, "");
const configFilters = {
all: (rule) => !(rule.meta?.docs && "requiresTypeChecking" in rule.meta.docs && rule.meta.docs.requiresTypeChecking),
"all-type-checked": () => true,
recommended: (rule) => !!rule.meta?.docs?.recommended,
rules: (rule) => rule.meta?.docs?.category === "Rules",
tests: (rule) => rule.meta?.docs?.category === "Tests",
"rules-recommended": (rule) => configFilters.recommended(rule) && configFilters.rules(rule),
"tests-recommended": (rule) => configFilters.recommended(rule) && configFilters.tests(rule)
};
const createConfig = (configName) => ({
name: `${PLUGIN_NAME}/${configName}`,
plugins: { get [PLUGIN_NAME]() {
return plugin;
} },
rules: Object.fromEntries(Object.keys(allRules).filter((ruleName) => configFilters[configName](allRules[ruleName])).map((ruleName) => [`${PLUGIN_NAME}/${ruleName}`, "error"]))
});
const allRules = {
"consistent-output": consistent_output_default,
"fixer-return": fixer_return_default,
"meta-property-ordering": meta_property_ordering_default,
"no-deprecated-context-methods": no_deprecated_context_methods_default,
"no-deprecated-report-api": no_deprecated_report_api_default,
"no-identical-tests": no_identical_tests_default,
"no-meta-replaced-by": no_meta_replaced_by_default,
"no-meta-schema-default": no_meta_schema_default_default,
"no-missing-message-ids": no_missing_message_ids_default,
"no-missing-placeholders": no_missing_placeholders_default,
"no-only-tests": no_only_tests_default,
"no-property-in-node": no_property_in_node_default,
"no-unused-message-ids": no_unused_message_ids_default,
"no-unused-placeholders": no_unused_placeholders_default,
"no-useless-token-range": no_useless_token_range_default,
"prefer-message-ids": prefer_message_ids_default,
"prefer-object-rule": prefer_object_rule_default,
"prefer-output-null": prefer_output_null_default,
"prefer-placeholders": prefer_placeholders_default,
"prefer-replace-text": prefer_replace_text_default,
"report-message-format": report_message_format_default,
"require-meta-default-options": require_meta_default_options_default,
"require-meta-docs-description": require_meta_docs_description_default,
"require-meta-docs-recommended": require_meta_docs_recommended_default,
"require-meta-docs-url": require_meta_docs_url_default,
"require-meta-fixable": require_meta_fixable_default,
"require-meta-has-suggestions": require_meta_has_suggestions_default,
"require-meta-schema-description": require_meta_schema_description_default,
"require-meta-schema": require_meta_schema_default,
"require-meta-type": require_meta_type_default,
"require-test-case-name": require_test_case_name_default,
"test-case-property-ordering": test_case_property_ordering_default,
"test-case-shorthand-strings": test_case_shorthand_strings_default,
"unique-test-case-names": unique_test_case_names_default
};
const plugin = {
meta: {
name: packageMetadata.name,
version: packageMetadata.version
},
rules: allRules,
configs: {
all: createConfig("all"),
"all-type-checked": createConfig("all-type-checked"),
recommended: createConfig("recommended"),
rules: createConfig("rules"),
tests: createConfig("tests"),
"rules-recommended": createConfig("rules-recommended"),
"tests-recommended": createConfig("tests-recommended")
}
};
var lib_default = plugin;
//#endregion
export { lib_default as default };