@contrast/contrast 2.0.2-beta.3 → 2.0.2-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (358) hide show
  1. package/README.md +51 -1
  2. package/dist/audit/catalogueApplication/catalogueApplication.js +6 -10
  3. package/dist/audit/catalogueApplication/catalogueApplication.js.map +1 -0
  4. package/dist/audit/languageAnalysisEngine/commonApi.js +3 -6
  5. package/dist/audit/languageAnalysisEngine/commonApi.js.map +1 -0
  6. package/dist/audit/languageAnalysisEngine/filterProjectPath.js +1 -0
  7. package/dist/audit/languageAnalysisEngine/filterProjectPath.js.map +1 -0
  8. package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js +9 -12
  9. package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js.map +1 -0
  10. package/dist/audit/languageAnalysisEngine/sendSnapshot.js +15 -19
  11. package/dist/audit/languageAnalysisEngine/sendSnapshot.js.map +1 -0
  12. package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +9 -9
  13. package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js.map +1 -0
  14. package/dist/audit/report/commonReportingFunctions.js +33 -48
  15. package/dist/audit/report/commonReportingFunctions.js.map +1 -0
  16. package/dist/audit/report/models/reportGuidanceModel.js +2 -5
  17. package/dist/audit/report/models/reportGuidanceModel.js.map +1 -0
  18. package/dist/audit/report/models/reportLibraryModel.js +3 -7
  19. package/dist/audit/report/models/reportLibraryModel.js.map +1 -0
  20. package/dist/audit/report/models/reportListModel.js +4 -9
  21. package/dist/audit/report/models/reportListModel.js.map +1 -0
  22. package/dist/audit/report/models/reportOutputModel.js +4 -9
  23. package/dist/audit/report/models/reportOutputModel.js.map +1 -0
  24. package/dist/audit/report/models/reportSeverityModel.js +2 -5
  25. package/dist/audit/report/models/reportSeverityModel.js.map +1 -0
  26. package/dist/audit/report/models/severityCountModel.js +3 -5
  27. package/dist/audit/report/models/severityCountModel.js.map +1 -0
  28. package/dist/audit/report/reportingFeature.js +27 -55
  29. package/dist/audit/report/reportingFeature.js.map +1 -0
  30. package/dist/audit/report/utils/reportUtils.js +28 -59
  31. package/dist/audit/report/utils/reportUtils.js.map +1 -0
  32. package/dist/audit/save.js +14 -16
  33. package/dist/audit/save.js.map +1 -0
  34. package/dist/cliConstants.js +17 -18
  35. package/dist/cliConstants.js.map +1 -0
  36. package/dist/commands/audit/auditConfig.js +7 -10
  37. package/dist/commands/audit/auditConfig.js.map +1 -0
  38. package/dist/commands/audit/auditController.js +9 -13
  39. package/dist/commands/audit/auditController.js.map +1 -0
  40. package/dist/commands/audit/help.js +23 -25
  41. package/dist/commands/audit/help.js.map +1 -0
  42. package/dist/commands/audit/processAudit.js +9 -12
  43. package/dist/commands/audit/processAudit.js.map +1 -0
  44. package/dist/commands/audit/saveFile.js +3 -6
  45. package/dist/commands/audit/saveFile.js.map +1 -0
  46. package/dist/commands/auth/auth.js +25 -24
  47. package/dist/commands/auth/auth.js.map +1 -0
  48. package/dist/commands/config/config.js +12 -13
  49. package/dist/commands/config/config.js.map +1 -0
  50. package/dist/commands/github/fingerprintConfig.js +8 -11
  51. package/dist/commands/github/fingerprintConfig.js.map +1 -0
  52. package/dist/commands/github/processFingerprint.js +12 -15
  53. package/dist/commands/github/processFingerprint.js.map +1 -0
  54. package/dist/commands/github/projectGroup.js +25 -32
  55. package/dist/commands/github/projectGroup.js.map +1 -0
  56. package/dist/commands/github/repoServices.js +11 -21
  57. package/dist/commands/github/repoServices.js.map +1 -0
  58. package/dist/commands/learn/learn.js +3 -6
  59. package/dist/commands/learn/learn.js.map +1 -0
  60. package/dist/commands/learn/processLearn.js +3 -6
  61. package/dist/commands/learn/processLearn.js.map +1 -0
  62. package/dist/commands/scan/processScan.js +11 -14
  63. package/dist/commands/scan/processScan.js.map +1 -0
  64. package/dist/common/HTTPClient.js +123 -94
  65. package/dist/common/HTTPClient.js.map +1 -0
  66. package/dist/common/autoDetection.js +26 -33
  67. package/dist/common/autoDetection.js.map +1 -0
  68. package/dist/common/baseRequest.js +14 -18
  69. package/dist/common/baseRequest.js.map +1 -0
  70. package/dist/common/commonHelp.js +13 -13
  71. package/dist/common/commonHelp.js.map +1 -0
  72. package/dist/common/errorHandling.js +30 -39
  73. package/dist/common/errorHandling.js.map +1 -0
  74. package/dist/common/fail.js +6 -12
  75. package/dist/common/fail.js.map +1 -0
  76. package/dist/common/versionChecker.js +16 -19
  77. package/dist/common/versionChecker.js.map +1 -0
  78. package/dist/constants/constants.js +44 -65
  79. package/dist/constants/constants.js.map +1 -0
  80. package/dist/constants/lambda.js +8 -5
  81. package/dist/constants/lambda.js.map +1 -0
  82. package/dist/constants/locales.js +6 -9
  83. package/dist/constants/locales.js.map +1 -0
  84. package/dist/index.js +36 -39
  85. package/dist/index.js.map +1 -0
  86. package/dist/lambda/analytics.js +6 -9
  87. package/dist/lambda/analytics.js.map +1 -0
  88. package/dist/lambda/arn.js +6 -9
  89. package/dist/lambda/arn.js.map +1 -0
  90. package/dist/lambda/aws.js +29 -34
  91. package/dist/lambda/aws.js.map +1 -0
  92. package/dist/lambda/cliError.js +13 -41
  93. package/dist/lambda/cliError.js.map +1 -0
  94. package/dist/lambda/constants.js +3 -4
  95. package/dist/lambda/constants.js.map +1 -0
  96. package/dist/lambda/help.js +39 -44
  97. package/dist/lambda/help.js.map +1 -0
  98. package/dist/lambda/lambda.js +61 -65
  99. package/dist/lambda/lambda.js.map +1 -0
  100. package/dist/lambda/lambdaUtils.js +38 -32
  101. package/dist/lambda/lambdaUtils.js.map +1 -0
  102. package/dist/lambda/logUtils.js +21 -17
  103. package/dist/lambda/logUtils.js.map +1 -0
  104. package/dist/lambda/scanDetailCompletion.js +19 -25
  105. package/dist/lambda/scanDetailCompletion.js.map +1 -0
  106. package/dist/lambda/scanRequest.js +34 -41
  107. package/dist/lambda/scanRequest.js.map +1 -0
  108. package/dist/lambda/scanResults.js +8 -10
  109. package/dist/lambda/scanResults.js.map +1 -0
  110. package/dist/lambda/types.js +5 -7
  111. package/dist/lambda/types.js.map +1 -0
  112. package/dist/lambda/utils.js +33 -35
  113. package/dist/lambda/utils.js.map +1 -0
  114. package/dist/sbom/generateSbom.js +6 -10
  115. package/dist/sbom/generateSbom.js.map +1 -0
  116. package/dist/scaAnalysis/common/auditReport.js +8 -12
  117. package/dist/scaAnalysis/common/auditReport.js.map +1 -0
  118. package/dist/scaAnalysis/common/commonReportingFunctionsSca.js +26 -32
  119. package/dist/scaAnalysis/common/commonReportingFunctionsSca.js.map +1 -0
  120. package/dist/scaAnalysis/common/formatMessage.js +8 -17
  121. package/dist/scaAnalysis/common/formatMessage.js.map +1 -0
  122. package/dist/scaAnalysis/common/models/ScaReportModel.js +4 -9
  123. package/dist/scaAnalysis/common/models/ScaReportModel.js.map +1 -0
  124. package/dist/scaAnalysis/common/scaParserForGoAndJava.js +10 -9
  125. package/dist/scaAnalysis/common/scaParserForGoAndJava.js.map +1 -0
  126. package/dist/scaAnalysis/common/scaServicesUpload.js +21 -22
  127. package/dist/scaAnalysis/common/scaServicesUpload.js.map +1 -0
  128. package/dist/scaAnalysis/common/treeUpload.js +7 -10
  129. package/dist/scaAnalysis/common/treeUpload.js.map +1 -0
  130. package/dist/scaAnalysis/common/utils/reportUtilsSca.js +21 -29
  131. package/dist/scaAnalysis/common/utils/reportUtilsSca.js.map +1 -0
  132. package/dist/scaAnalysis/dotnet/analysis.js +12 -18
  133. package/dist/scaAnalysis/dotnet/analysis.js.map +1 -0
  134. package/dist/scaAnalysis/dotnet/index.js +4 -7
  135. package/dist/scaAnalysis/dotnet/index.js.map +1 -0
  136. package/dist/scaAnalysis/go/goAnalysis.js +8 -11
  137. package/dist/scaAnalysis/go/goAnalysis.js.map +1 -0
  138. package/dist/scaAnalysis/go/goParseDeps.js +9 -7
  139. package/dist/scaAnalysis/go/goParseDeps.js.map +1 -0
  140. package/dist/scaAnalysis/go/goReadDepFile.js +10 -8
  141. package/dist/scaAnalysis/go/goReadDepFile.js.map +1 -0
  142. package/dist/scaAnalysis/java/analysis.js +23 -20
  143. package/dist/scaAnalysis/java/analysis.js.map +1 -0
  144. package/dist/scaAnalysis/java/index.js +7 -10
  145. package/dist/scaAnalysis/java/index.js.map +1 -0
  146. package/dist/scaAnalysis/java/javaBuildDepsParser.js +43 -43
  147. package/dist/scaAnalysis/java/javaBuildDepsParser.js.map +1 -0
  148. package/dist/scaAnalysis/javascript/analysis.js +16 -20
  149. package/dist/scaAnalysis/javascript/analysis.js.map +1 -0
  150. package/dist/scaAnalysis/javascript/index.js +17 -19
  151. package/dist/scaAnalysis/javascript/index.js.map +1 -0
  152. package/dist/scaAnalysis/javascript/scaServiceParser.js +8 -15
  153. package/dist/scaAnalysis/javascript/scaServiceParser.js.map +1 -0
  154. package/dist/scaAnalysis/legacy/legacyFlow.js +13 -15
  155. package/dist/scaAnalysis/legacy/legacyFlow.js.map +1 -0
  156. package/dist/scaAnalysis/php/analysis.js +15 -16
  157. package/dist/scaAnalysis/php/analysis.js.map +1 -0
  158. package/dist/scaAnalysis/php/index.js +5 -8
  159. package/dist/scaAnalysis/php/index.js.map +1 -0
  160. package/dist/scaAnalysis/php/phpNewServicesMapper.js +9 -12
  161. package/dist/scaAnalysis/php/phpNewServicesMapper.js.map +1 -0
  162. package/dist/scaAnalysis/processServicesFlow.js +50 -25
  163. package/dist/scaAnalysis/processServicesFlow.js.map +1 -0
  164. package/dist/scaAnalysis/python/analysis.js +16 -23
  165. package/dist/scaAnalysis/python/analysis.js.map +1 -0
  166. package/dist/scaAnalysis/python/index.js +4 -7
  167. package/dist/scaAnalysis/python/index.js.map +1 -0
  168. package/dist/scaAnalysis/repoMode/gradleParser.js +7 -13
  169. package/dist/scaAnalysis/repoMode/gradleParser.js.map +1 -0
  170. package/dist/scaAnalysis/repoMode/index.js +9 -12
  171. package/dist/scaAnalysis/repoMode/index.js.map +1 -0
  172. package/dist/scaAnalysis/repoMode/mavenParser.js +12 -12
  173. package/dist/scaAnalysis/repoMode/mavenParser.js.map +1 -0
  174. package/dist/scaAnalysis/ruby/analysis.js +32 -46
  175. package/dist/scaAnalysis/ruby/analysis.js.map +1 -0
  176. package/dist/scaAnalysis/ruby/index.js +5 -8
  177. package/dist/scaAnalysis/ruby/index.js.map +1 -0
  178. package/dist/scaAnalysis/scaAnalysis.js +49 -51
  179. package/dist/scaAnalysis/scaAnalysis.js.map +1 -0
  180. package/dist/scan/fileUtils.js +27 -36
  181. package/dist/scan/fileUtils.js.map +1 -0
  182. package/dist/scan/formatScanOutput.js +47 -61
  183. package/dist/scan/formatScanOutput.js.map +1 -0
  184. package/dist/scan/help.js +8 -11
  185. package/dist/scan/help.js.map +1 -0
  186. package/dist/scan/models/groupedResultsModel.js +2 -5
  187. package/dist/scan/models/groupedResultsModel.js.map +1 -0
  188. package/dist/scan/models/resultContentModel.js +2 -2
  189. package/dist/scan/models/resultContentModel.js.map +1 -0
  190. package/dist/scan/models/scanResultsModel.js +2 -5
  191. package/dist/scan/models/scanResultsModel.js.map +1 -0
  192. package/dist/scan/populateProjectIdAndProjectName.js +9 -12
  193. package/dist/scan/populateProjectIdAndProjectName.js.map +1 -0
  194. package/dist/scan/saveResults.js +3 -6
  195. package/dist/scan/saveResults.js.map +1 -0
  196. package/dist/scan/scan.js +24 -31
  197. package/dist/scan/scan.js.map +1 -0
  198. package/dist/scan/scanConfig.js +14 -12
  199. package/dist/scan/scanConfig.js.map +1 -0
  200. package/dist/scan/scanController.js +17 -20
  201. package/dist/scan/scanController.js.map +1 -0
  202. package/dist/scan/scanResults.js +27 -34
  203. package/dist/scan/scanResults.js.map +1 -0
  204. package/dist/telemetry/telemetry.js +29 -59
  205. package/dist/telemetry/telemetry.js.map +1 -0
  206. package/dist/utils/capabilities.js +1 -0
  207. package/dist/utils/capabilities.js.map +1 -0
  208. package/dist/utils/commonApi.js +15 -24
  209. package/dist/utils/commonApi.js.map +1 -0
  210. package/dist/utils/filterProjectPath.js +1 -0
  211. package/dist/utils/filterProjectPath.js.map +1 -0
  212. package/dist/utils/generalAPI.js +11 -17
  213. package/dist/utils/generalAPI.js.map +1 -0
  214. package/dist/utils/getConfig.js +7 -13
  215. package/dist/utils/getConfig.js.map +1 -0
  216. package/dist/utils/oraWrapper.js +7 -14
  217. package/dist/utils/oraWrapper.js.map +1 -0
  218. package/dist/utils/paramsUtil/commandlineParams.js +2 -5
  219. package/dist/utils/paramsUtil/commandlineParams.js.map +1 -0
  220. package/dist/utils/paramsUtil/configStoreParams.js +9 -10
  221. package/dist/utils/paramsUtil/configStoreParams.js.map +1 -0
  222. package/dist/utils/paramsUtil/envVariableParams.js +2 -3
  223. package/dist/utils/paramsUtil/envVariableParams.js.map +1 -0
  224. package/dist/utils/paramsUtil/paramHandler.js +12 -13
  225. package/dist/utils/paramsUtil/paramHandler.js.map +1 -0
  226. package/dist/utils/parsedCLIOptions.js +4 -7
  227. package/dist/utils/parsedCLIOptions.js.map +1 -0
  228. package/dist/utils/requestUtils.js +7 -13
  229. package/dist/utils/requestUtils.js.map +1 -0
  230. package/dist/utils/saveFile.js +8 -11
  231. package/dist/utils/saveFile.js.map +1 -0
  232. package/dist/utils/validationCheck.js +5 -11
  233. package/dist/utils/validationCheck.js.map +1 -0
  234. package/package.json +32 -41
  235. package/.prettierignore +0 -1
  236. package/bin/contrast.js +0 -2
  237. package/dist/audit/languageAnalysisEngine/util/requestUtils.js +0 -14
  238. package/dist/lambda/__mocks__/aws.js +0 -21
  239. package/dist/lambda/__mocks__/lambdaConfig.json +0 -42
  240. package/src/audit/catalogueApplication/catalogueApplication.js +0 -51
  241. package/src/audit/languageAnalysisEngine/commonApi.js +0 -20
  242. package/src/audit/languageAnalysisEngine/filterProjectPath.js +0 -21
  243. package/src/audit/languageAnalysisEngine/getProjectRootFilenames.js +0 -36
  244. package/src/audit/languageAnalysisEngine/sendSnapshot.js +0 -57
  245. package/src/audit/languageAnalysisEngine/util/requestUtils.js +0 -17
  246. package/src/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +0 -63
  247. package/src/audit/report/commonReportingFunctions.js +0 -412
  248. package/src/audit/report/models/reportGuidanceModel.ts +0 -5
  249. package/src/audit/report/models/reportLibraryModel.ts +0 -30
  250. package/src/audit/report/models/reportListModel.ts +0 -49
  251. package/src/audit/report/models/reportOutputModel.ts +0 -29
  252. package/src/audit/report/models/reportSeverityModel.ts +0 -18
  253. package/src/audit/report/models/severityCountModel.ts +0 -22
  254. package/src/audit/report/reportingFeature.ts +0 -110
  255. package/src/audit/report/utils/reportUtils.ts +0 -165
  256. package/src/audit/save.js +0 -67
  257. package/src/cliConstants.js +0 -523
  258. package/src/commands/audit/auditConfig.js +0 -18
  259. package/src/commands/audit/auditController.js +0 -50
  260. package/src/commands/audit/help.js +0 -72
  261. package/src/commands/audit/processAudit.js +0 -34
  262. package/src/commands/audit/saveFile.js +0 -15
  263. package/src/commands/auth/auth.js +0 -146
  264. package/src/commands/config/config.js +0 -41
  265. package/src/commands/github/fingerprintConfig.js +0 -19
  266. package/src/commands/github/processFingerprint.js +0 -37
  267. package/src/commands/github/projectGroup.js +0 -298
  268. package/src/commands/github/repoServices.js +0 -122
  269. package/src/commands/learn/learn.js +0 -10
  270. package/src/commands/learn/processLearn.js +0 -13
  271. package/src/commands/scan/processScan.js +0 -42
  272. package/src/common/HTTPClient.js +0 -775
  273. package/src/common/autoDetection.js +0 -209
  274. package/src/common/baseRequest.ts +0 -83
  275. package/src/common/commonHelp.js +0 -53
  276. package/src/common/errorHandling.js +0 -157
  277. package/src/common/fail.js +0 -79
  278. package/src/common/versionChecker.js +0 -75
  279. package/src/constants/constants.js +0 -71
  280. package/src/constants/lambda.js +0 -85
  281. package/src/constants/locales.js +0 -365
  282. package/src/index.ts +0 -142
  283. package/src/lambda/__mocks__/aws.ts +0 -32
  284. package/src/lambda/__mocks__/lambdaConfig.json +0 -42
  285. package/src/lambda/analytics.ts +0 -9
  286. package/src/lambda/arn.ts +0 -33
  287. package/src/lambda/aws.ts +0 -248
  288. package/src/lambda/cliError.ts +0 -72
  289. package/src/lambda/constants.ts +0 -11
  290. package/src/lambda/help.ts +0 -92
  291. package/src/lambda/lambda.ts +0 -230
  292. package/src/lambda/lambdaUtils.ts +0 -111
  293. package/src/lambda/logUtils.ts +0 -64
  294. package/src/lambda/scanDetailCompletion.ts +0 -78
  295. package/src/lambda/scanRequest.ts +0 -169
  296. package/src/lambda/scanResults.ts +0 -29
  297. package/src/lambda/types.ts +0 -36
  298. package/src/lambda/utils.ts +0 -188
  299. package/src/sbom/generateSbom.ts +0 -45
  300. package/src/scaAnalysis/common/auditReport.js +0 -59
  301. package/src/scaAnalysis/common/commonReportingFunctionsSca.js +0 -276
  302. package/src/scaAnalysis/common/formatMessage.js +0 -67
  303. package/src/scaAnalysis/common/models/ScaReportModel.ts +0 -81
  304. package/src/scaAnalysis/common/scaParserForGoAndJava.js +0 -41
  305. package/src/scaAnalysis/common/scaServicesUpload.js +0 -159
  306. package/src/scaAnalysis/common/treeUpload.js +0 -51
  307. package/src/scaAnalysis/common/utils/reportUtilsSca.ts +0 -123
  308. package/src/scaAnalysis/dotnet/analysis.js +0 -72
  309. package/src/scaAnalysis/dotnet/index.js +0 -11
  310. package/src/scaAnalysis/go/goAnalysis.js +0 -26
  311. package/src/scaAnalysis/go/goParseDeps.js +0 -203
  312. package/src/scaAnalysis/go/goReadDepFile.js +0 -34
  313. package/src/scaAnalysis/java/analysis.js +0 -148
  314. package/src/scaAnalysis/java/index.js +0 -29
  315. package/src/scaAnalysis/java/javaBuildDepsParser.js +0 -439
  316. package/src/scaAnalysis/javascript/analysis.js +0 -111
  317. package/src/scaAnalysis/javascript/index.js +0 -104
  318. package/src/scaAnalysis/javascript/scaServiceParser.js +0 -151
  319. package/src/scaAnalysis/legacy/legacyFlow.js +0 -43
  320. package/src/scaAnalysis/php/analysis.js +0 -78
  321. package/src/scaAnalysis/php/index.js +0 -28
  322. package/src/scaAnalysis/php/phpNewServicesMapper.js +0 -77
  323. package/src/scaAnalysis/processServicesFlow.js +0 -126
  324. package/src/scaAnalysis/python/analysis.js +0 -93
  325. package/src/scaAnalysis/python/index.js +0 -16
  326. package/src/scaAnalysis/repoMode/gradleParser.js +0 -88
  327. package/src/scaAnalysis/repoMode/index.js +0 -21
  328. package/src/scaAnalysis/repoMode/mavenParser.js +0 -138
  329. package/src/scaAnalysis/ruby/analysis.js +0 -413
  330. package/src/scaAnalysis/ruby/index.js +0 -16
  331. package/src/scaAnalysis/scaAnalysis.js +0 -172
  332. package/src/scan/fileUtils.js +0 -218
  333. package/src/scan/formatScanOutput.ts +0 -225
  334. package/src/scan/help.js +0 -56
  335. package/src/scan/models/groupedResultsModel.ts +0 -20
  336. package/src/scan/models/resultContentModel.ts +0 -86
  337. package/src/scan/models/scanResultsModel.ts +0 -55
  338. package/src/scan/populateProjectIdAndProjectName.js +0 -73
  339. package/src/scan/saveResults.js +0 -14
  340. package/src/scan/scan.ts +0 -68
  341. package/src/scan/scanConfig.js +0 -58
  342. package/src/scan/scanController.js +0 -98
  343. package/src/scan/scanResults.js +0 -171
  344. package/src/telemetry/telemetry.ts +0 -154
  345. package/src/utils/capabilities.js +0 -12
  346. package/src/utils/commonApi.js +0 -103
  347. package/src/utils/filterProjectPath.js +0 -25
  348. package/src/utils/generalAPI.js +0 -52
  349. package/src/utils/getConfig.ts +0 -34
  350. package/src/utils/oraWrapper.js +0 -29
  351. package/src/utils/paramsUtil/commandlineParams.js +0 -12
  352. package/src/utils/paramsUtil/configStoreParams.js +0 -19
  353. package/src/utils/paramsUtil/envVariableParams.js +0 -10
  354. package/src/utils/paramsUtil/paramHandler.js +0 -38
  355. package/src/utils/parsedCLIOptions.js +0 -32
  356. package/src/utils/requestUtils.js +0 -29
  357. package/src/utils/saveFile.js +0 -20
  358. package/src/utils/validationCheck.js +0 -39
