Skip to content

Commit

Permalink
feat(eslint-config): add name
Browse files Browse the repository at this point in the history
  • Loading branch information
zanminkian committed Jul 7, 2024
1 parent be32605 commit 89ab89a
Show file tree
Hide file tree
Showing 9 changed files with 22 additions and 12 deletions.
6 changes: 5 additions & 1 deletion packages/eslint-config/src/gitignore-config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@ async function globallyIgnore() {
});
const ignores = stdout.split("\n").filter(Boolean);
// https://eslint.org/docs/latest/use/configure/configuration-files#specifying-files-and-ignores
return { ignores };
return {
// TODO waiting for eslint 9
// name: 'git-validator/ignore',
ignores,
};
}

export default await globallyIgnore();
5 changes: 3 additions & 2 deletions packages/eslint-config/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
import gitignoreConfig from "./gitignore-config.js";
import jsConfig from "./js-config.js";
import jsConfig from "./javascript-config.js";
import packagejsonConfig from "./packagejson-config.js";
import tsConfig from "./ts-config.js";
import tsConfig from "./typescript-config.js";

const config = [
gitignoreConfig,
jsConfig,
...tsConfig,
packagejsonConfig,
] satisfies Array<{
name?: string; // TODO remove the question mark
ignores?: string[];
files?: string[];
plugins?: Record<string, unknown>;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import assert from "node:assert";
import { describe, it } from "node:test";
import config from "./js-config.js";
import config from "./javascript-config.js";

function getValue(v: unknown): string {
if (typeof v === "string") {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,7 @@ const standardConfigRules = {
};

export default {
name: "git-validator/javascript",
files: ["**/*.{js,cjs,mjs,jsx}"],
languageOptions: {
parserOptions: {
Expand Down
1 change: 1 addition & 0 deletions packages/eslint-config/src/packagejson-config.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import packagejson from "@git-validator/eslint-plugin-packagejson";

export default {
name: "git-validator/packagejson",
files: ["**/package.json"],
processor: "packagejson/processor",
plugins: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import assert from "node:assert";
import { describe, it } from "node:test";
import configs from "./ts-config.js";
import configs from "./typescript-config.js";

await describe("ts config", async () => {
await it("ts config value should be error", () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import tsPlugin from "@typescript-eslint/eslint-plugin";
import tsParser from "@typescript-eslint/parser";
import deprecationPlugin from "eslint-plugin-deprecation";
import { tsconfig } from "./common.js";
import jsConfig from "./js-config.js";
import jsConfig from "./javascript-config.js";

function getTsExtensionRules() {
// https://typescript-eslint.io/rules/?=extension
Expand Down Expand Up @@ -98,6 +98,7 @@ function getStrictRules() {

const mainConfig = {
...jsConfig,
name: "git-validator/typescript",
files: ["**/*.{ts,cts,mts,tsx}"],
languageOptions: {
...jsConfig.languageOptions,
Expand Down Expand Up @@ -227,6 +228,7 @@ const mainConfig = {
};

const declarationConfig = {
name: "git-validator/typescript/declaration",
files: ["**/*.d.{ts,cts,mts,tsx}"],
rules: {
"@typescript-eslint/no-restricted-imports": "off",
Expand All @@ -235,6 +237,7 @@ const declarationConfig = {

const testConfig = {
// https://github.com/motemen/minimatch-cheat-sheet
name: "git-validator/typescript/test",
files: [
"**/__tests__/**/*.{ts,cts,mts,tsx}",
"**/*.{test,spec}.{ts,cts,mts,tsx}",
Expand Down
8 changes: 4 additions & 4 deletions packages/eslint-config/test/no-duplicated.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import assert from "node:assert";
import fs from "node:fs/promises";
import { describe, it } from "node:test";
import prettier from "prettier";
import jsConfig from "../src/js-config.js";
import tsConfig from "../src/ts-config.js";
import jsConfig from "../src/javascript-config.js";
import tsConfig from "../src/typescript-config.js";

function count(content: string, substring: string) {
return (content.match(new RegExp(`"${substring}"`, "g")) ?? []).length;
Expand All @@ -12,7 +12,7 @@ function count(content: string, substring: string) {
await describe("no duplicated", async () => {
await it("no duplicated js rules is defined", async () => {
const configContent = await prettier.format(
(await fs.readFile("./src/js-config.ts", "utf-8")).replace(
(await fs.readFile("./src/javascript-config.ts", "utf-8")).replace(
"// prettier-ignore",
"",
),
Expand All @@ -30,7 +30,7 @@ await describe("no duplicated", async () => {

await it("no duplicated ts rules is defined", async () => {
const configContent = await prettier.format(
(await fs.readFile("./src/ts-config.ts", "utf-8")).replace(
(await fs.readFile("./src/typescript-config.ts", "utf-8")).replace(
"// prettier-ignore",
"",
),
Expand Down
4 changes: 2 additions & 2 deletions packages/eslint-config/test/prettier.spec.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import assert from "node:assert";
import { describe, it } from "node:test";
import prettierConfig from "eslint-config-prettier";
import jsConfig from "../src/js-config.js";
import jsConfig from "../src/javascript-config.js";
import packagejsonConfig from "../src/packagejson-config.js";
import tsConfig from "../src/ts-config.js";
import tsConfig from "../src/typescript-config.js";

await describe("prettier", async () => {
await it("prettier config should be standard", () => {
Expand Down

0 comments on commit 89ab89a

Please sign in to comment.