chore!: 💥 🔧 rename @eslegant/config to @eslegant/js

Renamed @eslegant/config to @eslegant/js, reflecting the new structure and
purpose of it just having rules related to javascript and
typescript

Moved said package to the new ./configs/ directory. Packages under the
./packages/ directory will be related to ones that aren't related to
ESLint itself and/or its configuration.
This commit is contained in:
Guz013
2023-09-01 18:08:56 -03:00
parent a64062f3a5
commit fc2613f874
35 changed files with 77 additions and 62 deletions

View File

@@ -1,5 +1,5 @@
--- ---
"@eslegant/config": patch "@eslegant/js": patch
"@eslegant/cli": patch "@eslegant/cli": patch
--- ---

View File

@@ -1,7 +1,7 @@
--- ---
"create-eslegant": minor "create-eslegant": minor
"eslegant": minor "eslegant": minor
"@eslegant/config": minor "@eslegant/js": minor
"@eslegant/cli": minor "@eslegant/cli": minor
--- ---

View File

@@ -0,0 +1,5 @@
---
"@eslegant/js": patch
---
Renamed @eslegant/config to @eslegant/js

View File

@@ -1,5 +1,5 @@
{ {
"name": "@eslegant/config", "name": "@eslegant/js",
"version": "0.2.0", "version": "0.2.0",
"description": "", "description": "",
"main": "index.js", "main": "index.js",
@@ -22,7 +22,7 @@
"lint": "eslint ." "lint": "eslint ."
}, },
"repository": { "repository": {
"directory": "packages/config", "directory": "configs/js",
"type": "git", "type": "git",
"url": "https://github.com/LoredDev/ESLegant" "url": "https://github.com/LoredDev/ESLegant"
}, },

View File

