codeql-action/node_modules/eslint-plugin-escompat/lib/rules/no-top-level-await.js
2024-12-03 18:37:29 +00:00

20 lines
488 B
JavaScript

'use strict';
const functionTypes = new Set([
'FunctionDeclaration',
'FunctionExpression',
'ArrowFunctionExpression',
]);
module.exports = (context, badBrowser) => ({
AwaitExpression(node) {
let currentNode = node;
while (currentNode.parent) {
currentNode = currentNode.parent;
if (functionTypes.has(currentNode.type) && currentNode.async) {
return;
}
}
context.report(node, `Top-level await is not supported in ${badBrowser}`)
},
})