File tree 2 files changed +7
-4
lines changed
2 files changed +7
-4
lines changed Original file line number Diff line number Diff line change 67
67
"@humanwhocodes/momoa" : " ^3.3.3"
68
68
},
69
69
"devDependencies" : {
70
- "@eslint/core" : " ^0.9.0" ,
71
- "@types/eslint" : " ^8.56.10" ,
70
+ "@eslint/core" : " ^0.9.1" ,
72
71
"c8" : " ^9.1.0" ,
73
72
"dedent" : " ^1.5.3" ,
74
73
"eslint" : " ^9.11.1" ,
Original file line number Diff line number Diff line change 9
9
10
10
/** @typedef {"duplicateKey" } NoDuplicateKeysMessageIds */
11
11
/** @typedef {import("../types.ts").JSONRuleDefinition<[], NoDuplicateKeysMessageIds> } NoDuplicateKeysRuleDefinition */
12
+ /** @typedef {import("@humanwhocodes/momoa").MemberNode } MemberNode */
12
13
13
14
//-----------------------------------------------------------------------------
14
15
// Rule Definition
@@ -29,7 +30,10 @@ export default {
29
30
} ,
30
31
31
32
create ( context ) {
33
+ /** @type {Array<Map<string, MemberNode>|undefined> } */
32
34
const objectKeys = [ ] ;
35
+
36
+ /** @type {Map<string, MemberNode>|undefined } */
33
37
let keys ;
34
38
35
39
return {
@@ -44,7 +48,7 @@ export default {
44
48
? node . name . value
45
49
: node . name . name ;
46
50
47
- if ( keys . has ( key ) ) {
51
+ if ( keys ? .has ( key ) ) {
48
52
context . report ( {
49
53
loc : node . name . loc ,
50
54
messageId : "duplicateKey" ,
@@ -53,7 +57,7 @@ export default {
53
57
} ,
54
58
} ) ;
55
59
} else {
56
- keys . set ( key , node ) ;
60
+ keys ? .set ( key , node ) ;
57
61
}
58
62
} ,
59
63
"Object:exit" ( ) {
You can’t perform that action at this time.
0 commit comments