@@ -1,3 +1,4 @@
// eslint-disable-next-line unicorn/prevent-abbreviations
import type { ESLint, Linter } from 'eslint'; import type { ESLint, Linter } from 'eslint';
/** /**

View File

@@ -10,6 +10,7 @@ import type { ESLint } from 'eslint';
* new flat config. * new flat config.
*/ */
declare module 'eslint-plugin-jsdoc' { declare module 'eslint-plugin-jsdoc' {
// eslint-disable-next-line unicorn/prevent-abbreviations
interface jsDocESlintPlugin extends ESLint.Plugin { interface jsDocESlintPlugin extends ESLint.Plugin {
configs: ESLint.Plugin['configs'] & { configs: ESLint.Plugin['configs'] & {
recommended: ESLint.ConfigData recommended: ESLint.ConfigData

View File

@@ -1,10 +1,10 @@
declare module 'globals' { declare module 'globals' {
const globals: { const globals: {
builtin: Record<string, boolean>
browser: Record<string, boolean> browser: Record<string, boolean>
builtin: Record<string, boolean>
commonjs: Record<string, boolean>
node: Record<string, boolean> node: Record<string, boolean>
nodeBuiltin: Record<string, boolean> nodeBuiltin: Record<string, boolean>
commonjs: Record<string, boolean>
}; };
export default globals; export default globals;
} }

View File

@@ -19,8 +19,8 @@ const config = {
parserOptions: { parserOptions: {
project: process.env.ESLEGANT_TSCONFIG ?? [ project: process.env.ESLEGANT_TSCONFIG ?? [
'./{ts,js}config{.eslint,}.json', './{ts,js}config{.eslint,}.json',
'./packages/*/{ts,js}config{.eslint,}.json', './*/{ts,js}config{.eslint,}.json',
'./apps/*/{ts,js}config{.eslint,}.json', './*/*/{ts,js}config{.eslint,}.json',
], ],
tsconfigRootDir: process.env.ESLEGANT_ROOT ?? process.cwd(), tsconfigRootDir: process.env.ESLEGANT_ROOT ?? process.cwd(),
}, },

View File

@@ -12,7 +12,7 @@ const recommended = {
...tsESLint.configs['recommended-requiring-type-checking'].rules, ...tsESLint.configs['recommended-requiring-type-checking'].rules,
...tsESLint.configs['eslint-recommended'].rules, ...tsESLint.configs['eslint-recommended'].rules,
...tsESLint.configs.strict.rules, ...tsESLint.configs.strict.rules,
...importPlugin.configs['recommended'].rules, ...importPlugin.configs.recommended.rules,
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
...jsdocPlugin.configs['recommended-typescript-flavor-error'].rules, ...jsdocPlugin.configs['recommended-typescript-flavor-error'].rules,
}, },

View File

@@ -10,7 +10,7 @@ const recommended = {
rules: { rules: {
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
...jsdocPlugin.configs['recommended-typescript-error'].rules, ...jsdocPlugin.configs['recommended-typescript-error'].rules,
...importPlugin.configs['typescript'].rules, ...importPlugin.configs.typescript.rules,
'@typescript-eslint/adjacent-overload-signatures': 'error', '@typescript-eslint/adjacent-overload-signatures': 'error',
'@typescript-eslint/array-type': 'error', '@typescript-eslint/array-type': 'error',

View File

@@ -1,2 +1,2 @@
export { default as configs } from './configs/index.js';
export { default as presets } from './presets/index.js'; export { default as presets } from './presets/index.js';
export { default as configs } from './configs/index.js';

View File

@@ -3,7 +3,10 @@ import configs from '../configs/index.js';
/** @type {import('eslint').Linter.FlatConfig[]} */ /** @type {import('eslint').Linter.FlatConfig[]} */
const recommended = [ const recommended = [
configs.core, configs.core,
// TODO [>=1.0.0]: remove .javascript and .typescript configs
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
configs.javascript.recommended, configs.javascript.recommended,
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
configs.typescript.recommended, configs.typescript.recommended,
configs.suggestions.recommended, configs.suggestions.recommended,
configs.formatting.recommended, configs.formatting.recommended,

View File

@@ -3,7 +3,10 @@ import configs from '../configs/index.js';
/** @type {import('eslint').Linter.FlatConfig[]} */ /** @type {import('eslint').Linter.FlatConfig[]} */
const strict = [ const strict = [
configs.core, configs.core,
// TODO [>=1.0.0]: remove .javascript and .typescript configs
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
configs.javascript.strict, configs.javascript.strict,
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
configs.typescript.strict, configs.typescript.strict,
configs.suggestions.strict, configs.suggestions.strict,
configs.formatting.strict, configs.formatting.strict,

View File

@@ -1,4 +1,4 @@
import { presets } from '@eslegant/config'; import { presets } from '@eslegant/js';
export default [ export default [
...presets.strict, ...presets.strict,

View File

@@ -11,7 +11,7 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"dependencies": { "dependencies": {
"@eslegant/config": "workspace:*" "@eslegant/js": "workspace:*"
}, },
"devDependencies": { "devDependencies": {
"@changesets/cli": "^2.26.2", "@changesets/cli": "^2.26.2",

99
pnpm-lock.yaml generated
View File

@@ -8,9 +8,9 @@ importers:
.: .:
dependencies: dependencies:
'@eslegant/config': '@eslegant/js':
specifier: workspace:* specifier: workspace:*
version: link:packages/config version: link:configs/js
devDependencies: devDependencies:
'@changesets/cli': '@changesets/cli':
specifier: ^2.26.2 specifier: ^2.26.2
@@ -37,6 +37,52 @@ importers:
specifier: ^1.10.12 specifier: ^1.10.12
version: 1.10.12 version: 1.10.12
configs/js:
dependencies:
'@eslint/eslintrc':
specifier: ^2.1.2
version: 2.1.2
'@eslint/js':
specifier: ^8.47.0
version: 8.47.0
'@typescript-eslint/eslint-plugin':
specifier: ^6.4.1
version: 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.1.6)
'@typescript-eslint/parser':
specifier: ^6.4.1
version: 6.4.1(eslint@8.47.0)(typescript@5.1.6)
eslint-import-resolver-typescript:
specifier: ^3.6.0
version: 3.6.0(@typescript-eslint/parser@6.4.1)(eslint-plugin-import@2.28.1)(eslint@8.47.0)
eslint-plugin-i:
specifier: 2.28.0-2
version: 2.28.0-2(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.47.0)
eslint-plugin-jsdoc:
specifier: ^46.5.0
version: 46.5.0(eslint@8.47.0)
eslint-plugin-perfectionist:
specifier: ^1.5.1
version: 1.5.1(eslint@8.47.0)(typescript@5.1.6)
eslint-plugin-unicorn:
specifier: ^48.0.1
version: 48.0.1(eslint@8.47.0)
globals:
specifier: ^13.21.0
version: 13.21.0
devDependencies:
'@types/eslint__js':
specifier: ^8.42.0
version: 8.42.0
'@types/node':
specifier: ^20.5.3
version: 20.5.3
eslint:
specifier: ^8.47.0
version: 8.47.0
typescript:
specifier: ^5.1.6
version: 5.1.6
fixtures/library: fixtures/library:
dependencies: dependencies:
'@eslegant/cli': '@eslegant/cli':
@@ -137,52 +183,6 @@ importers:
specifier: ^2.4.4 specifier: ^2.4.4
version: 2.4.4 version: 2.4.4
packages/config:
dependencies:
'@eslint/eslintrc':
specifier: ^2.1.2
version: 2.1.2
'@eslint/js':
specifier: ^8.47.0
version: 8.47.0
'@typescript-eslint/eslint-plugin':
specifier: ^6.4.1
version: 6.4.1(@typescript-eslint/parser@6.4.1)(eslint@8.47.0)(typescript@5.1.6)
'@typescript-eslint/parser':
specifier: ^6.4.1
version: 6.4.1(eslint@8.47.0)(typescript@5.1.6)
eslint-import-resolver-typescript:
specifier: ^3.6.0
version: 3.6.0(@typescript-eslint/parser@6.4.1)(eslint-plugin-import@2.28.1)(eslint@8.47.0)
eslint-plugin-i:
specifier: 2.28.0-2
version: 2.28.0-2(@typescript-eslint/parser@6.4.1)(eslint-import-resolver-typescript@3.6.0)(eslint@8.47.0)
eslint-plugin-jsdoc:
specifier: ^46.5.0
version: 46.5.0(eslint@8.47.0)
eslint-plugin-perfectionist:
specifier: ^1.5.1
version: 1.5.1(eslint@8.47.0)(typescript@5.1.6)
eslint-plugin-unicorn:
specifier: ^48.0.1
version: 48.0.1(eslint@8.47.0)
globals:
specifier: ^13.21.0
version: 13.21.0
devDependencies:
'@types/eslint__js':
specifier: ^8.42.0
version: 8.42.0
'@types/node':
specifier: ^20.5.3
version: 20.5.3
eslint:
specifier: ^8.47.0
version: 8.47.0
typescript:
specifier: ^5.1.6
version: 5.1.6
packages/create-eslegant: packages/create-eslegant:
dependencies: dependencies:
'@eslegant/cli': '@eslegant/cli':
@@ -691,7 +691,7 @@ packages:
dependencies: dependencies:
ajv: 6.12.6 ajv: 6.12.6
debug: 4.3.4 debug: 4.3.4
espree: 9.6.0 espree: 9.6.1
globals: 13.21.0 globals: 13.21.0
ignore: 5.2.4 ignore: 5.2.4
import-fresh: 3.3.0 import-fresh: 3.3.0
@@ -2311,6 +2311,7 @@ packages:
acorn: 8.10.0 acorn: 8.10.0
acorn-jsx: 5.3.2(acorn@8.10.0) acorn-jsx: 5.3.2(acorn@8.10.0)
eslint-visitor-keys: 3.4.3 eslint-visitor-keys: 3.4.3
dev: true
/espree@9.6.1: /espree@9.6.1:
resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}

View File

@@ -1,3 +1,4 @@
packages: packages:
- 'packages/*' - 'packages/*'
- 'fixtures/*' - 'fixtures/*'
- 'configs/*'