Skip to content

Commit 90068a4

Browse files
MatiPl01ljharb
andcommitted
[Refactor] create markVariableAsUsed util, context.markVariableAsUsed is deprecated
Co-authored-by: Mateusz Łopaciński <[email protected]> Co-authored-by: Jordan Harband <[email protected]>
1 parent 6be3329 commit 90068a4

File tree

3 files changed

+19
-5
lines changed

3 files changed

+19
-5
lines changed

lib/rules/jsx-uses-react.js

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
const pragmaUtil = require('../util/pragma');
99
const docsUrl = require('../util/docsUrl');
10+
const markVariableAsUsed = require('../util/eslint').markVariableAsUsed;
1011

1112
// ------------------------------------------------------------------------------
1213
// Rule Definition
@@ -29,8 +30,12 @@ module.exports = {
2930
const pragma = pragmaUtil.getFromContext(context);
3031
const fragment = pragmaUtil.getFragmentFromContext(context);
3132

32-
function handleOpeningElement() {
33-
context.markVariableAsUsed(pragma);
33+
/**
34+
* @param {ASTNode} node
35+
* @returns {void}
36+
*/
37+
function handleOpeningElement(node) {
38+
markVariableAsUsed(pragma, node, context);
3439
}
3540
// --------------------------------------------------------------------------
3641
// Public
@@ -39,8 +44,8 @@ module.exports = {
3944
return {
4045
JSXOpeningElement: handleOpeningElement,
4146
JSXOpeningFragment: handleOpeningElement,
42-
JSXFragment() {
43-
context.markVariableAsUsed(fragment);
47+
JSXFragment(node) {
48+
markVariableAsUsed(fragment, node, context);
4449
},
4550
};
4651
},

lib/rules/jsx-uses-vars.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
'use strict';
77

88
const docsUrl = require('../util/docsUrl');
9+
const markVariableAsUsed = require('../util/eslint').markVariableAsUsed;
910

1011
// ------------------------------------------------------------------------------
1112
// Rule Definition
@@ -53,7 +54,7 @@ module.exports = {
5354
return;
5455
}
5556

56-
context.markVariableAsUsed(name);
57+
markVariableAsUsed(name, node, context);
5758
},
5859

5960
};

lib/util/eslint.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,15 @@ function getAncestors(context, node) {
99
return sourceCode.getAncestors ? sourceCode.getAncestors(node) : context.getAncestors();
1010
}
1111

12+
function markVariableAsUsed(name, node, context) {
13+
const sourceCode = getSourceCode(context);
14+
return sourceCode.markVariableAsUsed
15+
? sourceCode.markVariableAsUsed(name, node)
16+
: context.markVariableAsUsed(name);
17+
}
18+
1219
module.exports = {
1320
getAncestors,
1421
getSourceCode,
22+
markVariableAsUsed,
1523
};

0 commit comments

Comments
 (0)