@tririga/tri-bundler
Version:
A tool for bundling Polymer 3 TRIRIGA UX views.
33 lines (25 loc) • 667 B
JavaScript
;
const astTypes = require("ast-types");
const pathTool = require("path");
const log = require("loglevel");
class LoadResourceScanner {
async scan(js) {
if (!js) {
return;
}
let usingLoadResource = false;
const filename = pathTool.basename(js.url);
astTypes.visit(js.parsedDocument.ast, {
visitIdentifier(path) {
if (path.node.type == "Identifier" && path.node.name == "loadResource") {
usingLoadResource = true;
}
this.traverse(path);
}
})
if (usingLoadResource) {
log.warn(`Warning: use of 'loadResource' detected in file '${filename}'.`);
return true;
}
}}
module.exports = LoadResourceScanner;