Skip to content

Commit 7efd9e3

Browse files
authored
Add and share SeverityString type
1 parent 32e0bbb commit 7efd9e3

File tree

4 files changed

+13
-6
lines changed

4 files changed

+13
-6
lines changed

lib/configs/rules/all.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import { rules as ruleLint } from "../../all-rules"
2+
import type { SeverityString } from "../../types"
23
import { rules as recommendedRules } from "./recommended"
34

4-
const all: Record<string, string> = {}
5+
const all: Record<string, SeverityString> = {}
56
for (const rule of ruleLint) {
67
all[rule.meta.docs.ruleId] = "error"
78
}

lib/configs/rules/recommended.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
export const rules = {
1+
import type { SeverityString } from "../../types"
2+
3+
export const rules: Record<string, SeverityString> = {
24
// ESLint core rules
35
"no-control-regex": "error",
46
"no-misleading-character-class": "error",
@@ -70,4 +72,4 @@ export const rules = {
7072
"regexp/sort-flags": "error",
7173
"regexp/strict": "error",
7274
"regexp/use-ignore-case": "error",
73-
} as const
75+
}

lib/types.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ export type RuleCategory =
1313
| "Best Practices"
1414
| "Stylistic Issues"
1515

16+
export type SeverityString = "error" | "warn" | "off"
17+
1618
export interface RuleMetaData {
1719
docs: {
1820
description: string
@@ -21,7 +23,7 @@ export interface RuleMetaData {
2123
url: string
2224
ruleId: string
2325
ruleName: string
24-
default?: "error" | "warn"
26+
default?: Exclude<SeverityString, "off">
2527
}
2628
messages: { [messageId: string]: string }
2729
fixable?: "code" | "whitespace"
@@ -42,7 +44,7 @@ export interface PartialRuleMetaData {
4244
description: string
4345
category: RuleCategory
4446
recommended: boolean
45-
default?: "error" | "warn"
47+
default?: Exclude<SeverityString, "off">
4648
}
4749
messages: { [messageId: string]: string }
4850
fixable?: "code" | "whitespace"

tools/update-rulesets.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ const coreRules = [
1414
// "require-unicode-regexp", // modern
1515
]
1616

17-
const content = `export const rules = {
17+
const content = `import type { SeverityString } from "../../types"
18+
19+
export const rules: Record<string, SeverityString> = {
1820
// ESLint core rules
1921
${coreRules.map((ruleName) => `"${ruleName}": "error"`).join(",\n ")},
2022
// The ESLint rule will report fewer cases than our rule

0 commit comments

Comments
 (0)