@jarsec/eslint-config 6.0.0 → 6.1.0

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/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @jarsec/eslint-config
2
2
 
3
+ ## 6.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - ea942b3: Turn ASI off
8
+ - bf4b7f2: Re-require semicolons and up indent to 4 spaces
9
+ - 2265b31: Codify preference for types over interfaces
10
+ - 4e31593: multiline-comment-style: use starred-block instead of separate-lines
11
+
12
+ ## 6.0.1
13
+
14
+ ### Patch Changes
15
+
16
+ - 92dcc6b: chore(deps): update devDependency eslint to v9
17
+
3
18
  ## 6.0.0
4
19
 
5
20
  ### Major Changes
package/index.mjs CHANGED
@@ -1,11 +1,11 @@
1
1
  // @ts-check
2
2
 
3
- import eslint from '@eslint/js';
4
- import stylistic from '@stylistic/eslint-plugin';
5
- import nodePlugin from 'eslint-plugin-n';
6
- import perfectionist from 'eslint-plugin-perfectionist';
7
- import unicorn from 'eslint-plugin-unicorn';
8
- import tseslint from 'typescript-eslint';
3
+ import eslint from '@eslint/js'
4
+ import stylistic from '@stylistic/eslint-plugin'
5
+ import nodePlugin from 'eslint-plugin-n'
6
+ import perfectionist from 'eslint-plugin-perfectionist'
7
+ import unicorn from 'eslint-plugin-unicorn'
8
+ import tseslint from 'typescript-eslint'
9
9
 
10
10
  export default tseslint.config(
11
11
  eslint.configs.recommended,
@@ -20,7 +20,7 @@ export default tseslint.config(
20
20
  braceStyle: '1tbs',
21
21
  commaDangle: 'always-multiline',
22
22
  flat: true,
23
- indent: 2,
23
+ indent: 4,
24
24
  jsx: true,
25
25
  pluginName: '@stylistic',
26
26
  quoteProps: 'consistent-as-needed',
@@ -29,11 +29,15 @@ export default tseslint.config(
29
29
  }),
30
30
  {
31
31
  rules: {
32
- 'multiline-comment-style': ['error', 'separate-lines'],
32
+ '@typescript-eslint/consistent-type-definitions': [
33
+ 'error',
34
+ 'type',
35
+ ],
36
+ 'multiline-comment-style': ['error', 'starred-block'],
33
37
  'n/no-missing-import': 'off',
34
38
  'n/no-process-exit': 'off',
35
39
  'unicorn/no-process-exit': 'off',
36
40
  'unicorn/prevent-abbreviations': 'off',
37
41
  },
38
42
  },
39
- );
43
+ )
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jarsec/eslint-config",
3
- "version": "6.0.0",
3
+ "version": "6.1.0",
4
4
  "description": "jsec's eslint configurations",
5
5
  "author": "Jarrod Seccombe <jarrod.seccombe@icloud.com>",
6
6
  "license": "MIT",
@@ -24,7 +24,7 @@
24
24
  },
25
25
  "devDependencies": {
26
26
  "@types/node": "^20.11.20",
27
- "eslint": "^8.57.0",
27
+ "eslint": "^9.0.0",
28
28
  "typescript": "^5.3.3"
29
29
  },