@@ -1,12 +1,11 @@
1
- "use strict";
2
- const { createGoTSMessage } = require('../common/formatMessage');
3
- const { parseDependenciesForSCAServices } = require('../common/scaParserForGoAndJava');
4
- const goReadDepFile = require('./goReadDepFile');
5
- const goParseDeps = require('./goParseDeps');
6
- const goAnalysis = config => {
1
+ import { getGoDependencies } from './goReadDepFile.js';
2
+ import { parseGoDependencies } from './goParseDeps.js';
3
+ import { parseDependenciesForSCAServices } from '../common/scaParserForGoAndJava.js';
4
+ import { createGoTSMessage } from '../common/formatMessage.js';
5
+ export const goAnalysis = config => {
7
6
  try {
8
- const rawGoDependencies = goReadDepFile.getGoDependencies(config);
9
- const parsedGoDependencies = goParseDeps.parseGoDependencies(rawGoDependencies);
7
+ const rawGoDependencies = getGoDependencies(config);
8
+ const parsedGoDependencies = parseGoDependencies(rawGoDependencies);
10
9
  if (config.legacy === false) {
11
10
  return parseDependenciesForSCAServices(parsedGoDependencies);
12
11
  }
@@ -18,6 +17,4 @@ const goAnalysis = config => {
18
17
  console.log(e.message.toString());
19
18
  }
20
19
  };
21
- module.exports = {
22
- goAnalysis
23
- };
20
+ //# sourceMappingURL=goAnalysis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goAnalysis.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goAnalysis.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAE9D,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE;IACjC,IAAI;QACF,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;QACnD,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,CAAA;QAEnE,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;YAC3B,OAAO,+BAA+B,CAAC,oBAAoB,CAAC,CAAA;SAC7D;aAAM;YACL,OAAO,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;SAC/C;KACF;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;KAClC;AACH,CAAC,CAAA"}
@@ -1,6 +1,5 @@
1
- "use strict";
2
- const crypto = require('crypto');
3
- const parseGoDependencies = goDeps => {
1
+ import { createHash } from 'crypto';
2
+ export const parseGoDependencies = goDeps => {
4
3
  return parseGo(goDeps);
5
4
  };
6
5
  const parseGo = modGraphOutput => {
@@ -51,6 +50,7 @@ const createRootNodes = deps => {
51
50
  let group = splitEdge[0].substring(0, lastSlash);
52
51
  const hash = getHash(splitEdge[0]);
53
52
  group = checkGroupExists(group, name);
53
+ //get the edges of the root dependency
54
54
  const edgesOfDep = getAllDepsOfADepAsEdge(edge, deps);
55
55
  rootDep[rootDeps[0].split(' ')[0]][edge] = {
56
56
  artifactID: name,
@@ -74,7 +74,7 @@ const getRootDeps = deps => {
74
74
  return rootDeps;
75
75
  };
76
76
  const getHash = library => {
77
- let shaSum = crypto.createHash('sha1');
77
+ let shaSum = createHash('sha1');
78
78
  shaSum.update(library);
79
79
  return shaSum.digest('hex');
80
80
  };
@@ -112,6 +112,7 @@ const checkGroupExists = (group, name) => {
112
112
  };
113
113
  const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
114
114
  transitiveDeps.forEach(dep => {
115
+ //create transitive dep
115
116
  const splitEdge = dep.split('@');
116
117
  const splitGroupName = splitEdge[0].split('/');
117
118
  const name = splitGroupName.pop();
@@ -128,8 +129,10 @@ const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
128
129
  hash: hash,
129
130
  edges: {}
130
131
  };
132
+ //add edges to transitiveDep
131
133
  const edges = getAllDepsOfADepAsEdge(dep, splitLines);
132
134
  transitiveDep.edges = edges;
135
+ //add all edges as a transitive dependency to rootNodes
133
136
  const edgesAsName = getAllDepsOfADepAsName(dep, splitLines);
134
137
  edgesAsName.forEach(dep => {
135
138
  const splitEdge = dep.split('@');
@@ -150,9 +153,8 @@ const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
150
153
  };
151
154
  rootNodes[Object.keys(rootNodes)[0]][dep] = transitiveDep;
152
155
  });
156
+ //add transitive dependency to rootNodes
153
157
  rootNodes[Object.keys(rootNodes)[0]][dep] = transitiveDep;
154
158
  });
155
159
  };
156
- module.exports = {
157
- parseGoDependencies
158
- };
160
+ //# sourceMappingURL=goParseDeps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goParseDeps.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goParseDeps.js"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
- "use strict";
2
- const child_process = require('child_process');
3
- const i18n = require('i18n');
4
- const getGoDependencies = config => {
1
+ import childProcess from 'child_process';
2
+ import i18n from 'i18n';
3
+ export const getGoDependencies = config => {
5
4
  let cmdStdout;
6
5
  let cwd = config.file ? config.file.replace('go.mod', '') : process.cwd();
7
6
  try {
8
- cmdStdout = child_process.execSync('go mod graph', {
7
+ // A sample of this output can be found
8
+ // in the go test folder data/goModGraphResults.text
9
+ cmdStdout = childProcess.execSync('go mod graph', {
9
10
  cwd: cwd,
10
11
  maxBuffer: 50 * 1024 * 1024
11
12
  });
@@ -17,9 +18,10 @@ const getGoDependencies = config => {
17
18
  '\n\n*************** No transitive dependencies ***************\n\nWe are unable to build a dependency tree view from your repository as there were no transitive dependencies found.';
18
19
  }
19
20
  console.log(i18n.__('goReadProjectFile', cwd, `${err.message ? err.message : ''}`));
21
+ // throw new Error(
22
+ // i18n.__('goReadProjectFile', cwd, `${err.message ? err.message : ''}`)
23
+ // )
20
24
  process.exit(1);
21
25
  }
22
26
  };
23
- module.exports = {
24
- getGoDependencies
25
- };
27
+ //# sourceMappingURL=goReadDepFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goReadDepFile.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goReadDepFile.js"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE;IACxC,IAAI,SAAS,CAAA;IACb,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;IAEzE,IAAI;QACF,uCAAuC;QACvC,oDAAoD;QACpD,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE;YAChD,GAAG,EAAE,GAAG;YACR,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;SAC5B,CAAC,CAAA;QAEF,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAA;KAC5B;IAAC,OAAO,GAAG,EAAE;QACZ,IAAI,GAAG,CAAC,OAAO,KAAK,0BAA0B,EAAE;YAC9C,GAAG,CAAC,OAAO;gBACT,sLAAsL,CAAA;SACzL;QACD,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACvE,CAAA;QACD,mBAAmB;QACnB,2EAA2E;QAC3E,IAAI;QACJ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAChB;AACH,CAAC,CAAA"}
@@ -1,12 +1,11 @@
1
- "use strict";
2
- const child_process = require('child_process');
3
- const spawn = require('cross-spawn');
4
- const path = require('path');
5
- const i18n = require('i18n');
6
- const fs = require('fs');
1
+ import childProcess from 'child_process';
2
+ import crossSpawn from 'cross-spawn';
3
+ import { sep } from 'path';
4
+ import i18n from 'i18n';
5
+ import fs from 'fs';
7
6
  const MAVEN = 'maven';
8
7
  const GRADLE = 'gradle';
9
- const determineProjectTypeAndCwd = (files, config) => {
8
+ export const determineProjectTypeAndCwd = (files, config) => {
10
9
  const projectData = {};
11
10
  if (files.length > 1) {
12
11
  files = files.filter(i => config.fileName.includes(i));
@@ -17,6 +16,7 @@ const determineProjectTypeAndCwd = (files, config) => {
17
16
  else if (files[0].includes('build.gradle')) {
18
17
  projectData.projectType = GRADLE;
19
18
  }
19
+ //clean up the path to be a folder not a file
20
20
  projectData.cwd = config.file
21
21
  ? config.file.replace('pom.xml', '').replace('build.gradle', '')
22
22
  : config.file;
@@ -29,27 +29,35 @@ const buildMaven = (config, projectData, timeout) => {
29
29
  args.push('-s');
30
30
  args.push(config.mavenSettingsPath);
31
31
  }
32
- const cmdDepTree = spawn.sync(command, args, {
32
+ // Allow users to provide a custom location for their settings.xml
33
+ const cmdDepTree = crossSpawn.sync(command, args, {
33
34
  env: process.env,
34
35
  cwd: projectData.cwd,
35
36
  timeout
36
37
  });
38
+ checkMavenExists(cmdDepTree, config, projectData);
39
+ return cmdDepTree.stdout.toString();
40
+ };
41
+ export const checkMavenExists = (cmdDepTree, config, projectData) => {
37
42
  if (cmdDepTree.status !== 0) {
43
+ //if maven not found
38
44
  if (config.debug && cmdDepTree.error.code === 'ENOENT') {
39
45
  console.log(`ERROR: mvn not found`);
40
46
  console.log('Please make sure mvn is installed and accessible');
41
47
  }
42
48
  throw new Error(i18n.__('mavenDependencyTreeNonZero', projectData.cwd));
43
49
  }
44
- return cmdDepTree.stdout.toString();
45
50
  };
46
51
  const buildGradle = (config, projectData, timeout) => {
47
52
  let cmdStdout;
48
53
  let output = {};
49
54
  try {
55
+ // path.sep is user here to either execute as "./gradlew" for UNIX/Linux/MacOS
56
+ // & ".\gradlew" for Windows
57
+ // Check if the user has specified a sub-project
50
58
  if (config.subProject) {
51
- cmdStdout = child_process.execSync('.' +
52
- path.sep +
59
+ cmdStdout = childProcess.execSync('.' +
60
+ sep +
53
61
  'gradlew :' +
54
62
  config.subProject +
55
63
  ':dependencies --configuration runtimeClasspath', {
@@ -58,9 +66,7 @@ const buildGradle = (config, projectData, timeout) => {
58
66
  });
59
67
  }
60
68
  else {
61
- cmdStdout = child_process.execSync('.' +
62
- path.sep +
63
- 'gradlew dependencies --configuration runtimeClasspath', {
69
+ cmdStdout = childProcess.execSync('.' + sep + 'gradlew dependencies --configuration runtimeClasspath', {
64
70
  cwd: projectData.cwd,
65
71
  timeout
66
72
  });
@@ -69,7 +75,7 @@ const buildGradle = (config, projectData, timeout) => {
69
75
  .toString()
70
76
  .includes("runtimeClasspath - Runtime classpath of source set 'main'.\n" +
71
77
  'No dependencies')) {
72
- cmdStdout = child_process.execSync('.' + path.sep + 'gradlew dependencies', {
78
+ cmdStdout = childProcess.execSync('.' + sep + 'gradlew dependencies', {
73
79
  cwd: projectData.cwd,
74
80
  timeout
75
81
  });
@@ -87,7 +93,7 @@ const buildGradle = (config, projectData, timeout) => {
87
93
  }
88
94
  }
89
95
  };
90
- const getJavaBuildDeps = (config, files) => {
96
+ export const getJavaBuildDeps = (config, files) => {
91
97
  const timeout = 960000;
92
98
  let output = {
93
99
  mvnDependancyTreeOutput: undefined,
@@ -103,7 +109,4 @@ const getJavaBuildDeps = (config, files) => {
103
109
  output.projectType = projectData.projectType;
104
110
  return output;
105
111
  };
106
- module.exports = {
107
- getJavaBuildDeps,
108
- determineProjectTypeAndCwd
109
- };
112
+ //# sourceMappingURL=analysis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/scaAnalysis/java/analysis.js"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
- "use strict";
2
- const analysis = require('./analysis');
3
- const { parseBuildDeps } = require('./javaBuildDepsParser');
4
- const { createJavaTSMessage } = require('../common/formatMessage');
5
- const { parseDependenciesForSCAServices } = require('../common/scaParserForGoAndJava');
6
- const javaAnalysis = async (config, languageFiles) => {
1
+ import { getJavaBuildDeps } from './analysis.js';
2
+ import { parseBuildDeps } from './javaBuildDepsParser.js';
3
+ import { createJavaTSMessage } from '../common/formatMessage.js';
4
+ import { parseDependenciesForSCAServices } from '../common/scaParserForGoAndJava.js';
5
+ export const javaAnalysis = async (config, languageFiles) => {
7
6
  languageFiles.JAVA.forEach(file => {
8
7
  file.replace('build.gradle.kts', 'build.gradle');
9
8
  });
@@ -16,9 +15,7 @@ const javaAnalysis = async (config, languageFiles) => {
16
15
  }
17
16
  };
18
17
  const buildJavaTree = (config, files) => {
19
- const javaBuildDeps = analysis.getJavaBuildDeps(config, files);
18
+ const javaBuildDeps = getJavaBuildDeps(config, files);
20
19
  return parseBuildDeps(config, javaBuildDeps);
21
20
  };
22
- module.exports = {
23
- javaAnalysis
24
- };
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/scaAnalysis/java/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAA;AAEpF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE;IAC1D,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAChC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,CAAA;IAE1D,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;QAC3B,OAAO,+BAA+B,CAAC,QAAQ,CAAC,CAAA;KACjD;SAAM;QACL,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAA;KACrC;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;IACtC,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACrD,OAAO,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAC9C,CAAC,CAAA"}
@@ -1,8 +1,7 @@
1
- "use strict";
2
- const i18n = require('i18n');
3
- const StringBuilder = require('string-builder');
1
+ import i18n from 'i18n';
2
+ import StringBuilder from 'string-builder';
4
3
  let sb = new StringBuilder();
5
- const parseBuildDeps = (config, input) => {
4
+ export const parseBuildDeps = (config, input) => {
6
5
  const { mvnDependancyTreeOutput, projectType } = input;
7
6
  try {
8
7
  return parseGradle(mvnDependancyTreeOutput, config, projectType);
@@ -11,7 +10,7 @@ const parseBuildDeps = (config, input) => {
11
10
  throw new Error(i18n.__('javaParseProjectFile') + `${err.message}`);
12
11
  }
13
12
  };
14
- const preParser = shavedOutput => {
13
+ export const preParser = shavedOutput => {
15
14
  let obj = [];
16
15
  for (let dep in shavedOutput) {
17
16
  shavedOutput[dep] = shaveDependencyType(shavedOutput[dep]);
@@ -49,7 +48,7 @@ const preParser = shavedOutput => {
49
48
  }
50
49
  return depTree;
51
50
  };
52
- const shaveDependencyType = dep => {
51
+ export const shaveDependencyType = dep => {
53
52
  if (dep.endsWith('\r')) {
54
53
  dep = dep.slice(0, -1);
55
54
  }
@@ -64,7 +63,7 @@ const shaveDependencyType = dep => {
64
63
  }
65
64
  return dep;
66
65
  };
67
- const shaveOutput = (gradleDependencyTreeOutput, projectType) => {
66
+ export const shaveOutput = (gradleDependencyTreeOutput, projectType) => {
68
67
  let shavedOutput = gradleDependencyTreeOutput.split('\n');
69
68
  if (projectType === 'maven') {
70
69
  shavedOutput = preParser(shavedOutput);
@@ -72,6 +71,7 @@ const shaveOutput = (gradleDependencyTreeOutput, projectType) => {
72
71
  let obj = [];
73
72
  for (let key in shavedOutput) {
74
73
  if (shavedOutput[key].includes('project :')) {
74
+ //skip
75
75
  }
76
76
  else if (shavedOutput[key].includes('+---') ||
77
77
  shavedOutput[key].includes('\\---')) {
@@ -80,7 +80,7 @@ const shaveOutput = (gradleDependencyTreeOutput, projectType) => {
80
80
  }
81
81
  return obj;
82
82
  };
83
- const computeIndentation = element => {
83
+ export const computeIndentation = element => {
84
84
  let hasPlus = element.includes('+');
85
85
  let hasSlash = element.includes('\\');
86
86
  if (hasPlus) {
@@ -90,7 +90,7 @@ const computeIndentation = element => {
90
90
  return element.substring(element.indexOf('\\'));
91
91
  }
92
92
  };
93
- const computeLevel = nodeLevel => {
93
+ export const computeLevel = nodeLevel => {
94
94
  let num = [5, 8, 11, 14, 17, 20];
95
95
  for (let z in num) {
96
96
  if (num[z] === nodeLevel) {
@@ -99,16 +99,16 @@ const computeLevel = nodeLevel => {
99
99
  }
100
100
  }
101
101
  };
102
- const addIndentation = (number, str) => {
102
+ export const addIndentation = (number, str) => {
103
103
  str = computeIndentation(str);
104
- sb.clear();
104
+ sb.clear(); // need to clear so each dep doesn't append to the string
105
105
  for (let j = 0; j < number; j++) {
106
106
  sb.append(' ');
107
107
  }
108
108
  sb.append(str);
109
109
  return sb.toString();
110
110
  };
111
- const computeRelationToLastElement = element => {
111
+ export const computeRelationToLastElement = element => {
112
112
  let hasPlus = element.includes('+---');
113
113
  let hasSlash = element.includes('\\---');
114
114
  if (hasPlus) {
@@ -118,7 +118,7 @@ const computeRelationToLastElement = element => {
118
118
  return element.split('\\---')[0].length;
119
119
  }
120
120
  };
121
- const stripElement = element => {
121
+ export const stripElement = element => {
122
122
  const initialStrippedElement = element
123
123
  .replace(/[|]/g, '')
124
124
  .replace('+---', '')
@@ -127,6 +127,8 @@ const stripElement = element => {
127
127
  .replace('(c)', '')
128
128
  .replace('->', '@')
129
129
  .replace('(*)', '');
130
+ //work out Gradle resolved versioning e.g. org.slf4j:slf4j-api:1.7.25 -> 1.7.22
131
+ //take 1.7.22
130
132
  const splitElements = initialStrippedElement.split(':');
131
133
  if (splitElements[2] !== undefined &&
132
134
  splitElements[2] !== null &&
@@ -138,11 +140,11 @@ const stripElement = element => {
138
140
  }
139
141
  return initialStrippedElement;
140
142
  };
141
- const checkVersion = element => {
143
+ export const checkVersion = element => {
142
144
  let version = element.split(':');
143
145
  return version[version.length - 1];
144
146
  };
145
- const createElement = (element, isRoot) => {
147
+ export const createElement = (element, isRoot) => {
146
148
  let tree;
147
149
  let cleanElement = stripElement(element);
148
150
  let splitGroupName = cleanElement.split(':');
@@ -162,42 +164,44 @@ const createElement = (element, isRoot) => {
162
164
  };
163
165
  return tree;
164
166
  };
165
- const getElementHeader = element => {
167
+ export const getElementHeader = element => {
166
168
  let elementHeader = stripElement(element);
167
169
  elementHeader = elementHeader.replace(':', '/');
168
170
  elementHeader = elementHeader.replace(':', '@');
169
171
  return elementHeader;
170
172
  };
171
- const buildElement = (element, rootElement, parentOfCurrent, tree, isRoot) => {
173
+ export const buildElement = (element, rootElement, parentOfCurrent, tree, isRoot) => {
172
174
  let childElement = createElement(element, isRoot);
173
175
  let elementHeader = getElementHeader(element);
174
176
  let levelsArray = [rootElement, parentOfCurrent];
175
177
  const treeNode = getNestedObject(tree, levelsArray);
176
178
  const rootNode = getNestedObject(tree, [rootElement]);
179
+ // eslint-disable-next-line
177
180
  if (!rootNode.hasOwnProperty(elementHeader)) {
178
181
  tree[rootElement][elementHeader] = childElement;
179
182
  }
180
183
  treeNode.edges[elementHeader] = elementHeader;
181
184
  };
182
- const hasChildren = (nextNodeLevel, nodeLevel) => {
185
+ export const hasChildren = (nextNodeLevel, nodeLevel) => {
183
186
  if (nextNodeLevel > nodeLevel) {
184
187
  return true;
185
188
  }
186
189
  };
187
- const lastChild = (nextNodeLevel, nodeLevel) => {
190
+ export const lastChild = (nextNodeLevel, nodeLevel) => {
188
191
  if (nextNodeLevel < nodeLevel) {
189
192
  return true;
190
193
  }
191
194
  };
192
- const calculateLevels = (nextNodeLevel, nodeLevel) => {
195
+ export const calculateLevels = (nextNodeLevel, nodeLevel) => {
193
196
  return (nodeLevel - nextNodeLevel) / 5;
194
197
  };
195
- const buildTree = shavedOutput => {
198
+ export const buildTree = shavedOutput => {
196
199
  let tree = {};
197
200
  let rootElement;
198
201
  let levelNodes = [];
199
202
  shavedOutput.forEach((element, index) => {
200
203
  if (index === 0) {
204
+ // console.log(element, index)
201
205
  let cleanElement = stripElement(element);
202
206
  let elementHeader = getElementHeader(cleanElement);
203
207
  let splitElement = element.split(' ');
@@ -221,6 +225,7 @@ const buildTree = shavedOutput => {
221
225
  levelNodes.push(elementHeader);
222
226
  }
223
227
  if (shavedOutput.length - 1 === index) {
228
+ // console.log(element, index)
224
229
  const parentOfCurrent = levelNodes[levelNodes.length - 1];
225
230
  let nodeLevel = computeRelationToLastElement(element);
226
231
  let validateVersion = false;
@@ -255,6 +260,17 @@ const buildTree = shavedOutput => {
255
260
  if (nodeLevel === 0) {
256
261
  isRoot = true;
257
262
  }
263
+ // useful for debugging
264
+ // console.log(
265
+ // element,
266
+ // index,
267
+ // 'nodeLevel:',
268
+ // nodeLevel,
269
+ // 'nextNodeLevel:',
270
+ // nextNodeLevel,
271
+ // 'parentofCurrent:',
272
+ // parentOfCurrent
273
+ // )
258
274
  if (isRoot) {
259
275
  let cleanElement = stripElement(element);
260
276
  let elementHeader = getElementHeader(cleanElement);
@@ -299,10 +315,11 @@ const buildTree = shavedOutput => {
299
315
  });
300
316
  return tree;
301
317
  };
302
- const getNestedObject = (nestedObj, pathArr) => {
318
+ export const getNestedObject = (nestedObj, pathArr) => {
303
319
  return pathArr.reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), nestedObj);
304
320
  };
305
- const parseSubProject = shavedOutput => {
321
+ // emit any "+--- project :" within the tree
322
+ export const parseSubProject = shavedOutput => {
306
323
  let obj = [];
307
324
  for (let key in shavedOutput) {
308
325
  if (!shavedOutput[key].includes('project')) {
@@ -311,7 +328,7 @@ const parseSubProject = shavedOutput => {
311
328
  }
312
329
  return obj;
313
330
  };
314
- const validateIndentation = shavedOutput => {
331
+ export const validateIndentation = shavedOutput => {
315
332
  let validatedTree = [];
316
333
  shavedOutput.forEach((element, index) => {
317
334
  let nextNodeLevel;
@@ -333,7 +350,7 @@ const validateIndentation = shavedOutput => {
333
350
  validatedTree.pop();
334
351
  return validatedTree;
335
352
  };
336
- const parseGradle = (gradleDependencyTreeOutput, config, projectType) => {
353
+ export const parseGradle = (gradleDependencyTreeOutput, config, projectType) => {
337
354
  let shavedOutput = shaveOutput(gradleDependencyTreeOutput, projectType);
338
355
  if (config.subProject) {
339
356
  let subProject = parseSubProject(shavedOutput);
@@ -345,21 +362,4 @@ const parseGradle = (gradleDependencyTreeOutput, config, projectType) => {
345
362
  return buildTree(validatedOutput);
346
363
  }
347
364
  };
348
- module.exports = {
349
- parseBuildDeps,
350
- shaveOutput,
351
- validateIndentation,
352
- calculateLevels,
353
- lastChild,
354
- hasChildren,
355
- getElementHeader,
356
- createElement,
357
- stripElement,
358
- checkVersion,
359
- computeRelationToLastElement,
360
- addIndentation,
361
- computeLevel,
362
- computeIndentation,
363
- shaveDependencyType,
364
- preParser
365
- };
365
+ //# sourceMappingURL=javaBuildDepsParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"javaBuildDepsParser.js","sourceRoot":"","sources":["../../../src/scaAnalysis/java/javaBuildDepsParser.js"],"names":[],"mappings":"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"}
@@ -1,19 +1,18 @@
1
- "use strict";
2
- const fs = require('fs');
3
- const yarnParser = require('@yarnpkg/lockfile');
4
- const yaml = require('js-yaml');
5
- const i18n = require('i18n');
6
- const { formatKey } = require('../../audit/nodeAnalysisEngine/parseYarn2LockFileContents');
7
- const readFile = async (config, languageFiles, nameOfFile) => {
1
+ import { readFileSync } from 'fs';
2
+ import { load } from 'js-yaml';
3
+ import i18n from 'i18n';
4
+ import { formatKey } from '../../audit/nodeAnalysisEngine/parseYarn2LockFileContents.js';
5
+ import yarnpkg from '@yarnpkg/lockfile';
6
+ export const readFile = async (config, languageFiles, nameOfFile) => {
8
7
  const index = languageFiles.findIndex(v => v.includes(nameOfFile));
9
8
  if (config.file) {
10
- return fs.readFileSync(config.file.concat(languageFiles[index]), 'utf8');
9
+ return readFileSync(config.file.concat(languageFiles[index]), 'utf8');
11
10
  }
12
11
  else {
13
12
  throw new Error('could not find file');
14
13
  }
15
14
  };
16
- const readYarn = async (config, languageFiles, nameOfFile) => {
15
+ export const readYarn = async (config, languageFiles, nameOfFile) => {
17
16
  let yarn = {
18
17
  yarnVersion: 1,
19
18
  rawYarnLockFileContents: ''
@@ -23,7 +22,7 @@ const readYarn = async (config, languageFiles, nameOfFile) => {
23
22
  yarn.rawYarnLockFileContents = rawYarnLockFileContents;
24
23
  if (!yarn.rawYarnLockFileContents.includes('lockfile v1') ||
25
24
  yarn.rawYarnLockFileContents.includes('__metadata')) {
26
- yarn.rawYarnLockFileContents = yaml.load(rawYarnLockFileContents);
25
+ yarn.rawYarnLockFileContents = load(rawYarnLockFileContents);
27
26
  yarn.yarnVersion = 2;
28
27
  }
29
28
  return yarn;
@@ -32,17 +31,20 @@ const readYarn = async (config, languageFiles, nameOfFile) => {
32
31
  throw new Error(i18n.__('nodeReadYarnLockFileError') + `${err.message}`);
33
32
  }
34
33
  };
35
- const parseNpmLockFile = async (npmLockFile) => {
34
+ export const parseNpmLockFile = async (npmLockFile) => {
36
35
  try {
37
36
  if (!npmLockFile.parsedPackages) {
38
37
  npmLockFile.parsedPackages = {};
39
38
  }
40
39
  Object.entries(npmLockFile.packages).forEach(([packageKey, packageValue]) => {
41
40
  if (packageKey.includes('node_modules/')) {
41
+ //remove object keys node modules prefixing
42
+ //e.g: node_modules/@aws-amplify/datastore/node_modules/uuid --> @aws-amplify/datastore/uuid
42
43
  packageKey = packageKey.replace(/(node_modules\/)+/g, '');
43
44
  }
44
45
  npmLockFile.parsedPackages[packageKey] = packageValue;
45
46
  });
47
+ //remove base project package - unneeded
46
48
  delete npmLockFile.parsedPackages[''];
47
49
  return npmLockFile;
48
50
  }
@@ -50,11 +52,11 @@ const parseNpmLockFile = async (npmLockFile) => {
50
52
  throw new Error(i18n.__('NodeParseNPM') + `${err.message}`);
51
53
  }
52
54
  };
53
- const parseYarnLockFile = async (js) => {
55
+ export const parseYarnLockFile = async (js) => {
54
56
  try {
55
57
  js.yarn.yarnLockFile = {};
56
58
  if (js.yarn.yarnVersion === 1) {
57
- js.yarn.yarnLockFile = yarnParser.parse(js.yarn.rawYarnLockFileContents);
59
+ js.yarn.yarnLockFile = yarnpkg.parse(js.yarn.rawYarnLockFileContents);
58
60
  delete js.yarn.rawYarnLockFileContents;
59
61
  return js;
60
62
  }
@@ -76,10 +78,4 @@ const parseYarnLockFile = async (js) => {
76
78
  throw new Error(i18n.__('NodeParseYarn', js.yarn.yarnVersion) + `${err.message}`);
77
79
  }
78
80
  };
79
- module.exports = {
80
- readYarn,
81
- parseYarnLockFile,
82
- parseNpmLockFile,
83
- readFile,
84
- formatKey
85
- };
81
+ //# sourceMappingURL=analysis.js.map