-
-
Notifications
You must be signed in to change notification settings - Fork 80
/
Copy pathblockESLintPackageJson.ts
42 lines (41 loc) · 992 Bytes
/
blockESLintPackageJson.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import { base } from "../base.js";
import { blockESLint } from "./blockESLint.js";
import { blockGitHubActionsCI } from "./blockGitHubActionsCI.js";
import { blockPackageJson } from "./blockPackageJson.js";
import { blockRemoveDependencies } from "./blockRemoveDependencies.js";
export const blockESLintPackageJson = base.createBlock({
about: {
name: "ESLint package.json Plugin",
},
produce() {
return {
addons: [
blockESLint({
extensions: ["packageJson.configs.recommended"],
imports: [
{
source: "eslint-plugin-package-json",
specifier: "packageJson",
},
],
}),
blockGitHubActionsCI({
removedWorkflows: ["lint-package-json"],
}),
blockPackageJson({
properties: {
scripts: {
"lint:package-json": undefined,
},
},
}),
blockRemoveDependencies({
dependencies: [
"npm-package-json-lint",
"npm-package-json-lint-config-default",
],
}),
],
};
},
});