30
30
  "peerDependencies": {
package/configs/style.js DELETED
@@ -1,142 +0,0 @@
1
- module.exports = {
2
- '@stylistic/array-bracket-newline': ['error', 'consistent'],
3
- '@stylistic/array-bracket-spacing': ['error', 'never', {
4
- arraysInArrays: true,
5
- objectsInArrays: false,
6
- singleValue: true
7
- }],
8
- '@stylistic/array-element-newline': ['error', 'consistent'],
9
- '@stylistic/arrow-parens': ['error', 'as-needed', { requireForBlockBody: true }],
10
- '@stylistic/arrow-spacing': 'error',
11
- '@stylistic/block-spacing': 'error',
12
- '@stylistic/brace-style': ['error', '1tbs', {
13
- allowSingleLine: true
14
- }],
15
- '@stylistic/comma-dangle': ['error', 'only-multiline'],
16
- '@stylistic/comma-spacing': 'error',
17
- '@stylistic/comma-style': ['error', 'last'],
18
- '@stylistic/computed-property-spacing': ['error', 'never', { enforceForClassMembers: true }],
19
- '@stylistic/dot-location': ['error', 'property'],
20
- '@stylistic/eol-last': ['error', 'always'],
21
- '@stylistic/function-call-argument-newline': ['error', 'consistent'],
22
- '@stylistic/function-call-spacing': 'error',
23
- '@stylistic/function-paren-newline': ['error', 'consistent'],
24
- '@stylistic/generator-star-spacing': ['error', 'after'],
25
- '@stylistic/implicit-arrow-linebreak': ['error', 'beside'],
26
- '@stylistic/indent': ['error', 2],
27
- '@stylistic/indent-binary-ops': ['error', 2],
28
- '@stylistic/key-spacing': ['error', {
29
- multiLine: {
30
- afterColon: true,
31
- beforeColon: false,
32
- mode: 'strict'
33
- },
34
- singleLine: {
35
- afterColon: true,
36
- beforeColon: false,
37
- mode: 'strict'
38
- }
39
- }],
40
- '@stylistic/keyword-spacing': 'error',
41
- '@stylistic/linebreak-style': ['error', 'unix'],
42
- '@stylistic/lines-around-comment': ['error', {
43
- allowBlockStart: true,
44
- beforeBlockComment: true,
45
- }],
46
- '@stylistic/lines-between-class-members': ['error', 'always'],
47
- '@stylistic/max-len': ['error', {
48
- code: 100,
49
- comments: 80,
50
- ignoreTrailingComments: true,
51
- ignoreUrls: true,
52
- tabWidth: 2
53
- }],
54
- '@stylistic/max-statements-per-line': ['error', { max: 2 }],
55
- '@stylistic/member-delimiter-style': ['error', {
56
- multiline: {
57
- delimiter: 'comma',
58
- requireLast: true
59
- },
60
- multilineDetection: 'brackets',
61
- singleline: {
62
- delimiter: 'comma',
63
- requireLast: false
64
- }
65
- }],
66
- '@stylistic/multiline-ternary': ['error', 'always'],
67
- '@stylistic/new-parens': ['error', 'always'],
68
- '@stylistic/newline-per-chained-call': ['error', { ignoreChainWithDepth: 2 }],
69
- '@stylistic/no-confusing-arrow': ['error', {
70
- allowParens: true,
71
- onlyOneSimpleParam: true
72
- }],
73
- '@stylistic/no-extra-parens': ['error', 'all', {
74
- nestedBinaryExpressions: false
75
- }],
76
- '@stylistic/no-extra-semi': 'error',
77
- '@stylistic/no-floating-decimal': 'error',
78
- '@stylistic/no-mixed-operators': 'error',
79
- '@stylistic/no-mixed-spaces-and-tabs': 'error',
80
- '@stylistic/no-multi-spaces': 'error',
81
- '@stylistic/no-multiple-empty-lines': ['error', {
82
- max: 1,
83
- maxEOF: 1
84
- }],
85
- '@stylistic/no-tabs': ['error', { allowIndentationTabs: true }],
86
- '@stylistic/no-trailing-spaces': ['error', {
87
- ignoreComments: false,
88
- skipBlankLines: false
89
- }],
90
- '@stylistic/no-whitespace-before-property': 'error',
91
- '@stylistic/nonblock-statement-body-position': ['error', 'below'],
92
- '@stylistic/object-curly-newline': ['error', {
93
- consistent: true,
94
- minProperties: 3
95
- }],
96
- '@stylistic/object-curly-spacing': ['error', 'always', {
97
- arraysInObjects: false,
98
- objectsInObjects: false
99
- }],
100
- '@stylistic/one-var-declaration-per-line': ['error', 'initializations'],
101
- '@stylistic/operator-linebreak': ['error', 'after', {
102
- overrides: {
103
- ':': 'before',
104
- '?': 'before'
105
- }
106
- }],
107
- '@stylistic/padded-blocks': ['error', 'never'],
108
- '@stylistic/quote-props': ['error', 'consistent-as-needed'],
109
- '@stylistic/quotes': ['error', 'single', {
110
- allowTemplateLiterals: true,
111
- avoidEscape: true
112
- }],
113
- '@stylistic/rest-spread-spacing': ['error', 'never'],
114
- '@stylistic/semi': ['error', 'always'],
115
- '@stylistic/semi-spacing': 'error',
116
- '@stylistic/semi-style': 'error',
117
- '@stylistic/space-before-blocks': 'error',
118
- '@stylistic/space-before-function-paren': ['error', {
119
- anonymous: 'always',
120
- asyncArrow: 'always',
121
- named: 'never'
122
- }],
123
- '@stylistic/space-in-parens': ['error', 'never'],
124
- '@stylistic/switch-colon-spacing': 'error',
125
- '@stylistic/template-curly-spacing': 'error',
126
- '@stylistic/template-tag-spacing': ['error', 'always'],
127
- '@stylistic/type-annotation-spacing': ['error', {
128
- after: true,
129
- before: false,
130
- overrides: {
131
- arrow: {
132
- after: true,
133
- before: true
134
- }
135
- }
136
- }],
137
- '@stylistic/type-generic-spacing': 'error',
138
- '@stylistic/type-named-tuple-spacing': 'error',
139
- '@stylistic/wrap-regex': 'error',
140
- '@stylistic/yield-star-spacing': ['error', 'after']
141
- };
142
-