@k03mad/oxlint-config 0.2.0 → 0.3.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/.oxfmtrc.json +12 -2
- package/.oxlintrc.json +32 -2
- package/.vscode/settings.json +25 -1
- package/package.json +3 -3
- package/plugin/rules/padding-line-between-statements.js +4 -0
- package/.editorconfig +0 -12
package/.oxfmtrc.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"arrowParens": "avoid",
|
|
6
6
|
"bracketSpacing": false,
|
|
7
7
|
"quoteProps": "consistent",
|
|
8
|
-
"
|
|
8
|
+
"sortImports": {
|
|
9
9
|
"groups": [
|
|
10
10
|
["builtin"],
|
|
11
11
|
["external", "type-external"],
|
|
@@ -14,5 +14,15 @@
|
|
|
14
14
|
["sibling", "type-sibling"],
|
|
15
15
|
["index", "type-index"]
|
|
16
16
|
]
|
|
17
|
-
}
|
|
17
|
+
},
|
|
18
|
+
"tabWidth": 4,
|
|
19
|
+
"overrides": [
|
|
20
|
+
{
|
|
21
|
+
"files": ["*.json", "*.jsonc", "*.yaml", "*.yml"],
|
|
22
|
+
"options": {
|
|
23
|
+
"tabWidth": 2,
|
|
24
|
+
"trailingComma": "none"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
]
|
|
18
28
|
}
|
package/.oxlintrc.json
CHANGED
|
@@ -73,6 +73,16 @@
|
|
|
73
73
|
"next": "*",
|
|
74
74
|
"prev": "multiline-const"
|
|
75
75
|
},
|
|
76
|
+
{
|
|
77
|
+
"blankLine": "always",
|
|
78
|
+
"next": "multiline-let",
|
|
79
|
+
"prev": "*"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"blankLine": "always",
|
|
83
|
+
"next": "*",
|
|
84
|
+
"prev": "multiline-let"
|
|
85
|
+
},
|
|
76
86
|
{
|
|
77
87
|
"blankLine": "always",
|
|
78
88
|
"next": "multiline-expression",
|
|
@@ -85,13 +95,33 @@
|
|
|
85
95
|
},
|
|
86
96
|
{
|
|
87
97
|
"blankLine": "always",
|
|
88
|
-
"next": "
|
|
98
|
+
"next": "class",
|
|
89
99
|
"prev": "*"
|
|
90
100
|
},
|
|
91
101
|
{
|
|
92
102
|
"blankLine": "always",
|
|
93
103
|
"next": "*",
|
|
94
|
-
"prev": "
|
|
104
|
+
"prev": "class"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"blankLine": "always",
|
|
108
|
+
"next": "multiline-return",
|
|
109
|
+
"prev": "*"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"blankLine": "always",
|
|
113
|
+
"next": "*",
|
|
114
|
+
"prev": "multiline-return"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"blankLine": "always",
|
|
118
|
+
"next": "multiline-export",
|
|
119
|
+
"prev": "*"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"blankLine": "always",
|
|
123
|
+
"next": "*",
|
|
124
|
+
"prev": "multiline-export"
|
|
95
125
|
},
|
|
96
126
|
{
|
|
97
127
|
"blankLine": "always",
|
package/.vscode/settings.json
CHANGED
|
@@ -1,3 +1,27 @@
|
|
|
1
1
|
{
|
|
2
|
-
"cSpell.words": ["nvmrc", "oxfmt", "oxfmtrc", "oxlint", "oxlintrc"]
|
|
2
|
+
"cSpell.words": ["nvmrc", "oxfmt", "oxfmtrc", "oxlint", "oxlintrc"],
|
|
3
|
+
"oxc.fmt.configPath": ".oxfmtrc.json",
|
|
4
|
+
"editor.formatOnSave": true,
|
|
5
|
+
"editor.defaultFormatter": "oxc.oxc-vscode",
|
|
6
|
+
"editor.codeActionsOnSave": {
|
|
7
|
+
"source.fixAll.oxc": "always"
|
|
8
|
+
},
|
|
9
|
+
"[javascript]": {
|
|
10
|
+
"editor.defaultFormatter": "oxc.oxc-vscode"
|
|
11
|
+
},
|
|
12
|
+
"[json]": {
|
|
13
|
+
"editor.defaultFormatter": "oxc.oxc-vscode"
|
|
14
|
+
},
|
|
15
|
+
"[jsonc]": {
|
|
16
|
+
"editor.defaultFormatter": "oxc.oxc-vscode"
|
|
17
|
+
},
|
|
18
|
+
"[yaml]": {
|
|
19
|
+
"editor.defaultFormatter": "oxc.oxc-vscode"
|
|
20
|
+
},
|
|
21
|
+
"[markdown]": {
|
|
22
|
+
"editor.defaultFormatter": "oxc.oxc-vscode"
|
|
23
|
+
},
|
|
24
|
+
"[typescript]": {
|
|
25
|
+
"editor.defaultFormatter": "oxc.oxc-vscode"
|
|
26
|
+
}
|
|
3
27
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@k03mad/oxlint-config",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "My Oxlint config",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"maintainers": [
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
},
|
|
17
17
|
"devDependencies": {
|
|
18
18
|
"husky": "9.1.7",
|
|
19
|
-
"oxfmt": "0.
|
|
20
|
-
"oxlint": "1.
|
|
19
|
+
"oxfmt": "0.38.0",
|
|
20
|
+
"oxlint": "1.53.0"
|
|
21
21
|
},
|
|
22
22
|
"engines": {
|
|
23
23
|
"node": ">=24"
|
|
@@ -5,6 +5,7 @@ const isClosingBraceToken = token => token.value === '}' && token.type === 'Punc
|
|
|
5
5
|
const isParenthesized = (node, sourceCode) => {
|
|
6
6
|
const previousToken = sourceCode.getTokenBefore(node);
|
|
7
7
|
const nextToken = sourceCode.getTokenAfter(node);
|
|
8
|
+
|
|
8
9
|
return (
|
|
9
10
|
Boolean(previousToken && nextToken) &&
|
|
10
11
|
previousToken.value === '(' &&
|
|
@@ -80,6 +81,7 @@ const isObjectNotArray = obj => typeof obj === 'object' && obj !== null && !Arra
|
|
|
80
81
|
|
|
81
82
|
const deepMerge = (first = {}, second = {}) => {
|
|
82
83
|
const keys = new Set([...Object.keys(first), ...Object.keys(second)]);
|
|
84
|
+
|
|
83
85
|
return [...keys].reduce((acc, key) => {
|
|
84
86
|
const firstHasKey = key in first;
|
|
85
87
|
const secondHasKey = key in second;
|
|
@@ -105,6 +107,7 @@ const createRule = ({name, create, meta}) => ({
|
|
|
105
107
|
create: context => {
|
|
106
108
|
const {defaultOptions = []} = meta;
|
|
107
109
|
const optionsCount = Math.max(context.options.length, defaultOptions.length);
|
|
110
|
+
|
|
108
111
|
return create(
|
|
109
112
|
context,
|
|
110
113
|
Array.from({length: optionsCount}, (_, i) =>
|
|
@@ -208,6 +211,7 @@ const getActualLastToken = (node, sourceCode) => {
|
|
|
208
211
|
const semiToken = sourceCode.getLastToken(node);
|
|
209
212
|
const prevToken = sourceCode.getTokenBefore(semiToken);
|
|
210
213
|
const nextToken = sourceCode.getTokenAfter(semiToken);
|
|
214
|
+
|
|
211
215
|
return prevToken &&
|
|
212
216
|
nextToken &&
|
|
213
217
|
prevToken.range[0] >= node.range[0] &&
|