@biomejs/biome 2.3.15 → 2.4.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/configuration_schema.json +318 -153
- package/package.json +9 -9
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"type": "object",
|
|
80
80
|
"properties": {
|
|
81
81
|
"noAccessKey": {
|
|
82
|
-
"description": "Enforce that the
|
|
82
|
+
"description": "Enforce that the accesskey attribute is not used on any HTML element.\nSee https://biomejs.dev/linter/rules/no-access-key",
|
|
83
83
|
"anyOf": [
|
|
84
84
|
{ "$ref": "#/$defs/NoAccessKeyConfiguration" },
|
|
85
85
|
{ "type": "null" }
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
]
|
|
101
101
|
},
|
|
102
102
|
"noAutofocus": {
|
|
103
|
-
"description": "Enforce that
|
|
103
|
+
"description": "Enforce that the autofocus attribute is not used on elements.\nSee https://biomejs.dev/linter/rules/no-autofocus",
|
|
104
104
|
"anyOf": [
|
|
105
105
|
{ "$ref": "#/$defs/NoAutofocusConfiguration" },
|
|
106
106
|
{ "type": "null" }
|
|
@@ -162,7 +162,7 @@
|
|
|
162
162
|
]
|
|
163
163
|
},
|
|
164
164
|
"noPositiveTabindex": {
|
|
165
|
-
"description": "Prevent the usage of positive integers on
|
|
165
|
+
"description": "Prevent the usage of positive integers on tabindex attribute.\nSee https://biomejs.dev/linter/rules/no-positive-tabindex",
|
|
166
166
|
"anyOf": [
|
|
167
167
|
{ "$ref": "#/$defs/NoPositiveTabindexConfiguration" },
|
|
168
168
|
{ "type": "null" }
|
|
@@ -238,7 +238,7 @@
|
|
|
238
238
|
]
|
|
239
239
|
},
|
|
240
240
|
"useButtonType": {
|
|
241
|
-
"description": "Enforces the usage of the attribute type for the element button.\nSee https://biomejs.dev/linter/rules/use-button-type",
|
|
241
|
+
"description": "Enforces the usage and validity of the attribute type for the element button.\nSee https://biomejs.dev/linter/rules/use-button-type",
|
|
242
242
|
"anyOf": [
|
|
243
243
|
{ "$ref": "#/$defs/UseButtonTypeConfiguration" },
|
|
244
244
|
{ "type": "null" }
|
|
@@ -531,6 +531,13 @@
|
|
|
531
531
|
{ "type": "null" }
|
|
532
532
|
]
|
|
533
533
|
},
|
|
534
|
+
"noUselessCatchBinding": {
|
|
535
|
+
"description": "Disallow unused catch bindings.\nSee https://biomejs.dev/linter/rules/no-useless-catch-binding",
|
|
536
|
+
"anyOf": [
|
|
537
|
+
{ "$ref": "#/$defs/NoUselessCatchBindingConfiguration" },
|
|
538
|
+
{ "type": "null" }
|
|
539
|
+
]
|
|
540
|
+
},
|
|
534
541
|
"noUselessConstructor": {
|
|
535
542
|
"description": "Disallow unnecessary constructors.\nSee https://biomejs.dev/linter/rules/no-useless-constructor",
|
|
536
543
|
"anyOf": [
|
|
@@ -629,6 +636,13 @@
|
|
|
629
636
|
{ "type": "null" }
|
|
630
637
|
]
|
|
631
638
|
},
|
|
639
|
+
"noUselessUndefined": {
|
|
640
|
+
"description": "Disallow the use of useless undefined.\nSee https://biomejs.dev/linter/rules/no-useless-undefined",
|
|
641
|
+
"anyOf": [
|
|
642
|
+
{ "$ref": "#/$defs/NoUselessUndefinedConfiguration" },
|
|
643
|
+
{ "type": "null" }
|
|
644
|
+
]
|
|
645
|
+
},
|
|
632
646
|
"noUselessUndefinedInitialization": {
|
|
633
647
|
"description": "Disallow initializing variables to undefined.\nSee https://biomejs.dev/linter/rules/no-useless-undefined-initialization",
|
|
634
648
|
"anyOf": [
|
|
@@ -682,6 +696,13 @@
|
|
|
682
696
|
{ "type": "null" }
|
|
683
697
|
]
|
|
684
698
|
},
|
|
699
|
+
"useMaxParams": {
|
|
700
|
+
"description": "Enforce a maximum number of parameters in function definitions.\nSee https://biomejs.dev/linter/rules/use-max-params",
|
|
701
|
+
"anyOf": [
|
|
702
|
+
{ "$ref": "#/$defs/UseMaxParamsConfiguration" },
|
|
703
|
+
{ "type": "null" }
|
|
704
|
+
]
|
|
705
|
+
},
|
|
685
706
|
"useNumericLiterals": {
|
|
686
707
|
"description": "Disallow parseInt() and Number.parseInt() in favor of binary, octal, and hexadecimal literals.\nSee https://biomejs.dev/linter/rules/use-numeric-literals",
|
|
687
708
|
"anyOf": [
|
|
@@ -905,6 +926,13 @@
|
|
|
905
926
|
{ "type": "null" }
|
|
906
927
|
]
|
|
907
928
|
},
|
|
929
|
+
"noNextAsyncClientComponent": {
|
|
930
|
+
"description": "Prevent client components from being async functions.\nSee https://biomejs.dev/linter/rules/no-next-async-client-component",
|
|
931
|
+
"anyOf": [
|
|
932
|
+
{ "$ref": "#/$defs/NoNextAsyncClientComponentConfiguration" },
|
|
933
|
+
{ "type": "null" }
|
|
934
|
+
]
|
|
935
|
+
},
|
|
908
936
|
"noNodejsModules": {
|
|
909
937
|
"description": "Forbid the use of Node.js builtin modules.\nSee https://biomejs.dev/linter/rules/no-nodejs-modules",
|
|
910
938
|
"anyOf": [
|
|
@@ -1087,6 +1115,13 @@
|
|
|
1087
1115
|
{ "type": "null" }
|
|
1088
1116
|
]
|
|
1089
1117
|
},
|
|
1118
|
+
"noUnresolvedImports": {
|
|
1119
|
+
"description": "Warn when importing non-existing exports.\nSee https://biomejs.dev/linter/rules/no-unresolved-imports",
|
|
1120
|
+
"anyOf": [
|
|
1121
|
+
{ "$ref": "#/$defs/NoUnresolvedImportsConfiguration" },
|
|
1122
|
+
{ "type": "null" }
|
|
1123
|
+
]
|
|
1124
|
+
},
|
|
1090
1125
|
"noUnsafeFinally": {
|
|
1091
1126
|
"description": "Disallow control flow statements in finally blocks.\nSee https://biomejs.dev/linter/rules/no-unsafe-finally",
|
|
1092
1127
|
"anyOf": [
|
|
@@ -1150,6 +1185,41 @@
|
|
|
1150
1185
|
{ "type": "null" }
|
|
1151
1186
|
]
|
|
1152
1187
|
},
|
|
1188
|
+
"noVueDataObjectDeclaration": {
|
|
1189
|
+
"description": "Enforce that Vue component data options are declared as functions.\nSee https://biomejs.dev/linter/rules/no-vue-data-object-declaration",
|
|
1190
|
+
"anyOf": [
|
|
1191
|
+
{ "$ref": "#/$defs/NoVueDataObjectDeclarationConfiguration" },
|
|
1192
|
+
{ "type": "null" }
|
|
1193
|
+
]
|
|
1194
|
+
},
|
|
1195
|
+
"noVueDuplicateKeys": {
|
|
1196
|
+
"description": "Disallow duplicate keys in Vue component data, methods, computed properties, and other options.\nSee https://biomejs.dev/linter/rules/no-vue-duplicate-keys",
|
|
1197
|
+
"anyOf": [
|
|
1198
|
+
{ "$ref": "#/$defs/NoVueDuplicateKeysConfiguration" },
|
|
1199
|
+
{ "type": "null" }
|
|
1200
|
+
]
|
|
1201
|
+
},
|
|
1202
|
+
"noVueReservedKeys": {
|
|
1203
|
+
"description": "Disallow reserved keys in Vue component data and computed properties.\nSee https://biomejs.dev/linter/rules/no-vue-reserved-keys",
|
|
1204
|
+
"anyOf": [
|
|
1205
|
+
{ "$ref": "#/$defs/NoVueReservedKeysConfiguration" },
|
|
1206
|
+
{ "type": "null" }
|
|
1207
|
+
]
|
|
1208
|
+
},
|
|
1209
|
+
"noVueReservedProps": {
|
|
1210
|
+
"description": "Disallow reserved names to be used as props.\nSee https://biomejs.dev/linter/rules/no-vue-reserved-props",
|
|
1211
|
+
"anyOf": [
|
|
1212
|
+
{ "$ref": "#/$defs/NoVueReservedPropsConfiguration" },
|
|
1213
|
+
{ "type": "null" }
|
|
1214
|
+
]
|
|
1215
|
+
},
|
|
1216
|
+
"noVueSetupPropsReactivityLoss": {
|
|
1217
|
+
"description": "Disallow destructuring of props passed to setup in Vue projects.\nSee https://biomejs.dev/linter/rules/no-vue-setup-props-reactivity-loss",
|
|
1218
|
+
"anyOf": [
|
|
1219
|
+
{ "$ref": "#/$defs/NoVueSetupPropsReactivityLossConfiguration" },
|
|
1220
|
+
{ "type": "null" }
|
|
1221
|
+
]
|
|
1222
|
+
},
|
|
1153
1223
|
"recommended": {
|
|
1154
1224
|
"description": "Enables the recommended rules for this group",
|
|
1155
1225
|
"type": ["boolean", "null"]
|
|
@@ -1224,6 +1294,20 @@
|
|
|
1224
1294
|
{ "type": "null" }
|
|
1225
1295
|
]
|
|
1226
1296
|
},
|
|
1297
|
+
"useQwikMethodUsage": {
|
|
1298
|
+
"description": "Disallow use* hooks outside of component$ or other use* hooks in Qwik applications.\nSee https://biomejs.dev/linter/rules/use-qwik-method-usage",
|
|
1299
|
+
"anyOf": [
|
|
1300
|
+
{ "$ref": "#/$defs/UseQwikMethodUsageConfiguration" },
|
|
1301
|
+
{ "type": "null" }
|
|
1302
|
+
]
|
|
1303
|
+
},
|
|
1304
|
+
"useQwikValidLexicalScope": {
|
|
1305
|
+
"description": "Disallow unserializable expressions in Qwik dollar ($) scopes.\nSee https://biomejs.dev/linter/rules/use-qwik-valid-lexical-scope",
|
|
1306
|
+
"anyOf": [
|
|
1307
|
+
{ "$ref": "#/$defs/UseQwikValidLexicalScopeConfiguration" },
|
|
1308
|
+
{ "type": "null" }
|
|
1309
|
+
]
|
|
1310
|
+
},
|
|
1227
1311
|
"useSingleJsDocAsterisk": {
|
|
1228
1312
|
"description": "Enforce JSDoc comment lines to start with a single asterisk, except for the first one.\nSee https://biomejs.dev/linter/rules/use-single-js-doc-asterisk",
|
|
1229
1313
|
"anyOf": [
|
|
@@ -1345,6 +1429,10 @@
|
|
|
1345
1429
|
"quoteStyle": {
|
|
1346
1430
|
"description": "The type of quotes used in CSS code. Defaults to double.",
|
|
1347
1431
|
"anyOf": [{ "$ref": "#/$defs/QuoteStyle" }, { "type": "null" }]
|
|
1432
|
+
},
|
|
1433
|
+
"trailingNewline": {
|
|
1434
|
+
"description": "Whether to add a trailing newline at the end of the file.\n\nSetting this option to `false` is **highly discouraged** because it could cause many problems with other tools:\n- <https://thoughtbot.com/blog/no-newline-at-end-of-file>\n- <https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804>\n- <https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files>\n\nDisable the option at your own risk.\n\nDefaults to true.",
|
|
1435
|
+
"anyOf": [{ "$ref": "#/$defs/TrailingNewline" }, { "type": "null" }]
|
|
1348
1436
|
}
|
|
1349
1437
|
},
|
|
1350
1438
|
"additionalProperties": false
|
|
@@ -1369,7 +1457,7 @@
|
|
|
1369
1457
|
"anyOf": [{ "$ref": "#/$defs/Bool" }, { "type": "null" }]
|
|
1370
1458
|
},
|
|
1371
1459
|
"cssModules": {
|
|
1372
|
-
"description": "Enables parsing of CSS Modules specific features.",
|
|
1460
|
+
"description": "Enables parsing of CSS Modules specific features. Enable this feature only\nwhen your files don't end in `.module.css`.",
|
|
1373
1461
|
"anyOf": [{ "$ref": "#/$defs/Bool" }, { "type": "null" }]
|
|
1374
1462
|
},
|
|
1375
1463
|
"tailwindDirectives": {
|
|
@@ -1583,6 +1671,10 @@
|
|
|
1583
1671
|
"description": "What's the max width of a line. Defaults to 80.",
|
|
1584
1672
|
"anyOf": [{ "$ref": "#/$defs/LineWidth" }, { "type": "null" }]
|
|
1585
1673
|
},
|
|
1674
|
+
"trailingNewline": {
|
|
1675
|
+
"description": "Whether to add a trailing newline at the end of the file.\n\nSetting this option to `false` is **highly discouraged** because it could cause many problems with other tools:\n- <https://thoughtbot.com/blog/no-newline-at-end-of-file>\n- <https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804>\n- <https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files>\n\nDisable the option at your own risk.\n\nDefaults to true.",
|
|
1676
|
+
"anyOf": [{ "$ref": "#/$defs/TrailingNewline" }, { "type": "null" }]
|
|
1677
|
+
},
|
|
1586
1678
|
"useEditorconfig": {
|
|
1587
1679
|
"description": "Use any `.editorconfig` files to configure the formatter. Configuration\nin `biome.json` will override `.editorconfig` configuration.\n\nDefault: `false`.",
|
|
1588
1680
|
"anyOf": [{ "$ref": "#/$defs/Bool" }, { "type": "null" }]
|
|
@@ -1668,6 +1760,10 @@
|
|
|
1668
1760
|
"description": "The type of quotes used in GraphQL code. Defaults to double.",
|
|
1669
1761
|
"anyOf": [{ "$ref": "#/$defs/QuoteStyle" }, { "type": "null" }],
|
|
1670
1762
|
"default": null
|
|
1763
|
+
},
|
|
1764
|
+
"trailingNewline": {
|
|
1765
|
+
"description": "Whether to add a trailing newline at the end of the file.\n\nSetting this option to `false` is **highly discouraged** because it could cause many problems with other tools:\n- <https://thoughtbot.com/blog/no-newline-at-end-of-file>\n- <https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804>\n- <https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files>\n\nDisable the option at your own risk.\n\nDefaults to true.",
|
|
1766
|
+
"anyOf": [{ "$ref": "#/$defs/TrailingNewline" }, { "type": "null" }]
|
|
1671
1767
|
}
|
|
1672
1768
|
},
|
|
1673
1769
|
"additionalProperties": false
|
|
@@ -1744,6 +1840,10 @@
|
|
|
1744
1840
|
"lineWidth": {
|
|
1745
1841
|
"description": "What's the max width of a line applied to Grit files. Defaults to 80.",
|
|
1746
1842
|
"anyOf": [{ "$ref": "#/$defs/LineWidth" }, { "type": "null" }]
|
|
1843
|
+
},
|
|
1844
|
+
"trailingNewline": {
|
|
1845
|
+
"description": "Whether to add a trailing newline at the end of the file.\n\nSetting this option to `false` is **highly discouraged** because it could cause many problems with other tools:\n- <https://thoughtbot.com/blog/no-newline-at-end-of-file>\n- <https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804>\n- <https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files>\n\nDisable the option at your own risk.\n\nDefaults to true.",
|
|
1846
|
+
"anyOf": [{ "$ref": "#/$defs/TrailingNewline" }, { "type": "null" }]
|
|
1747
1847
|
}
|
|
1748
1848
|
},
|
|
1749
1849
|
"additionalProperties": false
|
|
@@ -1920,6 +2020,10 @@
|
|
|
1920
2020
|
{ "type": "null" }
|
|
1921
2021
|
]
|
|
1922
2022
|
},
|
|
2023
|
+
"trailingNewline": {
|
|
2024
|
+
"description": "Whether to add a trailing newline at the end of the file.\n\nSetting this option to `false` is **highly discouraged** because it could cause many problems with other tools:\n- <https://thoughtbot.com/blog/no-newline-at-end-of-file>\n- <https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804>\n- <https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files>\n\nDisable the option at your own risk.\n\nDefaults to true.",
|
|
2025
|
+
"anyOf": [{ "$ref": "#/$defs/TrailingNewline" }, { "type": "null" }]
|
|
2026
|
+
},
|
|
1923
2027
|
"whitespaceSensitivity": {
|
|
1924
2028
|
"description": "Whether to account for whitespace sensitivity when formatting HTML (and its super languages). Defaults to \"css\".",
|
|
1925
2029
|
"anyOf": [
|
|
@@ -2018,6 +2122,10 @@
|
|
|
2018
2122
|
{ "type": "null" }
|
|
2019
2123
|
]
|
|
2020
2124
|
},
|
|
2125
|
+
"experimentalEmbeddedSnippetsEnabled": {
|
|
2126
|
+
"description": "Enables support for embedding snippets.",
|
|
2127
|
+
"anyOf": [{ "$ref": "#/$defs/Bool" }, { "type": "null" }]
|
|
2128
|
+
},
|
|
2021
2129
|
"formatter": {
|
|
2022
2130
|
"description": "Formatting options",
|
|
2023
2131
|
"anyOf": [
|
|
@@ -2119,6 +2227,10 @@
|
|
|
2119
2227
|
"trailingCommas": {
|
|
2120
2228
|
"description": "Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to \"all\".",
|
|
2121
2229
|
"anyOf": [{ "$ref": "#/$defs/JsTrailingCommas" }, { "type": "null" }]
|
|
2230
|
+
},
|
|
2231
|
+
"trailingNewline": {
|
|
2232
|
+
"description": "Whether to add a trailing newline at the end of the file.\n\nSetting this option to `false` is **highly discouraged** because it could cause many problems with other tools:\n- <https://thoughtbot.com/blog/no-newline-at-end-of-file>\n- <https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804>\n- <https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files>\n\nDisable the option at your own risk.\n\nDefaults to true.",
|
|
2233
|
+
"anyOf": [{ "$ref": "#/$defs/TrailingNewline" }, { "type": "null" }]
|
|
2122
2234
|
}
|
|
2123
2235
|
},
|
|
2124
2236
|
"additionalProperties": false
|
|
@@ -2241,6 +2353,10 @@
|
|
|
2241
2353
|
{ "$ref": "#/$defs/JsonTrailingCommas" },
|
|
2242
2354
|
{ "type": "null" }
|
|
2243
2355
|
]
|
|
2356
|
+
},
|
|
2357
|
+
"trailingNewline": {
|
|
2358
|
+
"description": "Whether to add a trailing newline at the end of the file.\n\nSetting this option to `false` is **highly discouraged** because it could cause many problems with other tools:\n- <https://thoughtbot.com/blog/no-newline-at-end-of-file>\n- <https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804>\n- <https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files>\n\nDisable the option at your own risk.\n\nDefaults to true.",
|
|
2359
|
+
"anyOf": [{ "$ref": "#/$defs/TrailingNewline" }, { "type": "null" }]
|
|
2244
2360
|
}
|
|
2245
2361
|
},
|
|
2246
2362
|
"additionalProperties": false
|
|
@@ -3066,6 +3182,28 @@
|
|
|
3066
3182
|
"type": "object",
|
|
3067
3183
|
"additionalProperties": false
|
|
3068
3184
|
},
|
|
3185
|
+
"NoDuplicateClassesConfiguration": {
|
|
3186
|
+
"oneOf": [
|
|
3187
|
+
{ "$ref": "#/$defs/RuleAssistPlainConfiguration" },
|
|
3188
|
+
{ "$ref": "#/$defs/RuleAssistWithNoDuplicateClassesOptions" }
|
|
3189
|
+
]
|
|
3190
|
+
},
|
|
3191
|
+
"NoDuplicateClassesOptions": {
|
|
3192
|
+
"type": "object",
|
|
3193
|
+
"properties": {
|
|
3194
|
+
"attributes": {
|
|
3195
|
+
"description": "Additional attributes that will be sorted.",
|
|
3196
|
+
"type": ["array", "null"],
|
|
3197
|
+
"items": { "type": "string" }
|
|
3198
|
+
},
|
|
3199
|
+
"functions": {
|
|
3200
|
+
"description": "Names of the functions or tagged templates that will be sorted.",
|
|
3201
|
+
"type": ["array", "null"],
|
|
3202
|
+
"items": { "type": "string" }
|
|
3203
|
+
}
|
|
3204
|
+
},
|
|
3205
|
+
"additionalProperties": false
|
|
3206
|
+
},
|
|
3069
3207
|
"NoDuplicateCustomPropertiesConfiguration": {
|
|
3070
3208
|
"oneOf": [
|
|
3071
3209
|
{ "$ref": "#/$defs/RulePlainConfiguration" },
|
|
@@ -4855,6 +4993,13 @@
|
|
|
4855
4993
|
},
|
|
4856
4994
|
"NoUnknownFunctionOptions": {
|
|
4857
4995
|
"type": "object",
|
|
4996
|
+
"properties": {
|
|
4997
|
+
"ignore": {
|
|
4998
|
+
"description": "A list of unknown function names to ignore (case-insensitive).",
|
|
4999
|
+
"type": "array",
|
|
5000
|
+
"items": { "type": "string" }
|
|
5001
|
+
}
|
|
5002
|
+
},
|
|
4858
5003
|
"additionalProperties": false
|
|
4859
5004
|
},
|
|
4860
5005
|
"NoUnknownMediaFeatureNameConfiguration": {
|
|
@@ -4875,6 +5020,13 @@
|
|
|
4875
5020
|
},
|
|
4876
5021
|
"NoUnknownPropertyOptions": {
|
|
4877
5022
|
"type": "object",
|
|
5023
|
+
"properties": {
|
|
5024
|
+
"ignore": {
|
|
5025
|
+
"description": "A list of unknown property names to ignore (case-insensitive).",
|
|
5026
|
+
"type": "array",
|
|
5027
|
+
"items": { "type": "string" }
|
|
5028
|
+
}
|
|
5029
|
+
},
|
|
4878
5030
|
"additionalProperties": false
|
|
4879
5031
|
},
|
|
4880
5032
|
"NoUnknownPseudoClassConfiguration": {
|
|
@@ -4885,6 +5037,13 @@
|
|
|
4885
5037
|
},
|
|
4886
5038
|
"NoUnknownPseudoClassOptions": {
|
|
4887
5039
|
"type": "object",
|
|
5040
|
+
"properties": {
|
|
5041
|
+
"ignore": {
|
|
5042
|
+
"description": "A list of unknown pseudo-class names to ignore (case-insensitive).",
|
|
5043
|
+
"type": "array",
|
|
5044
|
+
"items": { "type": "string" }
|
|
5045
|
+
}
|
|
5046
|
+
},
|
|
4888
5047
|
"additionalProperties": false
|
|
4889
5048
|
},
|
|
4890
5049
|
"NoUnknownPseudoElementConfiguration": {
|
|
@@ -4895,6 +5054,13 @@
|
|
|
4895
5054
|
},
|
|
4896
5055
|
"NoUnknownPseudoElementOptions": {
|
|
4897
5056
|
"type": "object",
|
|
5057
|
+
"properties": {
|
|
5058
|
+
"ignore": {
|
|
5059
|
+
"description": "A list of unknown pseudo-element names to ignore (case-insensitive).",
|
|
5060
|
+
"type": "array",
|
|
5061
|
+
"items": { "type": "string" }
|
|
5062
|
+
}
|
|
5063
|
+
},
|
|
4898
5064
|
"additionalProperties": false
|
|
4899
5065
|
},
|
|
4900
5066
|
"NoUnknownTypeSelectorConfiguration": {
|
|
@@ -5480,13 +5646,6 @@
|
|
|
5480
5646
|
{ "type": "null" }
|
|
5481
5647
|
]
|
|
5482
5648
|
},
|
|
5483
|
-
"noDeprecatedImports": {
|
|
5484
|
-
"description": "Restrict imports of deprecated exports.\nSee https://biomejs.dev/linter/rules/no-deprecated-imports",
|
|
5485
|
-
"anyOf": [
|
|
5486
|
-
{ "$ref": "#/$defs/NoDeprecatedImportsConfiguration" },
|
|
5487
|
-
{ "type": "null" }
|
|
5488
|
-
]
|
|
5489
|
-
},
|
|
5490
5649
|
"noDeprecatedMediaType": {
|
|
5491
5650
|
"description": "Disallow deprecated media types.\nSee https://biomejs.dev/linter/rules/no-deprecated-media-type",
|
|
5492
5651
|
"anyOf": [
|
|
@@ -5515,13 +5674,6 @@
|
|
|
5515
5674
|
{ "type": "null" }
|
|
5516
5675
|
]
|
|
5517
5676
|
},
|
|
5518
|
-
"noDuplicateDependencies": {
|
|
5519
|
-
"description": "Prevent the listing of duplicate dependencies. The rule supports the following dependency groups: \"bundledDependencies\", \"bundleDependencies\", \"dependencies\", \"devDependencies\", \"overrides\", \"optionalDependencies\", and \"peerDependencies\".\nSee https://biomejs.dev/linter/rules/no-duplicate-dependencies",
|
|
5520
|
-
"anyOf": [
|
|
5521
|
-
{ "$ref": "#/$defs/NoDuplicateDependenciesConfiguration" },
|
|
5522
|
-
{ "type": "null" }
|
|
5523
|
-
]
|
|
5524
|
-
},
|
|
5525
5677
|
"noDuplicateEnumValueNames": {
|
|
5526
5678
|
"description": "Require all enum value names to be unique.\nSee https://biomejs.dev/linter/rules/no-duplicate-enum-value-names",
|
|
5527
5679
|
"anyOf": [
|
|
@@ -5571,13 +5723,6 @@
|
|
|
5571
5723
|
{ "type": "null" }
|
|
5572
5724
|
]
|
|
5573
5725
|
},
|
|
5574
|
-
"noEmptySource": {
|
|
5575
|
-
"description": "Disallow empty sources.\nSee https://biomejs.dev/linter/rules/no-empty-source",
|
|
5576
|
-
"anyOf": [
|
|
5577
|
-
{ "$ref": "#/$defs/NoEmptySourceConfiguration" },
|
|
5578
|
-
{ "type": "null" }
|
|
5579
|
-
]
|
|
5580
|
-
},
|
|
5581
5726
|
"noEqualsToNull": {
|
|
5582
5727
|
"description": "Require the use of === or !== for comparison with null.\nSee https://biomejs.dev/linter/rules/no-equals-to-null",
|
|
5583
5728
|
"anyOf": [
|
|
@@ -5627,13 +5772,6 @@
|
|
|
5627
5772
|
{ "type": "null" }
|
|
5628
5773
|
]
|
|
5629
5774
|
},
|
|
5630
|
-
"noImportCycles": {
|
|
5631
|
-
"description": "Prevent import cycles.\nSee https://biomejs.dev/linter/rules/no-import-cycles",
|
|
5632
|
-
"anyOf": [
|
|
5633
|
-
{ "$ref": "#/$defs/NoImportCyclesConfiguration" },
|
|
5634
|
-
{ "type": "null" }
|
|
5635
|
-
]
|
|
5636
|
-
},
|
|
5637
5775
|
"noIncrementDecrement": {
|
|
5638
5776
|
"description": "Disallows the usage of the unary operators ++ and --.\nSee https://biomejs.dev/linter/rules/no-increment-decrement",
|
|
5639
5777
|
"anyOf": [
|
|
@@ -5641,13 +5779,6 @@
|
|
|
5641
5779
|
{ "type": "null" }
|
|
5642
5780
|
]
|
|
5643
5781
|
},
|
|
5644
|
-
"noJsxLiterals": {
|
|
5645
|
-
"description": "Disallow string literals inside JSX elements.\nSee https://biomejs.dev/linter/rules/no-jsx-literals",
|
|
5646
|
-
"anyOf": [
|
|
5647
|
-
{ "$ref": "#/$defs/NoJsxLiteralsConfiguration" },
|
|
5648
|
-
{ "type": "null" }
|
|
5649
|
-
]
|
|
5650
|
-
},
|
|
5651
5782
|
"noJsxPropsBind": {
|
|
5652
5783
|
"description": "Disallow .bind(), arrow functions, or function expressions in JSX props.\nSee https://biomejs.dev/linter/rules/no-jsx-props-bind",
|
|
5653
5784
|
"anyOf": [
|
|
@@ -5690,13 +5821,6 @@
|
|
|
5690
5821
|
{ "type": "null" }
|
|
5691
5822
|
]
|
|
5692
5823
|
},
|
|
5693
|
-
"noNextAsyncClientComponent": {
|
|
5694
|
-
"description": "Prevent client components from being async functions.\nSee https://biomejs.dev/linter/rules/no-next-async-client-component",
|
|
5695
|
-
"anyOf": [
|
|
5696
|
-
{ "$ref": "#/$defs/NoNextAsyncClientComponentConfiguration" },
|
|
5697
|
-
{ "type": "null" }
|
|
5698
|
-
]
|
|
5699
|
-
},
|
|
5700
5824
|
"noParametersOnlyUsedInRecursion": {
|
|
5701
5825
|
"description": "Disallow function parameters that are only used in recursive calls.\nSee https://biomejs.dev/linter/rules/no-parameters-only-used-in-recursion",
|
|
5702
5826
|
"anyOf": [
|
|
@@ -5711,13 +5835,6 @@
|
|
|
5711
5835
|
{ "type": "null" }
|
|
5712
5836
|
]
|
|
5713
5837
|
},
|
|
5714
|
-
"noReactForwardRef": {
|
|
5715
|
-
"description": "Replaces usages of forwardRef with passing ref as a prop.\nSee https://biomejs.dev/linter/rules/no-react-forward-ref",
|
|
5716
|
-
"anyOf": [
|
|
5717
|
-
{ "$ref": "#/$defs/NoReactForwardRefConfiguration" },
|
|
5718
|
-
{ "type": "null" }
|
|
5719
|
-
]
|
|
5720
|
-
},
|
|
5721
5838
|
"noRedundantDefaultExport": {
|
|
5722
5839
|
"description": "Checks if a default export exports the same symbol as a named export.\nSee https://biomejs.dev/linter/rules/no-redundant-default-export",
|
|
5723
5840
|
"anyOf": [
|
|
@@ -5788,27 +5905,6 @@
|
|
|
5788
5905
|
{ "type": "null" }
|
|
5789
5906
|
]
|
|
5790
5907
|
},
|
|
5791
|
-
"noUnresolvedImports": {
|
|
5792
|
-
"description": "Warn when importing non-existing exports.\nSee https://biomejs.dev/linter/rules/no-unresolved-imports",
|
|
5793
|
-
"anyOf": [
|
|
5794
|
-
{ "$ref": "#/$defs/NoUnresolvedImportsConfiguration" },
|
|
5795
|
-
{ "type": "null" }
|
|
5796
|
-
]
|
|
5797
|
-
},
|
|
5798
|
-
"noUnusedExpressions": {
|
|
5799
|
-
"description": "Disallow expression statements that are neither a function call nor an assignment.\nSee https://biomejs.dev/linter/rules/no-unused-expressions",
|
|
5800
|
-
"anyOf": [
|
|
5801
|
-
{ "$ref": "#/$defs/NoUnusedExpressionsConfiguration" },
|
|
5802
|
-
{ "type": "null" }
|
|
5803
|
-
]
|
|
5804
|
-
},
|
|
5805
|
-
"noUselessCatchBinding": {
|
|
5806
|
-
"description": "Disallow unused catch bindings.\nSee https://biomejs.dev/linter/rules/no-useless-catch-binding",
|
|
5807
|
-
"anyOf": [
|
|
5808
|
-
{ "$ref": "#/$defs/NoUselessCatchBindingConfiguration" },
|
|
5809
|
-
{ "type": "null" }
|
|
5810
|
-
]
|
|
5811
|
-
},
|
|
5812
5908
|
"noUselessReturn": {
|
|
5813
5909
|
"description": "Disallow redundant return statements.\nSee https://biomejs.dev/linter/rules/no-useless-return",
|
|
5814
5910
|
"anyOf": [
|
|
@@ -5816,13 +5912,6 @@
|
|
|
5816
5912
|
{ "type": "null" }
|
|
5817
5913
|
]
|
|
5818
5914
|
},
|
|
5819
|
-
"noUselessUndefined": {
|
|
5820
|
-
"description": "Disallow the use of useless undefined.\nSee https://biomejs.dev/linter/rules/no-useless-undefined",
|
|
5821
|
-
"anyOf": [
|
|
5822
|
-
{ "$ref": "#/$defs/NoUselessUndefinedConfiguration" },
|
|
5823
|
-
{ "type": "null" }
|
|
5824
|
-
]
|
|
5825
|
-
},
|
|
5826
5915
|
"noVueArrowFuncInWatch": {
|
|
5827
5916
|
"description": "Disallows using arrow functions when defining a watcher.\nSee https://biomejs.dev/linter/rules/no-vue-arrow-func-in-watch",
|
|
5828
5917
|
"anyOf": [
|
|
@@ -5830,20 +5919,6 @@
|
|
|
5830
5919
|
{ "type": "null" }
|
|
5831
5920
|
]
|
|
5832
5921
|
},
|
|
5833
|
-
"noVueDataObjectDeclaration": {
|
|
5834
|
-
"description": "Enforce that Vue component data options are declared as functions.\nSee https://biomejs.dev/linter/rules/no-vue-data-object-declaration",
|
|
5835
|
-
"anyOf": [
|
|
5836
|
-
{ "$ref": "#/$defs/NoVueDataObjectDeclarationConfiguration" },
|
|
5837
|
-
{ "type": "null" }
|
|
5838
|
-
]
|
|
5839
|
-
},
|
|
5840
|
-
"noVueDuplicateKeys": {
|
|
5841
|
-
"description": "Disallow duplicate keys in Vue component data, methods, computed properties, and other options.\nSee https://biomejs.dev/linter/rules/no-vue-duplicate-keys",
|
|
5842
|
-
"anyOf": [
|
|
5843
|
-
{ "$ref": "#/$defs/NoVueDuplicateKeysConfiguration" },
|
|
5844
|
-
{ "type": "null" }
|
|
5845
|
-
]
|
|
5846
|
-
},
|
|
5847
5922
|
"noVueOptionsApi": {
|
|
5848
5923
|
"description": "Disallow the use of Vue Options API.\nSee https://biomejs.dev/linter/rules/no-vue-options-api",
|
|
5849
5924
|
"anyOf": [
|
|
@@ -5851,27 +5926,6 @@
|
|
|
5851
5926
|
{ "type": "null" }
|
|
5852
5927
|
]
|
|
5853
5928
|
},
|
|
5854
|
-
"noVueReservedKeys": {
|
|
5855
|
-
"description": "Disallow reserved keys in Vue component data and computed properties.\nSee https://biomejs.dev/linter/rules/no-vue-reserved-keys",
|
|
5856
|
-
"anyOf": [
|
|
5857
|
-
{ "$ref": "#/$defs/NoVueReservedKeysConfiguration" },
|
|
5858
|
-
{ "type": "null" }
|
|
5859
|
-
]
|
|
5860
|
-
},
|
|
5861
|
-
"noVueReservedProps": {
|
|
5862
|
-
"description": "Disallow reserved names to be used as props.\nSee https://biomejs.dev/linter/rules/no-vue-reserved-props",
|
|
5863
|
-
"anyOf": [
|
|
5864
|
-
{ "$ref": "#/$defs/NoVueReservedPropsConfiguration" },
|
|
5865
|
-
{ "type": "null" }
|
|
5866
|
-
]
|
|
5867
|
-
},
|
|
5868
|
-
"noVueSetupPropsReactivityLoss": {
|
|
5869
|
-
"description": "Disallow destructuring of props passed to setup in Vue projects.\nSee https://biomejs.dev/linter/rules/no-vue-setup-props-reactivity-loss",
|
|
5870
|
-
"anyOf": [
|
|
5871
|
-
{ "$ref": "#/$defs/NoVueSetupPropsReactivityLossConfiguration" },
|
|
5872
|
-
{ "type": "null" }
|
|
5873
|
-
]
|
|
5874
|
-
},
|
|
5875
5929
|
"noVueVIfWithVFor": {
|
|
5876
5930
|
"description": "Disallow using v-if and v-for directives on the same element.\nSee https://biomejs.dev/linter/rules/no-vue-v-if-with-v-for",
|
|
5877
5931
|
"anyOf": [
|
|
@@ -5897,13 +5951,6 @@
|
|
|
5897
5951
|
{ "type": "null" }
|
|
5898
5952
|
]
|
|
5899
5953
|
},
|
|
5900
|
-
"useConsistentArrowReturn": {
|
|
5901
|
-
"description": "Enforce consistent arrow function bodies.\nSee https://biomejs.dev/linter/rules/use-consistent-arrow-return",
|
|
5902
|
-
"anyOf": [
|
|
5903
|
-
{ "$ref": "#/$defs/UseConsistentArrowReturnConfiguration" },
|
|
5904
|
-
{ "type": "null" }
|
|
5905
|
-
]
|
|
5906
|
-
},
|
|
5907
5954
|
"useConsistentEnumValueType": {
|
|
5908
5955
|
"description": "Disallow enums from having both number and string members.\nSee https://biomejs.dev/linter/rules/use-consistent-enum-value-type",
|
|
5909
5956
|
"anyOf": [
|
|
@@ -5925,13 +5972,6 @@
|
|
|
5925
5972
|
{ "type": "null" }
|
|
5926
5973
|
]
|
|
5927
5974
|
},
|
|
5928
|
-
"useDeprecatedDate": {
|
|
5929
|
-
"description": "Require the @deprecated directive to specify a deletion date.\nSee https://biomejs.dev/linter/rules/use-deprecated-date",
|
|
5930
|
-
"anyOf": [
|
|
5931
|
-
{ "$ref": "#/$defs/UseDeprecatedDateConfiguration" },
|
|
5932
|
-
{ "type": "null" }
|
|
5933
|
-
]
|
|
5934
|
-
},
|
|
5935
5975
|
"useDestructuring": {
|
|
5936
5976
|
"description": "Require destructuring from arrays and/or objects.\nSee https://biomejs.dev/linter/rules/use-destructuring",
|
|
5937
5977
|
"anyOf": [
|
|
@@ -6002,27 +6042,6 @@
|
|
|
6002
6042
|
{ "type": "null" }
|
|
6003
6043
|
]
|
|
6004
6044
|
},
|
|
6005
|
-
"useMaxParams": {
|
|
6006
|
-
"description": "Enforce a maximum number of parameters in function definitions.\nSee https://biomejs.dev/linter/rules/use-max-params",
|
|
6007
|
-
"anyOf": [
|
|
6008
|
-
{ "$ref": "#/$defs/UseMaxParamsConfiguration" },
|
|
6009
|
-
{ "type": "null" }
|
|
6010
|
-
]
|
|
6011
|
-
},
|
|
6012
|
-
"useQwikMethodUsage": {
|
|
6013
|
-
"description": "Disallow use* hooks outside of component$ or other use* hooks in Qwik applications.\nSee https://biomejs.dev/linter/rules/use-qwik-method-usage",
|
|
6014
|
-
"anyOf": [
|
|
6015
|
-
{ "$ref": "#/$defs/UseQwikMethodUsageConfiguration" },
|
|
6016
|
-
{ "type": "null" }
|
|
6017
|
-
]
|
|
6018
|
-
},
|
|
6019
|
-
"useQwikValidLexicalScope": {
|
|
6020
|
-
"description": "Disallow unserializable expressions in Qwik dollar ($) scopes.\nSee https://biomejs.dev/linter/rules/use-qwik-valid-lexical-scope",
|
|
6021
|
-
"anyOf": [
|
|
6022
|
-
{ "$ref": "#/$defs/UseQwikValidLexicalScopeConfiguration" },
|
|
6023
|
-
{ "type": "null" }
|
|
6024
|
-
]
|
|
6025
|
-
},
|
|
6026
6045
|
"useRegexpExec": {
|
|
6027
6046
|
"description": "Enforce RegExp#exec over String#match if no global flag is provided.\nSee https://biomejs.dev/linter/rules/use-regexp-exec",
|
|
6028
6047
|
"anyOf": [
|
|
@@ -6300,6 +6319,10 @@
|
|
|
6300
6319
|
"lineWidth": {
|
|
6301
6320
|
"description": "What's the max width of a line. Defaults to 80.",
|
|
6302
6321
|
"anyOf": [{ "$ref": "#/$defs/LineWidth" }, { "type": "null" }]
|
|
6322
|
+
},
|
|
6323
|
+
"trailingNewline": {
|
|
6324
|
+
"description": "Whether to add a trailing newline at the end of the file.\n\nSetting this option to `false` is **highly discouraged** because it could cause many problems with other tools:\n- <https://thoughtbot.com/blog/no-newline-at-end-of-file>\n- <https://callmeryan.medium.com/no-newline-at-end-of-file-navigating-gits-warning-for-android-developers-af14e73dd804>\n- <https://unix.stackexchange.com/questions/345548/how-to-cat-files-together-adding-missing-newlines-at-end-of-some-files>\n\nDisable the option at your own risk.\n\nDefaults to true.",
|
|
6325
|
+
"anyOf": [{ "$ref": "#/$defs/TrailingNewline" }, { "type": "null" }]
|
|
6303
6326
|
}
|
|
6304
6327
|
},
|
|
6305
6328
|
"additionalProperties": false
|
|
@@ -6575,6 +6598,14 @@
|
|
|
6575
6598
|
"enum": ["abstract", "private", "protected", "readonly", "static"]
|
|
6576
6599
|
},
|
|
6577
6600
|
"RuleAssistPlainConfiguration": { "type": "string", "enum": ["off", "on"] },
|
|
6601
|
+
"RuleAssistWithNoDuplicateClassesOptions": {
|
|
6602
|
+
"type": "object",
|
|
6603
|
+
"properties": {
|
|
6604
|
+
"level": { "$ref": "#/$defs/RuleAssistPlainConfiguration" },
|
|
6605
|
+
"options": { "$ref": "#/$defs/NoDuplicateClassesOptions" }
|
|
6606
|
+
},
|
|
6607
|
+
"required": ["level", "options"]
|
|
6608
|
+
},
|
|
6578
6609
|
"RuleAssistWithOrganizeImportsOptions": {
|
|
6579
6610
|
"type": "object",
|
|
6580
6611
|
"properties": {
|
|
@@ -6591,6 +6622,14 @@
|
|
|
6591
6622
|
},
|
|
6592
6623
|
"required": ["level", "options"]
|
|
6593
6624
|
},
|
|
6625
|
+
"RuleAssistWithUseSortedInterfaceMembersOptions": {
|
|
6626
|
+
"type": "object",
|
|
6627
|
+
"properties": {
|
|
6628
|
+
"level": { "$ref": "#/$defs/RuleAssistPlainConfiguration" },
|
|
6629
|
+
"options": { "$ref": "#/$defs/UseSortedInterfaceMembersOptions" }
|
|
6630
|
+
},
|
|
6631
|
+
"required": ["level", "options"]
|
|
6632
|
+
},
|
|
6594
6633
|
"RuleAssistWithUseSortedKeysOptions": {
|
|
6595
6634
|
"type": "object",
|
|
6596
6635
|
"properties": {
|
|
@@ -6650,6 +6689,11 @@
|
|
|
6650
6689
|
"description": "Turborepo build system rules",
|
|
6651
6690
|
"type": "string",
|
|
6652
6691
|
"const": "turborepo"
|
|
6692
|
+
},
|
|
6693
|
+
{
|
|
6694
|
+
"description": "Rules that require type inference",
|
|
6695
|
+
"type": "string",
|
|
6696
|
+
"const": "types"
|
|
6653
6697
|
}
|
|
6654
6698
|
]
|
|
6655
6699
|
},
|
|
@@ -11003,6 +11047,13 @@
|
|
|
11003
11047
|
"description": "A list of rules that belong to this group",
|
|
11004
11048
|
"type": "object",
|
|
11005
11049
|
"properties": {
|
|
11050
|
+
"noDuplicateClasses": {
|
|
11051
|
+
"description": "Remove duplicate CSS classes.\nSee https://biomejs.dev/assist/actions/no-duplicate-classes",
|
|
11052
|
+
"anyOf": [
|
|
11053
|
+
{ "$ref": "#/$defs/NoDuplicateClassesConfiguration" },
|
|
11054
|
+
{ "type": "null" }
|
|
11055
|
+
]
|
|
11056
|
+
},
|
|
11006
11057
|
"organizeImports": {
|
|
11007
11058
|
"description": "Provides a code action to sort the imports and exports in the file using a built-in or custom order.\nSee https://biomejs.dev/assist/actions/organize-imports",
|
|
11008
11059
|
"anyOf": [
|
|
@@ -11021,6 +11072,13 @@
|
|
|
11021
11072
|
{ "type": "null" }
|
|
11022
11073
|
]
|
|
11023
11074
|
},
|
|
11075
|
+
"useSortedInterfaceMembers": {
|
|
11076
|
+
"description": "Sort interface members by key.\nSee https://biomejs.dev/assist/actions/use-sorted-interface-members",
|
|
11077
|
+
"anyOf": [
|
|
11078
|
+
{ "$ref": "#/$defs/UseSortedInterfaceMembersConfiguration" },
|
|
11079
|
+
{ "type": "null" }
|
|
11080
|
+
]
|
|
11081
|
+
},
|
|
11024
11082
|
"useSortedKeys": {
|
|
11025
11083
|
"description": "Sort the keys of a JSON object in natural order.\nSee https://biomejs.dev/assist/actions/use-sorted-keys",
|
|
11026
11084
|
"anyOf": [
|
|
@@ -11142,6 +11200,13 @@
|
|
|
11142
11200
|
{ "type": "null" }
|
|
11143
11201
|
]
|
|
11144
11202
|
},
|
|
11203
|
+
"noJsxLiterals": {
|
|
11204
|
+
"description": "Disallow string literals inside JSX elements.\nSee https://biomejs.dev/linter/rules/no-jsx-literals",
|
|
11205
|
+
"anyOf": [
|
|
11206
|
+
{ "$ref": "#/$defs/NoJsxLiteralsConfiguration" },
|
|
11207
|
+
{ "type": "null" }
|
|
11208
|
+
]
|
|
11209
|
+
},
|
|
11145
11210
|
"noMagicNumbers": {
|
|
11146
11211
|
"description": "Reports usage of \"magic numbers\" — numbers used directly instead of being assigned to named constants.\nSee https://biomejs.dev/linter/rules/no-magic-numbers",
|
|
11147
11212
|
"anyOf": [
|
|
@@ -11248,7 +11313,7 @@
|
|
|
11248
11313
|
]
|
|
11249
11314
|
},
|
|
11250
11315
|
"noValueAtRule": {
|
|
11251
|
-
"description": "Disallow use of @value rule in
|
|
11316
|
+
"description": "Disallow use of @value rule in CSS modules.\nSee https://biomejs.dev/linter/rules/no-value-at-rule",
|
|
11252
11317
|
"anyOf": [
|
|
11253
11318
|
{ "$ref": "#/$defs/NoValueAtRuleConfiguration" },
|
|
11254
11319
|
{ "type": "null" }
|
|
@@ -11321,6 +11386,13 @@
|
|
|
11321
11386
|
{ "type": "null" }
|
|
11322
11387
|
]
|
|
11323
11388
|
},
|
|
11389
|
+
"useConsistentArrowReturn": {
|
|
11390
|
+
"description": "Enforce consistent arrow function bodies.\nSee https://biomejs.dev/linter/rules/use-consistent-arrow-return",
|
|
11391
|
+
"anyOf": [
|
|
11392
|
+
{ "$ref": "#/$defs/UseConsistentArrowReturnConfiguration" },
|
|
11393
|
+
{ "type": "null" }
|
|
11394
|
+
]
|
|
11395
|
+
},
|
|
11324
11396
|
"useConsistentBuiltinInstantiation": {
|
|
11325
11397
|
"description": "Enforce the use of new for all builtins, except String, Number and Boolean.\nSee https://biomejs.dev/linter/rules/use-consistent-builtin-instantiation",
|
|
11326
11398
|
"anyOf": [
|
|
@@ -11729,6 +11801,13 @@
|
|
|
11729
11801
|
{ "type": "null" }
|
|
11730
11802
|
]
|
|
11731
11803
|
},
|
|
11804
|
+
"noDeprecatedImports": {
|
|
11805
|
+
"description": "Restrict imports of deprecated exports.\nSee https://biomejs.dev/linter/rules/no-deprecated-imports",
|
|
11806
|
+
"anyOf": [
|
|
11807
|
+
{ "$ref": "#/$defs/NoDeprecatedImportsConfiguration" },
|
|
11808
|
+
{ "type": "null" }
|
|
11809
|
+
]
|
|
11810
|
+
},
|
|
11732
11811
|
"noDocumentCookie": {
|
|
11733
11812
|
"description": "Disallow direct assignments to document.cookie.\nSee https://biomejs.dev/linter/rules/no-document-cookie",
|
|
11734
11813
|
"anyOf": [
|
|
@@ -11778,6 +11857,13 @@
|
|
|
11778
11857
|
{ "type": "null" }
|
|
11779
11858
|
]
|
|
11780
11859
|
},
|
|
11860
|
+
"noDuplicateDependencies": {
|
|
11861
|
+
"description": "Prevent the listing of duplicate dependencies. The rule supports the following dependency groups: \"bundledDependencies\", \"bundleDependencies\", \"dependencies\", \"devDependencies\", \"overrides\", \"optionalDependencies\", and \"peerDependencies\".\nSee https://biomejs.dev/linter/rules/no-duplicate-dependencies",
|
|
11862
|
+
"anyOf": [
|
|
11863
|
+
{ "$ref": "#/$defs/NoDuplicateDependenciesConfiguration" },
|
|
11864
|
+
{ "type": "null" }
|
|
11865
|
+
]
|
|
11866
|
+
},
|
|
11781
11867
|
"noDuplicateElseIf": {
|
|
11782
11868
|
"description": "Disallow duplicate conditions in if-else-if chains.\nSee https://biomejs.dev/linter/rules/no-duplicate-else-if",
|
|
11783
11869
|
"anyOf": [
|
|
@@ -11864,6 +11950,13 @@
|
|
|
11864
11950
|
{ "type": "null" }
|
|
11865
11951
|
]
|
|
11866
11952
|
},
|
|
11953
|
+
"noEmptySource": {
|
|
11954
|
+
"description": "Disallow empty sources.\nSee https://biomejs.dev/linter/rules/no-empty-source",
|
|
11955
|
+
"anyOf": [
|
|
11956
|
+
{ "$ref": "#/$defs/NoEmptySourceConfiguration" },
|
|
11957
|
+
{ "type": "null" }
|
|
11958
|
+
]
|
|
11959
|
+
},
|
|
11867
11960
|
"noEvolvingTypes": {
|
|
11868
11961
|
"description": "Disallow variables from evolving into any type through reassignments.\nSee https://biomejs.dev/linter/rules/no-evolving-types",
|
|
11869
11962
|
"anyOf": [
|
|
@@ -11955,6 +12048,13 @@
|
|
|
11955
12048
|
{ "type": "null" }
|
|
11956
12049
|
]
|
|
11957
12050
|
},
|
|
12051
|
+
"noImportCycles": {
|
|
12052
|
+
"description": "Prevent import cycles.\nSee https://biomejs.dev/linter/rules/no-import-cycles",
|
|
12053
|
+
"anyOf": [
|
|
12054
|
+
{ "$ref": "#/$defs/NoImportCyclesConfiguration" },
|
|
12055
|
+
{ "type": "null" }
|
|
12056
|
+
]
|
|
12057
|
+
},
|
|
11958
12058
|
"noImportantInKeyframe": {
|
|
11959
12059
|
"description": "Disallow invalid !important within keyframe declarations.\nSee https://biomejs.dev/linter/rules/no-important-in-keyframe",
|
|
11960
12060
|
"anyOf": [
|
|
@@ -12032,6 +12132,13 @@
|
|
|
12032
12132
|
{ "type": "null" }
|
|
12033
12133
|
]
|
|
12034
12134
|
},
|
|
12135
|
+
"noReactForwardRef": {
|
|
12136
|
+
"description": "Replaces usages of forwardRef with passing ref as a prop.\nSee https://biomejs.dev/linter/rules/no-react-forward-ref",
|
|
12137
|
+
"anyOf": [
|
|
12138
|
+
{ "$ref": "#/$defs/NoReactForwardRefConfiguration" },
|
|
12139
|
+
{ "type": "null" }
|
|
12140
|
+
]
|
|
12141
|
+
},
|
|
12035
12142
|
"noReactSpecificProps": {
|
|
12036
12143
|
"description": "Prevents React-specific JSX properties from being used.\nSee https://biomejs.dev/linter/rules/no-react-specific-props",
|
|
12037
12144
|
"anyOf": [
|
|
@@ -12144,6 +12251,13 @@
|
|
|
12144
12251
|
{ "type": "null" }
|
|
12145
12252
|
]
|
|
12146
12253
|
},
|
|
12254
|
+
"noUnusedExpressions": {
|
|
12255
|
+
"description": "Disallow expression statements that are neither a function call nor an assignment.\nSee https://biomejs.dev/linter/rules/no-unused-expressions",
|
|
12256
|
+
"anyOf": [
|
|
12257
|
+
{ "$ref": "#/$defs/NoUnusedExpressionsConfiguration" },
|
|
12258
|
+
{ "type": "null" }
|
|
12259
|
+
]
|
|
12260
|
+
},
|
|
12147
12261
|
"noUselessEscapeInString": {
|
|
12148
12262
|
"description": "Disallow unnecessary escapes in string literals.\nSee https://biomejs.dev/linter/rules/no-useless-escape-in-string",
|
|
12149
12263
|
"anyOf": [
|
|
@@ -12204,6 +12318,13 @@
|
|
|
12204
12318
|
{ "type": "null" }
|
|
12205
12319
|
]
|
|
12206
12320
|
},
|
|
12321
|
+
"useDeprecatedDate": {
|
|
12322
|
+
"description": "Require the @deprecated directive to specify a deletion date.\nSee https://biomejs.dev/linter/rules/use-deprecated-date",
|
|
12323
|
+
"anyOf": [
|
|
12324
|
+
{ "$ref": "#/$defs/UseDeprecatedDateConfiguration" },
|
|
12325
|
+
{ "type": "null" }
|
|
12326
|
+
]
|
|
12327
|
+
},
|
|
12207
12328
|
"useErrorMessage": {
|
|
12208
12329
|
"description": "Enforce passing a message value when creating a built-in error.\nSee https://biomejs.dev/linter/rules/use-error-message",
|
|
12209
12330
|
"anyOf": [
|
|
@@ -12277,6 +12398,7 @@
|
|
|
12277
12398
|
},
|
|
12278
12399
|
"additionalProperties": false
|
|
12279
12400
|
},
|
|
12401
|
+
"TrailingNewline": { "type": "boolean" },
|
|
12280
12402
|
"UseAdjacentOverloadSignaturesConfiguration": {
|
|
12281
12403
|
"oneOf": [
|
|
12282
12404
|
{ "$ref": "#/$defs/RulePlainConfiguration" },
|
|
@@ -13022,6 +13144,14 @@
|
|
|
13022
13144
|
},
|
|
13023
13145
|
"UseHookAtTopLevelOptions": {
|
|
13024
13146
|
"type": "object",
|
|
13147
|
+
"properties": {
|
|
13148
|
+
"ignore": {
|
|
13149
|
+
"description": "List of function names that should not be treated as hooks.\nFunctions in this list will be ignored by the rule even if they follow the `use*` naming convention.",
|
|
13150
|
+
"type": ["array", "null"],
|
|
13151
|
+
"items": { "type": "string" },
|
|
13152
|
+
"uniqueItems": true
|
|
13153
|
+
}
|
|
13154
|
+
},
|
|
13025
13155
|
"additionalProperties": false
|
|
13026
13156
|
},
|
|
13027
13157
|
"UseHtmlLangConfiguration": {
|
|
@@ -13057,6 +13187,11 @@
|
|
|
13057
13187
|
"UseImportExtensionsOptions": {
|
|
13058
13188
|
"type": "object",
|
|
13059
13189
|
"properties": {
|
|
13190
|
+
"extensionMappings": {
|
|
13191
|
+
"description": "A map of file extensions to their suggested replacements.\nFor example, `{\"ts\": \"js\"}` would suggest `.js` extensions for TypeScript imports.",
|
|
13192
|
+
"type": ["object", "null"],
|
|
13193
|
+
"additionalProperties": { "type": "string" }
|
|
13194
|
+
},
|
|
13060
13195
|
"forceJsExtensions": {
|
|
13061
13196
|
"description": "If `true`, the suggested extension is always `.js` regardless of what\nextension the source file has in your project.",
|
|
13062
13197
|
"type": ["boolean", "null"]
|
|
@@ -13143,6 +13278,12 @@
|
|
|
13143
13278
|
},
|
|
13144
13279
|
"UseIterableCallbackReturnOptions": {
|
|
13145
13280
|
"type": "object",
|
|
13281
|
+
"properties": {
|
|
13282
|
+
"checkForEach": {
|
|
13283
|
+
"description": "When `true`, the rule reports `forEach` callbacks that return a value (default behaviour).\nWhen `false` or unset, such callbacks are ignored.",
|
|
13284
|
+
"type": ["boolean", "null"]
|
|
13285
|
+
}
|
|
13286
|
+
},
|
|
13146
13287
|
"additionalProperties": false
|
|
13147
13288
|
},
|
|
13148
13289
|
"UseJsonImportAttributesConfiguration": {
|
|
@@ -13605,6 +13746,16 @@
|
|
|
13605
13746
|
},
|
|
13606
13747
|
"additionalProperties": false
|
|
13607
13748
|
},
|
|
13749
|
+
"UseSortedInterfaceMembersConfiguration": {
|
|
13750
|
+
"oneOf": [
|
|
13751
|
+
{ "$ref": "#/$defs/RuleAssistPlainConfiguration" },
|
|
13752
|
+
{ "$ref": "#/$defs/RuleAssistWithUseSortedInterfaceMembersOptions" }
|
|
13753
|
+
]
|
|
13754
|
+
},
|
|
13755
|
+
"UseSortedInterfaceMembersOptions": {
|
|
13756
|
+
"type": "object",
|
|
13757
|
+
"additionalProperties": false
|
|
13758
|
+
},
|
|
13608
13759
|
"UseSortedKeysConfiguration": {
|
|
13609
13760
|
"oneOf": [
|
|
13610
13761
|
{ "$ref": "#/$defs/RuleAssistPlainConfiguration" },
|
|
@@ -13614,6 +13765,10 @@
|
|
|
13614
13765
|
"UseSortedKeysOptions": {
|
|
13615
13766
|
"type": "object",
|
|
13616
13767
|
"properties": {
|
|
13768
|
+
"groupByNesting": {
|
|
13769
|
+
"description": "When enabled, groups object keys by their value's nesting depth before sorting.\nSimple values (primitives, single-line arrays, single-line objects) are sorted first,\nfollowed by nested values (multi-line objects, multi-line arrays).",
|
|
13770
|
+
"type": ["boolean", "null"]
|
|
13771
|
+
},
|
|
13617
13772
|
"sortOrder": {
|
|
13618
13773
|
"anyOf": [{ "$ref": "#/$defs/SortOrder" }, { "type": "null" }]
|
|
13619
13774
|
}
|
|
@@ -13719,6 +13874,16 @@
|
|
|
13719
13874
|
},
|
|
13720
13875
|
"UseUnifiedTypeSignaturesOptions": {
|
|
13721
13876
|
"type": "object",
|
|
13877
|
+
"properties": {
|
|
13878
|
+
"ignoreDifferentJsDoc": {
|
|
13879
|
+
"description": "Whether to ignore overloads with different JSDoc comments.",
|
|
13880
|
+
"type": ["boolean", "null"]
|
|
13881
|
+
},
|
|
13882
|
+
"ignoreDifferentlyNamedParameters": {
|
|
13883
|
+
"description": "Whether to ignore overloads with differently named parameters.",
|
|
13884
|
+
"type": ["boolean", "null"]
|
|
13885
|
+
}
|
|
13886
|
+
},
|
|
13722
13887
|
"additionalProperties": false
|
|
13723
13888
|
},
|
|
13724
13889
|
"UseUniqueElementIdsConfiguration": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@biomejs/biome",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.0",
|
|
4
4
|
"bin": {
|
|
5
5
|
"biome": "bin/biome"
|
|
6
6
|
},
|
|
@@ -46,13 +46,13 @@
|
|
|
46
46
|
"provenance": true
|
|
47
47
|
},
|
|
48
48
|
"optionalDependencies": {
|
|
49
|
-
"@biomejs/cli-win32-x64": "2.
|
|
50
|
-
"@biomejs/cli-win32-arm64": "2.
|
|
51
|
-
"@biomejs/cli-darwin-x64": "2.
|
|
52
|
-
"@biomejs/cli-darwin-arm64": "2.
|
|
53
|
-
"@biomejs/cli-linux-x64": "2.
|
|
54
|
-
"@biomejs/cli-linux-arm64": "2.
|
|
55
|
-
"@biomejs/cli-linux-x64-musl": "2.
|
|
56
|
-
"@biomejs/cli-linux-arm64-musl": "2.
|
|
49
|
+
"@biomejs/cli-win32-x64": "2.4.0",
|
|
50
|
+
"@biomejs/cli-win32-arm64": "2.4.0",
|
|
51
|
+
"@biomejs/cli-darwin-x64": "2.4.0",
|
|
52
|
+
"@biomejs/cli-darwin-arm64": "2.4.0",
|
|
53
|
+
"@biomejs/cli-linux-x64": "2.4.0",
|
|
54
|
+
"@biomejs/cli-linux-arm64": "2.4.0",
|
|
55
|
+
"@biomejs/cli-linux-x64-musl": "2.4.0",
|
|
56
|
+
"@biomejs/cli-linux-arm64-musl": "2.4.0"
|
|
57
57
|
}
|
|
58
58
|
}
|