@chris.araneo/eslint-config 0.0.127 → 0.0.129

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  <p align="center">
4
4
  <img src="https://avatars.githubusercontent.com/u/6019716" alt="Official @eslint GitHub user avatar" width="256px" height="256px"/>
5
5
  <br>
6
- <a href="https://github.com/ChrisAraneo/eslint-config/blob/master/package.json"><img src="https://img.shields.io/badge/version-v0.0.127-blue" alt="version"></a>
6
+ <a href="https://github.com/ChrisAraneo/eslint-config/blob/master/package.json"><img src="https://img.shields.io/badge/version-v0.0.128-blue" alt="version"></a>
7
7
  <a href="https://github.com/ChrisAraneo/eslint-config/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="@chris.araneo/eslint-config is released under the MIT license."></a>
8
8
  <a href="https://github.com/ChrisAraneo/eslint-config/actions/workflows/ci.yml"><img alt="GitHub CI Status" src="https://img.shields.io/github/actions/workflow/status/ChrisAraneo/eslint-config/ci.yml?label=CI&logo=GitHub"></a>
9
9
  <br>
@@ -4,6 +4,7 @@ import { createTypeScriptConfigBlock, createTypeScriptTestsConfigBlock, } from '
4
4
  import { setTsconfigRootDir } from '../utils/set-tsconfig-root-dir.js';
5
5
  import { getAngularSourcesConfigs } from './angular-eslint.js';
6
6
  import { getAngularTemplatesConfigs } from './angular-eslint-template.js';
