File tree Expand file tree Collapse file tree 2 files changed +7
-0
lines changed
javascript/ql/lib/semmle/javascript Expand file tree Collapse file tree 2 files changed +7
-0
lines changed Original file line number Diff line number Diff line change 3
3
import javascript
4
4
private import NodeModuleResolutionImpl
5
5
private import semmle.javascript.DynamicPropertyAccess as DynamicPropertyAccess
6
+ private import semmle.javascript.internal.CachedStages
6
7
7
8
/**
8
9
* A Node.js module.
@@ -113,6 +114,7 @@ class NodeModule extends Module {
113
114
}
114
115
115
116
override DataFlow:: Node getABulkExportedNode ( ) {
117
+ Stages:: Imports:: ref ( ) and
116
118
exists ( DataFlow:: PropWrite write |
117
119
write .getBase ( ) .asExpr ( ) = this .getModuleVariable ( ) .getAnAccess ( ) and
118
120
write .getPropertyName ( ) = "exports" and
Original file line number Diff line number Diff line change @@ -176,6 +176,8 @@ module Stages {
176
176
exists ( DataFlow:: moduleImport ( _) )
177
177
or
178
178
exists ( any ( ReExportDeclaration d ) .getReExportedModule ( ) )
179
+ or
180
+ exists ( any ( Module m ) .getABulkExportedNode ( ) )
179
181
}
180
182
}
181
183
@@ -276,6 +278,9 @@ module Stages {
276
278
.getInstance ( )
277
279
.getReceiver ( )
278
280
.getPromisedError ( )
281
+ .getADecoratedClass ( )
282
+ .getADecoratedMember ( )
283
+ .getADecoratedParameter ( )
279
284
)
280
285
}
281
286
}
You can’t perform that action at this time.
0 commit comments