@2digits/eslint-config 4.6.3 → 4.6.5

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.
Files changed (2) hide show
  1. package/dist/index.d.mts +116 -242
  2. package/package.json +22 -22
package/dist/index.d.mts CHANGED
@@ -277,6 +277,11 @@ interface RuleOptions {
277
277
  * @see https://github.com/eslint/css/blob/main/docs/rules/prefer-logical-properties.md
278
278
  */
279
279
  'css/prefer-logical-properties'?: Linter.RuleEntry<CssPreferLogicalProperties>;
280
+ /**
281
+ * Enforce the use of relative font units
282
+ * @see https://github.com/eslint/css/blob/main/docs/rules/relative-font-units.md
283
+ */
284
+ 'css/relative-font-units'?: Linter.RuleEntry<CssRelativeFontUnits>;
280
285
  /**
281
286
  * Enforce the use of baseline features
282
287
  * @see https://github.com/eslint/css/blob/main/docs/rules/use-baseline.md
@@ -1397,6 +1402,11 @@ interface RuleOptions {
1397
1402
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/heading-increment.md
1398
1403
  */
1399
1404
  'markdown/heading-increment'?: Linter.RuleEntry<[]>;
1405
+ /**
1406
+ * Disallow bare URLs
1407
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-bare-urls.md
1408
+ */
1409
+ 'markdown/no-bare-urls'?: Linter.RuleEntry<[]>;
1400
1410
  /**
1401
1411
  * Disallow duplicate definitions
1402
1412
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-definitions.md
@@ -1406,7 +1416,7 @@ interface RuleOptions {
1406
1416
  * Disallow duplicate headings in the same document
1407
1417
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-headings.md
1408
1418
  */
1409
- 'markdown/no-duplicate-headings'?: Linter.RuleEntry<[]>;
1419
+ 'markdown/no-duplicate-headings'?: Linter.RuleEntry<MarkdownNoDuplicateHeadings>;
1410
1420
  /**
1411
1421
  * Disallow empty definitions
1412
1422
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-definitions.md
@@ -1442,11 +1452,21 @@ interface RuleOptions {
1442
1452
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-label-refs.md
1443
1453
  */
1444
1454
  'markdown/no-missing-label-refs'?: Linter.RuleEntry<[]>;
1455
+ /**
1456
+ * Disallow link fragments that do not reference valid headings
1457
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-link-fragments.md
1458
+ */
1459
+ 'markdown/no-missing-link-fragments'?: Linter.RuleEntry<MarkdownNoMissingLinkFragments>;
1445
1460
  /**
1446
1461
  * Disallow multiple H1 headings in the same document
1447
1462
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-multiple-h1.md
1448
1463
  */
1449
1464
  'markdown/no-multiple-h1'?: Linter.RuleEntry<MarkdownNoMultipleH1>;
1465
+ /**
1466
+ * Disallow reversed link and image syntax
1467
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reversed-media-syntax.md
1468
+ */
1469
+ 'markdown/no-reversed-media-syntax'?: Linter.RuleEntry<[]>;
1450
1470
  /**
1451
1471
  * Require alternative text for images
1452
1472
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/require-alt-text.md
@@ -3820,12 +3840,12 @@ interface RuleOptions {
3820
3840
  * Parameters should be passed in the correct order
3821
3841
  * @see https://sonarsource.github.io/rspec/#/rspec/S2234/javascript
3822
3842
  */
3823
- 'sonar/arguments-order'?: Linter.RuleEntry<SonarArgumentsOrder>;
3843
+ 'sonar/arguments-order'?: Linter.RuleEntry<[]>;
3824
3844
  /**
3825
3845
  * "arguments" should not be accessed directly
3826
3846
  * @see https://sonarsource.github.io/rspec/#/rspec/S3513/javascript
3827
3847
  */
3828
- 'sonar/arguments-usage'?: Linter.RuleEntry<SonarArgumentsUsage>;
3848
+ 'sonar/arguments-usage'?: Linter.RuleEntry<[]>;
3829
3849
  /**
3830
3850
  * Callbacks of array methods should have return statements
3831
3851
  * @see https://sonarsource.github.io/rspec/#/rspec/S3796/javascript
@@ -3870,22 +3890,22 @@ interface RuleOptions {
3870
3890
  * Policies granting all privileges are security-sensitive
3871
3891
  * @see https://sonarsource.github.io/rspec/#/rspec/S6302/javascript
3872
3892
  */
3873
- 'sonar/aws-iam-all-privileges'?: Linter.RuleEntry<SonarAwsIamAllPrivileges>;
3893
+ 'sonar/aws-iam-all-privileges'?: Linter.RuleEntry<[]>;
3874
3894
  /**
3875
3895
  * Policies granting access to all resources of an account are security-sensitive
3876
3896
  * @see https://sonarsource.github.io/rspec/#/rspec/S6304/javascript
3877
3897
  */
3878
- 'sonar/aws-iam-all-resources-accessible'?: Linter.RuleEntry<SonarAwsIamAllResourcesAccessible>;
3898
+ 'sonar/aws-iam-all-resources-accessible'?: Linter.RuleEntry<[]>;
3879
3899
  /**
3880
3900
  * AWS IAM policies should limit the scope of permissions given
3881
3901
  * @see https://sonarsource.github.io/rspec/#/rspec/S6317/javascript
3882
3902
  */
3883
- 'sonar/aws-iam-privilege-escalation'?: Linter.RuleEntry<SonarAwsIamPrivilegeEscalation>;
3903
+ 'sonar/aws-iam-privilege-escalation'?: Linter.RuleEntry<[]>;
3884
3904
  /**
3885
3905
  * Policies authorizing public access to resources are security-sensitive
3886
3906
  * @see https://sonarsource.github.io/rspec/#/rspec/S6270/javascript
3887
3907
  */
3888
- 'sonar/aws-iam-public-access'?: Linter.RuleEntry<SonarAwsIamPublicAccess>;
3908
+ 'sonar/aws-iam-public-access'?: Linter.RuleEntry<[]>;
3889
3909
  /**
3890
3910
  * Using unencrypted Elasticsearch domains is security-sensitive
3891
3911
  * @see https://sonarsource.github.io/rspec/#/rspec/S6308/javascript
@@ -3905,7 +3925,7 @@ interface RuleOptions {
3905
3925
  * Granting access to S3 buckets to all or authenticated users is security-sensitive
3906
3926
  * @see https://sonarsource.github.io/rspec/#/rspec/S6265/javascript
3907
3927
  */
3908
- 'sonar/aws-s3-bucket-granted-access'?: Linter.RuleEntry<SonarAwsS3BucketGrantedAccess>;
3928
+ 'sonar/aws-s3-bucket-granted-access'?: Linter.RuleEntry<[]>;
3909
3929
  /**
3910
3930
  * Authorizing HTTP communications with S3 buckets is security-sensitive
3911
3931
  * @see https://sonarsource.github.io/rspec/#/rspec/S6249/javascript
@@ -3915,18 +3935,18 @@ interface RuleOptions {
3915
3935
  * Allowing public ACLs or policies on a S3 bucket is security-sensitive
3916
3936
  * @see https://sonarsource.github.io/rspec/#/rspec/S6281/javascript
3917
3937
  */
3918
- 'sonar/aws-s3-bucket-public-access'?: Linter.RuleEntry<SonarAwsS3BucketPublicAccess>;
3938
+ 'sonar/aws-s3-bucket-public-access'?: Linter.RuleEntry<[]>;
3919
3939
  /**
3920
3940
  * Disabling server-side encryption of S3 buckets is security-sensitive
3921
3941
  * @see https://sonarsource.github.io/rspec/#/rspec/S6245/javascript
3922
3942
  * @deprecated
3923
3943
  */
3924
- 'sonar/aws-s3-bucket-server-encryption'?: Linter.RuleEntry<SonarAwsS3BucketServerEncryption>;
3944
+ 'sonar/aws-s3-bucket-server-encryption'?: Linter.RuleEntry<[]>;
3925
3945
  /**
3926
3946
  * Disabling versioning of S3 buckets is security-sensitive
3927
3947
  * @see https://sonarsource.github.io/rspec/#/rspec/S6252/javascript
3928
3948
  */
3929
- 'sonar/aws-s3-bucket-versioning'?: Linter.RuleEntry<SonarAwsS3BucketVersioning>;
3949
+ 'sonar/aws-s3-bucket-versioning'?: Linter.RuleEntry<[]>;
3930
3950
  /**
3931
3951
  * Using unencrypted SageMaker notebook instances is security-sensitive
3932
3952
  * @see https://sonarsource.github.io/rspec/#/rspec/S6319/javascript
@@ -3951,7 +3971,7 @@ interface RuleOptions {
3951
3971
  * Variables should be used in the blocks where they are declared
3952
3972
  * @see https://sonarsource.github.io/rspec/#/rspec/S2392/javascript
3953
3973
  */
3954
- 'sonar/block-scoped-var'?: Linter.RuleEntry<SonarBlockScopedVar>;
3974
+ 'sonar/block-scoped-var'?: Linter.RuleEntry<[]>;
3955
3975
  /**
3956
3976
  * Optional boolean parameters should have default value
3957
3977
  * @see https://sonarsource.github.io/rspec/#/rspec/S4798/javascript
@@ -3967,7 +3987,7 @@ interface RuleOptions {
3967
3987
  * @see https://sonarsource.github.io/rspec/#/rspec/S5742/javascript
3968
3988
  * @deprecated
3969
3989
  */
3970
- 'sonar/certificate-transparency'?: Linter.RuleEntry<SonarCertificateTransparency>;
3990
+ 'sonar/certificate-transparency'?: Linter.RuleEntry<[]>;
3971
3991
  /**
3972
3992
  * Chai assertions should have only one reason to succeed
3973
3993
  * @see https://sonarsource.github.io/rspec/#/rspec/S6092/javascript
@@ -4013,12 +4033,12 @@ interface RuleOptions {
4013
4033
  * @see https://sonarsource.github.io/rspec/#/rspec/S3973/javascript
4014
4034
  * @deprecated
4015
4035
  */
4016
- 'sonar/conditional-indentation'?: Linter.RuleEntry<SonarConditionalIndentation>;
4036
+ 'sonar/conditional-indentation'?: Linter.RuleEntry<[]>;
4017
4037
  /**
4018
4038
  * Allowing confidential information to be logged is security-sensitive
4019
4039
  * @see https://sonarsource.github.io/rspec/#/rspec/S5757/javascript
4020
4040
  */
4021
- 'sonar/confidential-information-logging'?: Linter.RuleEntry<SonarConfidentialInformationLogging>;
4041
+ 'sonar/confidential-information-logging'?: Linter.RuleEntry<[]>;
4022
4042
  /**
4023
4043
  * Objects should not be created to be dropped immediately without being used
4024
4044
  * @see https://sonarsource.github.io/rspec/#/rspec/S1848/javascript
@@ -4033,12 +4053,12 @@ interface RuleOptions {
4033
4053
  * Disabling content security policy fetch directives is security-sensitive
4034
4054
  * @see https://sonarsource.github.io/rspec/#/rspec/S5728/javascript
4035
4055
  */
4036
- 'sonar/content-security-policy'?: Linter.RuleEntry<SonarContentSecurityPolicy>;
4056
+ 'sonar/content-security-policy'?: Linter.RuleEntry<[]>;
4037
4057
  /**
4038
4058
  * Creating cookies without the "HttpOnly" flag is security-sensitive
4039
4059
  * @see https://sonarsource.github.io/rspec/#/rspec/S3330/javascript
4040
4060
  */
4041
- 'sonar/cookie-no-httponly'?: Linter.RuleEntry<SonarCookieNoHttponly>;
4061
+ 'sonar/cookie-no-httponly'?: Linter.RuleEntry<[]>;
4042
4062
  /**
4043
4063
  * Writing cookies is security-sensitive
4044
4064
  * @see https://sonarsource.github.io/rspec/#/rspec/S2255/javascript
@@ -4049,12 +4069,12 @@ interface RuleOptions {
4049
4069
  * Having a permissive Cross-Origin Resource Sharing policy is security-sensitive
4050
4070
  * @see https://sonarsource.github.io/rspec/#/rspec/S5122/javascript
4051
4071
  */
4052
- 'sonar/cors'?: Linter.RuleEntry<SonarCors>;
4072
+ 'sonar/cors'?: Linter.RuleEntry<[]>;
4053
4073
  /**
4054
4074
  * Disabling CSRF protections is security-sensitive
4055
4075
  * @see https://sonarsource.github.io/rspec/#/rspec/S4502/javascript
4056
4076
  */
4057
- 'sonar/csrf'?: Linter.RuleEntry<SonarCsrf>;
4077
+ 'sonar/csrf'?: Linter.RuleEntry<[]>;
4058
4078
  /**
4059
4079
  * Cyclomatic Complexity of functions should not be too high
4060
4080
  * @see https://sonarsource.github.io/rspec/#/rspec/S1541/javascript
@@ -4074,17 +4094,17 @@ interface RuleOptions {
4074
4094
  * Destructuring syntax should be used for assignments
4075
4095
  * @see https://sonarsource.github.io/rspec/#/rspec/S3514/javascript
4076
4096
  */
4077
- 'sonar/destructuring-assignment-syntax'?: Linter.RuleEntry<SonarDestructuringAssignmentSyntax>;
4097
+ 'sonar/destructuring-assignment-syntax'?: Linter.RuleEntry<[]>;
4078
4098
  /**
4079
4099
  * Strict equality operators should not be used with dissimilar types
4080
4100
  * @see https://sonarsource.github.io/rspec/#/rspec/S3403/javascript
4081
4101
  */
4082
- 'sonar/different-types-comparison'?: Linter.RuleEntry<SonarDifferentTypesComparison>;
4102
+ 'sonar/different-types-comparison'?: Linter.RuleEntry<[]>;
4083
4103
  /**
4084
4104
  * Disabling auto-escaping in template engines is security-sensitive
4085
4105
  * @see https://sonarsource.github.io/rspec/#/rspec/S5247/javascript
4086
4106
  */
4087
- 'sonar/disabled-auto-escaping'?: Linter.RuleEntry<SonarDisabledAutoEscaping>;
4107
+ 'sonar/disabled-auto-escaping'?: Linter.RuleEntry<[]>;
4088
4108
  /**
4089
4109
  * Using remote artifacts without integrity checks is security-sensitive
4090
4110
  * @see https://sonarsource.github.io/rspec/#/rspec/S5725/javascript
@@ -4100,12 +4120,12 @@ interface RuleOptions {
4100
4120
  * @see https://sonarsource.github.io/rspec/#/rspec/S5743/javascript
4101
4121
  * @deprecated
4102
4122
  */
4103
- 'sonar/dns-prefetching'?: Linter.RuleEntry<SonarDnsPrefetching>;
4123
+ 'sonar/dns-prefetching'?: Linter.RuleEntry<[]>;
4104
4124
  /**
4105
4125
  * Character classes in regular expressions should not contain the same character twice
4106
4126
  * @see https://sonarsource.github.io/rspec/#/rspec/S5869/javascript
4107
4127
  */
4108
- 'sonar/duplicates-in-character-class'?: Linter.RuleEntry<SonarDuplicatesInCharacterClass>;
4128
+ 'sonar/duplicates-in-character-class'?: Linter.RuleEntry<[]>;
4109
4129
  /**
4110
4130
  * "if ... else if" constructs should end with "else" clauses
4111
4131
  * @see https://sonarsource.github.io/rspec/#/rspec/S126/javascript
@@ -4162,7 +4182,7 @@ interface RuleOptions {
4162
4182
  * File uploads should be restricted
4163
4183
  * @see https://sonarsource.github.io/rspec/#/rspec/S2598/javascript
4164
4184
  */
4165
- 'sonar/file-uploads'?: Linter.RuleEntry<SonarFileUploads>;
4185
+ 'sonar/file-uploads'?: Linter.RuleEntry<[]>;
4166
4186
  /**
4167
4187
  * Track uses of "FIXME" tags
4168
4188
  * @see https://sonarsource.github.io/rspec/#/rspec/S1134/javascript
@@ -4177,17 +4197,17 @@ interface RuleOptions {
4177
4197
  * A "for" loop update clause should move the counter in the right direction
4178
4198
  * @see https://sonarsource.github.io/rspec/#/rspec/S2251/javascript
4179
4199
  */
4180
- 'sonar/for-loop-increment-sign'?: Linter.RuleEntry<SonarForLoopIncrementSign>;
4200
+ 'sonar/for-loop-increment-sign'?: Linter.RuleEntry<[]>;
4181
4201
  /**
4182
4202
  * Disabling content security policy frame-ancestors directive is security-sensitive
4183
4203
  * @see https://sonarsource.github.io/rspec/#/rspec/S5732/javascript
4184
4204
  */
4185
- 'sonar/frame-ancestors'?: Linter.RuleEntry<SonarFrameAncestors>;
4205
+ 'sonar/frame-ancestors'?: Linter.RuleEntry<[]>;
4186
4206
  /**
4187
4207
  * Functions should not be defined inside loops
4188
4208
  * @see https://sonarsource.github.io/rspec/#/rspec/S1515/javascript
4189
4209
  */
4190
- 'sonar/function-inside-loop'?: Linter.RuleEntry<SonarFunctionInsideLoop>;
4210
+ 'sonar/function-inside-loop'?: Linter.RuleEntry<[]>;
4191
4211
  /**
4192
4212
  * Function and method names should comply with a naming convention
4193
4213
  * @see https://sonarsource.github.io/rspec/#/rspec/S100/javascript
@@ -4197,7 +4217,7 @@ interface RuleOptions {
4197
4217
  * Functions should always return the same type
4198
4218
  * @see https://sonarsource.github.io/rspec/#/rspec/S3800/javascript
4199
4219
  */
4200
- 'sonar/function-return-type'?: Linter.RuleEntry<SonarFunctionReturnType>;
4220
+ 'sonar/function-return-type'?: Linter.RuleEntry<[]>;
4201
4221
  /**
4202
4222
  * Future reserved words should not be used as identifiers
4203
4223
  * @see https://sonarsource.github.io/rspec/#/rspec/S1527/javascript
@@ -4222,12 +4242,12 @@ interface RuleOptions {
4222
4242
  * "in" should not be used with primitive types
4223
4243
  * @see https://sonarsource.github.io/rspec/#/rspec/S3785/javascript
4224
4244
  */
4225
- 'sonar/in-operator-type-error'?: Linter.RuleEntry<SonarInOperatorTypeError>;
4245
+ 'sonar/in-operator-type-error'?: Linter.RuleEntry<[]>;
4226
4246
  /**
4227
4247
  * Functions should be called consistently with or without "new"
4228
4248
  * @see https://sonarsource.github.io/rspec/#/rspec/S3686/javascript
4229
4249
  */
4230
- 'sonar/inconsistent-function-call'?: Linter.RuleEntry<SonarInconsistentFunctionCall>;
4250
+ 'sonar/inconsistent-function-call'?: Linter.RuleEntry<[]>;
4231
4251
  /**
4232
4252
  * "indexOf" checks should not be for positive numbers
4233
4253
  * @see https://sonarsource.github.io/rspec/#/rspec/S2692/javascript
@@ -4237,17 +4257,17 @@ interface RuleOptions {
4237
4257
  * Creating cookies without the "secure" flag is security-sensitive
4238
4258
  * @see https://sonarsource.github.io/rspec/#/rspec/S2092/javascript
4239
4259
  */
4240
- 'sonar/insecure-cookie'?: Linter.RuleEntry<SonarInsecureCookie>;
4260
+ 'sonar/insecure-cookie'?: Linter.RuleEntry<[]>;
4241
4261
  /**
4242
4262
  * JWT should be signed and verified with strong cipher algorithms
4243
4263
  * @see https://sonarsource.github.io/rspec/#/rspec/S5659/javascript
4244
4264
  */
4245
- 'sonar/insecure-jwt-token'?: Linter.RuleEntry<SonarInsecureJwtToken>;
4265
+ 'sonar/insecure-jwt-token'?: Linter.RuleEntry<[]>;
4246
4266
  /**
4247
4267
  * Assertion arguments should be passed in the correct order
4248
4268
  * @see https://sonarsource.github.io/rspec/#/rspec/S3415/javascript
4249
4269
  */
4250
- 'sonar/inverted-assertion-arguments'?: Linter.RuleEntry<SonarInvertedAssertionArguments>;
4270
+ 'sonar/inverted-assertion-arguments'?: Linter.RuleEntry<[]>;
4251
4271
  /**
4252
4272
  * React components should not render non-boolean condition values
4253
4273
  * @see https://sonarsource.github.io/rspec/#/rspec/S6439/javascript
@@ -4347,12 +4367,12 @@ interface RuleOptions {
4347
4367
  * Tests should not execute any code after "done()" is called
4348
4368
  * @see https://sonarsource.github.io/rspec/#/rspec/S6079/javascript
4349
4369
  */
4350
- 'sonar/no-code-after-done'?: Linter.RuleEntry<SonarNoCodeAfterDone>;
4370
+ 'sonar/no-code-after-done'?: Linter.RuleEntry<[]>;
4351
4371
  /**
4352
4372
  * Mergeable "if" statements should be combined
4353
4373
  * @see https://sonarsource.github.io/rspec/#/rspec/S1066/javascript
4354
4374
  */
4355
- 'sonar/no-collapsible-if'?: Linter.RuleEntry<SonarNoCollapsibleIf>;
4375
+ 'sonar/no-collapsible-if'?: Linter.RuleEntry<[]>;
4356
4376
  /**
4357
4377
  * Collection size and array length comparisons should make sense
4358
4378
  * @see https://sonarsource.github.io/rspec/#/rspec/S3981/javascript
@@ -4382,7 +4402,7 @@ interface RuleOptions {
4382
4402
  * Union and intersection types should not include duplicated constituents
4383
4403
  * @see https://sonarsource.github.io/rspec/#/rspec/S4621/javascript
4384
4404
  */
4385
- 'sonar/no-duplicate-in-composite'?: Linter.RuleEntry<SonarNoDuplicateInComposite>;
4405
+ 'sonar/no-duplicate-in-composite'?: Linter.RuleEntry<[]>;
4386
4406
  /**
4387
4407
  * String literals should not be duplicated
4388
4408
  * @see https://sonarsource.github.io/rspec/#/rspec/S1192/javascript
@@ -4392,12 +4412,12 @@ interface RuleOptions {
4392
4412
  * Two branches in a conditional structure should not have exactly the same implementation
4393
4413
  * @see https://sonarsource.github.io/rspec/#/rspec/S1871/javascript
4394
4414
  */
4395
- 'sonar/no-duplicated-branches'?: Linter.RuleEntry<SonarNoDuplicatedBranches>;
4415
+ 'sonar/no-duplicated-branches'?: Linter.RuleEntry<[]>;
4396
4416
  /**
4397
4417
  * Collection elements should not be replaced unconditionally
4398
4418
  * @see https://sonarsource.github.io/rspec/#/rspec/S4143/javascript
4399
4419
  */
4400
- 'sonar/no-element-overwrite'?: Linter.RuleEntry<SonarNoElementOverwrite>;
4420
+ 'sonar/no-element-overwrite'?: Linter.RuleEntry<[]>;
4401
4421
  /**
4402
4422
  * Reluctant quantifiers in regular expressions should be followed by an expression that can't match the empty string
4403
4423
  * @see https://sonarsource.github.io/rspec/#/rspec/S6019/javascript
@@ -4442,7 +4462,7 @@ interface RuleOptions {
4442
4462
  * Function calls should not pass extra arguments
4443
4463
  * @see https://sonarsource.github.io/rspec/#/rspec/S930/javascript
4444
4464
  */
4445
- 'sonar/no-extra-arguments'?: Linter.RuleEntry<SonarNoExtraArguments>;
4465
+ 'sonar/no-extra-arguments'?: Linter.RuleEntry<[]>;
4446
4466
  /**
4447
4467
  * Switch cases should end with an unconditional "break" statement
4448
4468
  * @see https://sonarsource.github.io/rspec/#/rspec/S128/javascript
@@ -4472,7 +4492,7 @@ interface RuleOptions {
4472
4492
  * Boolean expressions should not be gratuitous
4473
4493
  * @see https://sonarsource.github.io/rspec/#/rspec/S2589/javascript
4474
4494
  */
4475
- 'sonar/no-gratuitous-expressions'?: Linter.RuleEntry<SonarNoGratuitousExpressions>;
4495
+ 'sonar/no-gratuitous-expressions'?: Linter.RuleEntry<[]>;
4476
4496
  /**
4477
4497
  * Using hardcoded IP addresses is security-sensitive
4478
4498
  * @see https://sonarsource.github.io/rspec/#/rspec/S1313/javascript
@@ -4497,12 +4517,12 @@ interface RuleOptions {
4497
4517
  * "if/else if" chains and "switch" cases should not have the same condition
4498
4518
  * @see https://sonarsource.github.io/rspec/#/rspec/S1862/javascript
4499
4519
  */
4500
- 'sonar/no-identical-conditions'?: Linter.RuleEntry<SonarNoIdenticalConditions>;
4520
+ 'sonar/no-identical-conditions'?: Linter.RuleEntry<[]>;
4501
4521
  /**
4502
4522
  * Identical expressions should not be used on both sides of a binary operator
4503
4523
  * @see https://sonarsource.github.io/rspec/#/rspec/S1764/javascript
4504
4524
  */
4505
- 'sonar/no-identical-expressions'?: Linter.RuleEntry<SonarNoIdenticalExpressions>;
4525
+ 'sonar/no-identical-expressions'?: Linter.RuleEntry<[]>;
4506
4526
  /**
4507
4527
  * Functions should not have identical implementations
4508
4528
  * @see https://sonarsource.github.io/rspec/#/rspec/S4144/javascript
@@ -4542,12 +4562,12 @@ interface RuleOptions {
4542
4562
  * Functions should use "return" consistently
4543
4563
  * @see https://sonarsource.github.io/rspec/#/rspec/S3801/javascript
4544
4564
  */
4545
- 'sonar/no-inconsistent-returns'?: Linter.RuleEntry<SonarNoInconsistentReturns>;
4565
+ 'sonar/no-inconsistent-returns'?: Linter.RuleEntry<[]>;
4546
4566
  /**
4547
4567
  * Strings and non-strings should not be added
4548
4568
  * @see https://sonarsource.github.io/rspec/#/rspec/S3402/javascript
4549
4569
  */
4550
- 'sonar/no-incorrect-string-concat'?: Linter.RuleEntry<SonarNoIncorrectStringConcat>;
4570
+ 'sonar/no-incorrect-string-concat'?: Linter.RuleEntry<[]>;
4551
4571
  /**
4552
4572
  * Users should not use internal APIs
4553
4573
  * @see https://sonarsource.github.io/rspec/#/rspec/S6627/javascript
@@ -4558,11 +4578,6 @@ interface RuleOptions {
4558
4578
  * @see https://sonarsource.github.io/rspec/#/rspec/S5604/javascript
4559
4579
  */
4560
4580
  'sonar/no-intrusive-permissions'?: Linter.RuleEntry<SonarNoIntrusivePermissions>;
4561
- /**
4562
- * "await" should only be used with promises
4563
- * @see https://sonarsource.github.io/rspec/#/rspec/S4123/javascript
4564
- */
4565
- 'sonar/no-invalid-await'?: Linter.RuleEntry<[]>;
4566
4581
  /**
4567
4582
  * Regular expressions should be syntactically valid
4568
4583
  * @see https://sonarsource.github.io/rspec/#/rspec/S5856/javascript
@@ -4572,7 +4587,7 @@ interface RuleOptions {
4572
4587
  * Function returns should not be invariant
4573
4588
  * @see https://sonarsource.github.io/rspec/#/rspec/S3516/javascript
4574
4589
  */
4575
- 'sonar/no-invariant-returns'?: Linter.RuleEntry<SonarNoInvariantReturns>;
4590
+ 'sonar/no-invariant-returns'?: Linter.RuleEntry<[]>;
4576
4591
  /**
4577
4592
  * Boolean checks should not be inverted
4578
4593
  * @see https://sonarsource.github.io/rspec/#/rspec/S1940/javascript
@@ -4582,7 +4597,7 @@ interface RuleOptions {
4582
4597
  * Forwarding client IP address is security-sensitive
4583
4598
  * @see https://sonarsource.github.io/rspec/#/rspec/S5759/javascript
4584
4599
  */
4585
- 'sonar/no-ip-forward'?: Linter.RuleEntry<SonarNoIpForward>;
4600
+ 'sonar/no-ip-forward'?: Linter.RuleEntry<[]>;
4586
4601
  /**
4587
4602
  * Labels should not be used
4588
4603
  * @see https://sonarsource.github.io/rspec/#/rspec/S1119/javascript
@@ -4597,7 +4612,7 @@ interface RuleOptions {
4597
4612
  * Allowing browsers to sniff MIME types is security-sensitive
4598
4613
  * @see https://sonarsource.github.io/rspec/#/rspec/S5734/javascript
4599
4614
  */
4600
- 'sonar/no-mime-sniff'?: Linter.RuleEntry<SonarNoMimeSniff>;
4615
+ 'sonar/no-mime-sniff'?: Linter.RuleEntry<[]>;
4601
4616
  /**
4602
4617
  * Array-mutating methods should not be used misleadingly
4603
4618
  * @see https://sonarsource.github.io/rspec/#/rspec/S4043/javascript
@@ -4612,7 +4627,7 @@ interface RuleOptions {
4612
4627
  * Allowing mixed-content is security-sensitive
4613
4628
  * @see https://sonarsource.github.io/rspec/#/rspec/S5730/javascript
4614
4629
  */
4615
- 'sonar/no-mixed-content'?: Linter.RuleEntry<SonarNoMixedContent>;
4630
+ 'sonar/no-mixed-content'?: Linter.RuleEntry<[]>;
4616
4631
  /**
4617
4632
  * Assignments should not be made from within sub-expressions
4618
4633
  * @see https://sonarsource.github.io/rspec/#/rspec/S1121/javascript
@@ -4682,23 +4697,23 @@ interface RuleOptions {
4682
4697
  * Optional property declarations should not use both '?' and 'undefined' syntax
4683
4698
  * @see https://sonarsource.github.io/rspec/#/rspec/S4782/javascript
4684
4699
  */
4685
- 'sonar/no-redundant-optional'?: Linter.RuleEntry<SonarNoRedundantOptional>;
4700
+ 'sonar/no-redundant-optional'?: Linter.RuleEntry<[]>;
4686
4701
  /**
4687
4702
  * Redundant pairs of parentheses should be removed
4688
4703
  * @see https://sonarsource.github.io/rspec/#/rspec/S1110/javascript
4689
4704
  * @deprecated
4690
4705
  */
4691
- 'sonar/no-redundant-parentheses'?: Linter.RuleEntry<SonarNoRedundantParentheses>;
4706
+ 'sonar/no-redundant-parentheses'?: Linter.RuleEntry<[]>;
4692
4707
  /**
4693
4708
  * Variables should be defined before being used
4694
4709
  * @see https://sonarsource.github.io/rspec/#/rspec/S3827/javascript
4695
4710
  */
4696
- 'sonar/no-reference-error'?: Linter.RuleEntry<SonarNoReferenceError>;
4711
+ 'sonar/no-reference-error'?: Linter.RuleEntry<[]>;
4697
4712
  /**
4698
4713
  * Disabling strict HTTP no-referrer policy is security-sensitive
4699
4714
  * @see https://sonarsource.github.io/rspec/#/rspec/S5736/javascript
4700
4715
  */
4701
- 'sonar/no-referrer-policy'?: Linter.RuleEntry<SonarNoReferrerPolicy>;
4716
+ 'sonar/no-referrer-policy'?: Linter.RuleEntry<[]>;
4702
4717
  /**
4703
4718
  * Regular expressions should not contain multiple spaces
4704
4719
  * @see https://sonarsource.github.io/rspec/#/rspec/S6326/javascript
@@ -4718,17 +4733,17 @@ interface RuleOptions {
4718
4733
  * Assertions should not be given twice the same argument
4719
4734
  * @see https://sonarsource.github.io/rspec/#/rspec/S5863/javascript
4720
4735
  */
4721
- 'sonar/no-same-argument-assert'?: Linter.RuleEntry<SonarNoSameArgumentAssert>;
4736
+ 'sonar/no-same-argument-assert'?: Linter.RuleEntry<[]>;
4722
4737
  /**
4723
4738
  * Conditionals should start on new lines
4724
4739
  * @see https://sonarsource.github.io/rspec/#/rspec/S3972/javascript
4725
4740
  */
4726
- 'sonar/no-same-line-conditional'?: Linter.RuleEntry<SonarNoSameLineConditional>;
4741
+ 'sonar/no-same-line-conditional'?: Linter.RuleEntry<[]>;
4727
4742
  /**
4728
4743
  * Methods should not contain selector parameters
4729
4744
  * @see https://sonarsource.github.io/rspec/#/rspec/S2301/javascript
4730
4745
  */
4731
- 'sonar/no-selector-parameter'?: Linter.RuleEntry<SonarNoSelectorParameter>;
4746
+ 'sonar/no-selector-parameter'?: Linter.RuleEntry<[]>;
4732
4747
  /**
4733
4748
  * Tests should not be skipped without providing a reason
4734
4749
  * @see https://sonarsource.github.io/rspec/#/rspec/S1607/javascript
@@ -4759,7 +4774,7 @@ interface RuleOptions {
4759
4774
  * Promise rejections should not be caught by "try" blocks
4760
4775
  * @see https://sonarsource.github.io/rspec/#/rspec/S4822/javascript
4761
4776
  */
4762
- 'sonar/no-try-promise'?: Linter.RuleEntry<SonarNoTryPromise>;
4777
+ 'sonar/no-try-promise'?: Linter.RuleEntry<[]>;
4763
4778
  /**
4764
4779
  * "undefined" should not be passed as the value of optional parameters
4765
4780
  * @see https://sonarsource.github.io/rspec/#/rspec/S4623/javascript
@@ -4834,7 +4849,7 @@ interface RuleOptions {
4834
4849
  * Variables declared with "var" should be declared before they are used
4835
4850
  * @see https://sonarsource.github.io/rspec/#/rspec/S1526/javascript
4836
4851
  */
4837
- 'sonar/no-variable-usage-before-declaration'?: Linter.RuleEntry<SonarNoVariableUsageBeforeDeclaration>;
4852
+ 'sonar/no-variable-usage-before-declaration'?: Linter.RuleEntry<[]>;
4838
4853
  /**
4839
4854
  * Disabling Vue.js built-in escaping is security-sensitive
4840
4855
  * @see https://sonarsource.github.io/rspec/#/rspec/S6299/javascript
@@ -4865,7 +4880,7 @@ interface RuleOptions {
4865
4880
  * Arithmetic operators should only have numbers as operands
4866
4881
  * @see https://sonarsource.github.io/rspec/#/rspec/S3760/javascript
4867
4882
  */
4868
- 'sonar/non-number-in-arithmetic-expression'?: Linter.RuleEntry<SonarNonNumberInArithmeticExpression>;
4883
+ 'sonar/non-number-in-arithmetic-expression'?: Linter.RuleEntry<[]>;
4869
4884
  /**
4870
4885
  * Properties of variables with "null" or "undefined" values should not be accessed
4871
4886
  * @see https://sonarsource.github.io/rspec/#/rspec/S2259/javascript
@@ -4992,7 +5007,7 @@ interface RuleOptions {
4992
5007
  * Shorthand object properties should be grouped at the beginning or end of an object declaration
4993
5008
  * @see https://sonarsource.github.io/rspec/#/rspec/S3499/javascript
4994
5009
  */
4995
- 'sonar/shorthand-property-grouping'?: Linter.RuleEntry<SonarShorthandPropertyGrouping>;
5010
+ 'sonar/shorthand-property-grouping'?: Linter.RuleEntry<[]>;
4996
5011
  /**
4997
5012
  * Character classes in regular expressions should not contain only one character
4998
5013
  * @see https://sonarsource.github.io/rspec/#/rspec/S6397/javascript
@@ -5034,17 +5049,17 @@ interface RuleOptions {
5034
5049
  * Regular expressions with the global flag should be used with caution
5035
5050
  * @see https://sonarsource.github.io/rspec/#/rspec/S6351/javascript
5036
5051
  */
5037
- 'sonar/stateful-regex'?: Linter.RuleEntry<SonarStatefulRegex>;
5052
+ 'sonar/stateful-regex'?: Linter.RuleEntry<[]>;
5038
5053
  /**
5039
5054
  * Disabling Strict-Transport-Security policy is security-sensitive
5040
5055
  * @see https://sonarsource.github.io/rspec/#/rspec/S5739/javascript
5041
5056
  */
5042
- 'sonar/strict-transport-security'?: Linter.RuleEntry<SonarStrictTransportSecurity>;
5057
+ 'sonar/strict-transport-security'?: Linter.RuleEntry<[]>;
5043
5058
  /**
5044
5059
  * Comparison operators should not be used with strings
5045
5060
  * @see https://sonarsource.github.io/rspec/#/rspec/S3003/javascript
5046
5061
  */
5047
- 'sonar/strings-comparison'?: Linter.RuleEntry<SonarStringsComparison>;
5062
+ 'sonar/strings-comparison'?: Linter.RuleEntry<[]>;
5048
5063
  /**
5049
5064
  * "super()" should be invoked appropriately
5050
5065
  * @see https://sonarsource.github.io/rspec/#/rspec/S3854/javascript
@@ -5074,12 +5089,12 @@ interface RuleOptions {
5074
5089
  * Loops should not contain more than a single "break" or "continue" statement
5075
5090
  * @see https://sonarsource.github.io/rspec/#/rspec/S135/javascript
5076
5091
  */
5077
- 'sonar/too-many-break-or-continue-in-loop'?: Linter.RuleEntry<SonarTooManyBreakOrContinueInLoop>;
5092
+ 'sonar/too-many-break-or-continue-in-loop'?: Linter.RuleEntry<[]>;
5078
5093
  /**
5079
5094
  * Regular expressions using Unicode character classes or property escapes should enable the unicode flag
5080
5095
  * @see https://sonarsource.github.io/rspec/#/rspec/S5867/javascript
5081
5096
  */
5082
- 'sonar/unicode-aware-regex'?: Linter.RuleEntry<SonarUnicodeAwareRegex>;
5097
+ 'sonar/unicode-aware-regex'?: Linter.RuleEntry<[]>;
5083
5098
  /**
5084
5099
  * Unnecessary imports should be removed
5085
5100
  * @see https://sonarsource.github.io/rspec/#/rspec/S1128/javascript
@@ -5089,32 +5104,33 @@ interface RuleOptions {
5089
5104
  * Names of regular expressions named groups should be used
5090
5105
  * @see https://sonarsource.github.io/rspec/#/rspec/S5860/javascript
5091
5106
  */
5092
- 'sonar/unused-named-groups'?: Linter.RuleEntry<SonarUnusedNamedGroups>;
5107
+ 'sonar/unused-named-groups'?: Linter.RuleEntry<[]>;
5093
5108
  /**
5094
5109
  * Server certificates should be verified during SSL/TLS connections
5095
5110
  * @see https://sonarsource.github.io/rspec/#/rspec/S4830/javascript
5096
5111
  */
5097
- 'sonar/unverified-certificate'?: Linter.RuleEntry<SonarUnverifiedCertificate>;
5112
+ 'sonar/unverified-certificate'?: Linter.RuleEntry<[]>;
5098
5113
  /**
5099
5114
  * Server hostnames should be verified during SSL/TLS connections
5100
5115
  * @see https://sonarsource.github.io/rspec/#/rspec/S5527/javascript
5101
5116
  */
5102
- 'sonar/unverified-hostname'?: Linter.RuleEntry<SonarUnverifiedHostname>;
5117
+ 'sonar/unverified-hostname'?: Linter.RuleEntry<[]>;
5103
5118
  /**
5104
5119
  * "const" variables should not be reassigned
5105
5120
  * @see https://sonarsource.github.io/rspec/#/rspec/S3500/javascript
5106
5121
  */
5107
- 'sonar/updated-const-var'?: Linter.RuleEntry<SonarUpdatedConstVar>;
5122
+ 'sonar/updated-const-var'?: Linter.RuleEntry<[]>;
5108
5123
  /**
5109
5124
  * Loop counters should not be assigned within the loop body
5110
5125
  * @see https://sonarsource.github.io/rspec/#/rspec/S2310/javascript
5126
+ * @deprecated
5111
5127
  */
5112
- 'sonar/updated-loop-counter'?: Linter.RuleEntry<SonarUpdatedLoopCounter>;
5128
+ 'sonar/updated-loop-counter'?: Linter.RuleEntry<[]>;
5113
5129
  /**
5114
5130
  * Type aliases should be used
5115
5131
  * @see https://sonarsource.github.io/rspec/#/rspec/S4323/javascript
5116
5132
  */
5117
- 'sonar/use-type-alias'?: Linter.RuleEntry<SonarUseTypeAlias>;
5133
+ 'sonar/use-type-alias'?: Linter.RuleEntry<[]>;
5118
5134
  /**
5119
5135
  * Results of operations on strings should not be ignored
5120
5136
  * @see https://sonarsource.github.io/rspec/#/rspec/S1154/javascript
@@ -5156,7 +5172,7 @@ interface RuleOptions {
5156
5172
  * XML parsers should not be vulnerable to XXE attacks
5157
5173
  * @see https://sonarsource.github.io/rspec/#/rspec/S2755/javascript
5158
5174
  */
5159
- 'sonar/xml-parser-xxe'?: Linter.RuleEntry<SonarXmlParserXxe>;
5175
+ 'sonar/xml-parser-xxe'?: Linter.RuleEntry<[]>;
5160
5176
  /**
5161
5177
  * Executing XPath expressions is security-sensitive
5162
5178
  * @see https://sonarsource.github.io/rspec/#/rspec/S4817/javascript
@@ -7572,6 +7588,11 @@ type CssPreferLogicalProperties = [] | [{
7572
7588
  allowProperties?: string[];
7573
7589
  allowUnits?: string[];
7574
7590
  }];
7591
+ // ----- css/relative-font-units -----
7592
+ type CssRelativeFontUnits = [] | [{
7593
+ allowUnits?: ("%" | "cap" | "ch" | "em" | "ex" | "ic" | "lh" | "rcap" | "rch" | "rem" | "rex" | "ric" | "rlh")[];
7594
+ [k: string]: unknown | undefined;
7595
+ }];
7575
7596
  // ----- css/use-baseline -----
7576
7597
  type CssUseBaseline = [] | [{
7577
7598
  available?: (("widely" | "newly") | number);
@@ -8014,6 +8035,7 @@ type JsdocLinesBeforeBlock = [] | [{
8014
8035
  checkBlockStarts?: boolean;
8015
8036
  excludedTags?: string[];
8016
8037
  ignoreSameLine?: boolean;
8038
+ ignoreSingleLines?: boolean;
8017
8039
  lines?: number;
8018
8040
  }];
8019
8041
  // ----- jsdoc/match-description -----
@@ -9014,10 +9036,19 @@ type MarkdownNoDuplicateDefinitions = [] | [{
9014
9036
  allowDefinitions?: string[];
9015
9037
  allowFootnoteDefinitions?: string[];
9016
9038
  }];
9039
+ // ----- markdown/no-duplicate-headings -----
9040
+ type MarkdownNoDuplicateHeadings = [] | [{
9041
+ checkSiblingsOnly?: boolean;
9042
+ }];
9017
9043
  // ----- markdown/no-html -----
9018
9044
  type MarkdownNoHtml = [] | [{
9019
9045
  allowed?: string[];
9020
9046
  }];
9047
+ // ----- markdown/no-missing-link-fragments -----
9048
+ type MarkdownNoMissingLinkFragments = [] | [{
9049
+ ignoreCase?: boolean;
9050
+ allowPattern?: string;
9051
+ }];
9021
9052
  // ----- markdown/no-multiple-h1 -----
9022
9053
  type MarkdownNoMultipleH1 = [] | [{
9023
9054
  frontmatterTitle?: string;
@@ -10170,35 +10201,11 @@ type SemiSpacing = [] | [{
10170
10201
  }];
10171
10202
  // ----- semi-style -----
10172
10203
  type SemiStyle = [] | [("last" | "first")];
10173
- // ----- sonar/arguments-order -----
10174
- type SonarArgumentsOrder = [] | [("sonar-runtime" | "metric")];
10175
- // ----- sonar/arguments-usage -----
10176
- type SonarArgumentsUsage = [] | [("sonar-runtime" | "metric")];
10177
10204
  // ----- sonar/arrow-function-convention -----
10178
10205
  type SonarArrowFunctionConvention = [] | [{
10179
10206
  requireParameterParentheses?: boolean;
10180
10207
  requireBodyBraces?: boolean;
10181
10208
  }];
10182
- // ----- sonar/aws-iam-all-privileges -----
10183
- type SonarAwsIamAllPrivileges = [] | [("sonar-runtime" | "metric")];
10184
- // ----- sonar/aws-iam-all-resources-accessible -----
10185
- type SonarAwsIamAllResourcesAccessible = [] | [("sonar-runtime" | "metric")];
10186
- // ----- sonar/aws-iam-privilege-escalation -----
10187
- type SonarAwsIamPrivilegeEscalation = [] | [("sonar-runtime" | "metric")];
10188
- // ----- sonar/aws-iam-public-access -----
10189
- type SonarAwsIamPublicAccess = [] | [("sonar-runtime" | "metric")];
10190
- // ----- sonar/aws-s3-bucket-granted-access -----
10191
- type SonarAwsS3BucketGrantedAccess = [] | [("sonar-runtime" | "metric")];
10192
- // ----- sonar/aws-s3-bucket-public-access -----
10193
- type SonarAwsS3BucketPublicAccess = [] | [("sonar-runtime" | "metric")];
10194
- // ----- sonar/aws-s3-bucket-server-encryption -----
10195
- type SonarAwsS3BucketServerEncryption = [] | [("sonar-runtime" | "metric")];
10196
- // ----- sonar/aws-s3-bucket-versioning -----
10197
- type SonarAwsS3BucketVersioning = [] | [("sonar-runtime" | "metric")];
10198
- // ----- sonar/block-scoped-var -----
10199
- type SonarBlockScopedVar = [] | [("sonar-runtime" | "metric")];
10200
- // ----- sonar/certificate-transparency -----
10201
- type SonarCertificateTransparency = [] | [("sonar-runtime" | "metric")];
10202
10209
  // ----- sonar/class-name -----
10203
10210
  type SonarClassName = [] | [{
10204
10211
  format?: string;
@@ -10211,39 +10218,15 @@ type SonarCommentRegex = [] | [{
10211
10218
  message?: string;
10212
10219
  flags?: string;
10213
10220
  }];
10214
- // ----- sonar/conditional-indentation -----
10215
- type SonarConditionalIndentation = [] | [("sonar-runtime" | "metric")];
10216
- // ----- sonar/confidential-information-logging -----
10217
- type SonarConfidentialInformationLogging = [] | [("sonar-runtime" | "metric")];
10218
10221
  // ----- sonar/content-length -----
10219
10222
  type SonarContentLength = [] | [{
10220
10223
  fileUploadSizeLimit?: number;
10221
10224
  standardSizeLimit?: number;
10222
10225
  }];
10223
- // ----- sonar/content-security-policy -----
10224
- type SonarContentSecurityPolicy = [] | [("sonar-runtime" | "metric")];
10225
- // ----- sonar/cookie-no-httponly -----
10226
- type SonarCookieNoHttponly = [] | [("sonar-runtime" | "metric")];
10227
- // ----- sonar/cors -----
10228
- type SonarCors = [] | [("sonar-runtime" | "metric")];
10229
- // ----- sonar/csrf -----
10230
- type SonarCsrf = [] | [("sonar-runtime" | "metric")];
10231
10226
  // ----- sonar/cyclomatic-complexity -----
10232
10227
  type SonarCyclomaticComplexity = [] | [{
10233
10228
  threshold?: number;
10234
- }] | [{
10235
- threshold?: number;
10236
- }, ("sonar-runtime" | "metric")];
10237
- // ----- sonar/destructuring-assignment-syntax -----
10238
- type SonarDestructuringAssignmentSyntax = [] | [("sonar-runtime" | "metric")];
10239
- // ----- sonar/different-types-comparison -----
10240
- type SonarDifferentTypesComparison = [] | [("sonar-runtime" | "metric")];
10241
- // ----- sonar/disabled-auto-escaping -----
10242
- type SonarDisabledAutoEscaping = [] | [("sonar-runtime" | "metric")];
10243
- // ----- sonar/dns-prefetching -----
10244
- type SonarDnsPrefetching = [] | [("sonar-runtime" | "metric")];
10245
- // ----- sonar/duplicates-in-character-class -----
10246
- type SonarDuplicatesInCharacterClass = [] | [("sonar-runtime" | "metric")];
10229
+ }];
10247
10230
  // ----- sonar/enforce-trailing-comma -----
10248
10231
  type SonarEnforceTrailingComma = [] | [(_SonarEnforceTrailingCommaValue | {
10249
10232
  arrays?: _SonarEnforceTrailingCommaValueWithIgnore;
@@ -10257,38 +10240,16 @@ type _SonarEnforceTrailingCommaValueWithIgnore = ("always-multiline" | "always"
10257
10240
  // ----- sonar/expression-complexity -----
10258
10241
  type SonarExpressionComplexity = [] | [{
10259
10242
  max?: number;
10260
- }] | [{
10261
- max?: number;
10262
- }, ("sonar-runtime" | "metric")];
10243
+ }];
10263
10244
  // ----- sonar/file-header -----
10264
10245
  type SonarFileHeader = [] | [{
10265
10246
  headerFormat?: string;
10266
10247
  isRegularExpression?: boolean;
10267
10248
  }];
10268
- // ----- sonar/file-uploads -----
10269
- type SonarFileUploads = [] | [("sonar-runtime" | "metric")];
10270
- // ----- sonar/for-loop-increment-sign -----
10271
- type SonarForLoopIncrementSign = [] | [("sonar-runtime" | "metric")];
10272
- // ----- sonar/frame-ancestors -----
10273
- type SonarFrameAncestors = [] | [("sonar-runtime" | "metric")];
10274
- // ----- sonar/function-inside-loop -----
10275
- type SonarFunctionInsideLoop = [] | [("sonar-runtime" | "metric")];
10276
10249
  // ----- sonar/function-name -----
10277
10250
  type SonarFunctionName = [] | [{
10278
10251
  format?: string;
10279
10252
  }];
10280
- // ----- sonar/function-return-type -----
10281
- type SonarFunctionReturnType = [] | [("sonar-runtime" | "metric")];
10282
- // ----- sonar/in-operator-type-error -----
10283
- type SonarInOperatorTypeError = [] | [("sonar-runtime" | "metric")];
10284
- // ----- sonar/inconsistent-function-call -----
10285
- type SonarInconsistentFunctionCall = [] | [("sonar-runtime" | "metric")];
10286
- // ----- sonar/insecure-cookie -----
10287
- type SonarInsecureCookie = [] | [("sonar-runtime" | "metric")];
10288
- // ----- sonar/insecure-jwt-token -----
10289
- type SonarInsecureJwtToken = [] | [("sonar-runtime" | "metric")];
10290
- // ----- sonar/inverted-assertion-arguments -----
10291
- type SonarInvertedAssertionArguments = [] | [("sonar-runtime" | "metric")];
10292
10253
  // ----- sonar/max-lines -----
10293
10254
  type SonarMaxLines = [] | [{
10294
10255
  maximum?: number;
@@ -10306,37 +10267,16 @@ type SonarMaxUnionSize = [] | [{
10306
10267
  // ----- sonar/nested-control-flow -----
10307
10268
  type SonarNestedControlFlow = [] | [{
10308
10269
  maximumNestingLevel?: number;
10309
- }] | [{
10310
- maximumNestingLevel?: number;
10311
- }, ("sonar-runtime" | "metric")];
10270
+ }];
10312
10271
  // ----- sonar/new-operator-misuse -----
10313
10272
  type SonarNewOperatorMisuse = [] | [{
10314
10273
  considerJSDoc?: boolean;
10315
- }] | [{
10316
- considerJSDoc?: boolean;
10317
- }, unknown];
10318
- // ----- sonar/no-code-after-done -----
10319
- type SonarNoCodeAfterDone = [] | [("sonar-runtime" | "metric")];
10320
- // ----- sonar/no-collapsible-if -----
10321
- type SonarNoCollapsibleIf = [] | [("sonar-runtime" | "metric")];
10322
- // ----- sonar/no-duplicate-in-composite -----
10323
- type SonarNoDuplicateInComposite = [] | [("sonar-runtime" | "metric")];
10274
+ }];
10324
10275
  // ----- sonar/no-duplicate-string -----
10325
10276
  type SonarNoDuplicateString = [] | [{
10326
10277
  threshold?: number;
10327
10278
  ignoreStrings?: string;
10328
- }] | [{
10329
- threshold?: number;
10330
- ignoreStrings?: string;
10331
- }, ("sonar-runtime" | "metric")];
10332
- // ----- sonar/no-duplicated-branches -----
10333
- type SonarNoDuplicatedBranches = [] | [("sonar-runtime" | "metric")];
10334
- // ----- sonar/no-element-overwrite -----
10335
- type SonarNoElementOverwrite = [] | [("sonar-runtime" | "metric")];
10336
- // ----- sonar/no-extra-arguments -----
10337
- type SonarNoExtraArguments = [] | [("sonar-runtime" | "metric")];
10338
- // ----- sonar/no-gratuitous-expressions -----
10339
- type SonarNoGratuitousExpressions = [] | [("sonar-runtime" | "metric")];
10279
+ }];
10340
10280
  // ----- sonar/no-hardcoded-passwords -----
10341
10281
  type SonarNoHardcodedPasswords = [] | [{
10342
10282
  passwordWords?: string[];
@@ -10346,94 +10286,28 @@ type SonarNoHardcodedSecrets = [] | [{
10346
10286
  secretWords?: string;
10347
10287
  randomnessSensibility?: number;
10348
10288
  }];
10349
- // ----- sonar/no-identical-conditions -----
10350
- type SonarNoIdenticalConditions = [] | [("sonar-runtime" | "metric")];
10351
- // ----- sonar/no-identical-expressions -----
10352
- type SonarNoIdenticalExpressions = [] | [("sonar-runtime" | "metric")];
10353
10289
  // ----- sonar/no-identical-functions -----
10354
- type SonarNoIdenticalFunctions = [] | [number] | [number, ("sonar-runtime" | "metric")];
10290
+ type SonarNoIdenticalFunctions = [] | [number];
10355
10291
  // ----- sonar/no-implicit-dependencies -----
10356
10292
  type SonarNoImplicitDependencies = [] | [{
10357
10293
  whitelist?: string[];
10358
10294
  }];
10359
- // ----- sonar/no-inconsistent-returns -----
10360
- type SonarNoInconsistentReturns = [] | [("sonar-runtime" | "metric")];
10361
- // ----- sonar/no-incorrect-string-concat -----
10362
- type SonarNoIncorrectStringConcat = [] | [("sonar-runtime" | "metric")];
10363
10295
  // ----- sonar/no-intrusive-permissions -----
10364
10296
  type SonarNoIntrusivePermissions = [] | [{
10365
10297
  permissions?: string[];
10366
10298
  }];
10367
- // ----- sonar/no-invariant-returns -----
10368
- type SonarNoInvariantReturns = [] | [("sonar-runtime" | "metric")];
10369
- // ----- sonar/no-ip-forward -----
10370
- type SonarNoIpForward = [] | [("sonar-runtime" | "metric")];
10371
- // ----- sonar/no-mime-sniff -----
10372
- type SonarNoMimeSniff = [] | [("sonar-runtime" | "metric")];
10373
- // ----- sonar/no-mixed-content -----
10374
- type SonarNoMixedContent = [] | [("sonar-runtime" | "metric")];
10375
10299
  // ----- sonar/no-nested-functions -----
10376
10300
  type SonarNoNestedFunctions = [] | [{
10377
10301
  threshold?: number;
10378
- }] | [{
10379
- threshold?: number;
10380
- }, ("sonar-runtime" | "metric")];
10381
- // ----- sonar/no-redundant-optional -----
10382
- type SonarNoRedundantOptional = [] | [("sonar-runtime" | "metric")];
10383
- // ----- sonar/no-redundant-parentheses -----
10384
- type SonarNoRedundantParentheses = [] | [("sonar-runtime" | "metric")];
10385
- // ----- sonar/no-reference-error -----
10386
- type SonarNoReferenceError = [] | [("sonar-runtime" | "metric")];
10387
- // ----- sonar/no-referrer-policy -----
10388
- type SonarNoReferrerPolicy = [] | [("sonar-runtime" | "metric")];
10389
- // ----- sonar/no-same-argument-assert -----
10390
- type SonarNoSameArgumentAssert = [] | [("sonar-runtime" | "metric")];
10391
- // ----- sonar/no-same-line-conditional -----
10392
- type SonarNoSameLineConditional = [] | [("sonar-runtime" | "metric")];
10393
- // ----- sonar/no-selector-parameter -----
10394
- type SonarNoSelectorParameter = [] | [("sonar-runtime" | "metric")];
10395
- // ----- sonar/no-try-promise -----
10396
- type SonarNoTryPromise = [] | [("sonar-runtime" | "metric")];
10397
- // ----- sonar/no-variable-usage-before-declaration -----
10398
- type SonarNoVariableUsageBeforeDeclaration = [] | [("sonar-runtime" | "metric")];
10399
- // ----- sonar/non-number-in-arithmetic-expression -----
10400
- type SonarNonNumberInArithmeticExpression = [] | [("sonar-runtime" | "metric")];
10302
+ }];
10401
10303
  // ----- sonar/regex-complexity -----
10402
10304
  type SonarRegexComplexity = [] | [{
10403
10305
  threshold?: number;
10404
- }] | [{
10405
- threshold?: number;
10406
- }, ("sonar-runtime" | "metric")];
10407
- // ----- sonar/shorthand-property-grouping -----
10408
- type SonarShorthandPropertyGrouping = [] | [("sonar-runtime" | "metric")];
10409
- // ----- sonar/stateful-regex -----
10410
- type SonarStatefulRegex = [] | [("sonar-runtime" | "metric")];
10411
- // ----- sonar/strict-transport-security -----
10412
- type SonarStrictTransportSecurity = [] | [("sonar-runtime" | "metric")];
10413
- // ----- sonar/strings-comparison -----
10414
- type SonarStringsComparison = [] | [("sonar-runtime" | "metric")];
10415
- // ----- sonar/too-many-break-or-continue-in-loop -----
10416
- type SonarTooManyBreakOrContinueInLoop = [] | [("sonar-runtime" | "metric")];
10417
- // ----- sonar/unicode-aware-regex -----
10418
- type SonarUnicodeAwareRegex = [] | [("sonar-runtime" | "metric")];
10419
- // ----- sonar/unused-named-groups -----
10420
- type SonarUnusedNamedGroups = [] | [("sonar-runtime" | "metric")];
10421
- // ----- sonar/unverified-certificate -----
10422
- type SonarUnverifiedCertificate = [] | [("sonar-runtime" | "metric")];
10423
- // ----- sonar/unverified-hostname -----
10424
- type SonarUnverifiedHostname = [] | [("sonar-runtime" | "metric")];
10425
- // ----- sonar/updated-const-var -----
10426
- type SonarUpdatedConstVar = [] | [("sonar-runtime" | "metric")];
10427
- // ----- sonar/updated-loop-counter -----
10428
- type SonarUpdatedLoopCounter = [] | [("sonar-runtime" | "metric")];
10429
- // ----- sonar/use-type-alias -----
10430
- type SonarUseTypeAlias = [] | [("sonar-runtime" | "metric")];
10306
+ }];
10431
10307
  // ----- sonar/variable-name -----
10432
10308
  type SonarVariableName = [] | [{
10433
10309
  format?: string;
10434
10310
  }];
10435
- // ----- sonar/xml-parser-xxe -----
10436
- type SonarXmlParserXxe = [] | [("sonar-runtime" | "metric")];
10437
10311
  // ----- sort-imports -----
10438
10312
  type SortImports = [] | [{
10439
10313
  ignoreCase?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@2digits/eslint-config",
3
- "version": "4.6.3",
3
+ "version": "4.6.5",
4
4
  "description": "Effortlessly enforce best practices and catch errors with this comprehensive ESLint configuration for TypeScript, featuring popular plugins like @typescript-eslint, eslint-plugin-react, and eslint-plugin-unicorn.",
5
5
  "homepage": "https://2d-configs.vercel.app/",
6
6
  "repository": {
@@ -27,17 +27,17 @@
27
27
  "public": true,
28
28
  "dependencies": {
29
29
  "@eslint-community/eslint-plugin-eslint-comments": "4.5.0",
30
- "@eslint-react/eslint-plugin": "1.51.2",
31
- "@eslint/compat": "1.2.9",
32
- "@eslint/css": "0.8.1",
33
- "@eslint/js": "9.28.0",
34
- "@eslint/markdown": "6.5.0",
30
+ "@eslint-react/eslint-plugin": "1.52.2",
31
+ "@eslint/compat": "1.3.0",
32
+ "@eslint/css": "0.9.0",
33
+ "@eslint/js": "9.29.0",
34
+ "@eslint/markdown": "6.6.0",
35
35
  "@graphql-eslint/eslint-plugin": "4.4.0",
36
- "@next/eslint-plugin-next": "15.3.3",
36
+ "@next/eslint-plugin-next": "15.3.4",
37
37
  "@stylistic/eslint-plugin": "4.4.1",
38
- "@tanstack/eslint-plugin-query": "5.78.0",
39
- "@typescript-eslint/parser": "8.33.1",
40
- "@typescript-eslint/utils": "8.33.1",
38
+ "@tanstack/eslint-plugin-query": "5.81.0",
39
+ "@typescript-eslint/parser": "8.34.1",
40
+ "@typescript-eslint/utils": "8.34.1",
41
41
  "eslint-config-flat-gitignore": "2.1.0",
42
42
  "eslint-config-prettier": "10.1.5",
43
43
  "eslint-flat-config-utils": "2.1.0",
@@ -45,15 +45,15 @@
45
45
  "eslint-plugin-antfu": "3.1.1",
46
46
  "eslint-plugin-de-morgan": "1.3.0",
47
47
  "eslint-plugin-drizzle": "0.2.3",
48
- "eslint-plugin-jsdoc": "50.7.1",
48
+ "eslint-plugin-jsdoc": "51.1.1",
49
49
  "eslint-plugin-jsonc": "2.20.1",
50
- "eslint-plugin-n": "17.19.0",
50
+ "eslint-plugin-n": "17.20.0",
51
51
  "eslint-plugin-pnpm": "0.3.1",
52
52
  "eslint-plugin-react-compiler": "19.1.0-rc.2",
53
53
  "eslint-plugin-react-hooks": "5.2.0",
54
- "eslint-plugin-regexp": "2.8.0",
55
- "eslint-plugin-sonarjs": "3.0.2",
56
- "eslint-plugin-storybook": "9.0.6",
54
+ "eslint-plugin-regexp": "2.9.0",
55
+ "eslint-plugin-sonarjs": "3.0.3",
56
+ "eslint-plugin-storybook": "9.0.12",
57
57
  "eslint-plugin-tailwindcss": "3.18.0",
58
58
  "eslint-plugin-turbo": "2.5.4",
59
59
  "eslint-plugin-unicorn": "59.0.1",
@@ -63,24 +63,24 @@
63
63
  "graphql-config": "5.1.5",
64
64
  "jsonc-eslint-parser": "2.4.0",
65
65
  "local-pkg": "1.1.1",
66
- "typescript-eslint": "8.33.1",
66
+ "typescript-eslint": "8.34.1",
67
67
  "yaml-eslint-parser": "1.3.0",
68
68
  "@2digits/constants": "1.1.1",
69
- "@2digits/eslint-plugin": "3.1.2"
69
+ "@2digits/eslint-plugin": "3.1.3"
70
70
  },
71
71
  "devDependencies": {
72
72
  "@eslint/config-inspector": "1.1.0",
73
- "@types/node": "22.15.30",
74
- "@types/react": "19.1.6",
73
+ "@types/node": "22.15.32",
74
+ "@types/react": "19.1.8",
75
75
  "dedent": "1.6.0",
76
- "eslint": "9.28.0",
76
+ "eslint": "9.29.0",
77
77
  "eslint-typegen": "2.2.0",
78
78
  "execa": "9.6.0",
79
79
  "react": "19.1.0",
80
80
  "tinyglobby": "0.2.14",
81
- "tsdown": "0.12.7",
81
+ "tsdown": "0.12.8",
82
82
  "typescript": "5.8.3",
83
- "vitest": "3.2.2",
83
+ "vitest": "3.2.4",
84
84
  "@2digits/tsconfig": "0.7.1"
85
85
  },
86
86
  "scripts": {