scanoss 0.7.9 → 0.7.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 (424) hide show
  1. package/build/main/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +1 -1
  2. package/build/main/tsconfig.tsbuildinfo +1 -1
  3. package/build/module/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +1 -1
  4. package/build/module/tsconfig.module.tsbuildinfo +1 -1
  5. package/package.json +2 -2
  6. package/.circleci/config.yml +0 -64
  7. package/.cspell.json +0 -36
  8. package/.editorconfig +0 -15
  9. package/.eslintrc.json +0 -37
  10. package/.github/workflows/reuse.yml +0 -15
  11. package/.github/workflows/scanoss.yml +0 -24
  12. package/.gitignore +0 -10
  13. package/.idea/.gitignore +0 -5
  14. package/.idea/codeStyles/Project.xml +0 -61
  15. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  16. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  17. package/.idea/modules.xml +0 -8
  18. package/.idea/scanoss.js.iml +0 -12
  19. package/.idea/vcs.xml +0 -6
  20. package/.idea/workspace.xml +0 -313
  21. package/.nyc_output/3da9f448-90e4-4399-887b-e4fd1b8d7052.json +0 -1
  22. package/.nyc_output/processinfo/3da9f448-90e4-4399-887b-e4fd1b8d7052.json +0 -1
  23. package/.nyc_output/processinfo/index.json +0 -1
  24. package/.prettierignore +0 -2
  25. package/.reuse/dep5 +0 -16
  26. package/.vscode/extensions.json +0 -8
  27. package/.vscode/launch.json +0 -29
  28. package/.vscode/settings.json +0 -7
  29. package/LICENSES/CC0-1.0.txt +0 -121
  30. package/LICENSES/MIT.txt +0 -9
  31. package/assets/ReportHTMLTemplate/index.html +0 -1181
  32. package/build/main/package.json +0 -120
  33. package/build/main/sdk/filters/DefaultFilterForDependencies.d.ts +0 -16
  34. package/build/main/sdk/filters/DefaultFilterForDependencies.js +0 -145
  35. package/build/main/sdk/filters/DefaultFilterForScanning.d.ts +0 -16
  36. package/build/main/sdk/filters/DefaultFilterForScanning.js +0 -194
  37. package/build/main/sdk/filters/filtering.d.ts +0 -32
  38. package/build/main/sdk/filters/filtering.js +0 -228
  39. package/build/main/src/cli/bin/cli-bin.d.ts +0 -2
  40. package/build/main/src/cli/bin/cli-bin.js +0 -68
  41. package/build/main/src/cli/commands/dep.d.ts +0 -1
  42. package/build/main/src/cli/commands/dep.js +0 -38
  43. package/build/main/src/cli/commands/helpers.d.ts +0 -2
  44. package/build/main/src/cli/commands/helpers.js +0 -25
  45. package/build/main/src/cli/commands/scan.d.ts +0 -1
  46. package/build/main/src/cli/commands/scan.js +0 -138
  47. package/build/main/src/cli/commands/wfp.d.ts +0 -1
  48. package/build/main/src/cli/commands/wfp.js +0 -54
  49. package/build/main/src/index.d.ts +0 -14
  50. package/build/main/src/index.js +0 -30
  51. package/build/main/src/sdk/DataLayer/DataLayerTypes.d.ts +0 -108
  52. package/build/main/src/sdk/DataLayer/DataLayerTypes.js +0 -5
  53. package/build/main/src/sdk/DataLayer/DataProviderManager.d.ts +0 -7
  54. package/build/main/src/sdk/DataLayer/DataProviderManager.js +0 -24
  55. package/build/main/src/sdk/DataLayer/DataProviders/ComponentDataProvider.d.ts +0 -13
  56. package/build/main/src/sdk/DataLayer/DataProviders/ComponentDataProvider.js +0 -164
  57. package/build/main/src/sdk/DataLayer/DataProviders/DependencyDataProvider.d.ts +0 -9
  58. package/build/main/src/sdk/DataLayer/DataProviders/DependencyDataProvider.js +0 -37
  59. package/build/main/src/sdk/DataLayer/DataProviders/LicenseDataProvider.d.ts +0 -18
  60. package/build/main/src/sdk/DataLayer/DataProviders/LicenseDataProvider.js +0 -148
  61. package/build/main/src/sdk/DataLayer/DataProviders/SummaryDataProvider.d.ts +0 -11
  62. package/build/main/src/sdk/DataLayer/DataProviders/SummaryDataProvider.js +0 -33
  63. package/build/main/src/sdk/Decompress/DecompressionManager.d.ts +0 -12
  64. package/build/main/src/sdk/Decompress/DecompressionManager.js +0 -73
  65. package/build/main/src/sdk/Decompress/Decompressor/DecompressTgz.d.ts +0 -5
  66. package/build/main/src/sdk/Decompress/Decompressor/DecompressTgz.js +0 -22
  67. package/build/main/src/sdk/Decompress/Decompressor/DecompressZips.d.ts +0 -5
  68. package/build/main/src/sdk/Decompress/Decompressor/DecompressZips.js +0 -24
  69. package/build/main/src/sdk/Decompress/Decompressor/Decompressor.d.ts +0 -10
  70. package/build/main/src/sdk/Decompress/Decompressor/Decompressor.js +0 -18
  71. package/build/main/src/sdk/Dependencies/DependencyScanner.d.ts +0 -11
  72. package/build/main/src/sdk/Dependencies/DependencyScanner.js +0 -96
  73. package/build/main/src/sdk/Dependencies/DependencyScannerCfg.d.ts +0 -4
  74. package/build/main/src/sdk/Dependencies/DependencyScannerCfg.js +0 -10
  75. package/build/main/src/sdk/Dependencies/DependencyTypes.d.ts +0 -21
  76. package/build/main/src/sdk/Dependencies/DependencyTypes.js +0 -2
  77. package/build/main/src/sdk/Dependencies/LocalDependency/DependencyTypes.d.ts +0 -16
  78. package/build/main/src/sdk/Dependencies/LocalDependency/DependencyTypes.js +0 -2
  79. package/build/main/src/sdk/Dependencies/LocalDependency/LocalDependency.d.ts +0 -8
  80. package/build/main/src/sdk/Dependencies/LocalDependency/LocalDependency.js +0 -102
  81. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.d.ts +0 -2
  82. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.js +0 -95
  83. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/golangParser.d.ts +0 -3
  84. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/golangParser.js +0 -97
  85. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.d.ts +0 -2
  86. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.js +0 -183
  87. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/npmParser.d.ts +0 -13
  88. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/npmParser.js +0 -187
  89. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.d.ts +0 -3
  90. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.js +0 -58
  91. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/pyParser.d.ts +0 -2
  92. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/pyParser.js +0 -64
  93. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.d.ts +0 -3
  94. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.js +0 -132
  95. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/utils.d.ts +0 -2
  96. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/utils.js +0 -19
  97. package/build/main/src/sdk/Report/Report.d.ts +0 -8
  98. package/build/main/src/sdk/Report/Report.js +0 -26
  99. package/build/main/src/sdk/filters/DefaultFilterForDependencies.d.ts +0 -16
  100. package/build/main/src/sdk/filters/DefaultFilterForDependencies.js +0 -145
  101. package/build/main/src/sdk/filters/DefaultFilterForScanning.d.ts +0 -16
  102. package/build/main/src/sdk/filters/DefaultFilterForScanning.js +0 -194
  103. package/build/main/src/sdk/filters/filtering.d.ts +0 -32
  104. package/build/main/src/sdk/filters/filtering.js +0 -228
  105. package/build/main/src/sdk/grpc/GrpcDependencyService.d.ts +0 -11
  106. package/build/main/src/sdk/grpc/GrpcDependencyService.js +0 -86
  107. package/build/main/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  108. package/build/main/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -2
  109. package/build/main/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -1
  110. package/build/main/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -404
  111. package/build/main/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -39
  112. package/build/main/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +0 -98
  113. package/build/main/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -1
  114. package/build/main/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1197
  115. package/build/main/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -19
  116. package/build/main/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -66
  117. package/build/main/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts +0 -1
  118. package/build/main/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -14
  119. package/build/main/src/sdk/scanner/Dispatcher/DispatchableItem.d.ts +0 -19
  120. package/build/main/src/sdk/scanner/Dispatcher/DispatchableItem.js +0 -43
  121. package/build/main/src/sdk/scanner/Dispatcher/Dispatcher.d.ts +0 -20
  122. package/build/main/src/sdk/scanner/Dispatcher/Dispatcher.js +0 -160
  123. package/build/main/src/sdk/scanner/Dispatcher/DispatcherResponse.d.ts +0 -12
  124. package/build/main/src/sdk/scanner/Dispatcher/DispatcherResponse.js +0 -33
  125. package/build/main/src/sdk/scanner/Dispatcher/GlobalControllerAborter.d.ts +0 -10
  126. package/build/main/src/sdk/scanner/Dispatcher/GlobalControllerAborter.js +0 -32
  127. package/build/main/src/sdk/scanner/Fingerprint.d.ts +0 -16
  128. package/build/main/src/sdk/scanner/Fingerprint.js +0 -78
  129. package/build/main/src/sdk/scanner/Scannable/ScannableItem.d.ts +0 -15
  130. package/build/main/src/sdk/scanner/Scannable/ScannableItem.js +0 -27
  131. package/build/main/src/sdk/scanner/Scanner.d.ts +0 -46
  132. package/build/main/src/sdk/scanner/Scanner.js +0 -283
  133. package/build/main/src/sdk/scanner/ScannerCfg.d.ts +0 -16
  134. package/build/main/src/sdk/scanner/ScannerCfg.js +0 -30
  135. package/build/main/src/sdk/scanner/ScannerTypes.d.ts +0 -121
  136. package/build/main/src/sdk/scanner/ScannerTypes.js +0 -48
  137. package/build/main/src/sdk/scanner/WfpProvider/FingerprintPackage.d.ts +0 -9
  138. package/build/main/src/sdk/scanner/WfpProvider/FingerprintPackage.js +0 -31
  139. package/build/main/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +0 -20
  140. package/build/main/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.js +0 -492
  141. package/build/main/src/sdk/scanner/WfpProvider/WfpProvider.d.ts +0 -35
  142. package/build/main/src/sdk/scanner/WfpProvider/WfpProvider.js +0 -68
  143. package/build/main/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.d.ts +0 -21
  144. package/build/main/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.js +0 -139
  145. package/build/main/src/sdk/tree/File.d.ts +0 -7
  146. package/build/main/src/sdk/tree/File.js +0 -24
  147. package/build/main/src/sdk/tree/Filters/DecompressionFilter.d.ts +0 -7
  148. package/build/main/src/sdk/tree/Filters/DecompressionFilter.js +0 -21
  149. package/build/main/src/sdk/tree/Filters/DependencyFilter.d.ts +0 -7
  150. package/build/main/src/sdk/tree/Filters/DependencyFilter.js +0 -17
  151. package/build/main/src/sdk/tree/Filters/Filter.d.ts +0 -4
  152. package/build/main/src/sdk/tree/Filters/Filter.js +0 -6
  153. package/build/main/src/sdk/tree/Filters/ScanFilter.d.ts +0 -7
  154. package/build/main/src/sdk/tree/Filters/ScanFilter.js +0 -17
  155. package/build/main/src/sdk/tree/Folder.d.ts +0 -12
  156. package/build/main/src/sdk/tree/Folder.js +0 -58
  157. package/build/main/src/sdk/tree/Node.d.ts +0 -17
  158. package/build/main/src/sdk/tree/Node.js +0 -25
  159. package/build/main/src/sdk/tree/Tree.d.ts +0 -18
  160. package/build/main/src/sdk/tree/Tree.js +0 -70
  161. package/build/module/package.json +0 -120
  162. package/build/module/sdk/filters/DefaultFilterForDependencies.d.ts +0 -16
  163. package/build/module/sdk/filters/DefaultFilterForDependencies.js +0 -143
  164. package/build/module/sdk/filters/DefaultFilterForScanning.d.ts +0 -16
  165. package/build/module/sdk/filters/DefaultFilterForScanning.js +0 -192
  166. package/build/module/sdk/filters/filtering.d.ts +0 -32
  167. package/build/module/sdk/filters/filtering.js +0 -203
  168. package/build/module/src/cli/bin/cli-bin.d.ts +0 -2
  169. package/build/module/src/cli/bin/cli-bin.js +0 -67
  170. package/build/module/src/cli/commands/dep.d.ts +0 -1
  171. package/build/module/src/cli/commands/dep.js +0 -32
  172. package/build/module/src/cli/commands/helpers.d.ts +0 -2
  173. package/build/module/src/cli/commands/helpers.js +0 -19
  174. package/build/module/src/cli/commands/scan.d.ts +0 -1
  175. package/build/module/src/cli/commands/scan.js +0 -135
  176. package/build/module/src/cli/commands/wfp.d.ts +0 -1
  177. package/build/module/src/cli/commands/wfp.js +0 -48
  178. package/build/module/src/index.d.ts +0 -14
  179. package/build/module/src/index.js +0 -19
  180. package/build/module/src/sdk/DataLayer/DataLayerTypes.d.ts +0 -108
  181. package/build/module/src/sdk/DataLayer/DataLayerTypes.js +0 -5
  182. package/build/module/src/sdk/DataLayer/DataProviderManager.d.ts +0 -7
  183. package/build/module/src/sdk/DataLayer/DataProviderManager.js +0 -21
  184. package/build/module/src/sdk/DataLayer/DataProviders/ComponentDataProvider.d.ts +0 -13
  185. package/build/module/src/sdk/DataLayer/DataProviders/ComponentDataProvider.js +0 -159
  186. package/build/module/src/sdk/DataLayer/DataProviders/DependencyDataProvider.d.ts +0 -9
  187. package/build/module/src/sdk/DataLayer/DataProviders/DependencyDataProvider.js +0 -34
  188. package/build/module/src/sdk/DataLayer/DataProviders/LicenseDataProvider.d.ts +0 -18
  189. package/build/module/src/sdk/DataLayer/DataProviders/LicenseDataProvider.js +0 -145
  190. package/build/module/src/sdk/DataLayer/DataProviders/SummaryDataProvider.d.ts +0 -11
  191. package/build/module/src/sdk/DataLayer/DataProviders/SummaryDataProvider.js +0 -30
  192. package/build/module/src/sdk/Decompress/DecompressionManager.d.ts +0 -12
  193. package/build/module/src/sdk/Decompress/DecompressionManager.js +0 -67
  194. package/build/module/src/sdk/Decompress/Decompressor/DecompressTgz.d.ts +0 -5
  195. package/build/module/src/sdk/Decompress/Decompressor/DecompressTgz.js +0 -16
  196. package/build/module/src/sdk/Decompress/Decompressor/DecompressZips.d.ts +0 -5
  197. package/build/module/src/sdk/Decompress/Decompressor/DecompressZips.js +0 -18
  198. package/build/module/src/sdk/Decompress/Decompressor/Decompressor.d.ts +0 -10
  199. package/build/module/src/sdk/Decompress/Decompressor/Decompressor.js +0 -15
  200. package/build/module/src/sdk/Dependencies/DependencyScanner.d.ts +0 -11
  201. package/build/module/src/sdk/Dependencies/DependencyScanner.js +0 -93
  202. package/build/module/src/sdk/Dependencies/DependencyScannerCfg.d.ts +0 -4
  203. package/build/module/src/sdk/Dependencies/DependencyScannerCfg.js +0 -7
  204. package/build/module/src/sdk/Dependencies/DependencyTypes.d.ts +0 -21
  205. package/build/module/src/sdk/Dependencies/DependencyTypes.js +0 -2
  206. package/build/module/src/sdk/Dependencies/LocalDependency/DependencyTypes.d.ts +0 -16
  207. package/build/module/src/sdk/Dependencies/LocalDependency/DependencyTypes.js +0 -2
  208. package/build/module/src/sdk/Dependencies/LocalDependency/LocalDependency.d.ts +0 -8
  209. package/build/module/src/sdk/Dependencies/LocalDependency/LocalDependency.js +0 -96
  210. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.d.ts +0 -2
  211. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.js +0 -87
  212. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/golangParser.d.ts +0 -3
  213. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/golangParser.js +0 -88
  214. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.d.ts +0 -2
  215. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.js +0 -180
  216. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/npmParser.d.ts +0 -13
  217. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/npmParser.js +0 -175
  218. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.d.ts +0 -3
  219. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.js +0 -49
  220. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/pyParser.d.ts +0 -2
  221. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/pyParser.js +0 -57
  222. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.d.ts +0 -3
  223. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.js +0 -125
  224. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/utils.d.ts +0 -2
  225. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/utils.js +0 -15
  226. package/build/module/src/sdk/Report/Report.d.ts +0 -8
  227. package/build/module/src/sdk/Report/Report.js +0 -20
  228. package/build/module/src/sdk/filters/DefaultFilterForDependencies.d.ts +0 -16
  229. package/build/module/src/sdk/filters/DefaultFilterForDependencies.js +0 -143
  230. package/build/module/src/sdk/filters/DefaultFilterForScanning.d.ts +0 -16
  231. package/build/module/src/sdk/filters/DefaultFilterForScanning.js +0 -192
  232. package/build/module/src/sdk/filters/filtering.d.ts +0 -32
  233. package/build/module/src/sdk/filters/filtering.js +0 -203
  234. package/build/module/src/sdk/grpc/GrpcDependencyService.d.ts +0 -11
  235. package/build/module/src/sdk/grpc/GrpcDependencyService.js +0 -64
  236. package/build/module/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  237. package/build/module/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -2
  238. package/build/module/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -1
  239. package/build/module/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -404
  240. package/build/module/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -39
  241. package/build/module/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +0 -98
  242. package/build/module/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -1
  243. package/build/module/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1197
  244. package/build/module/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -19
  245. package/build/module/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -66
  246. package/build/module/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts +0 -1
  247. package/build/module/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -14
  248. package/build/module/src/sdk/scanner/Dispatcher/DispatchableItem.d.ts +0 -19
  249. package/build/module/src/sdk/scanner/Dispatcher/DispatchableItem.js +0 -37
  250. package/build/module/src/sdk/scanner/Dispatcher/Dispatcher.d.ts +0 -20
  251. package/build/module/src/sdk/scanner/Dispatcher/Dispatcher.js +0 -135
  252. package/build/module/src/sdk/scanner/Dispatcher/DispatcherResponse.d.ts +0 -12
  253. package/build/module/src/sdk/scanner/Dispatcher/DispatcherResponse.js +0 -30
  254. package/build/module/src/sdk/scanner/Dispatcher/GlobalControllerAborter.d.ts +0 -10
  255. package/build/module/src/sdk/scanner/Dispatcher/GlobalControllerAborter.js +0 -26
  256. package/build/module/src/sdk/scanner/Fingerprint.d.ts +0 -16
  257. package/build/module/src/sdk/scanner/Fingerprint.js +0 -54
  258. package/build/module/src/sdk/scanner/Scannable/ScannableItem.d.ts +0 -15
  259. package/build/module/src/sdk/scanner/Scannable/ScannableItem.js +0 -24
  260. package/build/module/src/sdk/scanner/Scanner.d.ts +0 -46
  261. package/build/module/src/sdk/scanner/Scanner.js +0 -275
  262. package/build/module/src/sdk/scanner/ScannerCfg.d.ts +0 -16
  263. package/build/module/src/sdk/scanner/ScannerCfg.js +0 -27
  264. package/build/module/src/sdk/scanner/ScannerTypes.d.ts +0 -121
  265. package/build/module/src/sdk/scanner/ScannerTypes.js +0 -46
  266. package/build/module/src/sdk/scanner/WfpProvider/FingerprintPackage.d.ts +0 -9
  267. package/build/module/src/sdk/scanner/WfpProvider/FingerprintPackage.js +0 -28
  268. package/build/module/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +0 -20
  269. package/build/module/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.js +0 -486
  270. package/build/module/src/sdk/scanner/WfpProvider/WfpProvider.d.ts +0 -35
  271. package/build/module/src/sdk/scanner/WfpProvider/WfpProvider.js +0 -65
  272. package/build/module/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.d.ts +0 -21
  273. package/build/module/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.js +0 -132
  274. package/build/module/src/sdk/tree/File.d.ts +0 -7
  275. package/build/module/src/sdk/tree/File.js +0 -19
  276. package/build/module/src/sdk/tree/Filters/DecompressionFilter.d.ts +0 -7
  277. package/build/module/src/sdk/tree/Filters/DecompressionFilter.js +0 -18
  278. package/build/module/src/sdk/tree/Filters/DependencyFilter.d.ts +0 -7
  279. package/build/module/src/sdk/tree/Filters/DependencyFilter.js +0 -14
  280. package/build/module/src/sdk/tree/Filters/Filter.d.ts +0 -4
  281. package/build/module/src/sdk/tree/Filters/Filter.js +0 -3
  282. package/build/module/src/sdk/tree/Filters/ScanFilter.d.ts +0 -7
  283. package/build/module/src/sdk/tree/Filters/ScanFilter.js +0 -14
  284. package/build/module/src/sdk/tree/Folder.d.ts +0 -12
  285. package/build/module/src/sdk/tree/Folder.js +0 -53
  286. package/build/module/src/sdk/tree/Node.d.ts +0 -17
  287. package/build/module/src/sdk/tree/Node.js +0 -22
  288. package/build/module/src/sdk/tree/Tree.d.ts +0 -18
  289. package/build/module/src/sdk/tree/Tree.js +0 -64
  290. package/package-lock.json +0 -17116
  291. package/src/cli/bin/cli-bin.ts +0 -81
  292. package/src/cli/commands/dep.ts +0 -37
  293. package/src/cli/commands/helpers.ts +0 -19
  294. package/src/cli/commands/scan.ts +0 -173
  295. package/src/cli/commands/wfp.ts +0 -60
  296. package/src/index.ts +0 -31
  297. package/src/sdk/DataLayer/DataLayerTypes.ts +0 -129
  298. package/src/sdk/DataLayer/DataProviderManager.ts +0 -27
  299. package/src/sdk/DataLayer/DataProviders/ComponentDataProvider.ts +0 -195
  300. package/src/sdk/DataLayer/DataProviders/DependencyDataProvider.ts +0 -48
  301. package/src/sdk/DataLayer/DataProviders/LicenseDataProvider.ts +0 -184
  302. package/src/sdk/DataLayer/DataProviders/SummaryDataProvider.ts +0 -47
  303. package/src/sdk/Decompress/DecompressionManager.ts +0 -91
  304. package/src/sdk/Decompress/Decompressor/DecompressTgz.ts +0 -20
  305. package/src/sdk/Decompress/Decompressor/DecompressZips.ts +0 -21
  306. package/src/sdk/Decompress/Decompressor/Decompressor.ts +0 -20
  307. package/src/sdk/Dependencies/DependencyScanner.ts +0 -108
  308. package/src/sdk/Dependencies/DependencyScannerCfg.ts +0 -7
  309. package/src/sdk/Dependencies/DependencyTypes.ts +0 -24
  310. package/src/sdk/Dependencies/LocalDependency/DependencyTypes.ts +0 -21
  311. package/src/sdk/Dependencies/LocalDependency/LocalDependency.ts +0 -111
  312. package/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.ts +0 -115
  313. package/src/sdk/Dependencies/LocalDependency/parsers/golangParser.ts +0 -130
  314. package/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.ts +0 -209
  315. package/src/sdk/Dependencies/LocalDependency/parsers/npmParser.ts +0 -227
  316. package/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.ts +0 -64
  317. package/src/sdk/Dependencies/LocalDependency/parsers/pyParser.ts +0 -58
  318. package/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.ts +0 -174
  319. package/src/sdk/Dependencies/LocalDependency/parsers/utils.ts +0 -15
  320. package/src/sdk/FileCount/FileCount.ts +0 -81
  321. package/src/sdk/FileCount/FileCountFilter.ts +0 -14
  322. package/src/sdk/FileCount/Interfaces.ts +0 -23
  323. package/src/sdk/Filtering/DefaultFilterForDependencies.ts +0 -148
  324. package/src/sdk/Filtering/DefaultFilterForScanning.ts +0 -206
  325. package/src/sdk/Filtering/Filtering.ts +0 -273
  326. package/src/sdk/Report/Report.ts +0 -30
  327. package/src/sdk/grpc/GrpcDependencyService.ts +0 -72
  328. package/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -1
  329. package/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -1
  330. package/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -79
  331. package/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -482
  332. package/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -30
  333. package/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +0 -109
  334. package/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -206
  335. package/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1489
  336. package/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -25
  337. package/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -73
  338. package/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts +0 -6
  339. package/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -15
  340. package/src/sdk/scanner/Dispatcher/DispatchableItem.ts +0 -62
  341. package/src/sdk/scanner/Dispatcher/Dispatcher.ts +0 -173
  342. package/src/sdk/scanner/Dispatcher/DispatcherResponse.ts +0 -40
  343. package/src/sdk/scanner/Dispatcher/GlobalControllerAborter.ts +0 -33
  344. package/src/sdk/scanner/Fingerprint.ts +0 -82
  345. package/src/sdk/scanner/Scannable/ScannableItem.ts +0 -43
  346. package/src/sdk/scanner/Scanner.ts +0 -360
  347. package/src/sdk/scanner/ScannerCfg.ts +0 -43
  348. package/src/sdk/scanner/ScannerTypes.ts +0 -127
  349. package/src/sdk/scanner/WfpProvider/FingerprintPackage.ts +0 -34
  350. package/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.ts +0 -516
  351. package/src/sdk/scanner/WfpProvider/WfpProvider.ts +0 -105
  352. package/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.ts +0 -184
  353. package/src/sdk/tree/File.ts +0 -22
  354. package/src/sdk/tree/Filters/DecompressionFilter.ts +0 -22
  355. package/src/sdk/tree/Filters/DependencyFilter.ts +0 -22
  356. package/src/sdk/tree/Filters/Filter.ts +0 -5
  357. package/src/sdk/tree/Filters/ScanFilter.ts +0 -22
  358. package/src/sdk/tree/Folder.ts +0 -57
  359. package/src/sdk/tree/Node.ts +0 -39
  360. package/src/sdk/tree/Tree.ts +0 -82
  361. package/tests/scanoss.sh +0 -56
  362. package/tests/sdk/DataLayer/DataProviders/ComponentDataProvider.spec.ts +0 -176
  363. package/tests/sdk/DataLayer/DataProviders/DependencyDataProvider.spec.ts +0 -51
  364. package/tests/sdk/DataLayer/DataProviders/SummaryDataProvider.spec.ts +0 -35
  365. package/tests/sdk/DataLayer/DataProviders/samples/results-with-dep.json +0 -665
  366. package/tests/sdk/DataLayer/DataProviders/samples/results.json +0 -556
  367. package/tests/sdk/DataLayer/samples/simple/results-with-dep.json +0 -665
  368. package/tests/sdk/DataLayer/samples/simple-1/output1.json +0 -1196
  369. package/tests/sdk/Dependencies/LocalDependency/LocalDependency.spec.ts +0 -24
  370. package/tests/sdk/Dependencies/LocalDependency/Parsers/buildGradle.spec.ts +0 -48
  371. package/tests/sdk/Dependencies/LocalDependency/Parsers/golangParser.spec.ts +0 -146
  372. package/tests/sdk/Dependencies/LocalDependency/Parsers/npmParser.spec.ts +0 -135
  373. package/tests/sdk/Dependencies/LocalDependency/Parsers/nugetParser.spec.ts +0 -73
  374. package/tests/sdk/Dependencies/LocalDependency/Parsers/pomParser.spec.ts +0 -45
  375. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/1/Gemfile +0 -6
  376. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/1/Gemfile~ +0 -0
  377. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/2/Gemfile +0 -3
  378. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/2/Gemfile~ +0 -6
  379. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/3/Gemfile +0 -7
  380. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/3/Gemfile~ +0 -6
  381. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/4/Gemfile +0 -31
  382. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/4/Gemfile~ +0 -7
  383. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile.lock/1/Gemfile.lock +0 -180
  384. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile.lock/2/Gemfile.lock +0 -60
  385. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile.lock/2/Gemfile.lock~ +0 -0
  386. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/go.sum/1/go.sum +0 -119
  387. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/go.sum/depJSON.sh +0 -23
  388. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/gradle/1/build.gradle +0 -26
  389. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/gradle/2/build.gradle +0 -16
  390. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/nuget/NoDependencies.csproj +0 -115
  391. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/nuget/netcore-2.csproj +0 -18
  392. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/nuget/netcore.csproj +0 -14
  393. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/nuget/packageConfig-1/packages.config +0 -5
  394. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/pom.xml/1/pom.xml +0 -670
  395. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/pom.xml/2/pom.xml +0 -780
  396. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/generate_expected_output.sh +0 -4
  397. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1/yarn.lock +0 -50
  398. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1/yarn.lock-expected +0 -13
  399. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1-complex/yarn.lock +0 -27
  400. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1-complex/yarn.lock-expected +0 -8
  401. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1_2/scancode-out.json +0 -149662
  402. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1_2/yarn.lock +0 -8409
  403. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1_2/yarn.lock-expected +0 -1153
  404. package/tests/sdk/FileCount/FileCount.spec.ts +0 -35
  405. package/tests/sdk/FileCount/samples/16557/.y.ts +0 -27
  406. package/tests/sdk/FileCount/samples/16557/.z.ts +0 -129
  407. package/tests/sdk/FileCount/samples/16557/files/a.ts +0 -195
  408. package/tests/sdk/FileCount/samples/16557/files/b.ts +0 -184
  409. package/tests/sdk/FileCount/samples/16557/files/c.ts +0 -47
  410. package/tests/sdk/FileCount/samples/22036/files/a.ts +0 -195
  411. package/tests/sdk/FileCount/samples/22036/files/b.ts +0 -184
  412. package/tests/sdk/FileCount/samples/22036/files/c.ts +0 -47
  413. package/tests/sdk/FileCount/samples/22036/files/d.ts +0 -48
  414. package/tests/sdk/FileCount/samples/22036/y.ts +0 -27
  415. package/tests/sdk/FileCount/samples/22036/z.ts +0 -129
  416. package/tests/sdk/Scanner/WfpProvider/WfpCalculator/WfpCalculator.spec.ts +0 -102
  417. package/tests/sdk/Scanner/WfpProvider/WfpCalculator/samples/file1.c +0 -41
  418. package/tests/sdk/Scanner/WfpProvider/WfpCalculator/samples/file2.go +0 -87
  419. package/tests/sdk/Scanner/WfpProvider/WfpSplitter/WfpSplitter.spec.ts +0 -35
  420. package/tests/sdk/Scanner/WfpProvider/WfpSplitter/samples/wfp.wfp +0 -68
  421. package/tests/sdk/Scanner/WfpProvider/WfpSplitter/samples/wfp.wfp~ +0 -68
  422. package/tsconfig.json +0 -31
  423. package/tsconfig.module.json +0 -11
  424. package/yarn.lock +0 -5481