7
+ import { getNgPerfectionistConfigs } from './ng-perfectionist.js';
7
8
  export const createAngularConfigBlock = ({ ignored = [], jsons = [], prefix = 'app', shouldResolveAppRootDir = false, sources = [], templates = [], tests = [], tsconfigRootDir = undefined, } = {}) => ({
8
9
  [IGNORED]: [
9
10
  {
@@ -14,6 +15,7 @@ export const createAngularConfigBlock = ({ ignored = [], jsons = [], prefix = 'a
14
15
  [SOURCES]: [
15
16
  ...(createTypeScriptConfigBlock({ sources })[SOURCES] || []),
16
17
  ...getAngularSourcesConfigs({ prefix, sources }),
18
+ ...getNgPerfectionistConfigs({ sources }),
17
19
  ].map((config) => setTsconfigRootDir({
18
20
  config,
19
21
  shouldResolveAppRootDir,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/angular/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,OAAO,EACP,KAAK,EACL,OAAO,EACP,SAAS,EACT,KAAK,GACN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACL,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,OAAO,GAAG,EAAE,EACZ,KAAK,GAAG,EAAE,EACV,MAAM,GAAG,KAAK,EACd,uBAAuB,GAAG,KAAK,EAC/B,OAAO,GAAG,EAAE,EACZ,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,EAAE,EACV,eAAe,GAAG,SAAS,MACH,EAAE,EAAe,EAAE,CAAC,CAAC;IAC7C,CAAC,OAAO,CAAC,EAAE;QACT;YACE,OAAO,EAAE,OAAO;SACjB;KACF;IACD,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC,OAAO,CAAC,EAAE;QACT,GAAG,CAAC,2BAA2B,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5D,GAAG,wBAAwB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;KACjD,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACf,kBAAkB,CAAC;QACjB,MAAM;QACN,uBAAuB;QACvB,OAAO;QACP,eAAe;KAChB,CAAC,CACH;IACD,CAAC,SAAS,CAAC,EAAE,0BAA0B,CAAC,EAAE,SAAS,EAAE,CAAC;IACtD,CAAC,KAAK,CAAC,EAAE;QACP,GAAG,CAAC,gCAAgC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;KACvE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACf,kBAAkB,CAAC;QACjB,MAAM;QACN,uBAAuB;QACvB,OAAO,EAAE,KAAK;QACd,eAAe;KAChB,CAAC,CACH;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/angular/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,OAAO,EACP,KAAK,EACL,OAAO,EACP,SAAS,EACT,KAAK,GACN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACL,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAElE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,OAAO,GAAG,EAAE,EACZ,KAAK,GAAG,EAAE,EACV,MAAM,GAAG,KAAK,EACd,uBAAuB,GAAG,KAAK,EAC/B,OAAO,GAAG,EAAE,EACZ,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,EAAE,EACV,eAAe,GAAG,SAAS,MACH,EAAE,EAAe,EAAE,CAAC,CAAC;IAC7C,CAAC,OAAO,CAAC,EAAE;QACT;YACE,OAAO,EAAE,OAAO;SACjB;KACF;IACD,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC,OAAO,CAAC,EAAE;QACT,GAAG,CAAC,2BAA2B,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5D,GAAG,wBAAwB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QAChD,GAAG,yBAAyB,CAAC,EAAE,OAAO,EAAE,CAAC;KAC1C,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACf,kBAAkB,CAAC;QACjB,MAAM;QACN,uBAAuB;QACvB,OAAO;QACP,eAAe;KAChB,CAAC,CACH;IACD,CAAC,SAAS,CAAC,EAAE,0BAA0B,CAAC,EAAE,SAAS,EAAE,CAAC;IACtD,CAAC,KAAK,CAAC,EAAE;QACP,GAAG,CAAC,gCAAgC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;KACvE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACf,kBAAkB,CAAC;QACjB,MAAM;QACN,uBAAuB;QACvB,OAAO,EAAE,KAAK;QACd,eAAe;KAChB,CAAC,CACH;CACF,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Linter } from 'eslint';
2
+ interface Input {
3
+ sources?: string[];
4
+ }
5
+ export declare const getNgPerfectionistConfigs: ({ sources, }?: Input) => Linter.Config[];
6
+ export {};
@@ -0,0 +1,20 @@
1
+ import ngPerfectionist from '@chris.araneo/eslint-plugin-ng-perfectionist';
2
+ import { match } from 'ts-pattern';
3
+ export const getNgPerfectionistConfigs = ({ sources, } = {}) => match(sources?.length ?? 0)
4
+ .with(0, () => [])
5
+ .otherwise(() => [
6
+ {
7
+ files: sources,
8
+ plugins: {
9
+ '@chris.araneo/ng-perfectionist': ngPerfectionist,
10
+ },
11
+ rules: {
12
+ '@chris.araneo/ng-perfectionist/sort-component-imports': 'error',
13
+ '@chris.araneo/ng-perfectionist/sort-component-style-urls': 'error',
14
+ '@chris.araneo/ng-perfectionist/sort-ng-module-declarations': 'error',
15
+ '@chris.araneo/ng-perfectionist/sort-ng-module-exports': 'error',
16
+ '@chris.araneo/ng-perfectionist/sort-ng-module-imports': 'error',
17
+ },
18
+ },
19
+ ]);
20
+ //# sourceMappingURL=ng-perfectionist.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-perfectionist.js","sourceRoot":"/","sources":["src/angular/ng-perfectionist.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,8CAA8C,CAAC;AAE3E,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAMnC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,EACxC,OAAO,MACE,EAAE,EAAmB,EAAE,CAChC,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC;KACxB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;KACjB,SAAS,CAAC,GAAG,EAAE,CAAC;IACf;QACE,KAAK,EAAE,OAAO;QACd,OAAO,EAAE;YACP,gCAAgC,EAAE,eAAe;SAClD;QACD,KAAK,EAAE;YACL,uDAAuD,EAAE,OAAO;YAChE,0DAA0D,EAAE,OAAO;YACnE,4DAA4D,EAAE,OAAO;YACrE,uDAAuD,EAAE,OAAO;YAChE,uDAAuD,EAAE,OAAO;SACjE;KACe;CACnB,CAAC,CAAC"}
@@ -11,6 +11,7 @@ export const getEslintConfigs = ({ isTests = false, sources = [], } = {}) => mat
11
11
  files: sources,
12
12
  rules: {
13
13
  ...eslint.configs.all.rules,
14
+ 'func-names': errorWhenNotTests,
14
15
  'id-length': 'off',
15
16
  'init-declarations': errorWhenNotTests,
16
17
  'max-classes-per-file': isTests ? 'off' : ['error', 1],
@@ -1 +1 @@
1
- {"version":3,"file":"eslint.js","sourceRoot":"/","sources":["src/typescript/eslint.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,YAAY,CAAC;AAEhC,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAOnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAC/B,OAAO,GAAG,KAAK,EACf,OAAO,GAAG,EAAE,MACH,EAAE,EAAmB,EAAE,CAChC,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC;KACxB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;KACjB,SAAS,CAAC,GAAG,EAAE,CAAC;IACf,KAAK,CAAC;QACJ,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;KAC7C,CAAC;SACC,IAAI,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC;QAChC,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK;YAC3B,WAAW,EAAE,KAAK;YAClB,mBAAmB,EAAE,iBAAiB;YACtC,sBAAsB,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,WAAW,EAAE,iBAAiB;YAC9B,wBAAwB,EAAE,iBAAiB;YAC3C,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1B,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACjD,SAAS,EAAE,KAAK;YAChB,kBAAkB,EAAE,KAAK;YACzB,sBAAsB,EAAE,KAAK;YAC7B,kBAAkB,EAAE,KAAK;YACzB,aAAa,EAAE,KAAK;YACpB,YAAY,EAAE,KAAK;YACnB,sBAAsB,EAAE,KAAK;YAC7B,gBAAgB,EAAE,KAAK;YACvB,SAAS,EAAE,KAAK;YAChB,qBAAqB,EAAE,KAAK;YAC5B,SAAS,EAAE,KAAK;YAChB,wBAAwB,EAAE,iBAAiB;YAC3C,cAAc,EAAE,KAAK;YACrB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,KAAK;SACnB;KACF,CAAC,CAAC;SACF,KAAK,EAA8B;CACvC,CAAC,CAAC"}
1
+ {"version":3,"file":"eslint.js","sourceRoot":"/","sources":["src/typescript/eslint.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,YAAY,CAAC;AAEhC,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAOnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAC/B,OAAO,GAAG,KAAK,EACf,OAAO,GAAG,EAAE,MACH,EAAE,EAAmB,EAAE,CAChC,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC;KACxB,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;KACjB,SAAS,CAAC,GAAG,EAAE,CAAC;IACf,KAAK,CAAC;QACJ,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;KAC7C,CAAC;SACC,IAAI,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,CAAC;QAChC,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK;YAC3B,YAAY,EAAE,iBAAiB;YAC/B,WAAW,EAAE,KAAK;YAClB,mBAAmB,EAAE,iBAAiB;YACtC,sBAAsB,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,WAAW,EAAE,iBAAiB;YAC9B,wBAAwB,EAAE,iBAAiB;YAC3C,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1B,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACjD,SAAS,EAAE,KAAK;YAChB,kBAAkB,EAAE,KAAK;YACzB,sBAAsB,EAAE,KAAK;YAC7B,kBAAkB,EAAE,KAAK;YACzB,aAAa,EAAE,KAAK;YACpB,YAAY,EAAE,KAAK;YACnB,sBAAsB,EAAE,KAAK;YAC7B,gBAAgB,EAAE,KAAK;YACvB,SAAS,EAAE,KAAK;YAChB,qBAAqB,EAAE,KAAK;YAC5B,SAAS,EAAE,KAAK;YAChB,wBAAwB,EAAE,iBAAiB;YAC3C,cAAc,EAAE,KAAK;YACrB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,KAAK;SACnB;KACF,CAAC,CAAC;SACF,KAAK,EAA8B;CACvC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chris.araneo/eslint-config",
3
- "version": "0.0.127",
3
+ "version": "0.0.129",
4
4
  "description": "ESLint shareable configuration",
5
5
  "keywords": [
6
6
  "eslint",
@@ -57,6 +57,7 @@
57
57
  "typescript-eslint": "^8.56.0"
58
58
  },
59
59
  "devDependencies": {
60
+ "@chris.araneo/eslint-plugin-ng-perfectionist": "^0.0.1",
60
61
  "@jest/globals": "^30.2.0",
61
62
  "@types/app-root-dir": "^0.1.4",
62
63
  "@types/jest": "^30.0.0",