File tree Expand file tree Collapse file tree 3 files changed +16
-0
lines changed
test/library-tests/NodeJS Expand file tree Collapse file tree 3 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -162,6 +162,17 @@ private predicate isRequire(DataFlow::Node nd) {
162162 not nd .getFile ( ) .getExtension ( ) = "mjs"
163163 or
164164 isRequire ( nd .getAPredecessor ( ) )
165+ or
166+ // `import { createRequire } from 'module';` support.
167+ // specialized to ES2015 modules to avoid recursion in the `DataFlow::moduleImport()` predicate.
168+ exists ( ImportDeclaration imp | imp .getImportedPath ( ) .getValue ( ) = "module" |
169+ nd =
170+ imp
171+ .getImportedModuleNode ( )
172+ .( DataFlow:: SourceNode )
173+ .getAPropertyRead ( "createRequire" )
174+ .getACall ( )
175+ )
165176}
166177
167178/**
Original file line number Diff line number Diff line change 1515| g.js:1:43:1:61 | require("electron") |
1616| index.js:1:12:1:26 | require('path') |
1717| index.js:2:1:2:41 | require ... b.js")) |
18+ | mjs-files/createRequire.mjs:4:26:4:49 | require ... erver') |
1819| mjs-files/require-from-js.js:1:12:1:36 | require ... on-me') |
1920| mjs-files/require-from-js.js:2:12:2:39 | require ... me.js') |
2021| mjs-files/require-from-js.js:3:12:3:40 | require ... e.mjs') |
Original file line number Diff line number Diff line change 1+ import { createRequire } from 'module' ;
2+
3+ const require = createRequire ( import . meta. url ) ;
4+ const { ApolloServer } = require ( 'apollo-server' ) ;
You can’t perform that action at this time.
0 commit comments