@@ -1,195 +0,0 @@
1
- import {
2
- ComponentDataLayer,
3
- DataProvider,
4
- Health,
5
- IDataLayers
6
- } from '../DataLayerTypes';
7
- import {
8
- ScannerComponent,
9
- ScannerResults
10
- } from '../../scanner/ScannerTypes';
11
- import { IDependencyResponse } from '../../Dependencies/DependencyTypes';
12
-
13
- export class ComponentDataProvider implements DataProvider {
14
-
15
- private scanRawResults: ScannerResults
16
-
17
- private componentList: Array<ScannerComponent>;
18
-
19
- private dependencies: IDependencyResponse;
20
-
21
- constructor(scanRawResults: ScannerResults, dependencies?: IDependencyResponse) {
22
- this.scanRawResults=scanRawResults;
23
- this.dependencies = dependencies;
24
- }
25
-
26
- public getLayerName(): string {
27
- return this.constructor.name;
28
- }
29
-
30
- public getData(): IDataLayers {
31
- const componentLayer = <IDataLayers>{component: null};
32
-
33
- if (!this.scanRawResults && !this.dependencies) return componentLayer;
34
-
35
-
36
- //Extract all components from scanRawResults, does not matter if there are duplicated
37
- //And removes all no match results.
38
- this.componentList = Object.values(this.scanRawResults).flat();
39
- this.componentList = this.componentList.filter(component => component.id!=='none')
40
- const scannerComponentLayer = this.parseComponentsFromScanner(this.componentList);
41
- const dependenciesComponentLayer = this.parseComponentsFromDependencies(this.dependencies);
42
-
43
- componentLayer.component = [...scannerComponentLayer, ...dependenciesComponentLayer].sort(
44
- (itemA, itemB) => {
45
- if ( itemA.name < itemB.name) return -1;
46
- else if( itemA.name > itemB.name) return 1;
47
- return 0;
48
- });
49
-
50
- if(!componentLayer.component.length) componentLayer.component=null;
51
-
52
- return componentLayer
53
-
54
- }
55
-
56
- private parseComponentsFromDependencies(dependencies: IDependencyResponse): Array<ComponentDataLayer> {
57
- const componentLayer: Array<ComponentDataLayer> = [];
58
- if (!dependencies) return componentLayer;
59
-
60
- dependencies.filesList.forEach(file => {
61
- file.dependenciesList.forEach(dependency => {
62
- const newComponent: ComponentDataLayer = <ComponentDataLayer>{};
63
- newComponent.key = dependency.purl;
64
- newComponent.purls = [dependency.purl];
65
- newComponent.name = dependency.component;
66
- newComponent.url = null;
67
- newComponent.vendor = null;
68
- newComponent.health = null;
69
- newComponent.versions = [{
70
- version: dependency.version,
71
- licenses: dependency.licensesList.map(license => license.spdxId),
72
- copyrights: null,
73
- cryptography: null,
74
- quality: null,
75
- }];
76
-
77
- const existingComponent = componentLayer.find(component => component.key === newComponent.key);
78
- if (existingComponent) {
79
- const existingVersion = existingComponent.versions.find(version => version.version === newComponent.versions[0].version);
80
- if(!existingVersion) existingComponent.versions.push({
81
- version : newComponent.versions[0].version,
82
- licenses: newComponent.versions[0].licenses,
83
- copyrights: newComponent.versions[0].copyrights,
84
- quality: null,
85
- cryptography: null,
86
- });
87
- } else { //Component does not exist, insert as it is.
88
- componentLayer.push(newComponent);
89
- }
90
-
91
- });
92
- });
93
- return componentLayer;
94
- }
95
-
96
- private parseComponentsFromScanner(scanComponents: Array<ScannerComponent>): Array<ComponentDataLayer> {
97
- const componentLayer: Array<ComponentDataLayer> = [];
98
- if (!scanComponents) return componentLayer
99
-
100
- for (let i=0 ; i<scanComponents.length ; i++) {
101
-
102
- try {
103
-
104
- // qualityValue would have a number from 0 to 5 or undefined.
105
- const qualityValue = Number(scanComponents[i]?.quality?.shift()?.score?.split("/").shift());
106
-
107
-
108
- //Generates a new component
109
- const newComponent: ComponentDataLayer = {
110
- key: scanComponents[i].purl[0],
111
- purls: scanComponents[i].purl,
112
- name: scanComponents[i].component,
113
- url: scanComponents[i].url,
114
- vendor: scanComponents[i].vendor,
115
- health: scanComponents[i].health,
116
- versions: [{
117
- version: scanComponents[i].version,
118
- licenses: scanComponents[i].licenses.map(license => license.name),
119
- copyrights: scanComponents[i].copyrights,
120
- quality: { sum: 0, scoreAvg: 0, count: 0 },
121
- cryptography: scanComponents[i]?.cryptography,
122
- }]
123
- };
124
-
125
- //Removes duplicated licenses
126
- newComponent.versions[0].licenses = [...new Set(newComponent.versions[0].licenses)]
127
-
128
- if(qualityValue) {
129
- newComponent.versions[0].quality.count = 1;
130
- newComponent.versions[0].quality.sum = qualityValue;
131
- newComponent.versions[0].quality.scoreAvg = qualityValue;
132
- }
133
-
134
- //Merge new component in componentList
135
- const componentTarget = componentLayer.find(component => component.key === newComponent.key);
136
- if (componentTarget) {
137
- const versionTarget = componentTarget.versions.find(item => item.version === newComponent.versions[0].version);
138
- if (versionTarget) {
139
-
140
- //Insert licenses
141
- newComponent.versions[0].licenses.forEach(licence => {
142
- if (!versionTarget.licenses.includes(licence)) versionTarget.licenses.push(licence);
143
- });
144
-
145
- //Insert copyright
146
- newComponent.versions[0]?.copyrights?.forEach(newCopyright => {
147
- if (versionTarget.copyrights.every(copyright => newCopyright.name != copyright.name)) {
148
- versionTarget.copyrights.push(newCopyright);
149
- }
150
- });
151
-
152
- //Insert cryptography
153
- newComponent.versions[0]?.cryptography?.forEach(newCryptoAlgo => {
154
- if (versionTarget.cryptography.every(cryptoAlgorithm => cryptoAlgorithm.algorithm != newCryptoAlgo.algorithm)) {
155
- versionTarget.cryptography.push(newCryptoAlgo);
156
- }
157
- });
158
-
159
- //recalculate quality average in case we have a quality value
160
- if (qualityValue) {
161
- versionTarget.quality.count++;
162
- versionTarget.quality.sum += Number(qualityValue);
163
- versionTarget.quality.scoreAvg = versionTarget.quality.sum / versionTarget.quality.count
164
- }
165
-
166
-
167
-
168
- } else {
169
- //newComponent version is not included in the component with same purl key
170
- componentTarget.versions = componentTarget.versions.concat(newComponent.versions);
171
- }
172
- } else componentLayer.push(newComponent);
173
-
174
- } catch (e) {
175
- console.error(`Problem inserting new component building Component Data Layer - `, e);
176
- }
177
- }
178
-
179
- //Replace [] for null in versions
180
- for (let i=0 ; i<componentLayer.length ; i++) {
181
- if(!componentLayer[i].health) componentLayer[i].health = null;
182
- componentLayer[i].versions.forEach(version => {
183
- if(version.copyrights?.length == 0) version.copyrights = null;
184
- if(version.licenses?.length == 0) version.licenses = null;
185
- if(version.cryptography?.length === 0) version.cryptography = null;
186
- if(version.quality.count === 0 ) version.quality = null;
187
- })
188
- }
189
-
190
- return componentLayer;
191
-
192
- }
193
-
194
- }
195
-
@@ -1,48 +0,0 @@
1
- import {
2
- DataProvider,
3
- IDataLayers,
4
- DependencyDataLayer,
5
- License, Dependency
6
- } from '../DataLayerTypes';
7
- import { IDependencyResponse } from '../../Dependencies/DependencyTypes';
8
-
9
- export class DependencyDataProvider implements DataProvider {
10
-
11
- private dependencies: IDependencyResponse;
12
-
13
- constructor(dependencies: IDependencyResponse) {
14
- this.dependencies = dependencies;
15
- }
16
-
17
- public getLayerName(): string {
18
- return this.constructor.name;
19
- }
20
-
21
- public getData(): IDataLayers {
22
- const dependencyLayer = <IDataLayers>{dependencies: null};
23
- if(!this.dependencies) return dependencyLayer;
24
- const parsedDepLayer = this.parseDependencyData(this.dependencies);
25
- dependencyLayer.dependencies = parsedDepLayer;
26
- if (!dependencyLayer.dependencies.length) dependencyLayer.dependencies=null;
27
-
28
- return dependencyLayer;
29
- }
30
-
31
- public parseDependencyData(dependencies: IDependencyResponse): DependencyDataLayer[]{
32
- const dependencyLayer: Array<DependencyDataLayer> = [];
33
-
34
- dependencies.filesList.forEach(file => {
35
- const newDependencies: Array<Dependency> = [];
36
- file.dependenciesList.forEach(dependency => {
37
- const newLicenses: Array<License> = [];
38
- dependency.licensesList.forEach((license) => {
39
- newLicenses.push({name: license.name, spdxid: license.spdxId});
40
- });
41
- newDependencies.push({purl: dependency.purl, licenses: newLicenses, version: dependency.version, component: dependency.component});
42
- });
43
- dependencyLayer.push({file: file.file, dependencies: newDependencies});
44
- });
45
-
46
- return dependencyLayer;
47
- }
48
- }
@@ -1,184 +0,0 @@
1
- import {
2
- DataProvider,
3
- IDataLayers,
4
- LicenseComponent,
5
- LicenseDataLayer
6
- } from '../DataLayerTypes';
7
- import {
8
- ScannerComponent,
9
- ScannerResults
10
- } from '../../scanner/ScannerTypes';
11
- import { IDependencyResponse } from '../../Dependencies/DependencyTypes';
12
-
13
- export class LicenseDataProvider implements DataProvider {
14
-
15
- private scanResults: ScannerResults
16
-
17
- private componentList: ScannerComponent[];
18
-
19
- private dependencies: IDependencyResponse;
20
-
21
- private licenseStorage: Record<string, LicenseDataLayer>;
22
-
23
- private licenseLayer: Array<LicenseDataLayer>;
24
-
25
- constructor(scanResults: ScannerResults, dependencies?: IDependencyResponse ) {
26
- this.scanResults = scanResults;
27
- this.dependencies = dependencies;
28
-
29
- //Maps a license name to its own data
30
- this.licenseStorage = {};
31
- this.licenseLayer = [];
32
- }
33
-
34
- public getLayerName(): string {
35
- return this.constructor.name;
36
- }
37
-
38
- public getData(): IDataLayers {
39
-
40
- this.componentList = Object.values(this.scanResults).flat();
41
- this.componentList = this.componentList.filter(component => component.id!=='none')
42
-
43
- if (this.componentList.length >0)
44
- this.updateLicenseStorageFromComponentList();
45
-
46
- if (this.dependencies && this.dependencies.filesList.length > 0)
47
- this.updateLicenseStorageFromDependencies();
48
-
49
-
50
- this.licenseLayer = Object.values(this.licenseStorage);
51
- if (this.licenseLayer.length > 0)
52
- this.updateIncompatibilities();
53
-
54
- this.licenseLayer.sort((itemA, itemB) => {
55
- if (itemA.value > itemB.value) return -1
56
- else if (itemA.value < itemB.value) return 1
57
- return 0;
58
- });
59
-
60
- return {licenses: this.licenseLayer} as IDataLayers
61
- }
62
-
63
- //Gets all license from the result of scan and stores in this.licenseStorage map
64
- private updateLicenseStorageFromComponentList() {
65
- this.componentList.forEach(component => {
66
- component.licenses.forEach((license) => {
67
-
68
- const newLicenseComponent: LicenseComponent = <LicenseComponent>{};
69
- newLicenseComponent.purl = component.purl[0];
70
- newLicenseComponent.vendor = component.vendor;
71
- newLicenseComponent.versions = [component.version];
72
- newLicenseComponent.name = component.component
73
- newLicenseComponent.url = component.url;
74
-
75
- const licenseExist = !!this.licenseStorage[license.name];
76
- if(!licenseExist){
77
- const newLicense: LicenseDataLayer = <LicenseDataLayer>{};
78
- newLicense.value = 1;
79
- newLicense.label = license.name;
80
- newLicense.copyleft = license.copyleft === 'yes' ? true : false;
81
- newLicense.hasIncompatibles = [];
82
- newLicense.incompatibleWith = license.incompatible_with!== undefined ? license.incompatible_with.split(',').map(il=> il.trim()) : [];
83
- newLicense.components = [newLicenseComponent];
84
- this.licenseStorage[license.name] = newLicense;
85
- } else {
86
- this.licenseStorage[license.name] = this.insertComponentIntoLicense(this.licenseStorage[license.name], newLicenseComponent);
87
- }
88
- });
89
- });
90
- }
91
-
92
- //Gets all licenses from results of dependency analysis
93
- private updateLicenseStorageFromDependencies() {
94
- this.dependencies.filesList.forEach(file => {
95
- file.dependenciesList.forEach(dependency => {
96
- dependency.licensesList.forEach(license => {
97
-
98
-
99
- const newLicenseComponent = <LicenseComponent>{};
100
- newLicenseComponent.purl = dependency.purl;
101
- newLicenseComponent.versions = [dependency.version];
102
- newLicenseComponent.name = dependency.component;
103
- newLicenseComponent.vendor = null;
104
- newLicenseComponent.url = null;
105
-
106
- if(license.spdxId !== '') {
107
- license.spdxId.split(/;|\//g).forEach(license_name => {
108
-
109
- const licenseExist = !!this.licenseStorage[license_name];
110
- if (!licenseExist) {
111
- const newLicense: LicenseDataLayer = <LicenseDataLayer>{};
112
- newLicense.value = 1;
113
- newLicense.label = license_name;
114
- newLicense.copyleft = false;
115
- newLicense.hasIncompatibles = [];
116
- newLicense.incompatibleWith = [];
117
- newLicense.components = [newLicenseComponent];
118
- this.licenseStorage[license_name] = newLicense;
119
- } else {
120
- this.licenseStorage[license_name] = this.insertComponentIntoLicense(this.licenseStorage[license_name], newLicenseComponent);
121
- }
122
- });
123
- } else { // Unknown license
124
- const licenseExist = !!this.licenseStorage['unknown'];
125
- if (!licenseExist) {
126
- const newLicense: LicenseDataLayer = <LicenseDataLayer>{};
127
- newLicense.value = 1;
128
- newLicense.label = 'unknown';
129
- newLicense.copyleft = false;
130
- newLicense.hasIncompatibles = [];
131
- newLicense.incompatibleWith = [];
132
- newLicense.components = [newLicenseComponent];
133
- this.licenseStorage['unknown'] = newLicense;
134
- } else{
135
- this.licenseStorage['unknown'] = this.insertComponentIntoLicense(this.licenseStorage['unknown'], newLicenseComponent);
136
- }
137
- }
138
- });
139
- });
140
- });
141
- }
142
-
143
- private updateIncompatibilities() {
144
- for (let l = 0; l < this.licenseLayer.length; l += 1) {
145
- const license = this.licenseLayer[l];
146
- if (license.incompatibleWith !== undefined)
147
- for (let i = 0; i < license.incompatibleWith.length; i += 1) {
148
- if (this.licenseLayer.some((lic) => lic.label === license.incompatibleWith[i]))
149
- license.hasIncompatibles.push(license.incompatibleWith[i]);
150
- }
151
- }
152
- }
153
-
154
-
155
- private insertComponentIntoLicense(license: LicenseDataLayer, newComponent: LicenseComponent): LicenseDataLayer {
156
- const componentIndex = license.components.findIndex((c)=> c.purl === newComponent.purl);
157
- if (componentIndex >= 0) { //if newComponent exist in license
158
- const versionExist = !!license.components[componentIndex].versions.find((version)=>version === newComponent.versions[0]);
159
- if (!versionExist) {
160
- license.components[componentIndex].versions.push(newComponent.versions[0]);
161
- license.value++;
162
- }
163
- } else {
164
- license.components.push(newComponent);
165
- license.value++;
166
- }
167
- return license;
168
- }
169
-
170
- private unknownLicensesToEnd(){
171
- // let unknownLicenses = null;
172
- // if(this.licenseMapper['unknown']){
173
- // unknownLicenses = this.licenseMapper['unknown'];
174
- // delete this.licenseMapper['unknown'];
175
- // }
176
- //
177
- // this.licenses = Object.values((this.licenseMapper));
178
- // if(unknownLicenses){
179
- // this.licenses.push(unknownLicenses);
180
- // }
181
- }
182
-
183
-
184
- }
@@ -1,47 +0,0 @@
1
- import { DataProvider, IDataLayers, SummaryDataLayer } from '../DataLayerTypes';
2
- import {
3
- ScannerComponent,
4
- ScannerComponentId,
5
- ScannerResults
6
- } from '../../scanner/ScannerTypes';
7
-
8
- export class SummaryDataProvider implements DataProvider {
9
-
10
- private scannerResults: ScannerResults;
11
-
12
- private summary: SummaryDataLayer;
13
-
14
- private projectName: string;
15
-
16
- private projectCreateAt: Date;
17
-
18
- constructor(projectName: string, projectCreatedAt: Date, scannerResults: ScannerResults) {
19
- this.scannerResults = scannerResults;
20
- this.projectName = projectName;
21
- this.projectCreateAt = projectCreatedAt
22
- this.summary = <SummaryDataLayer>{};
23
- }
24
-
25
- public getLayerName(): string {
26
- return this.constructor.name;
27
- }
28
-
29
- public getData(): IDataLayers {
30
- this.summary.projectName = this.projectName;
31
- this.summary.timestamp = this.projectCreateAt;
32
- this.summary.totalFiles = 0;
33
- this.summary.noMatchFiles = 0;
34
- this.summary.matchedFiles = 0;
35
-
36
- for (const [file, components] of Object.entries(this.scannerResults)) {
37
- components.forEach(component => {
38
- if (component.id==ScannerComponentId.NONE) this.summary.noMatchFiles++;
39
- else this.summary.matchedFiles++;
40
- this.summary.totalFiles++;
41
- });
42
- }
43
-
44
- return <IDataLayers>{summary: this.summary};
45
- }
46
-
47
- }
@@ -1,91 +0,0 @@
1
- import path from 'path';
2
- import fs from 'fs';
3
- import { Tree } from '../tree/Tree';
4
- import { DecompressionFilter } from '../tree/Filters/DecompressionFilter';
5
- import { Decompressor } from './Decompressor/Decompressor';
6
- import { DecompressZip } from './Decompressor/DecompressZips';
7
- import { DecompressTgz } from './Decompressor/DecompressTgz';
8
-
9
- export class DecompressionManager {
10
-
11
- private decompressorList: Array<Decompressor>
12
-
13
- private decompressionLevel: number;
14
-
15
- private suffix: string;
16
-
17
- private decompressOverride: boolean; //When true: Decompress files into <zip_name>-<suffix> whether folder exist or not
18
- //When false: Decompress files into <zip_name>-<suffix>-X where X can be any number until find a free folder name
19
-
20
- constructor(decompressionLevel: number = 1, suffix: string = "-unzipped", decompressOverride: boolean = false) {
21
- this.decompressionLevel = decompressionLevel;
22
- this.decompressOverride = decompressOverride;
23
- this.suffix = suffix;
24
- this.decompressorList = [
25
- new DecompressTgz(),
26
- new DecompressZip()
27
- ];
28
-
29
- }
30
-
31
- public addDecompressor(d: Decompressor) {
32
- this.decompressorList.push(d);
33
- }
34
-
35
- public getSupportedFormats(): Array<string> {
36
- const supportedFormats = [];
37
- this.decompressorList.forEach((d) => {
38
- supportedFormats.push(...d.getSupportedFormats())
39
- });
40
- return supportedFormats;
41
- }
42
-
43
- public async decompress(archivesPaths: Array<string>): Promise<Array<string>> {
44
- for (const archivePath of archivesPaths) await this.decompressRecursive(archivePath, 0);
45
- const parentFoldersPath = archivesPaths.map(archivePath => `${archivePath}${this.suffix}`);
46
- return parentFoldersPath;
47
- }
48
-
49
-
50
- public async decompressRecursive(archivePath: string, level: number): Promise<void> {
51
- if(level>=this.decompressionLevel) return
52
-
53
- const archiveRootPath = path.dirname(archivePath);
54
- const archiveName = path.basename(archivePath);
55
- let newFolderPath = `${archiveRootPath}${path.sep}${archiveName}${this.suffix}`;
56
-
57
- const isSupported = this.decompressorList.some((d) => d.isSupported(archiveName))
58
- if(isSupported) {
59
-
60
-
61
- let i = 0;
62
- const r = new RegExp("(?<=" + this.suffix +")-\\d+$") //Selects last -X where X is a number
63
- while( !this.decompressOverride && fs.existsSync(newFolderPath) ) { //Search for a free name
64
- newFolderPath = newFolderPath.replace(r, "");
65
- newFolderPath += `-${i}`
66
- i++;
67
- }
68
-
69
- await fs.promises.mkdir(newFolderPath, { recursive: true });
70
-
71
- //Search for decompressor and extract archive
72
- for (const d of this.decompressorList) {
73
- if (d.isSupported(archiveName)) {
74
- await d.run(archivePath, newFolderPath);
75
- break;
76
- }
77
- }
78
-
79
-
80
- //Search for new archives
81
- const tree = new Tree(newFolderPath);
82
- tree.build()
83
- const newFilesPath = tree.getFileList(new DecompressionFilter(""));
84
- for (const newFilePath of newFilesPath) {
85
- await this.decompressRecursive(newFilePath, level+1);
86
- }
87
- }
88
-
89
- }
90
-
91
- }
@@ -1,20 +0,0 @@
1
- import { Decompressor } from './Decompressor';
2
- import fs from 'fs';
3
- import tar from 'tar';
4
-
5
- export class DecompressTgz extends Decompressor{
6
-
7
- constructor() {
8
- super();
9
- this.supportedFormats = [
10
- ".tar.gz",
11
- ".tgz",
12
- ".tar",
13
- ]
14
- }
15
-
16
- public async run(archivePath: string, destPath: string): Promise<void> {
17
- return tar.x({C: destPath, file: archivePath});
18
- }
19
-
20
- }
@@ -1,21 +0,0 @@
1
- import { Decompressor } from './Decompressor';
2
- import AdmZip from 'adm-zip';
3
-
4
- export class DecompressZip extends Decompressor{
5
-
6
- constructor() {
7
- super();
8
- this.supportedFormats = [
9
- ".zip",
10
- ".jar",
11
- ".ear",
12
- ".war"
13
- ]
14
- }
15
-
16
- public async run(archivePath: string, destPath: string): Promise<void> {
17
- const zip = new AdmZip(archivePath);
18
- zip.extractAllTo(destPath);
19
- }
20
-
21
- }
@@ -1,20 +0,0 @@
1
- export abstract class Decompressor {
2
- protected supportedFormats: Array<string>;
3
-
4
- public abstract async run(archivePath: string, destPath: string): Promise<void>;
5
-
6
- public isSupported(filename: string) {
7
- if (this.supportedFormats.some((format) => filename.endsWith(format))) return true;
8
- return false;
9
- }
10
-
11
-
12
- /**
13
- * Returns the extension supported by this decompressor
14
- * Includes the '.' appended
15
- */
16
- public getSupportedFormats(): Array<string> {
17
- return this.supportedFormats;
18
- }
19
-
20
- }