oxlint 1.72.0 → 1.74.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 +272 -24
- package/dist/bindings.js +26 -26
- package/dist/index.d.ts +105 -9
- package/dist/lint.js +32 -32
- package/dist/plugins-dev.d.ts +61 -104
- package/dist/plugins-dev.js +1 -1
- package/package.json +21 -21
|
@@ -48,13 +48,13 @@
|
|
|
48
48
|
"markdownDescription": "Enabled or disabled specific global variables."
|
|
49
49
|
},
|
|
50
50
|
"ignorePatterns": {
|
|
51
|
-
"description": "Globs to ignore during linting.
|
|
51
|
+
"description": "Globs to ignore during linting. Patterns use gitignore-style matching,\nrooted at the directory containing the configuration file.\nFiles outside that directory cannot be matched; patterns containing `..`\nare rejected as a configuration error.",
|
|
52
52
|
"default": [],
|
|
53
53
|
"type": "array",
|
|
54
54
|
"items": {
|
|
55
55
|
"type": "string"
|
|
56
56
|
},
|
|
57
|
-
"markdownDescription": "Globs to ignore during linting.
|
|
57
|
+
"markdownDescription": "Globs to ignore during linting. Patterns use gitignore-style matching,\nrooted at the directory containing the configuration file.\nFiles outside that directory cannot be matched; patterns containing `..`\nare rejected as a configuration error."
|
|
58
58
|
},
|
|
59
59
|
"jsPlugins": {
|
|
60
60
|
"description": "JS plugins, allows usage of ESLint plugins with Oxlint.\n\nRead more about JS plugins in\n[the docs](https://oxc.rs/docs/guide/usage/linter/js-plugins.html).\n\nNote: JS plugins are in alpha and not subject to semver.\n\nExamples:\n\nBasic usage with a local plugin path.\n\n```json\n{\n\"jsPlugins\": [\"./custom-plugin.js\"],\n\"rules\": {\n\"custom/rule-name\": \"warn\"\n}\n}\n```\n\nBasic usage with a TypeScript plugin and a local plugin path.\n\nTypeScript plugin files are supported in the following environments:\n- Deno and Bun: TypeScript files are supported natively.\n- Node.js >=22.18.0 and Node.js ^20.19.0: TypeScript files are supported natively with built-in\ntype-stripping enabled by default.\n\nFor older Node.js versions, TypeScript plugins are not supported. Please use JavaScript plugins or upgrade your Node version.\n\n```json\n{\n\"jsPlugins\": [\"./custom-plugin.ts\"],\n\"rules\": {\n\"custom/rule-name\": \"warn\"\n}\n}\n```\n\nUsing a built-in Rust plugin alongside a JS plugin with the same name\nby giving the JS plugin an alias.\n\n```json\n{\n\"plugins\": [\"import\"],\n\"jsPlugins\": [\n{ \"name\": \"import-js\", \"specifier\": \"eslint-plugin-import\" }\n],\n\"rules\": {\n\"import/no-cycle\": \"error\",\n\"import-js/no-unresolved\": \"warn\"\n}\n}\n```",
|
|
@@ -3544,7 +3544,24 @@
|
|
|
3544
3544
|
]
|
|
3545
3545
|
},
|
|
3546
3546
|
"jsdoc/require-param": {
|
|
3547
|
-
"
|
|
3547
|
+
"anyOf": [
|
|
3548
|
+
{
|
|
3549
|
+
"$ref": "#/definitions/RuleNoConfig"
|
|
3550
|
+
},
|
|
3551
|
+
{
|
|
3552
|
+
"type": "array",
|
|
3553
|
+
"items": [
|
|
3554
|
+
{
|
|
3555
|
+
"$ref": "#/definitions/AllowWarnDeny"
|
|
3556
|
+
},
|
|
3557
|
+
{
|
|
3558
|
+
"$ref": "#/definitions/RequireParamConfig"
|
|
3559
|
+
}
|
|
3560
|
+
],
|
|
3561
|
+
"maxItems": 2,
|
|
3562
|
+
"minItems": 2
|
|
3563
|
+
}
|
|
3564
|
+
]
|
|
3548
3565
|
},
|
|
3549
3566
|
"jsdoc/require-param-description": {
|
|
3550
3567
|
"anyOf": [
|
|
@@ -4441,7 +4458,24 @@
|
|
|
4441
4458
|
"$ref": "#/definitions/RuleNoConfig"
|
|
4442
4459
|
},
|
|
4443
4460
|
"no-constant-binary-expression": {
|
|
4444
|
-
"
|
|
4461
|
+
"anyOf": [
|
|
4462
|
+
{
|
|
4463
|
+
"$ref": "#/definitions/RuleNoConfig"
|
|
4464
|
+
},
|
|
4465
|
+
{
|
|
4466
|
+
"type": "array",
|
|
4467
|
+
"items": [
|
|
4468
|
+
{
|
|
4469
|
+
"$ref": "#/definitions/AllowWarnDeny"
|
|
4470
|
+
},
|
|
4471
|
+
{
|
|
4472
|
+
"$ref": "#/definitions/NoConstantBinaryExpressionConfig"
|
|
4473
|
+
}
|
|
4474
|
+
],
|
|
4475
|
+
"maxItems": 2,
|
|
4476
|
+
"minItems": 2
|
|
4477
|
+
}
|
|
4478
|
+
]
|
|
4445
4479
|
},
|
|
4446
4480
|
"no-constant-condition": {
|
|
4447
4481
|
"anyOf": [
|
|
@@ -5324,6 +5358,26 @@
|
|
|
5324
5358
|
"no-unreachable": {
|
|
5325
5359
|
"$ref": "#/definitions/RuleNoConfig"
|
|
5326
5360
|
},
|
|
5361
|
+
"no-unreachable-loop": {
|
|
5362
|
+
"anyOf": [
|
|
5363
|
+
{
|
|
5364
|
+
"$ref": "#/definitions/RuleNoConfig"
|
|
5365
|
+
},
|
|
5366
|
+
{
|
|
5367
|
+
"type": "array",
|
|
5368
|
+
"items": [
|
|
5369
|
+
{
|
|
5370
|
+
"$ref": "#/definitions/AllowWarnDeny"
|
|
5371
|
+
},
|
|
5372
|
+
{
|
|
5373
|
+
"$ref": "#/definitions/NoUnreachableLoop"
|
|
5374
|
+
}
|
|
5375
|
+
],
|
|
5376
|
+
"maxItems": 2,
|
|
5377
|
+
"minItems": 2
|
|
5378
|
+
}
|
|
5379
|
+
]
|
|
5380
|
+
},
|
|
5327
5381
|
"no-unsafe-finally": {
|
|
5328
5382
|
"$ref": "#/definitions/RuleNoConfig"
|
|
5329
5383
|
},
|
|
@@ -8634,6 +8688,26 @@
|
|
|
8634
8688
|
}
|
|
8635
8689
|
]
|
|
8636
8690
|
},
|
|
8691
|
+
"unicorn/explicit-timer-delay": {
|
|
8692
|
+
"anyOf": [
|
|
8693
|
+
{
|
|
8694
|
+
"$ref": "#/definitions/RuleNoConfig"
|
|
8695
|
+
},
|
|
8696
|
+
{
|
|
8697
|
+
"type": "array",
|
|
8698
|
+
"items": [
|
|
8699
|
+
{
|
|
8700
|
+
"$ref": "#/definitions/AllowWarnDeny"
|
|
8701
|
+
},
|
|
8702
|
+
{
|
|
8703
|
+
"$ref": "#/definitions/ExplicitTimerDelayMode"
|
|
8704
|
+
}
|
|
8705
|
+
],
|
|
8706
|
+
"maxItems": 2,
|
|
8707
|
+
"minItems": 2
|
|
8708
|
+
}
|
|
8709
|
+
]
|
|
8710
|
+
},
|
|
8637
8711
|
"unicorn/filename-case": {
|
|
8638
8712
|
"$ref": "#/definitions/DummyRule"
|
|
8639
8713
|
},
|
|
@@ -8767,6 +8841,9 @@
|
|
|
8767
8841
|
"unicorn/no-await-in-promise-methods": {
|
|
8768
8842
|
"$ref": "#/definitions/RuleNoConfig"
|
|
8769
8843
|
},
|
|
8844
|
+
"unicorn/no-confusing-array-with": {
|
|
8845
|
+
"$ref": "#/definitions/RuleNoConfig"
|
|
8846
|
+
},
|
|
8770
8847
|
"unicorn/no-console-spaces": {
|
|
8771
8848
|
"$ref": "#/definitions/RuleNoConfig"
|
|
8772
8849
|
},
|
|
@@ -10698,6 +10775,26 @@
|
|
|
10698
10775
|
},
|
|
10699
10776
|
"additionalProperties": false
|
|
10700
10777
|
},
|
|
10778
|
+
"ExplicitTimerDelayMode": {
|
|
10779
|
+
"oneOf": [
|
|
10780
|
+
{
|
|
10781
|
+
"description": "Require explicit `delay` argument for clarity.",
|
|
10782
|
+
"type": "string",
|
|
10783
|
+
"enum": [
|
|
10784
|
+
"always"
|
|
10785
|
+
],
|
|
10786
|
+
"markdownDescription": "Require explicit `delay` argument for clarity."
|
|
10787
|
+
},
|
|
10788
|
+
{
|
|
10789
|
+
"description": "Disallow explicit `0` delay, prefer implicit default.",
|
|
10790
|
+
"type": "string",
|
|
10791
|
+
"enum": [
|
|
10792
|
+
"never"
|
|
10793
|
+
],
|
|
10794
|
+
"markdownDescription": "Disallow explicit `0` delay, prefer implicit default."
|
|
10795
|
+
}
|
|
10796
|
+
]
|
|
10797
|
+
},
|
|
10701
10798
|
"ExtensionRule": {
|
|
10702
10799
|
"description": "Extension rule configuration; Copy to avoid extra indirection.",
|
|
10703
10800
|
"type": "string",
|
|
@@ -10819,12 +10916,12 @@
|
|
|
10819
10916
|
"type": "object",
|
|
10820
10917
|
"properties": {
|
|
10821
10918
|
"forbid": {
|
|
10822
|
-
"description": "An array of prop names or objects that are forbidden on DOM elements.\n\nEach array element can be a string with the property name, or an object\nwith `propName`,
|
|
10919
|
+
"description": "An array of prop names or objects that are forbidden on DOM elements.\n\nEach array element can be a string with the property name, or an object\nwith `propName`, optional `disallowedFor` and `disallowedValues` arrays,\nand an optional custom `message`.\n\nExamples:\n\n- `[\"error\", { \"forbid\": [\"id\", \"style\"] }]`\n- `[\"error\", { \"forbid\": [{ \"propName\": \"className\", \"message\": \"Use class instead\" }] }]`\n- `[\"error\", { \"forbid\": [{ \"propName\": \"style\", \"disallowedFor\": [\"div\", \"span\"] }] }]`\n- `[\"error\", { \"forbid\": [{ \"propName\": \"type\", \"disallowedValues\": [\"button\"] }] }]`",
|
|
10823
10920
|
"type": "array",
|
|
10824
10921
|
"items": {
|
|
10825
10922
|
"$ref": "#/definitions/ForbidDomPropsItem"
|
|
10826
10923
|
},
|
|
10827
|
-
"markdownDescription": "An array of prop names or objects that are forbidden on DOM elements.\n\nEach array element can be a string with the property name, or an object\nwith `propName`,
|
|
10924
|
+
"markdownDescription": "An array of prop names or objects that are forbidden on DOM elements.\n\nEach array element can be a string with the property name, or an object\nwith `propName`, optional `disallowedFor` and `disallowedValues` arrays,\nand an optional custom `message`.\n\nExamples:\n\n- `[\"error\", { \"forbid\": [\"id\", \"style\"] }]`\n- `[\"error\", { \"forbid\": [{ \"propName\": \"className\", \"message\": \"Use class instead\" }] }]`\n- `[\"error\", { \"forbid\": [{ \"propName\": \"style\", \"disallowedFor\": [\"div\", \"span\"] }] }]`\n- `[\"error\", { \"forbid\": [{ \"propName\": \"type\", \"disallowedValues\": [\"button\"] }] }]`"
|
|
10828
10925
|
}
|
|
10829
10926
|
},
|
|
10830
10927
|
"additionalProperties": false,
|
|
@@ -10839,13 +10936,13 @@
|
|
|
10839
10936
|
"markdownDescription": "A prop name to forbid on all DOM elements."
|
|
10840
10937
|
},
|
|
10841
10938
|
{
|
|
10842
|
-
"description": "A prop with optional `disallowedFor` DOM node list and custom `message`.",
|
|
10939
|
+
"description": "A prop with optional `disallowedFor` DOM node list, optional\n`disallowedValues` value list, and custom `message`.",
|
|
10843
10940
|
"allOf": [
|
|
10844
10941
|
{
|
|
10845
10942
|
"$ref": "#/definitions/PropWithOptions"
|
|
10846
10943
|
}
|
|
10847
10944
|
],
|
|
10848
|
-
"markdownDescription": "A prop with optional `disallowedFor` DOM node list and custom `message`."
|
|
10945
|
+
"markdownDescription": "A prop with optional `disallowedFor` DOM node list, optional\n`disallowedValues` value list, and custom `message`."
|
|
10849
10946
|
}
|
|
10850
10947
|
],
|
|
10851
10948
|
"markdownDescription": "A forbidden prop, either as a plain prop name string or with options."
|
|
@@ -10914,15 +11011,10 @@
|
|
|
10914
11011
|
},
|
|
10915
11012
|
"ForbidItemObject": {
|
|
10916
11013
|
"type": "object",
|
|
10917
|
-
"required": [
|
|
10918
|
-
"allowedFor",
|
|
10919
|
-
"allowedForPatterns",
|
|
10920
|
-
"disallowedFor",
|
|
10921
|
-
"disallowedForPatterns"
|
|
10922
|
-
],
|
|
10923
11014
|
"properties": {
|
|
10924
11015
|
"allowedFor": {
|
|
10925
11016
|
"description": "Component names for which this prop is **allowed** (all others are\nforbidden).",
|
|
11017
|
+
"default": [],
|
|
10926
11018
|
"type": "array",
|
|
10927
11019
|
"items": {
|
|
10928
11020
|
"type": "string"
|
|
@@ -10931,6 +11023,7 @@
|
|
|
10931
11023
|
},
|
|
10932
11024
|
"allowedForPatterns": {
|
|
10933
11025
|
"description": "Glob patterns for component names where the prop is **allowed**.",
|
|
11026
|
+
"default": [],
|
|
10934
11027
|
"type": "array",
|
|
10935
11028
|
"items": {
|
|
10936
11029
|
"type": "string"
|
|
@@ -10939,6 +11032,7 @@
|
|
|
10939
11032
|
},
|
|
10940
11033
|
"disallowedFor": {
|
|
10941
11034
|
"description": "Component names for which this prop is **disallowed** (all others are\nallowed).",
|
|
11035
|
+
"default": [],
|
|
10942
11036
|
"type": "array",
|
|
10943
11037
|
"items": {
|
|
10944
11038
|
"type": "string"
|
|
@@ -10947,6 +11041,7 @@
|
|
|
10947
11041
|
},
|
|
10948
11042
|
"disallowedForPatterns": {
|
|
10949
11043
|
"description": "Glob patterns for component names where the prop is **disallowed**.",
|
|
11044
|
+
"default": [],
|
|
10950
11045
|
"type": "array",
|
|
10951
11046
|
"items": {
|
|
10952
11047
|
"type": "string"
|
|
@@ -12375,6 +12470,16 @@
|
|
|
12375
12470
|
},
|
|
12376
12471
|
"additionalProperties": false
|
|
12377
12472
|
},
|
|
12473
|
+
"LoopType": {
|
|
12474
|
+
"type": "string",
|
|
12475
|
+
"enum": [
|
|
12476
|
+
"WhileStatement",
|
|
12477
|
+
"DoWhileStatement",
|
|
12478
|
+
"ForStatement",
|
|
12479
|
+
"ForInStatement",
|
|
12480
|
+
"ForOfStatement"
|
|
12481
|
+
]
|
|
12482
|
+
},
|
|
12378
12483
|
"MaxClassesPerFileConfig": {
|
|
12379
12484
|
"type": "object",
|
|
12380
12485
|
"properties": {
|
|
@@ -12948,6 +13053,26 @@
|
|
|
12948
13053
|
},
|
|
12949
13054
|
"additionalProperties": false
|
|
12950
13055
|
},
|
|
13056
|
+
"Namespaces": {
|
|
13057
|
+
"oneOf": [
|
|
13058
|
+
{
|
|
13059
|
+
"description": "Allow declarations directly inside TypeScript namespace or module bodies.",
|
|
13060
|
+
"type": "string",
|
|
13061
|
+
"enum": [
|
|
13062
|
+
"allow"
|
|
13063
|
+
],
|
|
13064
|
+
"markdownDescription": "Allow declarations directly inside TypeScript namespace or module bodies."
|
|
13065
|
+
},
|
|
13066
|
+
{
|
|
13067
|
+
"description": "Disallow declarations directly inside TypeScript namespace or module bodies.",
|
|
13068
|
+
"type": "string",
|
|
13069
|
+
"enum": [
|
|
13070
|
+
"disallow"
|
|
13071
|
+
],
|
|
13072
|
+
"markdownDescription": "Disallow declarations directly inside TypeScript namespace or module bodies."
|
|
13073
|
+
}
|
|
13074
|
+
]
|
|
13075
|
+
},
|
|
12951
13076
|
"NativeAllowList": {
|
|
12952
13077
|
"anyOf": [
|
|
12953
13078
|
{
|
|
@@ -13187,6 +13312,12 @@
|
|
|
13187
13312
|
"NoArraySort": {
|
|
13188
13313
|
"type": "object",
|
|
13189
13314
|
"properties": {
|
|
13315
|
+
"allowAfterSpread": {
|
|
13316
|
+
"description": "When set to `true`, allows sorting a fresh array created by a spread, e.g. `[...iterable].sort()`.\nThis avoids the double allocation of `toSorted()` when sorting an iterable such as a `Set`.\n\nExample of **correct** code for this rule with `allowAfterSpread` set to `true`:\n```js\nconst sorted = [...mySet].sort();\n```",
|
|
13317
|
+
"default": false,
|
|
13318
|
+
"type": "boolean",
|
|
13319
|
+
"markdownDescription": "When set to `true`, allows sorting a fresh array created by a spread, e.g. `[...iterable].sort()`.\nThis avoids the double allocation of `toSorted()` when sorting an iterable such as a `Set`.\n\nExample of **correct** code for this rule with `allowAfterSpread` set to `true`:\n```js\nconst sorted = [...mySet].sort();\n```"
|
|
13320
|
+
},
|
|
13190
13321
|
"allowExpressionStatement": {
|
|
13191
13322
|
"description": "When set to `true` (default), allows `array.sort()` as an expression statement.\nSet to `false` to forbid `Array#sort()` even if it's an expression statement.\n\nExample of **incorrect** code for this rule with `allowExpressionStatement` set to `false`:\n```js\narray.sort();\n```",
|
|
13192
13323
|
"default": true,
|
|
@@ -13407,6 +13538,16 @@
|
|
|
13407
13538
|
},
|
|
13408
13539
|
"additionalProperties": false
|
|
13409
13540
|
},
|
|
13541
|
+
"NoConstantBinaryExpressionConfig": {
|
|
13542
|
+
"type": "object",
|
|
13543
|
+
"properties": {
|
|
13544
|
+
"checkRelationalComparisons": {
|
|
13545
|
+
"default": true,
|
|
13546
|
+
"type": "boolean"
|
|
13547
|
+
}
|
|
13548
|
+
},
|
|
13549
|
+
"additionalProperties": false
|
|
13550
|
+
},
|
|
13410
13551
|
"NoConstantCondition": {
|
|
13411
13552
|
"type": "object",
|
|
13412
13553
|
"properties": {
|
|
@@ -14012,6 +14153,16 @@
|
|
|
14012
14153
|
}
|
|
14013
14154
|
],
|
|
14014
14155
|
"markdownDescription": "Controls whether function declarations in nested blocks are allowed in strict mode (ES6+ behavior)."
|
|
14156
|
+
},
|
|
14157
|
+
"namespaces": {
|
|
14158
|
+
"description": "Controls whether declarations directly inside TypeScript namespace or module bodies are allowed.",
|
|
14159
|
+
"default": null,
|
|
14160
|
+
"allOf": [
|
|
14161
|
+
{
|
|
14162
|
+
"$ref": "#/definitions/Namespaces"
|
|
14163
|
+
}
|
|
14164
|
+
],
|
|
14165
|
+
"markdownDescription": "Controls whether declarations directly inside TypeScript namespace or module bodies are allowed."
|
|
14015
14166
|
}
|
|
14016
14167
|
},
|
|
14017
14168
|
"additionalProperties": false
|
|
@@ -14708,7 +14859,6 @@
|
|
|
14708
14859
|
"properties": {
|
|
14709
14860
|
"allow": {
|
|
14710
14861
|
"description": "These strings will be compiled into regular expressions with the u flag and be used to test against the imported path.\nA common use case is to allow importing `package.json`. This is because `package.json` commonly lives outside of the TS root directory,\nso statically importing it would lead to root directory conflicts, especially with `resolveJsonModule` enabled.\nYou can also use it to allow importing any JSON if your environment doesn't support JSON modules, or use it for other cases where `import` statements cannot work.\n\nWith `{ allow: ['/package\\\\.json$'] }`:\n\nExamples of **correct** code for this rule:\n```ts\nconsole.log(require('../package.json').version);\n```",
|
|
14711
|
-
"default": [],
|
|
14712
14862
|
"type": "array",
|
|
14713
14863
|
"items": {
|
|
14714
14864
|
"type": "string"
|
|
@@ -15332,6 +15482,21 @@
|
|
|
15332
15482
|
},
|
|
15333
15483
|
"additionalProperties": false
|
|
15334
15484
|
},
|
|
15485
|
+
"NoUnreachableLoop": {
|
|
15486
|
+
"$ref": "#/definitions/NoUnreachableLoopConfig"
|
|
15487
|
+
},
|
|
15488
|
+
"NoUnreachableLoopConfig": {
|
|
15489
|
+
"type": "object",
|
|
15490
|
+
"properties": {
|
|
15491
|
+
"ignore": {
|
|
15492
|
+
"type": "array",
|
|
15493
|
+
"items": {
|
|
15494
|
+
"$ref": "#/definitions/LoopType"
|
|
15495
|
+
}
|
|
15496
|
+
}
|
|
15497
|
+
},
|
|
15498
|
+
"additionalProperties": false
|
|
15499
|
+
},
|
|
15335
15500
|
"NoUnsafeConfig": {
|
|
15336
15501
|
"type": "object",
|
|
15337
15502
|
"properties": {
|
|
@@ -16130,11 +16295,12 @@
|
|
|
16130
16295
|
"type": "object",
|
|
16131
16296
|
"properties": {
|
|
16132
16297
|
"ignoreProps": {
|
|
16133
|
-
"
|
|
16298
|
+
"description": "Prop names to ignore, as regular expression patterns.",
|
|
16134
16299
|
"type": "array",
|
|
16135
16300
|
"items": {
|
|
16136
16301
|
"type": "string"
|
|
16137
|
-
}
|
|
16302
|
+
},
|
|
16303
|
+
"markdownDescription": "Prop names to ignore, as regular expression patterns."
|
|
16138
16304
|
}
|
|
16139
16305
|
},
|
|
16140
16306
|
"additionalProperties": false
|
|
@@ -16824,15 +16990,12 @@
|
|
|
16824
16990
|
"markdownDescription": "An array of function names that should also be treated as test blocks."
|
|
16825
16991
|
},
|
|
16826
16992
|
"assertFunctionNames": {
|
|
16827
|
-
"description": "A list of function names that should be treated as assertion functions
|
|
16828
|
-
"default": [
|
|
16829
|
-
"expect"
|
|
16830
|
-
],
|
|
16993
|
+
"description": "A list of function names that should be treated as assertion functions.\nDefault: `[\"expect\"]`",
|
|
16831
16994
|
"type": "array",
|
|
16832
16995
|
"items": {
|
|
16833
16996
|
"type": "string"
|
|
16834
16997
|
},
|
|
16835
|
-
"markdownDescription": "A list of function names that should be treated as assertion functions
|
|
16998
|
+
"markdownDescription": "A list of function names that should be treated as assertion functions.\nDefault: `[\"expect\"]`"
|
|
16836
16999
|
}
|
|
16837
17000
|
},
|
|
16838
17001
|
"additionalProperties": false
|
|
@@ -17321,7 +17484,7 @@
|
|
|
17321
17484
|
"additionalProperties": false
|
|
17322
17485
|
},
|
|
17323
17486
|
"PropWithOptions": {
|
|
17324
|
-
"description": "A prop with optional `disallowedFor` DOM node list and custom `message`.",
|
|
17487
|
+
"description": "A prop with optional `disallowedFor` DOM node list, optional `disallowedValues`\nvalue list, and custom `message`.",
|
|
17325
17488
|
"type": "object",
|
|
17326
17489
|
"required": [
|
|
17327
17490
|
"propName"
|
|
@@ -17335,6 +17498,14 @@
|
|
|
17335
17498
|
},
|
|
17336
17499
|
"markdownDescription": "A list of DOM element names (e.g. `[\"div\", \"span\"]`) on which this\nprop is forbidden. If empty or omitted, the prop is forbidden on all\nDOM elements."
|
|
17337
17500
|
},
|
|
17501
|
+
"disallowedValues": {
|
|
17502
|
+
"description": "A list of string literal values for which this prop is forbidden. If\nomitted, the prop is forbidden for all values.",
|
|
17503
|
+
"type": "array",
|
|
17504
|
+
"items": {
|
|
17505
|
+
"type": "string"
|
|
17506
|
+
},
|
|
17507
|
+
"markdownDescription": "A list of string literal values for which this prop is forbidden. If\nomitted, the prop is forbidden for all values."
|
|
17508
|
+
},
|
|
17338
17509
|
"message": {
|
|
17339
17510
|
"description": "A custom message to display when this prop is used.",
|
|
17340
17511
|
"type": "string",
|
|
@@ -17347,7 +17518,7 @@
|
|
|
17347
17518
|
}
|
|
17348
17519
|
},
|
|
17349
17520
|
"additionalProperties": false,
|
|
17350
|
-
"markdownDescription": "A prop with optional `disallowedFor` DOM node list and custom `message`."
|
|
17521
|
+
"markdownDescription": "A prop with optional `disallowedFor` DOM node list, optional `disallowedValues`\nvalue list, and custom `message`."
|
|
17351
17522
|
},
|
|
17352
17523
|
"PropertyDetails": {
|
|
17353
17524
|
"type": "object",
|
|
@@ -17596,6 +17767,83 @@
|
|
|
17596
17767
|
},
|
|
17597
17768
|
"additionalProperties": false
|
|
17598
17769
|
},
|
|
17770
|
+
"RequireParamConfig": {
|
|
17771
|
+
"type": "object",
|
|
17772
|
+
"properties": {
|
|
17773
|
+
"checkConstructors": {
|
|
17774
|
+
"description": "Whether to check constructor methods.",
|
|
17775
|
+
"default": false,
|
|
17776
|
+
"type": "boolean",
|
|
17777
|
+
"markdownDescription": "Whether to check constructor methods."
|
|
17778
|
+
},
|
|
17779
|
+
"checkDestructured": {
|
|
17780
|
+
"description": "Whether to check destructured parameters.",
|
|
17781
|
+
"default": true,
|
|
17782
|
+
"type": "boolean",
|
|
17783
|
+
"markdownDescription": "Whether to check destructured parameters."
|
|
17784
|
+
},
|
|
17785
|
+
"checkDestructuredRoots": {
|
|
17786
|
+
"description": "Whether to check destructured parameters when you have code like\n`function doSomething({ a, b }) { ... }`. Because there is no named\nparameter in this example, when this option is `true` you must\nhave a `@param` tag that corresponds to `{a, b}`.",
|
|
17787
|
+
"default": true,
|
|
17788
|
+
"type": "boolean",
|
|
17789
|
+
"markdownDescription": "Whether to check destructured parameters when you have code like\n`function doSomething({ a, b }) { ... }`. Because there is no named\nparameter in this example, when this option is `true` you must\nhave a `@param` tag that corresponds to `{a, b}`."
|
|
17790
|
+
},
|
|
17791
|
+
"checkGetters": {
|
|
17792
|
+
"description": "Whether to check getter methods.",
|
|
17793
|
+
"default": true,
|
|
17794
|
+
"type": "boolean",
|
|
17795
|
+
"markdownDescription": "Whether to check getter methods."
|
|
17796
|
+
},
|
|
17797
|
+
"checkRestProperty": {
|
|
17798
|
+
"description": "Whether to check rest properties.",
|
|
17799
|
+
"default": false,
|
|
17800
|
+
"type": "boolean",
|
|
17801
|
+
"markdownDescription": "Whether to check rest properties."
|
|
17802
|
+
},
|
|
17803
|
+
"checkSetters": {
|
|
17804
|
+
"description": "Whether to check setter methods.",
|
|
17805
|
+
"default": true,
|
|
17806
|
+
"type": "boolean",
|
|
17807
|
+
"markdownDescription": "Whether to check setter methods."
|
|
17808
|
+
},
|
|
17809
|
+
"checkTypesPattern": {
|
|
17810
|
+
"description": "Regex pattern to match types that exempt parameters from checking.",
|
|
17811
|
+
"default": "^(?:[oO]bject|[aA]rray|PlainObject|Generic(?:Object|Array))$",
|
|
17812
|
+
"type": "string",
|
|
17813
|
+
"markdownDescription": "Regex pattern to match types that exempt parameters from checking."
|
|
17814
|
+
},
|
|
17815
|
+
"exemptedBy": {
|
|
17816
|
+
"description": "List of JSDoc tags that exempt functions from `@param` checking.",
|
|
17817
|
+
"default": [
|
|
17818
|
+
"inheritdoc"
|
|
17819
|
+
],
|
|
17820
|
+
"type": "array",
|
|
17821
|
+
"items": {
|
|
17822
|
+
"type": "string"
|
|
17823
|
+
},
|
|
17824
|
+
"markdownDescription": "List of JSDoc tags that exempt functions from `@param` checking."
|
|
17825
|
+
},
|
|
17826
|
+
"ignoreWhenAllParamsMissing": {
|
|
17827
|
+
"description": "Set to `true` to ignore reporting when all params are missing. Defaults to `false`.",
|
|
17828
|
+
"default": false,
|
|
17829
|
+
"type": "boolean",
|
|
17830
|
+
"markdownDescription": "Set to `true` to ignore reporting when all params are missing. Defaults to `false`."
|
|
17831
|
+
},
|
|
17832
|
+
"interfaceExemptsParamsCheck": {
|
|
17833
|
+
"description": "Set if you wish TypeScript interfaces to exempt checks for the existence of `@param`'s.\nWill check for a type defining the function itself (on a variable declaration) or if there is a single destructured object with a type. Defaults to `false`.",
|
|
17834
|
+
"default": false,
|
|
17835
|
+
"type": "boolean",
|
|
17836
|
+
"markdownDescription": "Set if you wish TypeScript interfaces to exempt checks for the existence of `@param`'s.\nWill check for a type defining the function itself (on a variable declaration) or if there is a single destructured object with a type. Defaults to `false`."
|
|
17837
|
+
},
|
|
17838
|
+
"useDefaultObjectProperties": {
|
|
17839
|
+
"description": "Set to `true` if you wish to expect documentation of properties on objects supplied as default values. Defaults to `false`.",
|
|
17840
|
+
"default": false,
|
|
17841
|
+
"type": "boolean",
|
|
17842
|
+
"markdownDescription": "Set to `true` if you wish to expect documentation of properties on objects supplied as default values. Defaults to `false`."
|
|
17843
|
+
}
|
|
17844
|
+
},
|
|
17845
|
+
"additionalProperties": false
|
|
17846
|
+
},
|
|
17599
17847
|
"RequireParamDescriptionConfig": {
|
|
17600
17848
|
"type": "object",
|
|
17601
17849
|
"properties": {
|