@contrast/contrast 2.0.2-beta.1 → 2.0.2-beta.11

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 (397) hide show
  1. package/README.md +2 -1
  2. package/dist/assess/assessConfig.js +9 -0
  3. package/dist/assess/assessConfig.js.map +1 -0
  4. package/dist/assess/help.js +36 -0
  5. package/dist/assess/help.js.map +1 -0
  6. package/dist/assess/http/index.js +39 -0
  7. package/dist/assess/http/index.js.map +1 -0
  8. package/dist/assess/index.js +69 -0
  9. package/dist/assess/index.js.map +1 -0
  10. package/dist/assess/metadata/findYamlFile.js +59 -0
  11. package/dist/assess/metadata/findYamlFile.js.map +1 -0
  12. package/dist/assess/metadata/index.js +37 -0
  13. package/dist/assess/metadata/index.js.map +1 -0
  14. package/dist/assess/metadata/utils.js +159 -0
  15. package/dist/assess/metadata/utils.js.map +1 -0
  16. package/dist/assess/printing/index.js +11 -0
  17. package/dist/assess/printing/index.js.map +1 -0
  18. package/dist/assess/printing/utils.js +119 -0
  19. package/dist/assess/printing/utils.js.map +1 -0
  20. package/dist/audit/auditConfig.js +9 -0
  21. package/dist/audit/auditConfig.js.map +1 -0
  22. package/dist/{commands/audit → audit}/auditController.js +12 -15
  23. package/dist/audit/auditController.js.map +1 -0
  24. package/dist/audit/auditRequests.js +178 -0
  25. package/dist/audit/auditRequests.js.map +1 -0
  26. package/dist/audit/auditRequestsLegacy.js +63 -0
  27. package/dist/audit/auditRequestsLegacy.js.map +1 -0
  28. package/dist/audit/catalogueApplication/catalogueApplication.js +16 -29
  29. package/dist/audit/catalogueApplication/catalogueApplication.js.map +1 -0
  30. package/dist/audit/help.js +67 -0
  31. package/dist/audit/help.js.map +1 -0
  32. package/dist/audit/languageAnalysisEngine/commonApi.js +12 -14
  33. package/dist/audit/languageAnalysisEngine/commonApi.js.map +1 -0
  34. package/dist/audit/languageAnalysisEngine/filterProjectPath.js +2 -1
  35. package/dist/audit/languageAnalysisEngine/filterProjectPath.js.map +1 -0
  36. package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js +9 -12
  37. package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js.map +1 -0
  38. package/dist/audit/languageAnalysisEngine/sendSnapshot.js +21 -32
  39. package/dist/audit/languageAnalysisEngine/sendSnapshot.js.map +1 -0
  40. package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +9 -9
  41. package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js.map +1 -0
  42. package/dist/audit/processAudit.js +22 -0
  43. package/dist/audit/processAudit.js.map +1 -0
  44. package/dist/audit/report/commonReportingFunctions.js +51 -77
  45. package/dist/audit/report/commonReportingFunctions.js.map +1 -0
  46. package/dist/audit/report/models/reportGuidanceModel.js +2 -5
  47. package/dist/audit/report/models/reportGuidanceModel.js.map +1 -0
  48. package/dist/audit/report/models/reportLibraryModel.js +3 -7
  49. package/dist/audit/report/models/reportLibraryModel.js.map +1 -0
  50. package/dist/audit/report/models/reportListModel.js +4 -9
  51. package/dist/audit/report/models/reportListModel.js.map +1 -0
  52. package/dist/audit/report/models/reportOutputModel.js +4 -9
  53. package/dist/audit/report/models/reportOutputModel.js.map +1 -0
  54. package/dist/audit/report/models/reportSeverityModel.js +2 -5
  55. package/dist/audit/report/models/reportSeverityModel.js.map +1 -0
  56. package/dist/audit/report/models/severityCountModel.js +3 -5
  57. package/dist/audit/report/models/severityCountModel.js.map +1 -0
  58. package/dist/audit/report/reportingFeature.js +30 -57
  59. package/dist/audit/report/reportingFeature.js.map +1 -0
  60. package/dist/audit/report/utils/reportUtils.js +28 -59
  61. package/dist/audit/report/utils/reportUtils.js.map +1 -0
  62. package/dist/audit/save.js +18 -19
  63. package/dist/audit/save.js.map +1 -0
  64. package/dist/{commands/audit → audit}/saveFile.js +3 -6
  65. package/dist/audit/saveFile.js.map +1 -0
  66. package/dist/auth/auth.js +103 -0
  67. package/dist/auth/auth.js.map +1 -0
  68. package/dist/auth/authRequests.js +18 -0
  69. package/dist/auth/authRequests.js.map +1 -0
  70. package/dist/cliConstants.js +57 -37
  71. package/dist/cliConstants.js.map +1 -0
  72. package/dist/commands/config/config.js +12 -13
  73. package/dist/commands/config/config.js.map +1 -0
  74. package/dist/commands/learn/learn.js +3 -6
  75. package/dist/commands/learn/learn.js.map +1 -0
  76. package/dist/commands/learn/processLearn.js +3 -6
  77. package/dist/commands/learn/processLearn.js.map +1 -0
  78. package/dist/common/HTTPClient.js +200 -101
  79. package/dist/common/HTTPClient.js.map +1 -0
  80. package/dist/{scan → common}/autoDetection.js +53 -36
  81. package/dist/common/autoDetection.js.map +1 -0
  82. package/dist/common/baseRequest.js +59 -23
  83. package/dist/common/baseRequest.js.map +1 -0
  84. package/dist/common/commonHelp.js +13 -13
  85. package/dist/common/commonHelp.js.map +1 -0
  86. package/dist/common/errorHandling.js +49 -63
  87. package/dist/common/errorHandling.js.map +1 -0
  88. package/dist/common/fail.js +6 -12
  89. package/dist/common/fail.js.map +1 -0
  90. package/dist/common/logging.js +26 -0
  91. package/dist/common/logging.js.map +1 -0
  92. package/dist/common/stringManipulations.js +8 -0
  93. package/dist/common/stringManipulations.js.map +1 -0
  94. package/dist/common/versionChecker.js +16 -19
  95. package/dist/common/versionChecker.js.map +1 -0
  96. package/dist/constants/constants.js +46 -65
  97. package/dist/constants/constants.js.map +1 -0
  98. package/dist/constants/lambda.js +8 -5
  99. package/dist/constants/lambda.js.map +1 -0
  100. package/dist/constants/locales.js +15 -10
  101. package/dist/constants/locales.js.map +1 -0
  102. package/dist/github/fingerprintConfig.js +10 -0
  103. package/dist/github/fingerprintConfig.js.map +1 -0
  104. package/dist/github/processFingerprint.js +26 -0
  105. package/dist/github/processFingerprint.js.map +1 -0
  106. package/dist/github/projectGroup.js +202 -0
  107. package/dist/github/projectGroup.js.map +1 -0
  108. package/dist/github/repoServices.js +73 -0
  109. package/dist/github/repoServices.js.map +1 -0
  110. package/dist/index.js +42 -39
  111. package/dist/index.js.map +1 -0
  112. package/dist/lambda/analytics.js +6 -9
  113. package/dist/lambda/analytics.js.map +1 -0
  114. package/dist/lambda/arn.js +6 -9
  115. package/dist/lambda/arn.js.map +1 -0
  116. package/dist/lambda/aws.js +29 -34
  117. package/dist/lambda/aws.js.map +1 -0
  118. package/dist/lambda/cliError.js +13 -41
  119. package/dist/lambda/cliError.js.map +1 -0
  120. package/dist/lambda/constants.js +3 -4
  121. package/dist/lambda/constants.js.map +1 -0
  122. package/dist/lambda/help.js +39 -44
  123. package/dist/lambda/help.js.map +1 -0
  124. package/dist/lambda/lambda.js +61 -65
  125. package/dist/lambda/lambda.js.map +1 -0
  126. package/dist/lambda/lambdaUtils.js +38 -32
  127. package/dist/lambda/lambdaUtils.js.map +1 -0
  128. package/dist/lambda/logUtils.js +21 -17
  129. package/dist/lambda/logUtils.js.map +1 -0
  130. package/dist/lambda/scanDetailCompletion.js +19 -25
  131. package/dist/lambda/scanDetailCompletion.js.map +1 -0
  132. package/dist/lambda/scanRequest.js +34 -41
  133. package/dist/lambda/scanRequest.js.map +1 -0
  134. package/dist/lambda/scanResults.js +8 -10
  135. package/dist/lambda/scanResults.js.map +1 -0
  136. package/dist/lambda/types.js +5 -7
  137. package/dist/lambda/types.js.map +1 -0
  138. package/dist/lambda/utils.js +33 -35
  139. package/dist/lambda/utils.js.map +1 -0
  140. package/dist/sbom/generateSbom.js +6 -10
  141. package/dist/sbom/generateSbom.js.map +1 -0
  142. package/dist/scaAnalysis/common/auditReport.js +10 -13
  143. package/dist/scaAnalysis/common/auditReport.js.map +1 -0
  144. package/dist/scaAnalysis/common/commonReportingFunctionsSca.js +35 -40
  145. package/dist/scaAnalysis/common/commonReportingFunctionsSca.js.map +1 -0
  146. package/dist/scaAnalysis/common/formatMessage.js +8 -17
  147. package/dist/scaAnalysis/common/formatMessage.js.map +1 -0
  148. package/dist/scaAnalysis/common/models/ScaReportModel.js +4 -9
  149. package/dist/scaAnalysis/common/models/ScaReportModel.js.map +1 -0
  150. package/dist/scaAnalysis/common/scaParserForGoAndJava.js +10 -9
  151. package/dist/scaAnalysis/common/scaParserForGoAndJava.js.map +1 -0
  152. package/dist/scaAnalysis/common/scaServicesUpload.js +53 -96
  153. package/dist/scaAnalysis/common/scaServicesUpload.js.map +1 -0
  154. package/dist/scaAnalysis/common/treeUpload.js +15 -25
  155. package/dist/scaAnalysis/common/treeUpload.js.map +1 -0
  156. package/dist/scaAnalysis/common/utils/reportUtilsSca.js +21 -29
  157. package/dist/scaAnalysis/common/utils/reportUtilsSca.js.map +1 -0
  158. package/dist/scaAnalysis/dotnet/analysis.js +15 -20
  159. package/dist/scaAnalysis/dotnet/analysis.js.map +1 -0
  160. package/dist/scaAnalysis/dotnet/index.js +4 -7
  161. package/dist/scaAnalysis/dotnet/index.js.map +1 -0
  162. package/dist/scaAnalysis/go/goAnalysis.js +10 -12
  163. package/dist/scaAnalysis/go/goAnalysis.js.map +1 -0
  164. package/dist/scaAnalysis/go/goParseDeps.js +9 -7
  165. package/dist/scaAnalysis/go/goParseDeps.js.map +1 -0
  166. package/dist/scaAnalysis/go/goReadDepFile.js +12 -9
  167. package/dist/scaAnalysis/go/goReadDepFile.js.map +1 -0
  168. package/dist/scaAnalysis/java/analysis.js +26 -22
  169. package/dist/scaAnalysis/java/analysis.js.map +1 -0
  170. package/dist/scaAnalysis/java/index.js +7 -10
  171. package/dist/scaAnalysis/java/index.js.map +1 -0
  172. package/dist/scaAnalysis/java/javaBuildDepsParser.js +41 -43
  173. package/dist/scaAnalysis/java/javaBuildDepsParser.js.map +1 -0
  174. package/dist/scaAnalysis/javascript/analysis.js +16 -20
  175. package/dist/scaAnalysis/javascript/analysis.js.map +1 -0
  176. package/dist/scaAnalysis/javascript/index.js +17 -19
  177. package/dist/scaAnalysis/javascript/index.js.map +1 -0
  178. package/dist/scaAnalysis/javascript/scaServiceParser.js +8 -15
  179. package/dist/scaAnalysis/javascript/scaServiceParser.js.map +1 -0
  180. package/dist/scaAnalysis/legacy/legacyFlow.js +15 -16
  181. package/dist/scaAnalysis/legacy/legacyFlow.js.map +1 -0
  182. package/dist/scaAnalysis/php/analysis.js +18 -18
  183. package/dist/scaAnalysis/php/analysis.js.map +1 -0
  184. package/dist/scaAnalysis/php/index.js +5 -8
  185. package/dist/scaAnalysis/php/index.js.map +1 -0
  186. package/dist/scaAnalysis/php/phpNewServicesMapper.js +9 -12
  187. package/dist/scaAnalysis/php/phpNewServicesMapper.js.map +1 -0
  188. package/dist/scaAnalysis/processServicesFlow.js +92 -37
  189. package/dist/scaAnalysis/processServicesFlow.js.map +1 -0
  190. package/dist/scaAnalysis/python/analysis.js +18 -24
  191. package/dist/scaAnalysis/python/analysis.js.map +1 -0
  192. package/dist/scaAnalysis/python/index.js +4 -7
  193. package/dist/scaAnalysis/python/index.js.map +1 -0
  194. package/dist/scaAnalysis/repoMode/gradleParser.js +9 -14
  195. package/dist/scaAnalysis/repoMode/gradleParser.js.map +1 -0
  196. package/dist/scaAnalysis/repoMode/index.js +11 -13
  197. package/dist/scaAnalysis/repoMode/index.js.map +1 -0
  198. package/dist/scaAnalysis/repoMode/mavenParser.js +26 -14
  199. package/dist/scaAnalysis/repoMode/mavenParser.js.map +1 -0
  200. package/dist/scaAnalysis/ruby/analysis.js +32 -46
  201. package/dist/scaAnalysis/ruby/analysis.js.map +1 -0
  202. package/dist/scaAnalysis/ruby/index.js +5 -8
  203. package/dist/scaAnalysis/ruby/index.js.map +1 -0
  204. package/dist/scaAnalysis/scaAnalysis.js +54 -55
  205. package/dist/scaAnalysis/scaAnalysis.js.map +1 -0
  206. package/dist/scan/fileUtils.js +36 -40
  207. package/dist/scan/fileUtils.js.map +1 -0
  208. package/dist/scan/formatScanOutput.js +47 -61
  209. package/dist/scan/formatScanOutput.js.map +1 -0
  210. package/dist/scan/help.js +8 -11
  211. package/dist/scan/help.js.map +1 -0
  212. package/dist/scan/models/groupedResultsModel.js +2 -5
  213. package/dist/scan/models/groupedResultsModel.js.map +1 -0
  214. package/dist/scan/models/resultContentModel.js +2 -2
  215. package/dist/scan/models/resultContentModel.js.map +1 -0
  216. package/dist/scan/models/scanResultsModel.js +2 -5
  217. package/dist/scan/models/scanResultsModel.js.map +1 -0
  218. package/dist/scan/populateProjectIdAndProjectName.js +24 -62
  219. package/dist/scan/populateProjectIdAndProjectName.js.map +1 -0
  220. package/dist/scan/processScan.js +28 -0
  221. package/dist/scan/processScan.js.map +1 -0
  222. package/dist/scan/saveResults.js +3 -6
  223. package/dist/scan/saveResults.js.map +1 -0
  224. package/dist/scan/scan.js +33 -53
  225. package/dist/scan/scan.js.map +1 -0
  226. package/dist/scan/scanConfig.js +14 -12
  227. package/dist/scan/scanConfig.js.map +1 -0
  228. package/dist/scan/scanController.js +20 -22
  229. package/dist/scan/scanController.js.map +1 -0
  230. package/dist/scan/scanRequests.js +86 -0
  231. package/dist/scan/scanRequests.js.map +1 -0
  232. package/dist/scan/scanResults.js +26 -72
  233. package/dist/scan/scanResults.js.map +1 -0
  234. package/dist/telemetry/telemetry.js +29 -59
  235. package/dist/telemetry/telemetry.js.map +1 -0
  236. package/dist/utils/capabilities.js +2 -1
  237. package/dist/utils/capabilities.js.map +1 -0
  238. package/dist/utils/commonApi.js +61 -52
  239. package/dist/utils/commonApi.js.map +1 -0
  240. package/dist/utils/filterProjectPath.js +2 -1
  241. package/dist/utils/filterProjectPath.js.map +1 -0
  242. package/dist/utils/generalAPI.js +11 -33
  243. package/dist/utils/generalAPI.js.map +1 -0
  244. package/dist/utils/getConfig.js +8 -13
  245. package/dist/utils/getConfig.js.map +1 -0
  246. package/dist/utils/oraWrapper.js +7 -14
  247. package/dist/utils/oraWrapper.js.map +1 -0
  248. package/dist/utils/paramsUtil/commandlineParams.js +2 -5
  249. package/dist/utils/paramsUtil/commandlineParams.js.map +1 -0
  250. package/dist/utils/paramsUtil/configStoreParams.js +9 -10
  251. package/dist/utils/paramsUtil/configStoreParams.js.map +1 -0
  252. package/dist/utils/paramsUtil/envVariableParams.js +2 -3
  253. package/dist/utils/paramsUtil/envVariableParams.js.map +1 -0
  254. package/dist/utils/paramsUtil/paramHandler.js +12 -13
  255. package/dist/utils/paramsUtil/paramHandler.js.map +1 -0
  256. package/dist/utils/parsedCLIOptions.js +4 -7
  257. package/dist/utils/parsedCLIOptions.js.map +1 -0
  258. package/dist/utils/requestUtils.js +7 -13
  259. package/dist/utils/requestUtils.js.map +1 -0
  260. package/dist/utils/saveFile.js +8 -11
  261. package/dist/utils/saveFile.js.map +1 -0
  262. package/dist/utils/validationCheck.js +5 -11
  263. package/dist/utils/validationCheck.js.map +1 -0
  264. package/package.json +39 -48
  265. package/.prettierignore +0 -1
  266. package/bin/contrast.js +0 -2
  267. package/dist/audit/languageAnalysisEngine/util/requestUtils.js +0 -14
  268. package/dist/commands/audit/auditConfig.js +0 -12
  269. package/dist/commands/audit/help.js +0 -70
  270. package/dist/commands/audit/processAudit.js +0 -24
  271. package/dist/commands/auth/auth.js +0 -120
  272. package/dist/commands/github/fingerprintConfig.js +0 -13
  273. package/dist/commands/github/processFingerprint.js +0 -28
  274. package/dist/commands/github/projectGroup.js +0 -254
  275. package/dist/commands/github/repoServices.js +0 -108
  276. package/dist/commands/scan/processScan.js +0 -31
  277. package/dist/lambda/__mocks__/aws.js +0 -21
  278. package/dist/lambda/__mocks__/lambdaConfig.json +0 -42
  279. package/src/audit/catalogueApplication/catalogueApplication.js +0 -51
  280. package/src/audit/languageAnalysisEngine/commonApi.js +0 -20
  281. package/src/audit/languageAnalysisEngine/filterProjectPath.js +0 -21
  282. package/src/audit/languageAnalysisEngine/getProjectRootFilenames.js +0 -36
  283. package/src/audit/languageAnalysisEngine/sendSnapshot.js +0 -57
  284. package/src/audit/languageAnalysisEngine/util/requestUtils.js +0 -17
  285. package/src/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +0 -63
  286. package/src/audit/report/commonReportingFunctions.js +0 -412
  287. package/src/audit/report/models/reportGuidanceModel.ts +0 -5
  288. package/src/audit/report/models/reportLibraryModel.ts +0 -30
  289. package/src/audit/report/models/reportListModel.ts +0 -49
  290. package/src/audit/report/models/reportOutputModel.ts +0 -29
  291. package/src/audit/report/models/reportSeverityModel.ts +0 -18
  292. package/src/audit/report/models/severityCountModel.ts +0 -22
  293. package/src/audit/report/reportingFeature.ts +0 -110
  294. package/src/audit/report/utils/reportUtils.ts +0 -165
  295. package/src/audit/save.js +0 -67
  296. package/src/cliConstants.js +0 -522
  297. package/src/commands/audit/auditConfig.js +0 -18
  298. package/src/commands/audit/auditController.js +0 -50
  299. package/src/commands/audit/help.js +0 -72
  300. package/src/commands/audit/processAudit.js +0 -34
  301. package/src/commands/audit/saveFile.js +0 -15
  302. package/src/commands/auth/auth.js +0 -146
  303. package/src/commands/config/config.js +0 -41
  304. package/src/commands/github/fingerprintConfig.js +0 -19
  305. package/src/commands/github/processFingerprint.js +0 -37
  306. package/src/commands/github/projectGroup.js +0 -294
  307. package/src/commands/github/repoServices.js +0 -122
  308. package/src/commands/learn/learn.js +0 -10
  309. package/src/commands/learn/processLearn.js +0 -13
  310. package/src/commands/scan/processScan.js +0 -42
  311. package/src/common/HTTPClient.js +0 -775
  312. package/src/common/baseRequest.ts +0 -83
  313. package/src/common/commonHelp.js +0 -53
  314. package/src/common/errorHandling.js +0 -157
  315. package/src/common/fail.js +0 -79
  316. package/src/common/versionChecker.js +0 -75
  317. package/src/constants/constants.js +0 -71
  318. package/src/constants/lambda.js +0 -85
  319. package/src/constants/locales.js +0 -365
  320. package/src/index.ts +0 -142
  321. package/src/lambda/__mocks__/aws.ts +0 -32
  322. package/src/lambda/__mocks__/lambdaConfig.json +0 -42
  323. package/src/lambda/analytics.ts +0 -9
  324. package/src/lambda/arn.ts +0 -33
  325. package/src/lambda/aws.ts +0 -248
  326. package/src/lambda/cliError.ts +0 -72
  327. package/src/lambda/constants.ts +0 -11
  328. package/src/lambda/help.ts +0 -92
  329. package/src/lambda/lambda.ts +0 -230
  330. package/src/lambda/lambdaUtils.ts +0 -111
  331. package/src/lambda/logUtils.ts +0 -64
  332. package/src/lambda/scanDetailCompletion.ts +0 -78
  333. package/src/lambda/scanRequest.ts +0 -169
  334. package/src/lambda/scanResults.ts +0 -29
  335. package/src/lambda/types.ts +0 -36
  336. package/src/lambda/utils.ts +0 -188
  337. package/src/sbom/generateSbom.ts +0 -45
  338. package/src/scaAnalysis/common/auditReport.js +0 -59
  339. package/src/scaAnalysis/common/commonReportingFunctionsSca.js +0 -276
  340. package/src/scaAnalysis/common/formatMessage.js +0 -67
  341. package/src/scaAnalysis/common/models/ScaReportModel.ts +0 -81
  342. package/src/scaAnalysis/common/scaParserForGoAndJava.js +0 -41
  343. package/src/scaAnalysis/common/scaServicesUpload.js +0 -155
  344. package/src/scaAnalysis/common/treeUpload.js +0 -51
  345. package/src/scaAnalysis/common/utils/reportUtilsSca.ts +0 -123
  346. package/src/scaAnalysis/dotnet/analysis.js +0 -72
  347. package/src/scaAnalysis/dotnet/index.js +0 -11
  348. package/src/scaAnalysis/go/goAnalysis.js +0 -26
  349. package/src/scaAnalysis/go/goParseDeps.js +0 -203
  350. package/src/scaAnalysis/go/goReadDepFile.js +0 -34
  351. package/src/scaAnalysis/java/analysis.js +0 -148
  352. package/src/scaAnalysis/java/index.js +0 -29
  353. package/src/scaAnalysis/java/javaBuildDepsParser.js +0 -439
  354. package/src/scaAnalysis/javascript/analysis.js +0 -111
  355. package/src/scaAnalysis/javascript/index.js +0 -104
  356. package/src/scaAnalysis/javascript/scaServiceParser.js +0 -151
  357. package/src/scaAnalysis/legacy/legacyFlow.js +0 -43
  358. package/src/scaAnalysis/php/analysis.js +0 -78
  359. package/src/scaAnalysis/php/index.js +0 -28
  360. package/src/scaAnalysis/php/phpNewServicesMapper.js +0 -77
  361. package/src/scaAnalysis/processServicesFlow.js +0 -119
  362. package/src/scaAnalysis/python/analysis.js +0 -93
  363. package/src/scaAnalysis/python/index.js +0 -16
  364. package/src/scaAnalysis/repoMode/gradleParser.js +0 -88
  365. package/src/scaAnalysis/repoMode/index.js +0 -21
  366. package/src/scaAnalysis/repoMode/mavenParser.js +0 -139
  367. package/src/scaAnalysis/ruby/analysis.js +0 -413
  368. package/src/scaAnalysis/ruby/index.js +0 -16
  369. package/src/scaAnalysis/scaAnalysis.js +0 -171
  370. package/src/scan/autoDetection.js +0 -175
  371. package/src/scan/fileUtils.js +0 -206
  372. package/src/scan/formatScanOutput.ts +0 -225
  373. package/src/scan/help.js +0 -56
  374. package/src/scan/models/groupedResultsModel.ts +0 -20
  375. package/src/scan/models/resultContentModel.ts +0 -86
  376. package/src/scan/models/scanResultsModel.ts +0 -55
  377. package/src/scan/populateProjectIdAndProjectName.js +0 -73
  378. package/src/scan/saveResults.js +0 -14
  379. package/src/scan/scan.ts +0 -68
  380. package/src/scan/scanConfig.js +0 -58
  381. package/src/scan/scanController.js +0 -98
  382. package/src/scan/scanResults.js +0 -171
  383. package/src/telemetry/telemetry.ts +0 -154
  384. package/src/utils/capabilities.js +0 -12
  385. package/src/utils/commonApi.js +0 -103
  386. package/src/utils/filterProjectPath.js +0 -25
  387. package/src/utils/generalAPI.js +0 -52
  388. package/src/utils/getConfig.ts +0 -34
  389. package/src/utils/oraWrapper.js +0 -29
  390. package/src/utils/paramsUtil/commandlineParams.js +0 -12
  391. package/src/utils/paramsUtil/configStoreParams.js +0 -19
  392. package/src/utils/paramsUtil/envVariableParams.js +0 -10
  393. package/src/utils/paramsUtil/paramHandler.js +0 -38
  394. package/src/utils/parsedCLIOptions.js +0 -32
  395. package/src/utils/requestUtils.js +0 -29
  396. package/src/utils/saveFile.js +0 -20
  397. package/src/utils/validationCheck.js +0 -39
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/scan/help.js"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,gBAAgB,MAAM,oBAAoB,CAAA;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAAC;IAC7C;QACE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC;KACnC;IACD;QACE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC;KAC9B;IACD;QACE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,8BAA8B,CAAC;QAC/C,OAAO,EAAE;YACP,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,4CAA4C,CAAC,GAAG,GAAG;YACtE,IAAI,CAAC,EAAE,CAAC,+BAA+B,CAAC;YACxC,EAAE;YACF,IAAI,CAAC,EAAE,CAAC,2BAA2B,CAAC;YACpC,IAAI,CAAC,EAAE,CAAC,kCAAkC,CAAC;SAC5C;KACF;IACD;QACE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC;QACvC,UAAU,EAAE,sBAAsB,CAAC,qBAAqB;QACxD,IAAI,EAAE;YACJ,YAAY;YACZ,iBAAiB;YACjB,SAAS;YACT,eAAe;YACf,MAAM;YACN,OAAO;YACP,MAAM;YACN,IAAI;YACJ,kBAAkB;YAClB,KAAK;YACL,QAAQ;YACR,MAAM;YACN,SAAS;YACT,OAAO;YACP,cAAc;SACf;KACF;IACD;QACE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC;QAC3C,UAAU,EAAE,sBAAsB,CAAC,oCAAoC;KACxE;IACD,eAAe,EAAE,CAAC,CAAC,CAAC;IACpB,eAAe,EAAE,CAAC,CAAC,CAAC;IACpB,eAAe,EAAE,CAAC,CAAC,CAAC;CACrB,CAAC,CAAA"}
@@ -1,11 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GroupedResultsModel = void 0;
4
- class GroupedResultsModel {
1
+ export class GroupedResultsModel {
5
2
  constructor(ruleId) {
6
3
  this.ruleId = ruleId;
7
4
  this.colour = '#999999';
8
5
  this.codePathSet = new Set();
9
6
  }
10
7
  }
11
- exports.GroupedResultsModel = GroupedResultsModel;
8
+ //# sourceMappingURL=groupedResultsModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groupedResultsModel.js","sourceRoot":"","sources":["../../../src/scan/models/groupedResultsModel.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,mBAAmB;IAc9B,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;QACvB,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,EAAU,CAAA;IACtC,CAAC;CACF"}
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
2
+ //# sourceMappingURL=resultContentModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resultContentModel.js","sourceRoot":"","sources":["../../../src/scan/models/resultContentModel.ts"],"names":[],"mappings":""}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ScanResultsModel = void 0;
4
- class ScanResultsModel {
1
+ export class ScanResultsModel {
5
2
  constructor(scan) {
6
3
  this.projectOverview = scan.projectOverview;
7
4
  this.scanDetail = scan.scanDetail;
@@ -10,4 +7,4 @@ class ScanResultsModel {
10
7
  this.newProject = scan.newProject;
11
8
  }
12
9
  }
13
- exports.ScanResultsModel = ScanResultsModel;
10
+ //# sourceMappingURL=scanResultsModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanResultsModel.js","sourceRoot":"","sources":["../../../src/scan/models/scanResultsModel.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,gBAAgB;IAM3B,YAAY,IAAS;QACnB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAkC,CAAA;QAC9D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAwB,CAAA;QAC/C,IAAI,CAAC,oBAAoB;YACvB,IAAI,CAAC,oBAA4C,CAAA;QACnD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IACnC,CAAC;CACF"}
@@ -1,66 +1,28 @@
1
- "use strict";
2
- const commonApi = require('../utils/commonApi.js');
3
- const i18n = require('i18n');
4
- const populateProjectId = async (config) => {
5
- const client = commonApi.getHttpClient(config);
6
- let proj = await createProjectId(config, client);
7
- if (proj === undefined) {
8
- proj = await getExistingProjectIdByName(config, client).then(res => {
9
- return res;
10
- });
11
- return { projectId: proj, isNewProject: false };
12
- }
13
- return { projectId: proj, isNewProject: true };
14
- };
15
- const createProjectId = async (config, client) => {
16
- return client
17
- .createProjectId(config)
18
- .then(res => {
19
- if (res.statusCode === 409) {
20
- console.log(i18n.__('foundExistingProjectScan'));
21
- return;
22
- }
23
- if (res.statusCode === 403) {
24
- console.log(i18n.__('permissionsError'));
25
- process.exit(1);
26
- return;
27
- }
28
- if (res.statusCode === 429) {
29
- console.log(i18n.__('exceededFreeTier'));
30
- process.exit(1);
31
- return;
32
- }
33
- if (res.statusCode === 201) {
34
- console.log(i18n.__('projectCreatedScan'));
35
- if (config.verbose) {
36
- console.log(i18n.__('populateProjectIdMessage', res.body.id));
37
- }
38
- return res.body.id;
1
+ import i18n from 'i18n';
2
+ import { createProjectId, getProjectIdByName } from './scanRequests.js';
3
+ export const populateProjectId = async (config) => {
4
+ try {
5
+ const projRes = (await createProjectId(config));
6
+ console.log(i18n.__('projectCreatedScan'));
7
+ if (config.debug) {
8
+ // @ts-ignore
9
+ console.log(i18n.__('populateProjectIdMessage', projRes.body.id));
39
10
  }
40
- })
41
- .catch(err => {
42
- if (config.verbose) {
43
- console.log(err);
44
- }
45
- console.log(i18n.__('connectionError'));
46
- process.exit(0);
47
- });
48
- };
49
- const getExistingProjectIdByName = async (config, client) => {
50
- return client
51
- .getProjectIdByName(config)
52
- .then(res => {
53
- if (res.statusCode === 200) {
54
- if (config.verbose) {
55
- console.log(i18n.__('populateProjectIdMessage', res.body.content[0].id));
11
+ // @ts-ignore
12
+ const projResId = projRes.body.id;
13
+ return { projectId: projResId, isNewProject: true };
14
+ }
15
+ catch (err) {
16
+ if (err.response.statusCode === 409) {
17
+ const proj = (await getProjectIdByName(config));
18
+ // @ts-ignore
19
+ const existingProjectId = proj.body.content[0].id;
20
+ if (config.debug) {
21
+ console.log(i18n.__('populateProjectIdMessage', existingProjectId));
56
22
  }
57
- return res.body.content[0].id;
23
+ console.log(i18n.__('foundExistingProjectScan'));
24
+ return { projectId: existingProjectId, isNewProject: false };
58
25
  }
59
- })
60
- .catch(err => {
61
- console.log(err);
62
- });
63
- };
64
- module.exports = {
65
- populateProjectId: populateProjectId
26
+ }
66
27
  };
28
+ //# sourceMappingURL=populateProjectIdAndProjectName.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"populateProjectIdAndProjectName.js","sourceRoot":"","sources":["../../src/scan/populateProjectIdAndProjectName.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAGvE,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,MAAW,EAAE,EAAE;IACrD,IAAI;QACF,MAAM,OAAO,GAAG,CAAC,MAAM,eAAe,CAAC,MAAM,CAAC,CAAkB,CAAA;QAEhE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAA;QAC1C,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,aAAa;YACb,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,0BAA0B,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;SAClE;QAED,aAAa;QACb,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;QACjC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,CAAA;KACpD;IAAC,OAAO,GAAQ,EAAE;QACjB,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE;YACnC,MAAM,IAAI,GAAG,CAAC,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAkB,CAAA;YAEhE,aAAa;YACb,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YAEjD,IAAI,MAAM,CAAC,KAAK,EAAE;gBAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,CAAC,CAAA;aACpE;YAED,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAA;YAEhD,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;SAC7D;KACF;AACH,CAAC,CAAA"}
@@ -0,0 +1,28 @@
1
+ import scanConfig from './scanConfig.js';
2
+ import { startScan } from './scanController.js';
3
+ import { saveScanFile } from '../utils/saveFile.js';
4
+ import { ScanResultsModel } from './models/scanResultsModel.js';
5
+ import { formatScanOutput } from './formatScanOutput.js';
6
+ import { sendTelemetryConfigAsObject } from '../telemetry/telemetry.js';
7
+ import { processFail } from '../common/fail.js';
8
+ import { postRunMessage } from '../common/commonHelp.js';
9
+ export const processScan = async (contrastConf, argv) => {
10
+ let config = await scanConfig.getScanConfig(contrastConf, 'scan', argv);
11
+ let output = undefined;
12
+ const scanResults = new ScanResultsModel(await startScan(config));
13
+ await sendTelemetryConfigAsObject(config, 'scan', argv, 'SUCCESS', scanResults.scanDetail.language);
14
+ if (scanResults.scanResultsInstances !== undefined) {
15
+ output = formatScanOutput(scanResults);
16
+ }
17
+ if (config.save !== undefined) {
18
+ await saveScanFile(config, scanResults);
19
+ }
20
+ else {
21
+ console.log('\nUse contrast scan --save to save results as a SARIF');
22
+ }
23
+ if (config.fail) {
24
+ processFail(config, output);
25
+ }
26
+ postRunMessage('scan');
27
+ };
28
+ //# sourceMappingURL=processScan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processScan.js","sourceRoot":"","sources":["../../src/scan/processScan.js"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE;IACtD,IAAI,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACvE,IAAI,MAAM,GAAG,SAAS,CAAA;IAEtB,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAC,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IACjE,MAAM,2BAA2B,CAC/B,MAAM,EACN,MAAM,EACN,IAAI,EACJ,SAAS,EACT,WAAW,CAAC,UAAU,CAAC,QAAQ,CAChC,CAAA;IAED,IAAI,WAAW,CAAC,oBAAoB,KAAK,SAAS,EAAE;QAClD,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;KACvC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;QAC7B,MAAM,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;KACxC;SAAM;QACL,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAA;KACrE;IAED,IAAI,MAAM,CAAC,IAAI,EAAE;QACf,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAC5B;IAED,cAAc,CAAC,MAAM,CAAC,CAAA;AACxB,CAAC,CAAA"}
@@ -1,6 +1,5 @@
1
- "use strict";
2
- const fs = require('fs');
3
- const writeResultsToFile = async (responseBody, name = 'results.sarif') => {
1
+ import fs from 'fs';
2
+ export const writeResultsToFile = async (responseBody, name = 'results.sarif') => {
4
3
  try {
5
4
  fs.writeFileSync(name, JSON.stringify(responseBody, null, 2));
6
5
  return name;
@@ -9,6 +8,4 @@ const writeResultsToFile = async (responseBody, name = 'results.sarif') => {
9
8
  console.log('Error writing Scan Results to file');
10
9
  }
11
10
  };
12
- module.exports = {
13
- writeResultsToFile: writeResultsToFile
14
- };
11
+ //# sourceMappingURL=saveResults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saveResults.js","sourceRoot":"","sources":["../../src/scan/saveResults.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACrC,YAAY,EACZ,IAAI,GAAG,eAAe,EACtB,EAAE;IACF,IAAI;QACF,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAC7D,OAAO,IAAI,CAAA;KACZ;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAA;KAClD;AACH,CAAC,CAAA"}
package/dist/scan/scan.js CHANGED
@@ -1,67 +1,47 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.sendScan = exports.isFileAllowed = exports.allowedFileTypes = void 0;
7
- const commonApi_js_1 = __importDefault(require("../utils/commonApi.js"));
8
- const fileUtils_1 = __importDefault(require("../scan/fileUtils"));
9
- const i18n_1 = __importDefault(require("i18n"));
10
- const oraWrapper_1 = __importDefault(require("../utils/oraWrapper"));
11
- exports.allowedFileTypes = ['.jar', '.war', '.js', '.zip', '.exe'];
12
- const isFileAllowed = (scanOption) => {
1
+ import { checkFilePermissions } from './fileUtils.js';
2
+ import { failSpinner, returnOra, startSpinner, stopSpinner, succeedSpinner } from '../utils/oraWrapper.js';
3
+ import i18n from 'i18n';
4
+ import { sendArtifact } from './scanRequests.js';
5
+ export const allowedFileTypes = ['.jar', '.war', '.js', '.zip', '.exe'];
6
+ export const isFileAllowed = (scanOption) => {
13
7
  let valid = false;
14
- exports.allowedFileTypes.forEach(fileType => {
8
+ allowedFileTypes.forEach(fileType => {
15
9
  if (scanOption.endsWith(fileType)) {
16
10
  valid = true;
17
11
  }
18
12
  });
19
13
  return valid;
20
14
  };
21
- exports.isFileAllowed = isFileAllowed;
22
- const sendScan = async (config) => {
23
- if (!(0, exports.isFileAllowed)(config.file)) {
24
- console.log(i18n_1.default.__('scanErrorFileMessage'));
15
+ export const sendScan = async (config) => {
16
+ if (!isFileAllowed(config.file)) {
17
+ console.log(i18n.__('scanErrorFileMessage'));
25
18
  process.exit(9);
26
19
  }
27
20
  else {
28
- fileUtils_1.default.checkFilePermissions(config.file);
29
- const client = commonApi_js_1.default.getHttpClient(config);
30
- const startUploadSpinner = oraWrapper_1.default.returnOra(i18n_1.default.__('uploadingScan'));
31
- oraWrapper_1.default.startSpinner(startUploadSpinner);
32
- return await client
33
- .sendArtifact(config)
34
- .then(res => {
35
- if (res.statusCode === 201) {
36
- oraWrapper_1.default.succeedSpinner(startUploadSpinner, i18n_1.default.__('uploadingScanSuccessful'));
37
- if (config.verbose) {
38
- console.log(i18n_1.default.__('responseMessage', res.body));
39
- }
40
- return res.body.id;
21
+ checkFilePermissions(config.file);
22
+ const startUploadSpinner = returnOra(i18n.__('uploadingScan'));
23
+ startSpinner(startUploadSpinner);
24
+ try {
25
+ const sendArtifactRes = (await sendArtifact(config));
26
+ const { body } = sendArtifactRes;
27
+ succeedSpinner(startUploadSpinner, i18n.__('uploadingScanSuccessful'));
28
+ if (config.debug) {
29
+ // @ts-ignore
30
+ console.log(i18n.__('responseMessage', body));
41
31
  }
42
- else {
43
- if (config.debug) {
44
- console.log(config);
45
- oraWrapper_1.default.failSpinner(startUploadSpinner, i18n_1.default.__('uploadingScanFail'));
46
- console.log(i18n_1.default.__('genericServiceError', res.statusCode));
47
- }
48
- if (res.statusCode === 429) {
49
- console.log(i18n_1.default.__('exceededFreeTier'));
50
- process.exit(1);
51
- }
52
- if (res.statusCode === 403) {
53
- console.log(i18n_1.default.__('permissionsError'));
54
- process.exit(1);
55
- }
56
- oraWrapper_1.default.stopSpinner(startUploadSpinner);
57
- console.log('Contrast Scan Finished');
58
- process.exit(1);
32
+ // @ts-ignore
33
+ return body.id;
34
+ }
35
+ catch (err) {
36
+ if (config.debug) {
37
+ console.log(config);
38
+ failSpinner(startUploadSpinner, i18n.__('uploadingScanFail'));
39
+ console.log(i18n.__('genericServiceError', err.response.statusCode));
59
40
  }
60
- })
61
- .catch(err => {
62
- oraWrapper_1.default.stopSpinner(startUploadSpinner);
63
- console.log(err);
64
- });
41
+ stopSpinner(startUploadSpinner);
42
+ console.log('Contrast Scan Finished');
43
+ process.exit(1);
44
+ }
65
45
  }
66
46
  };
67
- exports.sendScan = sendScan;
47
+ //# sourceMappingURL=scan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/scan/scan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EACL,WAAW,EACX,SAAS,EACT,YAAY,EACZ,WAAW,EACX,cAAc,EACf,MAAM,wBAAwB,CAAA;AAC/B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGhD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAEvE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,UAAkB,EAAE,EAAE;IAClD,IAAI,KAAK,GAAG,KAAK,CAAA;IACjB,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAClC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,KAAK,GAAG,IAAI,CAAA;SACb;IACH,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,MAAW,EAAE,EAAE;IAC5C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAA;QAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAChB;SAAM;QACL,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,kBAAkB,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAA;QAC9D,YAAY,CAAC,kBAAkB,CAAC,CAAA;QAChC,IAAI;YACF,MAAM,eAAe,GAAG,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,CAAkB,CAAA;YAErE,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAA;YAEhC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAA;YACtE,IAAI,MAAM,CAAC,KAAK,EAAE;gBAChB,aAAa;gBACb,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAA;aAC9C;YACD,aAAa;YACb,OAAO,IAAI,CAAC,EAAE,CAAA;SACf;QAAC,OAAO,GAAQ,EAAE;YACjB,IAAI,MAAM,CAAC,KAAK,EAAE;gBAChB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACnB,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAA;gBAC7D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;aACrE;YAED,WAAW,CAAC,kBAAkB,CAAC,CAAA;YAC/B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;YACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SAChB;KACF;AACH,CAAC,CAAA"}
@@ -1,18 +1,17 @@
1
- "use strict";
2
- const paramHandler = require('../utils/paramsUtil/paramHandler');
3
- const constants = require('../cliConstants.js');
4
- const path = require('path');
5
- const { supportedLanguagesScan } = require('../constants/constants');
6
- const i18n = require('i18n');
7
- const { scanUsageGuide } = require('./help');
8
- const parsedCLIOptions = require('../utils/parsedCLIOptions');
1
+ import { getAuth } from '../utils/paramsUtil/paramHandler.js';
2
+ import { commandLineDefinitions } from '../cliConstants.js';
3
+ import { sep } from 'path';
4
+ import i18n from 'i18n';
5
+ import { scanUsageGuide } from './help.js';
6
+ import { getCommandLineArgsCustom } from '../utils/parsedCLIOptions.js';
7
+ import { supportedLanguagesScan } from '../constants/constants.js';
9
8
  const getScanConfig = async (contrastConf, command, argv) => {
10
- let scanParams = await parsedCLIOptions.getCommandLineArgsCustom(contrastConf, command, argv, constants.commandLineDefinitions.scanOptionDefinitions);
9
+ let scanParams = await getCommandLineArgsCustom(contrastConf, command, argv, commandLineDefinitions.scanOptionDefinitions);
11
10
  if (scanParams.help) {
12
11
  printHelpMessage();
13
12
  process.exit(0);
14
13
  }
15
- const paramsAuth = paramHandler.getAuth(scanParams);
14
+ const paramsAuth = getAuth(scanParams);
16
15
  if (scanParams.language) {
17
16
  scanParams.language = scanParams.language.toUpperCase();
18
17
  if (!Object.values(supportedLanguagesScan).includes(scanParams.language)) {
@@ -21,6 +20,7 @@ const getScanConfig = async (contrastConf, command, argv) => {
21
20
  process.exit(1);
22
21
  }
23
22
  }
23
+ // if no name, take the full file path and use it as the project name
24
24
  let projectNameSource;
25
25
  if (!scanParams.name && scanParams.file) {
26
26
  scanParams.name = getFileName(scanParams.file);
@@ -32,13 +32,15 @@ const getScanConfig = async (contrastConf, command, argv) => {
32
32
  return { ...paramsAuth, ...scanParams, projectNameSource };
33
33
  };
34
34
  const getFileName = file => {
35
- return file.split(path.sep).pop();
35
+ // from '/Users/x/y/spring-async.war' to 'spring-async.war'
36
+ return file.split(sep).pop();
36
37
  };
37
38
  const printHelpMessage = () => {
38
39
  console.log(scanUsageGuide);
39
40
  };
40
- module.exports = {
41
+ export default {
41
42
  getScanConfig,
42
43
  getFileName,
43
44
  printHelpMessage
44
45
  };
46
+ //# sourceMappingURL=scanConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanConfig.js","sourceRoot":"","sources":["../../src/scan/scanConfig.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAA;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAElE,MAAM,aAAa,GAAG,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IAC1D,IAAI,UAAU,GAAG,MAAM,wBAAwB,CAC7C,YAAY,EACZ,OAAO,EACP,IAAI,EACJ,sBAAsB,CAAC,qBAAqB,CAC7C,CAAA;IAED,IAAI,UAAU,CAAC,IAAI,EAAE;QACnB,gBAAgB,EAAE,CAAA;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAChB;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAEtC,IAAI,UAAU,CAAC,QAAQ,EAAE;QACvB,UAAU,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAA;QACvD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YACxE,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAA;YAClE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAA;YAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SAChB;KACF;IAED,qEAAqE;IACrE,IAAI,iBAAiB,CAAA;IACrB,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE;QACvC,UAAU,CAAC,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC9C,iBAAiB,GAAG,MAAM,CAAA;KAC3B;SAAM;QACL,iBAAiB,GAAG,MAAM,CAAA;KAC3B;IAED,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,iBAAiB,EAAE,CAAA;AAC5D,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE;IACzB,2DAA2D;IAC3D,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;AAC9B,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,GAAG,EAAE;IAC5B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;AAC7B,CAAC,CAAA;AAED,eAAe;IACb,aAAa;IACb,WAAW;IACX,gBAAgB;CACjB,CAAA"}
@@ -1,30 +1,30 @@
1
- "use strict";
2
- const i18n = require('i18n');
3
- const { returnOra, startSpinner, succeedSpinner, stopSpinner } = require('../utils/oraWrapper');
4
- const populateProjectIdAndProjectName = require('./populateProjectIdAndProjectName');
5
- const scan = require('./scan');
6
- const scanResults = require('./scanResults');
7
- const autoDetection = require('./autoDetection');
8
- const fileFunctions = require('./fileUtils');
9
- const { performance } = require('perf_hooks');
1
+ import i18n from 'i18n';
2
+ import { populateProjectId } from './populateProjectIdAndProjectName.js';
3
+ import { sendScan } from './scan.js';
4
+ import { performance } from 'perf_hooks';
5
+ import { fileExists, fileIsEmpty } from './fileUtils.js';
6
+ import { returnOra, startSpinner, stopSpinner, succeedSpinner } from '../utils/oraWrapper.js';
7
+ import { returnScanResults } from './scanResults.js';
8
+ import { autoDetectFileAndLanguage } from '../common/autoDetection.js';
9
+ import { getScanResultsInstances } from './scanRequests.js';
10
10
  const getTimeout = config => {
11
11
  if (config.timeout) {
12
12
  return config.timeout;
13
13
  }
14
14
  else {
15
- if (config.verbose) {
15
+ if (config.debug) {
16
16
  console.log('Timeout set to 5 minutes');
17
17
  }
18
18
  return 300;
19
19
  }
20
20
  };
21
- const fileAndLanguageLogic = async (configToUse) => {
21
+ export const fileAndLanguageLogic = async (configToUse) => {
22
22
  if (configToUse.file) {
23
- if (!fileFunctions.fileExists(configToUse.file)) {
23
+ if (!fileExists(configToUse.file)) {
24
24
  console.log(i18n.__('fileNotExist'));
25
25
  process.exit(1);
26
26
  }
27
- if (fileFunctions.fileIsEmpty(configToUse.file)) {
27
+ if (fileIsEmpty(configToUse.file)) {
28
28
  console.log(i18n.__('scanFileIsEmpty'));
29
29
  process.exit(1);
30
30
  }
@@ -32,28 +32,28 @@ const fileAndLanguageLogic = async (configToUse) => {
32
32
  }
33
33
  else {
34
34
  if (configToUse.file === undefined || configToUse.file === null) {
35
- await autoDetection.autoDetectFileAndLanguage(configToUse);
35
+ await autoDetectFileAndLanguage(configToUse);
36
36
  }
37
37
  }
38
38
  };
39
- const startScan = async (configToUse) => {
39
+ export const startScan = async (configToUse) => {
40
40
  const startTime = performance.now();
41
41
  await fileAndLanguageLogic(configToUse);
42
42
  let newProject;
43
43
  if (!configToUse.projectId) {
44
- const { projectId, isNewProject } = await populateProjectIdAndProjectName.populateProjectId(configToUse);
44
+ const { projectId, isNewProject } = await populateProjectId(configToUse);
45
45
  configToUse.projectId = projectId;
46
46
  newProject = isNewProject;
47
47
  }
48
48
  else {
49
49
  newProject = false;
50
50
  }
51
- const codeArtifactId = await scan.sendScan(configToUse);
51
+ const codeArtifactId = await sendScan(configToUse);
52
52
  if (!configToUse.ff) {
53
53
  const startScanSpinner = returnOra('🚀 Contrast Scan started');
54
54
  startSpinner(startScanSpinner);
55
- const scanDetail = await scanResults.returnScanResults(configToUse, codeArtifactId, newProject, getTimeout(configToUse), startScanSpinner);
56
- const scanResultsInstances = await scanResults.returnScanResultsInstances(configToUse, scanDetail.id);
55
+ const scanDetail = await returnScanResults(configToUse, codeArtifactId, newProject, getTimeout(configToUse), startScanSpinner);
56
+ const scanResultsInstances = await getScanResultsInstances(configToUse, scanDetail.id);
57
57
  const endTime = performance.now();
58
58
  const scanDurationMs = endTime - startTime;
59
59
  if (scanResultsInstances.statusCode !== 200) {
@@ -71,6 +71,4 @@ const startScan = async (configToUse) => {
71
71
  }
72
72
  }
73
73
  };
74
- module.exports = {
75
- startScan: startScan
76
- };
74
+ //# sourceMappingURL=scanController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanController.js","sourceRoot":"","sources":["../../src/scan/scanController.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import { buildBaseRequestOptions, ErrorType } from '../common/baseRequest.js';
2
+ import { got } from 'got';
3
+ import fs from 'fs';
4
+ import FormData from 'form-data';
5
+ export function createProjectId(config) {
6
+ const options = buildBaseRequestOptions(config, ErrorType.SCAN);
7
+ options.json = {
8
+ name: config.name,
9
+ archived: 'false'
10
+ };
11
+ if (config.language) {
12
+ // @ts-ignore
13
+ options.json.language = config.language;
14
+ }
15
+ options.url = createHarmonyProjectsUrl(config);
16
+ return got.post(options);
17
+ }
18
+ function createHarmonyProjectsUrl(config) {
19
+ return `${config.host}/Contrast/api/sast/v1/organizations/${config.organizationId}/projects`;
20
+ }
21
+ export function getProjectIdByName(config) {
22
+ const options = buildBaseRequestOptions(config, ErrorType.SCAN);
23
+ options.url = createHarmonyProjectsUrl(config) + '?name=' + config.name;
24
+ return got.get(options);
25
+ }
26
+ export async function sendArtifact(config) {
27
+ const options = buildBaseRequestOptions(config, ErrorType.SCAN);
28
+ const formData = new FormData();
29
+ formData.append('filename', fs.createReadStream(config.file));
30
+ options.body = formData;
31
+ // @ts-ignore
32
+ options.headers['Content-Type'] = `multipart/form-data; boundary=${formData.getBoundary()}`;
33
+ options.url = createHarmonyUrl(config);
34
+ return got.post(options);
35
+ }
36
+ function createHarmonyUrl(config) {
37
+ return `${config.host}/Contrast/api/sast/v1/organizations/${config.organizationId}/projects/${config.projectId}/code-artifacts`;
38
+ }
39
+ export function getScanId(config, codeArtifactId) {
40
+ const options = buildBaseRequestOptions(config, ErrorType.SCAN);
41
+ options.url = createGetScanIdURL(config);
42
+ options.json = {
43
+ codeArtifactId: codeArtifactId,
44
+ label: config.label
45
+ ? config.label
46
+ : `Started by CLI tool at ${new Date().toString()}`
47
+ };
48
+ return got.post(options);
49
+ }
50
+ const createGetScanIdURL = (config) => {
51
+ return `${config.host}/Contrast/api/sast/v1/organizations/${config.organizationId}/projects/${config.projectId}/scans/`;
52
+ };
53
+ export function getSpecificScanResult(config, scanId) {
54
+ const options = buildBaseRequestOptions(config, ErrorType.SCAN);
55
+ options.url = createSpecificScanResultURL(config, scanId);
56
+ options.throwHttpErrors = false;
57
+ return got.get(options);
58
+ }
59
+ const createSpecificScanResultURL = (config, scanId) => {
60
+ return `${config.host}/Contrast/api/sast/v1/organizations/${config.organizationId}/projects/${config.projectId}/scans/${scanId}`;
61
+ };
62
+ export function createNewEvent(config, scanId, newProject) {
63
+ const options = buildBaseRequestOptions(config, ErrorType.SCAN);
64
+ options.url = createEventCollectorURL(config, scanId);
65
+ options.json = {
66
+ eventSource: process.env.CODESEC_INVOCATION_ENVIRONMENT,
67
+ trackingProperties: {
68
+ projectNameSource: config.projectNameSource,
69
+ waitedForResults: !config.ff,
70
+ newProject
71
+ }
72
+ };
73
+ return got.post(options);
74
+ }
75
+ const createEventCollectorURL = (config, scanId) => {
76
+ return `${config.host}/Contrast/api/sast/organizations/${config.organizationId}/projects/${config.projectId}/scans/${scanId}/events`;
77
+ };
78
+ export function getScanResultsInstances(config, scanId) {
79
+ const options = buildBaseRequestOptions(config, ErrorType.SCAN);
80
+ options.url = createScanResultsInstancesURL(config, scanId);
81
+ return got.get(options);
82
+ }
83
+ const createScanResultsInstancesURL = (config, scanId) => {
84
+ return `${config.host}/Contrast/api/sast/v1/organizations/${config.organizationId}/projects/${config.projectId}/scans/${scanId}/result-instances/info?size=50&page=0&last=false&sort=severity,asc`;
85
+ };
86
+ //# sourceMappingURL=scanRequests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanRequests.js","sourceRoot":"","sources":["../../src/scan/scanRequests.ts"],"names":[],"mappings":"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"}