@iqrf/eslint-config 0.2.0 → 0.2.2

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 (3) hide show
  1. package/README.md +2 -2
  2. package/dist/index.js +47 -1
  3. package/package.json +24 -24
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
1
  # @iqrf/eslint-config
2
2
 
3
3
  [![Build Status](https://gitlab.iqrf.org/open-source/iqrf-gateway-webapp-utils/eslint-config/badges/master/pipeline.svg)](https://gitlab.iqrf.org/open-source/iqrf-gateway-webapp-utils/eslint-config/-/commits/master)
4
- [![NPM Version](https://img.shields.io/npm/v/%40iqrf%2Fiqrf-repository-client)](https://www.npmjs.com/package/@iqrf/iqrf-repository-client)
5
- [![NPM Downloads](https://img.shields.io/npm/dm/%40iqrf%2Fiqrf-repository-client)](https://www.npmjs.com/package/@iqrf/iqrf-repository-client)
4
+ [![NPM Version](https://img.shields.io/npm/v/%40iqrf%2Feslint-config)](https://www.npmjs.com/package/@iqrf/eslint-config)
5
+ [![NPM Downloads](https://img.shields.io/npm/dm/%40iqrf%2Feslint-config)](https://www.npmjs.com/package/@iqrf/eslint-config)
6
6
  [![Apache License](https://img.shields.io/badge/license-APACHE2-blue.svg)](LICENSE)
7
7
 
8
8
  Flat ESLint configuration for JavaScript, TypeScript, Vue.js and Vuetify 3.
package/dist/index.js CHANGED
@@ -152,8 +152,10 @@ var javascript = (options) => [
152
152
  "error",
153
153
  "unix"
154
154
  ],
155
+ "no-useless-concat": "error",
155
156
  "no-unused-vars": options.typescript ? "off" : "warn",
156
157
  "prefer-const": "error",
158
+ "prefer-template": "error",
157
159
  "quotes": [
158
160
  "error",
159
161
  "single"
@@ -450,13 +452,32 @@ var configs = [
450
452
  fixStyle: "inline-type-imports"
451
453
  }
452
454
  ],
455
+ "@typescript-eslint/dot-notation": [
456
+ "error",
457
+ {
458
+ allowKeywords: true
459
+ }
460
+ ],
453
461
  "@typescript-eslint/explicit-member-accessibility": "error",
454
462
  "@typescript-eslint/no-duplicate-enum-values": "warn",
455
463
  "@typescript-eslint/no-dynamic-delete": "warn",
464
+ "@typescript-eslint/no-empty-function": [
465
+ "error",
466
+ {
467
+ allow: ["arrowFunctions"]
468
+ }
469
+ ],
456
470
  "@typescript-eslint/no-explicit-any": "warn",
457
471
  "@typescript-eslint/no-extraneous-class": "off",
458
472
  "@typescript-eslint/no-inferrable-types": "off",
459
- "@typescript-eslint/no-unsafe-call": "warn"
473
+ "@typescript-eslint/no-unsafe-call": "warn",
474
+ "@typescript-eslint/no-unused-expressions": [
475
+ "error",
476
+ {
477
+ allowShortCircuit: true,
478
+ allowTernary: true
479
+ }
480
+ ]
460
481
  }
461
482
  }
462
483
  ];
@@ -632,6 +653,14 @@ var vue = (options) => [
632
653
  }
633
654
  },
634
655
  rules: {
656
+ "vue/comma-dangle": [
657
+ "error",
658
+ "always-multiline"
659
+ ],
660
+ "vue/eqeqeq": [
661
+ "error",
662
+ "always"
663
+ ],
635
664
  "vue/html-indent": [
636
665
  "warn",
637
666
  "tab"
@@ -645,6 +674,23 @@ var vue = (options) => [
645
674
  { singleline: 3 }
646
675
  ],
647
676
  "vue/multi-word-component-names": "off",
677
+ "vue/no-constant-condition": "error",
678
+ "vue/no-extra-parens": [
679
+ "error",
680
+ "all",
681
+ {
682
+ "nestedBinaryExpressions": false,
683
+ "ternaryOperandBinaryExpressions": false
684
+ }
685
+ ],
686
+ "vue/no-sparse-arrays": "error",
687
+ "vue/no-useless-concat": "error",
688
+ "vue/object-curly-spacing": [
689
+ "error",
690
+ "always"
691
+ ],
692
+ "vue/prefer-template": "error",
693
+ "vue/space-unary-ops": "error",
648
694
  "vue/valid-v-slot": [
649
695
  "error",
650
696
  { allowModifiers: options.vuetify }
package/package.json CHANGED
@@ -15,47 +15,47 @@
15
15
  ],
16
16
  "description": "ESLint configuration for IQRF projects",
17
17
  "dependencies": {
18
- "@eslint/compat": "^1.2.0",
19
- "@eslint/js": "^9.12.0",
18
+ "@eslint/compat": "^1.2.3",
19
+ "@eslint/js": "^9.15.0",
20
20
  "@intlify/eslint-plugin-vue-i18n": "^3.0.0",
21
- "@stylistic/eslint-plugin": "^2.9.0",
22
- "@typescript-eslint/parser": "^8.8.0",
23
- "@vitest/eslint-plugin": "^1.1.6",
21
+ "@stylistic/eslint-plugin": "^2.10.1",
22
+ "@typescript-eslint/parser": "^8.14.0",
23
+ "@vitest/eslint-plugin": "^1.1.10",
24
24
  "eslint-config-flat-gitignore": "^0.3.0",
25
25
  "eslint-import-resolver-typescript": "^3.6.3",
26
- "eslint-plugin-cypress": "^3.5.0",
26
+ "eslint-plugin-cypress": "^4.1.0",
27
27
  "eslint-plugin-eslint-comments": "^3.2.0",
28
- "eslint-plugin-import-x": "^4.3.1",
29
- "eslint-plugin-jsdoc": "^50.3.1",
30
- "eslint-plugin-jsonc": "^2.16.0",
28
+ "eslint-plugin-import-x": "^4.4.2",
29
+ "eslint-plugin-jsdoc": "^50.5.0",
30
+ "eslint-plugin-jsonc": "^2.18.1",
31
31
  "eslint-plugin-markdown": "^5.1.0",
32
32
  "eslint-plugin-math": "^0.6.0",
33
- "eslint-plugin-n": "^17.10.3",
34
- "eslint-plugin-perfectionist": "^3.8.0",
33
+ "eslint-plugin-n": "^17.13.2",
34
+ "eslint-plugin-perfectionist": "^3.9.1",
35
35
  "eslint-plugin-pinia": "^0.4.1",
36
36
  "eslint-plugin-promise": "^7.1.0",
37
- "eslint-plugin-regexp": "^2.6.0",
38
- "eslint-plugin-unicorn": "^55.0.0",
39
- "eslint-plugin-vue": "^9.28.0",
37
+ "eslint-plugin-regexp": "^2.7.0",
38
+ "eslint-plugin-unicorn": "^56.0.0",
39
+ "eslint-plugin-vue": "^9.31.0",
40
40
  "eslint-plugin-vue-scoped-css": "^2.8.1",
41
41
  "eslint-plugin-vuetify": "^2.4.0",
42
- "globals": "^15.10.0",
42
+ "globals": "^15.12.0",
43
43
  "jsonc-eslint-parser": "^2.4.0",
44
44
  "local-pkg": "^0.5.0",
45
- "typescript-eslint": "^8.8.0",
45
+ "typescript-eslint": "^8.14.0",
46
46
  "vue-eslint-parser": "^9.4.3"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@types/eslint": "^9.6.1",
50
50
  "@types/eslint-plugin-markdown": "^2.0.2",
51
51
  "@types/eslint__js": "^8.42.3",
52
- "@types/node": "^22.7.4",
53
- "bumpp": "^9.6.1",
54
- "eslint": "^9.12.0",
55
- "eslint-plugin-eslint-plugin": "^6.2.0",
56
- "tsup": "^8.3.0",
57
- "tsx": "^4.19.1",
58
- "typescript": "^5.6.2"
52
+ "@types/node": "^22.9.0",
53
+ "bumpp": "^9.8.1",
54
+ "eslint": "^9.15.0",
55
+ "eslint-plugin-eslint-plugin": "^6.3.1",
56
+ "tsup": "^8.3.5",
57
+ "tsx": "^4.19.2",
58
+ "typescript": "^5.6.3"
59
59
  },
60
60
  "engines": {
61
61
  "node": "^18.18.0 || >=20.0.0"
@@ -85,7 +85,7 @@
85
85
  },
86
86
  "type": "module",
87
87
  "types": "dist/index.d.ts",
88
- "version": "0.2.0",
88
+ "version": "0.2.2",
89
89
  "scripts": {
90
90
  "build": "tsup",
91
91
  "lint": "eslint .",