slnodejs 6.0.29 → 6.1.2

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 (413) hide show
  1. package/lib/cli.js +1 -1
  2. package/package.json +124 -123
  3. package/tsOutputs/api.d.ts +12 -10
  4. package/tsOutputs/api.js +116 -115
  5. package/tsOutputs/build-scanner/ast-utils.js +39 -0
  6. package/tsOutputs/build-scanner/ast-utils.js.map +1 -0
  7. package/tsOutputs/build-scanner/build-diff-process.js +352 -346
  8. package/tsOutputs/build-scanner/build-diff-process.js.map +1 -1
  9. package/tsOutputs/build-scanner/cia.js +95 -95
  10. package/tsOutputs/build-scanner/complexity-metrics/complexity-metrics.js +1 -0
  11. package/tsOutputs/build-scanner/complexity-metrics/complexity-metrics.js.map +1 -0
  12. package/tsOutputs/build-scanner/configuration-loader.js +17 -17
  13. package/tsOutputs/build-scanner/current-agent-instance.js +5 -5
  14. package/tsOutputs/build-scanner/default-values-resolver.js +42 -42
  15. package/tsOutputs/build-scanner/entities-mapper.js +35 -35
  16. package/tsOutputs/build-scanner/file-and-folder-utils.js +176 -176
  17. package/tsOutputs/build-scanner/file-system/actual-file.js +66 -46
  18. package/tsOutputs/build-scanner/file-system/actual-file.js.map +1 -1
  19. package/tsOutputs/build-scanner/git-format-builder.js +68 -68
  20. package/tsOutputs/build-scanner/global-error-handler.js +20 -20
  21. package/tsOutputs/build-scanner/instrumentation/browser-instrumenter.js +299 -299
  22. package/tsOutputs/build-scanner/instrumentation/browser-instrumenter.js.map +1 -1
  23. package/tsOutputs/build-scanner/instrumentation/file-instrumenter.js +271 -180
  24. package/tsOutputs/build-scanner/instrumentation/file-instrumenter.js.map +1 -1
  25. package/tsOutputs/build-scanner/instrumentation/instrumentation-utils.js +58 -58
  26. package/tsOutputs/build-scanner/instrumentation/instrumented-file-size-reducer.js +159 -159
  27. package/tsOutputs/build-scanner/instrumentation/markup-file-instrumenter.js +185 -137
  28. package/tsOutputs/build-scanner/instrumentation/markup-file-instrumenter.js.map +1 -1
  29. package/tsOutputs/build-scanner/instrumentation/sync-instrumenter.js +39 -39
  30. package/tsOutputs/build-scanner/js_diff/ast-node-types.js +44 -44
  31. package/tsOutputs/build-scanner/js_diff/branch-key.js +10 -10
  32. package/tsOutputs/build-scanner/js_diff/branch-signature.js +156 -156
  33. package/tsOutputs/build-scanner/js_diff/code-metrics-spec.js +1 -0
  34. package/tsOutputs/build-scanner/js_diff/code-metrics-spec.js.map +1 -0
  35. package/tsOutputs/build-scanner/js_diff/code-metrics.js +1 -0
  36. package/tsOutputs/build-scanner/js_diff/code-metrics.js.map +1 -0
  37. package/tsOutputs/build-scanner/js_diff/create-node-key.js +7 -7
  38. package/tsOutputs/build-scanner/js_diff/dry-run-files-mapping.js +23 -23
  39. package/tsOutputs/build-scanner/js_diff/dry-run-files-mapping.js.map +1 -1
  40. package/tsOutputs/build-scanner/js_diff/file-signature.js +234 -244
  41. package/tsOutputs/build-scanner/js_diff/file-signature.js.map +1 -1
  42. package/tsOutputs/build-scanner/js_diff/files-mapping.js +460 -473
  43. package/tsOutputs/build-scanner/js_diff/files-mapping.js.map +1 -1
  44. package/tsOutputs/build-scanner/js_diff/generated-file-signature.js +143 -143
  45. package/tsOutputs/build-scanner/js_diff/generated-file-signature.js.map +1 -1
  46. package/tsOutputs/build-scanner/js_diff/globalMethodIndexer.js +26 -26
  47. package/tsOutputs/build-scanner/js_diff/guess-method-location.js +100 -97
  48. package/tsOutputs/build-scanner/js_diff/guess-method-location.js.map +1 -1
  49. package/tsOutputs/build-scanner/js_diff/guess-method-name.js +54 -54
  50. package/tsOutputs/build-scanner/js_diff/method-signature.js +142 -140
  51. package/tsOutputs/build-scanner/js_diff/method-signature.js.map +1 -1
  52. package/tsOutputs/build-scanner/js_diff/sl-mapper.js +136 -75
  53. package/tsOutputs/build-scanner/js_diff/sl-mapper.js.map +1 -1
  54. package/tsOutputs/build-scanner/js_diff/source-data-enricher.js +89 -89
  55. package/tsOutputs/build-scanner/js_diff/source-data-enricher.js.map +1 -1
  56. package/tsOutputs/build-scanner/js_diff/source-files-notifier.js +31 -31
  57. package/tsOutputs/build-scanner/js_diff/source-position-mapper.js +29 -29
  58. package/tsOutputs/build-scanner/mappings/contracts.js +3 -0
  59. package/tsOutputs/build-scanner/mappings/contracts.js.map +1 -0
  60. package/tsOutputs/build-scanner/mappings/ensure-files-handler.service.js +214 -0
  61. package/tsOutputs/build-scanner/mappings/ensure-files-handler.service.js.map +1 -0
  62. package/tsOutputs/build-scanner/mappings/file-element-utils.js +47 -0
  63. package/tsOutputs/build-scanner/mappings/file-element-utils.js.map +1 -0
  64. package/tsOutputs/build-scanner/mappings/file-enricher.js +205 -0
  65. package/tsOutputs/build-scanner/mappings/file-enricher.js.map +1 -0
  66. package/tsOutputs/build-scanner/mappings/files-data-container.js +52 -0
  67. package/tsOutputs/build-scanner/mappings/files-data-container.js.map +1 -0
  68. package/tsOutputs/build-scanner/mappings/scm-file-fixer.js +78 -0
  69. package/tsOutputs/build-scanner/mappings/scm-file-fixer.js.map +1 -0
  70. package/tsOutputs/build-scanner/markup-files-parser.js +71 -71
  71. package/tsOutputs/build-scanner/nopt-types.js +19 -19
  72. package/tsOutputs/build-scanner/nopt-usage-2.js +56 -56
  73. package/tsOutputs/build-scanner/polyfills.js +6 -6
  74. package/tsOutputs/build-scanner/scm/parse-log.js +5 -5
  75. package/tsOutputs/build-scanner/scm/scm-files-container.js +49 -49
  76. package/tsOutputs/build-scanner/sl-config-cia-cli.js +175 -175
  77. package/tsOutputs/build-scanner/utils.js +91 -91
  78. package/tsOutputs/cli-parse/agent-instance-data.d.ts +2 -2
  79. package/tsOutputs/cli-parse/agent-instance-data.js +6 -6
  80. package/tsOutputs/cli-parse/child-process-wrapper.js +82 -82
  81. package/tsOutputs/cli-parse/cli.js +509 -506
  82. package/tsOutputs/cli-parse/cli.js.map +1 -1
  83. package/tsOutputs/cli-parse/constants/constants.js +55 -56
  84. package/tsOutputs/cli-parse/constants/constants.js.map +1 -1
  85. package/tsOutputs/cli-parse/constants/third-parties.js +10 -10
  86. package/tsOutputs/cli-parse/contracts.js +2 -2
  87. package/tsOutputs/cli-parse/custom-commander.js +44 -31
  88. package/tsOutputs/cli-parse/custom-commander.js.map +1 -1
  89. package/tsOutputs/cli-parse/executors/base-executor.js +263 -254
  90. package/tsOutputs/cli-parse/executors/base-executor.js.map +1 -1
  91. package/tsOutputs/cli-parse/executors/build-args-dto.js +55 -55
  92. package/tsOutputs/cli-parse/executors/build-end-executor.js +115 -117
  93. package/tsOutputs/cli-parse/executors/build-end-executor.js.map +1 -1
  94. package/tsOutputs/cli-parse/executors/build-executor.js +147 -149
  95. package/tsOutputs/cli-parse/executors/build-executor.js.map +1 -1
  96. package/tsOutputs/cli-parse/executors/config-executor.js +112 -111
  97. package/tsOutputs/cli-parse/executors/config-executor.js.map +1 -1
  98. package/tsOutputs/cli-parse/executors/dry-run/base-data.js +55 -55
  99. package/tsOutputs/cli-parse/executors/dry-run/base-data.js.map +1 -1
  100. package/tsOutputs/cli-parse/executors/dry-run/build-mapping-data.js +228 -230
  101. package/tsOutputs/cli-parse/executors/dry-run/build-mapping-data.js.map +1 -1
  102. package/tsOutputs/cli-parse/executors/dry-run/dry-run-executor.js +277 -277
  103. package/tsOutputs/cli-parse/executors/dry-run/dry-run-executor.js.map +1 -1
  104. package/tsOutputs/cli-parse/executors/dry-run/dry-run-validation.js +120 -122
  105. package/tsOutputs/cli-parse/executors/dry-run/dry-run-validation.js.map +1 -1
  106. package/tsOutputs/cli-parse/executors/dry-run/footprints-data.js +130 -72
  107. package/tsOutputs/cli-parse/executors/dry-run/footprints-data.js.map +1 -1
  108. package/tsOutputs/cli-parse/executors/dry-run/helper-methods.js +104 -99
  109. package/tsOutputs/cli-parse/executors/dry-run/helper-methods.js.map +1 -1
  110. package/tsOutputs/cli-parse/executors/end-execution-executor.js +88 -90
  111. package/tsOutputs/cli-parse/executors/end-execution-executor.js.map +1 -1
  112. package/tsOutputs/cli-parse/executors/integration-build-components-executor.js +132 -134
  113. package/tsOutputs/cli-parse/executors/integration-build-components-executor.js.map +1 -1
  114. package/tsOutputs/cli-parse/executors/integration-build-delete-components-executor.js +73 -75
  115. package/tsOutputs/cli-parse/executors/integration-build-delete-components-executor.js.map +1 -1
  116. package/tsOutputs/cli-parse/executors/integration-build-update-components-executor.js +71 -73
  117. package/tsOutputs/cli-parse/executors/integration-build-update-components-executor.js.map +1 -1
  118. package/tsOutputs/cli-parse/executors/mocha-executor.js +122 -124
  119. package/tsOutputs/cli-parse/executors/mocha-executor.js.map +1 -1
  120. package/tsOutputs/cli-parse/executors/nyc-report-executor.js +104 -106
  121. package/tsOutputs/cli-parse/executors/nyc-report-executor.js.map +1 -1
  122. package/tsOutputs/cli-parse/executors/pr-config-executor.js +83 -85
  123. package/tsOutputs/cli-parse/executors/pr-config-executor.js.map +1 -1
  124. package/tsOutputs/cli-parse/executors/run-executor.js +93 -95
  125. package/tsOutputs/cli-parse/executors/run-executor.js.map +1 -1
  126. package/tsOutputs/cli-parse/executors/start-execution-executor.js +91 -93
  127. package/tsOutputs/cli-parse/executors/start-execution-executor.js.map +1 -1
  128. package/tsOutputs/cli-parse/executors/test-executions-executor.js +75 -77
  129. package/tsOutputs/cli-parse/executors/test-executions-executor.js.map +1 -1
  130. package/tsOutputs/cli-parse/executors/test-listener-executor.js +149 -151
  131. package/tsOutputs/cli-parse/executors/test-listener-executor.js.map +1 -1
  132. package/tsOutputs/cli-parse/executors/test-runner-build-session-data-builder.js +75 -77
  133. package/tsOutputs/cli-parse/executors/test-runner-build-session-data-builder.js.map +1 -1
  134. package/tsOutputs/cli-parse/executors/upload-report-executor.js +116 -118
  135. package/tsOutputs/cli-parse/executors/upload-report-executor.js.map +1 -1
  136. package/tsOutputs/cli-parse/utils.js +32 -32
  137. package/tsOutputs/common/agent-events/agent-events-conracts.d.ts +123 -123
  138. package/tsOutputs/common/agent-events/agent-events-conracts.js +56 -56
  139. package/tsOutputs/common/agent-events/agent-events-controller.d.ts +45 -45
  140. package/tsOutputs/common/agent-events/agent-events-controller.js +301 -301
  141. package/tsOutputs/common/agent-events/agent-instance-info-builder.d.ts +22 -22
  142. package/tsOutputs/common/agent-events/agent-instance-info-builder.js +63 -63
  143. package/tsOutputs/common/agent-events/agent-start-info-builder.d.ts +14 -14
  144. package/tsOutputs/common/agent-events/agent-start-info-builder.js +23 -23
  145. package/tsOutputs/common/agent-events/ci-info-builder.d.ts +7 -7
  146. package/tsOutputs/common/agent-events/ci-info-builder.js +30 -30
  147. package/tsOutputs/common/agent-events/cockpit-notifier.d.ts +26 -26
  148. package/tsOutputs/common/agent-events/cockpit-notifier.js +119 -119
  149. package/tsOutputs/common/agent-events/dry-run-agent-events-controller.d.ts +7 -7
  150. package/tsOutputs/common/agent-events/dry-run-agent-events-controller.js +31 -33
  151. package/tsOutputs/common/agent-events/dry-run-agent-events-controller.js.map +1 -1
  152. package/tsOutputs/common/agent-events/machine-info-builder.d.ts +7 -7
  153. package/tsOutputs/common/agent-events/machine-info-builder.js +35 -35
  154. package/tsOutputs/common/agent-events/nodejs-env-info-builder.d.ts +8 -8
  155. package/tsOutputs/common/agent-events/nodejs-env-info-builder.js +19 -19
  156. package/tsOutputs/common/agent-events/sensitive-data-filter.d.ts +2 -2
  157. package/tsOutputs/common/agent-events/sensitive-data-filter.js +54 -54
  158. package/tsOutputs/common/agent-instance-data.d.ts +10 -10
  159. package/tsOutputs/common/agent-instance-data.js +39 -39
  160. package/tsOutputs/common/config-process/config-loader.d.ts +8 -8
  161. package/tsOutputs/common/config-process/config-loader.js +86 -86
  162. package/tsOutputs/common/config-process/config-system.d.ts +88 -88
  163. package/tsOutputs/common/config-process/config-system.js +293 -293
  164. package/tsOutputs/common/config-process/config.d.ts +60 -60
  165. package/tsOutputs/common/config-process/config.js +90 -92
  166. package/tsOutputs/common/config-process/config.js.map +1 -1
  167. package/tsOutputs/common/config-process/index.d.ts +21 -21
  168. package/tsOutputs/common/config-process/index.js +125 -127
  169. package/tsOutputs/common/config-process/index.js.map +1 -1
  170. package/tsOutputs/common/constants/constants.d.ts +18 -18
  171. package/tsOutputs/common/constants/constants.js +29 -29
  172. package/tsOutputs/common/constants/sl-env-vars.d.ts +52 -52
  173. package/tsOutputs/common/constants/sl-env-vars.js +122 -122
  174. package/tsOutputs/common/contracts.d.ts +123 -122
  175. package/tsOutputs/common/contracts.js +2 -2
  176. package/tsOutputs/common/coverage-elements/contracts.d.ts +25 -25
  177. package/tsOutputs/common/coverage-elements/contracts.js +8 -8
  178. package/tsOutputs/common/coverage-elements/file-element.d.ts +35 -35
  179. package/tsOutputs/common/coverage-elements/file-element.js +158 -158
  180. package/tsOutputs/common/coverage-elements/istanbul-unique-id-converter.d.ts +12 -12
  181. package/tsOutputs/common/coverage-elements/istanbul-unique-id-converter.js +95 -97
  182. package/tsOutputs/common/coverage-elements/istanbul-unique-id-converter.js.map +1 -1
  183. package/tsOutputs/common/coverage-elements/new-id-resolver.d.ts +3 -3
  184. package/tsOutputs/common/coverage-elements/new-id-resolver.js +45 -45
  185. package/tsOutputs/common/coverage-elements/original-module-loader.d.ts +41 -41
  186. package/tsOutputs/common/coverage-elements/original-module-loader.js +189 -189
  187. package/tsOutputs/common/coverage-elements/unique-id-converter.d.ts +32 -32
  188. package/tsOutputs/common/coverage-elements/unique-id-converter.js +234 -234
  189. package/tsOutputs/common/environment-data-service.d.ts +15 -15
  190. package/tsOutputs/common/environment-data-service.js +60 -60
  191. package/tsOutputs/common/events-process/events-contracts.d.ts +52 -52
  192. package/tsOutputs/common/events-process/events-contracts.js +19 -19
  193. package/tsOutputs/common/events-process/events-creator.js +42 -40
  194. package/tsOutputs/common/events-process/events-creator.js.map +1 -1
  195. package/tsOutputs/common/events-process/index.d.ts +42 -42
  196. package/tsOutputs/common/events-process/index.js +265 -266
  197. package/tsOutputs/common/events-process/index.js.map +1 -1
  198. package/tsOutputs/common/footprints-process/collection-interval.d.ts +10 -10
  199. package/tsOutputs/common/footprints-process/collection-interval.js +27 -27
  200. package/tsOutputs/common/footprints-process/footprints-service-proxy.d.ts +12 -12
  201. package/tsOutputs/common/footprints-process/footprints-service-proxy.js +51 -51
  202. package/tsOutputs/common/footprints-process/index.d.ts +71 -71
  203. package/tsOutputs/common/footprints-process/index.js +264 -264
  204. package/tsOutputs/common/footprints-process/istanbul-to-footprints-contract.d.ts +98 -98
  205. package/tsOutputs/common/footprints-process/istanbul-to-footprints-contract.js +9 -9
  206. package/tsOutputs/common/footprints-process/istanbul-to-footprints.d.ts +47 -47
  207. package/tsOutputs/common/footprints-process/istanbul-to-footprints.js +421 -421
  208. package/tsOutputs/common/footprints-process/production-footprints-handler.d.ts +54 -54
  209. package/tsOutputs/common/footprints-process/production-footprints-handler.js +308 -308
  210. package/tsOutputs/common/footprints-process-v6/base-browser-hits-converter.d.ts +20 -20
  211. package/tsOutputs/common/footprints-process-v6/base-browser-hits-converter.js +63 -65
  212. package/tsOutputs/common/footprints-process-v6/base-browser-hits-converter.js.map +1 -1
  213. package/tsOutputs/common/footprints-process-v6/buffer-size-helper.d.ts +15 -15
  214. package/tsOutputs/common/footprints-process-v6/buffer-size-helper.js +40 -40
  215. package/tsOutputs/common/footprints-process-v6/contracts.d.ts +184 -181
  216. package/tsOutputs/common/footprints-process-v6/contracts.js +9 -9
  217. package/tsOutputs/common/footprints-process-v6/footprints-buffer.d.ts +36 -34
  218. package/tsOutputs/common/footprints-process-v6/footprints-buffer.js +147 -135
  219. package/tsOutputs/common/footprints-process-v6/footprints-buffer.js.map +1 -1
  220. package/tsOutputs/common/footprints-process-v6/hits-collector.d.ts +24 -24
  221. package/tsOutputs/common/footprints-process-v6/hits-collector.js +168 -168
  222. package/tsOutputs/common/footprints-process-v6/hits-converter.d.ts +30 -28
  223. package/tsOutputs/common/footprints-process-v6/hits-converter.js +135 -105
  224. package/tsOutputs/common/footprints-process-v6/hits-converter.js.map +1 -1
  225. package/tsOutputs/common/footprints-process-v6/index.d.ts +41 -40
  226. package/tsOutputs/common/footprints-process-v6/index.js +304 -258
  227. package/tsOutputs/common/footprints-process-v6/index.js.map +1 -1
  228. package/tsOutputs/common/footprints-process-v6/location-formatter.d.ts +6 -6
  229. package/tsOutputs/common/footprints-process-v6/location-formatter.js +25 -25
  230. package/tsOutputs/common/footprints-process-v6/relative-path-resolver.d.ts +8 -8
  231. package/tsOutputs/common/footprints-process-v6/relative-path-resolver.js +28 -28
  232. package/tsOutputs/common/footprints-process-v6/remote-browser-hits-converter.d.ts +9 -9
  233. package/tsOutputs/common/footprints-process-v6/remote-browser-hits-converter.js +38 -40
  234. package/tsOutputs/common/footprints-process-v6/remote-browser-hits-converter.js.map +1 -1
  235. package/tsOutputs/common/footprints-process-v6/remote-footprints-process.d.ts +8 -8
  236. package/tsOutputs/common/footprints-process-v6/remote-footprints-process.js +32 -34
  237. package/tsOutputs/common/footprints-process-v6/remote-footprints-process.js.map +1 -1
  238. package/tsOutputs/common/footprints-process-v6/remote-hits-collector.d.ts +14 -14
  239. package/tsOutputs/common/footprints-process-v6/remote-hits-collector.js +39 -41
  240. package/tsOutputs/common/footprints-process-v6/remote-hits-collector.js.map +1 -1
  241. package/tsOutputs/common/footprints-process-v6/source-map-data.d.ts +9 -9
  242. package/tsOutputs/common/footprints-process-v6/source-map-data.js +32 -32
  243. package/tsOutputs/common/footprints-process-v6/source-map-data.js.map +1 -1
  244. package/tsOutputs/common/http/backend-proxy-interface.d.ts +33 -33
  245. package/tsOutputs/common/http/backend-proxy-interface.js +2 -2
  246. package/tsOutputs/common/http/backend-proxy.d.ts +54 -53
  247. package/tsOutputs/common/http/backend-proxy.js +408 -398
  248. package/tsOutputs/common/http/backend-proxy.js.map +1 -1
  249. package/tsOutputs/common/http/contracts.d.ts +280 -203
  250. package/tsOutputs/common/http/contracts.js +156 -158
  251. package/tsOutputs/common/http/contracts.js.map +1 -1
  252. package/tsOutputs/common/http/dry-run-proxy.js +106 -106
  253. package/tsOutputs/common/http/entities-mapper.d.ts +4 -4
  254. package/tsOutputs/common/http/entities-mapper.js +17 -17
  255. package/tsOutputs/common/http/http-client.d.ts +21 -21
  256. package/tsOutputs/common/http/http-client.js +195 -191
  257. package/tsOutputs/common/http/http-client.js.map +1 -1
  258. package/tsOutputs/common/http/http-verb.d.ts +6 -6
  259. package/tsOutputs/common/http/http-verb.js +10 -10
  260. package/tsOutputs/common/http/sl-routes.d.ts +70 -70
  261. package/tsOutputs/common/http/sl-routes.js +218 -218
  262. package/tsOutputs/common/ignored-files-handler.js +122 -122
  263. package/tsOutputs/common/logger.d.ts +40 -40
  264. package/tsOutputs/common/logger.js +188 -190
  265. package/tsOutputs/common/logger.js.map +1 -1
  266. package/tsOutputs/common/messages-formatter.d.ts +6 -6
  267. package/tsOutputs/common/messages-formatter.js +21 -21
  268. package/tsOutputs/common/queue.d.ts +19 -19
  269. package/tsOutputs/common/queue.js +55 -57
  270. package/tsOutputs/common/queue.js.map +1 -1
  271. package/tsOutputs/common/scm/contracts.js +2 -2
  272. package/tsOutputs/common/scm/git-cloner.js +138 -0
  273. package/tsOutputs/common/scm/git-cloner.js.map +1 -0
  274. package/tsOutputs/common/scm/git-format-builder.js +72 -72
  275. package/tsOutputs/common/scm/git.js +411 -411
  276. package/tsOutputs/common/scm/none.js +115 -115
  277. package/tsOutputs/common/scm/scm-factory.js +21 -21
  278. package/tsOutputs/common/short-name-to-file-mapper.js +79 -79
  279. package/tsOutputs/common/source-map-handler.d.ts +58 -58
  280. package/tsOutputs/common/source-map-handler.js +197 -197
  281. package/tsOutputs/common/source-map-reader.js +84 -84
  282. package/tsOutputs/common/source-maps-utils.d.ts +3 -3
  283. package/tsOutputs/common/source-maps-utils.js +39 -39
  284. package/tsOutputs/common/state-tracker-fpv6.d.ts +6 -6
  285. package/tsOutputs/common/state-tracker-fpv6.js +42 -44
  286. package/tsOutputs/common/state-tracker-fpv6.js.map +1 -1
  287. package/tsOutputs/common/state-tracker.d.ts +49 -49
  288. package/tsOutputs/common/state-tracker.js +299 -304
  289. package/tsOutputs/common/state-tracker.js.map +1 -1
  290. package/tsOutputs/common/system-date.d.ts +2 -2
  291. package/tsOutputs/common/system-date.js +21 -21
  292. package/tsOutputs/common/utils/abstract-data-builder.d.ts +10 -10
  293. package/tsOutputs/common/utils/abstract-data-builder.js +24 -24
  294. package/tsOutputs/common/utils/build-session-data-builder.d.ts +18 -18
  295. package/tsOutputs/common/utils/build-session-data-builder.js +135 -137
  296. package/tsOutputs/common/utils/build-session-data-builder.js.map +1 -1
  297. package/tsOutputs/common/utils/dependency-utils.js +69 -69
  298. package/tsOutputs/common/utils/files-utils.d.ts +6 -5
  299. package/tsOutputs/common/utils/files-utils.js +45 -36
  300. package/tsOutputs/common/utils/files-utils.js.map +1 -1
  301. package/tsOutputs/common/utils/parsing-utils.d.ts +4 -4
  302. package/tsOutputs/common/utils/parsing-utils.js +29 -29
  303. package/tsOutputs/common/utils/test-utils/mock-server-utils/contracts.js +10 -10
  304. package/tsOutputs/common/utils/test-utils/mock-server-utils/mock-server-proxy.js +248 -248
  305. package/tsOutputs/common/utils/timer-utils.d.ts +3 -3
  306. package/tsOutputs/common/utils/timer-utils.js +12 -12
  307. package/tsOutputs/common/utils/token-data-builder.d.ts +21 -21
  308. package/tsOutputs/common/utils/token-data-builder.js +95 -97
  309. package/tsOutputs/common/utils/token-data-builder.js.map +1 -1
  310. package/tsOutputs/common/utils/validation-utils.d.ts +3 -3
  311. package/tsOutputs/common/utils/validation-utils.js +18 -18
  312. package/tsOutputs/common/uuid.js +23 -23
  313. package/tsOutputs/common/watchdog.d.ts +96 -96
  314. package/tsOutputs/common/watchdog.js +149 -151
  315. package/tsOutputs/common/watchdog.js.map +1 -1
  316. package/tsOutputs/mocha-reporter/constants.js +27 -27
  317. package/tsOutputs/mocha-reporter/end-execution.js +22 -22
  318. package/tsOutputs/mocha-reporter/index.js +323 -323
  319. package/tsOutputs/test-listener/IConsoleLogger.js +5 -5
  320. package/tsOutputs/test-listener/SlNodeJsProxy.js +96 -96
  321. package/tsOutputs/test-listener/UserMessageHelper.js +47 -47
  322. package/tsOutputs/test-listener/agent-loader.js +58 -58
  323. package/tsOutputs/test-listener/agent.d.ts +53 -53
  324. package/tsOutputs/test-listener/agent.js +273 -273
  325. package/tsOutputs/test-listener/api.js +157 -157
  326. package/tsOutputs/test-listener/base-proxy.d.ts +15 -15
  327. package/tsOutputs/test-listener/base-proxy.js +133 -133
  328. package/tsOutputs/test-listener/bootstrap.js +16 -16
  329. package/tsOutputs/test-listener/child-process-patcher.js +136 -136
  330. package/tsOutputs/test-listener/cli.js +64 -64
  331. package/tsOutputs/test-listener/coloring/http-coloring.d.ts +15 -15
  332. package/tsOutputs/test-listener/coloring/http-coloring.js +188 -188
  333. package/tsOutputs/test-listener/coloring/icoloring-provider.d.ts +10 -10
  334. package/tsOutputs/test-listener/coloring/icoloring-provider.js +2 -2
  335. package/tsOutputs/test-listener/coloring/listening-port.d.ts +20 -20
  336. package/tsOutputs/test-listener/coloring/listening-port.js +48 -48
  337. package/tsOutputs/test-listener/command-line-arg-parser.js +91 -91
  338. package/tsOutputs/test-listener/config-process/config-loader.js +104 -104
  339. package/tsOutputs/test-listener/config-process/config-system.d.ts +88 -88
  340. package/tsOutputs/test-listener/config-process/config-system.js +285 -285
  341. package/tsOutputs/test-listener/config-process/index.js +126 -128
  342. package/tsOutputs/test-listener/config-process/index.js.map +1 -1
  343. package/tsOutputs/test-listener/config.d.ts +50 -50
  344. package/tsOutputs/test-listener/config.js +80 -82
  345. package/tsOutputs/test-listener/config.js.map +1 -1
  346. package/tsOutputs/test-listener/contracts.d.ts +72 -72
  347. package/tsOutputs/test-listener/contracts.js +2 -2
  348. package/tsOutputs/test-listener/entities/BasicConfigurationData.js +72 -72
  349. package/tsOutputs/test-listener/entities/build-scanner/ConfigModeData.js +48 -50
  350. package/tsOutputs/test-listener/entities/build-scanner/ConfigModeData.js.map +1 -1
  351. package/tsOutputs/test-listener/entities/build-scanner/ScanModeData.js +51 -53
  352. package/tsOutputs/test-listener/entities/build-scanner/ScanModeData.js.map +1 -1
  353. package/tsOutputs/test-listener/environment-data-service.d.ts +11 -11
  354. package/tsOutputs/test-listener/environment-data-service.js +60 -60
  355. package/tsOutputs/test-listener/execution-process/contracts.js +5 -5
  356. package/tsOutputs/test-listener/execution-process/entities-mapper.js +49 -49
  357. package/tsOutputs/test-listener/execution-process/execution-service-proxy.js +205 -207
  358. package/tsOutputs/test-listener/execution-process/execution-service-proxy.js.map +1 -1
  359. package/tsOutputs/test-listener/execution-process/index.js +163 -163
  360. package/tsOutputs/test-listener/factory.d.ts +87 -87
  361. package/tsOutputs/test-listener/factory.js +285 -285
  362. package/tsOutputs/test-listener/footprints-process/footprints-service-proxy.js +50 -52
  363. package/tsOutputs/test-listener/footprints-process/footprints-service-proxy.js.map +1 -1
  364. package/tsOutputs/test-listener/footprints-process/index.js +230 -230
  365. package/tsOutputs/test-listener/footprints-process/istanbul-to-footprints-base.js +130 -130
  366. package/tsOutputs/test-listener/footprints-process/istanbul-to-footprints-contract.js +2 -2
  367. package/tsOutputs/test-listener/footprints-process/istanbul-to-footprints-v3.js +288 -290
  368. package/tsOutputs/test-listener/footprints-process/istanbul-to-footprints-v3.js.map +1 -1
  369. package/tsOutputs/test-listener/integrations/SlGulp.js +104 -104
  370. package/tsOutputs/test-listener/logs-process/index.d.ts +48 -48
  371. package/tsOutputs/test-listener/logs-process/index.js +142 -142
  372. package/tsOutputs/test-listener/logs-process/log-service-proxy.d.ts +9 -9
  373. package/tsOutputs/test-listener/logs-process/log-service-proxy.js +29 -31
  374. package/tsOutputs/test-listener/logs-process/log-service-proxy.js.map +1 -1
  375. package/tsOutputs/test-listener/nyc-report-executor-fpv6.js +143 -136
  376. package/tsOutputs/test-listener/nyc-report-executor-fpv6.js.map +1 -1
  377. package/tsOutputs/test-listener/nyc-report-executor.js +144 -144
  378. package/tsOutputs/test-listener/queue.js +55 -57
  379. package/tsOutputs/test-listener/queue.js.map +1 -1
  380. package/tsOutputs/test-listener/remote-agent.d.ts +42 -42
  381. package/tsOutputs/test-listener/remote-agent.js +200 -200
  382. package/tsOutputs/test-listener/resolvers/AppNameResolver.js +32 -34
  383. package/tsOutputs/test-listener/resolvers/AppNameResolver.js.map +1 -1
  384. package/tsOutputs/test-listener/resolvers/ArgumentResolver.js +64 -64
  385. package/tsOutputs/test-listener/resolvers/BuildResolver.js +31 -33
  386. package/tsOutputs/test-listener/resolvers/BuildResolver.js.map +1 -1
  387. package/tsOutputs/test-listener/resolvers/BuildSessionIdFileResolver.js +31 -33
  388. package/tsOutputs/test-listener/resolvers/BuildSessionIdFileResolver.js.map +1 -1
  389. package/tsOutputs/test-listener/resolvers/BuildSessionIdResolver.js +34 -36
  390. package/tsOutputs/test-listener/resolvers/BuildSessionIdResolver.js.map +1 -1
  391. package/tsOutputs/test-listener/resolvers/ProxyResolver.js +31 -33
  392. package/tsOutputs/test-listener/resolvers/ProxyResolver.js.map +1 -1
  393. package/tsOutputs/test-listener/resolvers/TokenResolver.js +31 -33
  394. package/tsOutputs/test-listener/resolvers/TokenResolver.js.map +1 -1
  395. package/tsOutputs/test-listener/state-tracker-process/index.js +160 -162
  396. package/tsOutputs/test-listener/state-tracker-process/index.js.map +1 -1
  397. package/tsOutputs/test-listener/state-tracker-process/state-tracker-proxy.d.ts +8 -8
  398. package/tsOutputs/test-listener/state-tracker-process/state-tracker-proxy.js +69 -71
  399. package/tsOutputs/test-listener/state-tracker-process/state-tracker-proxy.js.map +1 -1
  400. package/tsOutputs/test-listener/test-recommendation-handler.d.ts +29 -29
  401. package/tsOutputs/test-listener/test-recommendation-handler.js +161 -161
  402. package/tsOutputs/test-listener/upload-report-handler.js +96 -96
  403. package/tsOutputs/test-listener/utils.js +68 -68
  404. package/tsOutputs/test-listener/uuid.d.ts +3 -3
  405. package/tsOutputs/test-listener/uuid.js +23 -23
  406. package/tsOutputs/test-listener/wait-for-multiple-callbacks.d.ts +22 -22
  407. package/tsOutputs/test-listener/wait-for-multiple-callbacks.js +60 -60
  408. package/tsOutputs/test-listener/watchdog.d.ts +89 -89
  409. package/tsOutputs/test-listener/watchdog.js +144 -146
  410. package/tsOutputs/test-listener/watchdog.js.map +1 -1
  411. package/browser-agent/dist/browser-agent-all.js +0 -100989
  412. package/browser-agent/dist/browser-agent-all.min.js +0 -57
  413. package/browser-agent/package.json +0 -44
@@ -0,0 +1,214 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.EnsureFilesHandlerService = void 0;
15
+ var files_data_container_1 = require("./files-data-container");
16
+ var path_1 = require("path");
17
+ var ActualFile = require("../file-system/actual-file");
18
+ var file_element_utils_1 = require("./file-element-utils");
19
+ var file_enricher_1 = require("./file-enricher");
20
+ var scm_file_fixer_1 = require("./scm-file-fixer");
21
+ var files_utils_1 = require("../../common/utils/files-utils");
22
+ var SourceFileNotifier = require("../js_diff/source-files-notifier");
23
+ var EnsureFilesHandlerService = /** @class */ (function () {
24
+ function EnsureFilesHandlerService(logger, opts, scmFilesContainer, scmRootDir, config, slMapper) {
25
+ this.logger = logger;
26
+ this.opts = opts;
27
+ this.scmFilesContainer = scmFilesContainer;
28
+ this.scmRootDir = scmRootDir;
29
+ this.config = config;
30
+ this.slMapper = slMapper;
31
+ this.WEBPACK_PREFIX = 'webpack:///';
32
+ this.WEBPACK_BOOTSTRAP_FILE = 'webpack/bootstrap';
33
+ this.WEBPACK_LAZY_FILE = '$_lazy';
34
+ this.WEBPACK_SRC_ASYNC = 'src async';
35
+ this.WEBPACK_SRC_LAZY = 'src lazy';
36
+ this.WEBPACK_RESOURCE_SIGN = '~'; // Webpack replace 'node_modules' with '~'
37
+ this.NODE_MODULES = 'node_modules';
38
+ this.THIRD_PARTIES_FOLDERS = [
39
+ this.WEBPACK_BOOTSTRAP_FILE,
40
+ this.WEBPACK_LAZY_FILE,
41
+ this.WEBPACK_RESOURCE_SIGN,
42
+ this.NODE_MODULES,
43
+ this.WEBPACK_SRC_ASYNC,
44
+ this.WEBPACK_SRC_LAZY
45
+ ];
46
+ this.filesDataContainer = new files_data_container_1.FilesDataContainer();
47
+ this.scmFileFixer = new scm_file_fixer_1.ScmFileFixer(this.scmFilesContainer, this.slMapper);
48
+ this.sourceFilesNotifier = new SourceFileNotifier(logger);
49
+ }
50
+ EnsureFilesHandlerService.prototype.ensureProcess = function (req) {
51
+ var result = __assign(__assign({}, req), { files: [] });
52
+ for (var _i = 0, _a = req.files; _i < _a.length; _i++) {
53
+ var jsFile = _a[_i];
54
+ var sourceFileObject = new ActualFile(jsFile.logicalPath, jsFile.absolutePath);
55
+ this.handleMappingOneFile(jsFile, sourceFileObject);
56
+ }
57
+ result.files = this.filesDataContainer.files;
58
+ if (this.opts.projectRoot) {
59
+ var root = this.opts.projectRoot;
60
+ if (root === '.') {
61
+ root = process.cwd();
62
+ }
63
+ root = path_1.normalize(root);
64
+ result.files = this.fixFilesPathByPath(result.files, root);
65
+ }
66
+ else if (this.scmFilesContainer) {
67
+ result.files = this.scmFileFixer.fixFilesPath(result.files, this.scmRootDir);
68
+ }
69
+ else {
70
+ result.files = this.fixFilesPathByPath(result.files, process.cwd());
71
+ }
72
+ var enricher = new file_enricher_1.FileEnricher(this.logger, this.opts, this.scmRootDir, this.scmFilesContainer, this.config);
73
+ var resultAfterEnrich = enricher.enrichFiles(result);
74
+ this.deleteRedundantFields(resultAfterEnrich);
75
+ return { output: resultAfterEnrich };
76
+ };
77
+ EnsureFilesHandlerService.prototype.deleteRedundantFields = function (output) {
78
+ output.files.forEach(function (f) {
79
+ f.methods.forEach(function (m) { var _a; return (_a = m === null || m === void 0 ? void 0 : m.meta) === null || _a === void 0 ? true : delete _a.identifierPosition; });
80
+ });
81
+ };
82
+ EnsureFilesHandlerService.prototype.fixFilesPathByPath = function (uniqueFiles, projectRoot) {
83
+ var _this = this;
84
+ var fixedProjectRoot = path_1.normalize(projectRoot);
85
+ var _loop_1 = function (file) {
86
+ var fileFixedPath = files_utils_1.FilesUtils.adjustPathSlashes(path_1.normalize(file.logicalPath).replace(fixedProjectRoot, ''));
87
+ if (fileFixedPath.indexOf('/') === 0) {
88
+ fileFixedPath = fileFixedPath.substring(1);
89
+ }
90
+ file.logicalPath = fileFixedPath;
91
+ file.physicalPath = fileFixedPath;
92
+ file.absolutePath = files_utils_1.FilesUtils.adjustPathSlashes(path_1.join(fixedProjectRoot, file.physicalPath));
93
+ file.methods.forEach(function (method) {
94
+ method.uniqueId = file.logicalPath + "@" + method.position.join(',');
95
+ _this.slMapper.addUniqueId(method.uniqueIdKey, method.uniqueId);
96
+ delete method.uniqueIdKey;
97
+ });
98
+ file.branches.forEach(function (branch) {
99
+ var position = file_element_utils_1.getBranchPosition(branch);
100
+ branch.uniqueId = file.logicalPath + "|" + position.join(',') + "|" + branch.index;
101
+ _this.slMapper.addUniqueId(branch.uniqueIdKey, branch.uniqueId);
102
+ delete branch.uniqueIdKey;
103
+ });
104
+ };
105
+ for (var _i = 0, uniqueFiles_1 = uniqueFiles; _i < uniqueFiles_1.length; _i++) {
106
+ var file = uniqueFiles_1[_i];
107
+ _loop_1(file);
108
+ }
109
+ return uniqueFiles;
110
+ };
111
+ EnsureFilesHandlerService.prototype.handleMappingOneFile = function (generatedFile, sourceFileObject) {
112
+ var _a;
113
+ var sourceMaps = sourceFileObject.readSourceMapsWithRaw(this.logger);
114
+ if (!sourceMaps.consumer) {
115
+ this.filesDataContainer.addFile(generatedFile);
116
+ }
117
+ else {
118
+ var codeElementMetrics = { hasColumnInfo: false };
119
+ this.addMethods(generatedFile, sourceMaps.consumer, codeElementMetrics);
120
+ this.addBranches(generatedFile, sourceMaps.consumer, codeElementMetrics);
121
+ this.sourceFilesNotifier.notifySources((_a = sourceMaps.rawSourceMaps) === null || _a === void 0 ? void 0 : _a.sources, generatedFile.absolutePath, codeElementMetrics.hasColumnInfo);
122
+ }
123
+ };
124
+ EnsureFilesHandlerService.prototype.trimWebpackPrefix = function (source) {
125
+ if (source.indexOf(this.WEBPACK_PREFIX) === 0) {
126
+ source = source.substring(this.WEBPACK_PREFIX.length);
127
+ }
128
+ return source;
129
+ };
130
+ EnsureFilesHandlerService.prototype.cleanPath = function (source) {
131
+ source = this.trimWebpackPrefix(source);
132
+ if (source.indexOf('/') === 0) {
133
+ source = source.substring(1);
134
+ }
135
+ return path_1.normalize(source);
136
+ };
137
+ EnsureFilesHandlerService.prototype.getMappingPositionForMethod = function (sourceMaps, method) {
138
+ var _a, _b;
139
+ var startMap = sourceMaps.originalPositionFor({
140
+ line: method.position[0],
141
+ column: method.position[1]
142
+ });
143
+ var endMap = sourceMaps.originalPositionFor({
144
+ line: method.endPosition[0],
145
+ column: method.endPosition[1]
146
+ });
147
+ var identifierPosition = sourceMaps.originalPositionFor({
148
+ line: (_a = method === null || method === void 0 ? void 0 : method.meta) === null || _a === void 0 ? void 0 : _a.identifierPosition[0],
149
+ column: (_b = method === null || method === void 0 ? void 0 : method.meta) === null || _b === void 0 ? void 0 : _b.identifierPosition[1]
150
+ });
151
+ return { startMap: startMap, endMap: endMap, identifierPosition: identifierPosition };
152
+ };
153
+ EnsureFilesHandlerService.prototype.getMappingPositionForBranch = function (sourceMaps, branch) {
154
+ var startMap = sourceMaps.originalPositionFor({
155
+ line: branch.position[0],
156
+ column: branch.position[1]
157
+ });
158
+ var parentStartMap = sourceMaps.originalPositionFor({
159
+ line: branch.parentPosition[0],
160
+ column: branch.parentPosition[1]
161
+ });
162
+ var endMap = sourceMaps.originalPositionFor({
163
+ line: branch.endPosition[0],
164
+ column: branch.endPosition[1]
165
+ });
166
+ return { startMap: startMap, endMap: endMap, parentStartMap: parentStartMap };
167
+ };
168
+ EnsureFilesHandlerService.prototype.addMethods = function (generatedFile, sourceMaps, codeElementMetrics) {
169
+ for (var _i = 0, _a = generatedFile.methods; _i < _a.length; _i++) {
170
+ var method = _a[_i];
171
+ var _b = this.getMappingPositionForMethod(sourceMaps, method), startMap = _b.startMap, endMap = _b.endMap, identifierPosition = _b.identifierPosition;
172
+ if (identifierPosition) {
173
+ method.meta.identifierPosition = [identifierPosition.line, identifierPosition.column];
174
+ }
175
+ if (this.isMapValid(startMap)) {
176
+ if (+startMap.column !== 0) {
177
+ codeElementMetrics.hasColumnInfo = true;
178
+ }
179
+ var cleanPath = this.cleanPath(startMap.source);
180
+ var generatedFileMethodKey = generatedFile.absolutePath + "@" + method.position.join(',');
181
+ this.filesDataContainer.addMethod(cleanPath, file_element_utils_1.createMethod(startMap, endMap, method, generatedFileMethodKey));
182
+ }
183
+ }
184
+ };
185
+ EnsureFilesHandlerService.prototype.addBranches = function (generatedFile, sourceMaps, codeElementMetrics) {
186
+ for (var _i = 0, _a = generatedFile.branches; _i < _a.length; _i++) {
187
+ var branch = _a[_i];
188
+ var branchInfo = branch;
189
+ var _b = this.getMappingPositionForBranch(sourceMaps, branch), startMap = _b.startMap, endMap = _b.endMap, parentStartMap = _b.parentStartMap;
190
+ if (this.isMapValid(startMap)) {
191
+ if (+startMap.column !== 0) {
192
+ codeElementMetrics.hasColumnInfo = true;
193
+ }
194
+ var cleanPath = this.cleanPath(startMap.source);
195
+ var generatedFileBranchKey = generatedFile.absolutePath + "|" + branchInfo.parentPosition.join(',') + "|" + branchInfo.index;
196
+ this.filesDataContainer.addBranch(cleanPath, file_element_utils_1.createBranch(startMap, endMap, parentStartMap, branchInfo, cleanPath, generatedFileBranchKey));
197
+ }
198
+ }
199
+ };
200
+ EnsureFilesHandlerService.prototype.fixPathByScm = function (sourceFile) {
201
+ var gitFiles = this.scmFilesContainer.getScmPath(sourceFile);
202
+ return (gitFiles === null || gitFiles === void 0 ? void 0 : gitFiles.length) == 1 ? gitFiles[0] : null;
203
+ };
204
+ EnsureFilesHandlerService.prototype.isMapValid = function (map) {
205
+ if (!map.source) {
206
+ return false;
207
+ }
208
+ var mapFix = this.trimWebpackPrefix(map.source);
209
+ return mapFix && !this.THIRD_PARTIES_FOLDERS.some(function (str) { return mapFix.includes(str); });
210
+ };
211
+ return EnsureFilesHandlerService;
212
+ }());
213
+ exports.EnsureFilesHandlerService = EnsureFilesHandlerService;
214
+ //# sourceMappingURL=ensure-files-handler.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensure-files-handler.service.js","sourceRoot":"","sources":["../../../build-scanner/mappings/ensure-files-handler.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBranchPosition = exports.createBranch = exports.createMethod = void 0;
4
+ var logger_1 = require("../../common/logger");
5
+ var logger = logger_1.LoggerFactory.getCreateApplicationLogger();
6
+ function createMethod(startMap, endMap, method, uniqueIdKey) {
7
+ var _a, _b;
8
+ return {
9
+ endPosition: [endMap.line, endMap.column],
10
+ position: [startMap.line, startMap.column],
11
+ meta: method.meta,
12
+ techSpecificInfo: method.techSpecificInfo,
13
+ displayName: (_b = (_a = startMap.name) !== null && _a !== void 0 ? _a : method.displayName) !== null && _b !== void 0 ? _b : '(Anonymous)',
14
+ hash: method.hash,
15
+ idxInMapping: method.idxInMapping,
16
+ sigHash: method.sigHash,
17
+ uniqueIdKey: uniqueIdKey,
18
+ };
19
+ }
20
+ exports.createMethod = createMethod;
21
+ function createBranch(startPosition, endPosition, parentPosition, branchInfo, logicalPath, uniqueIdKey) {
22
+ return {
23
+ filename: logicalPath,
24
+ type: branchInfo.type,
25
+ endPosition: [endPosition.line, endPosition.column],
26
+ position: [startPosition.line, startPosition.column],
27
+ hash: branchInfo.hash,
28
+ index: branchInfo.index,
29
+ parentPosition: [parentPosition.line, parentPosition.column],
30
+ enclosingMethodIdx: branchInfo.enclosingMethodIdx,
31
+ techSpecificInfo: branchInfo.techSpecificInfo || {},
32
+ uniqueIdKey: uniqueIdKey
33
+ };
34
+ }
35
+ exports.createBranch = createBranch;
36
+ function getBranchPosition(branch) {
37
+ if (branch.type !== 'IfStatement') {
38
+ return branch.position;
39
+ }
40
+ if (!isNaN(branch.parentPosition[0]) && !isNaN(branch.parentPosition[1])) {
41
+ return branch.parentPosition;
42
+ }
43
+ logger.info("Branch at position '" + branch.position + "' in file '" + branch.filename + "' is an if statement inside async methods using branch position instead of parent");
44
+ return branch.position;
45
+ }
46
+ exports.getBranchPosition = getBranchPosition;
47
+ //# sourceMappingURL=file-element-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-element-utils.js","sourceRoot":"","sources":["../../../build-scanner/mappings/file-element-utils.ts"],"names":[],"mappings":";;;AAAA,8CAAkD;AAGlD,IAAM,MAAM,GAAG,sBAAa,CAAC,0BAA0B,EAAE,CAAC;AAC1D,SAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;;IAC9D,OAAO;QACH,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;QACzC,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;QAC1C,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,WAAW,cAAE,QAAQ,CAAC,IAAI,mCAAI,MAAM,CAAC,WAAW,mCAAI,aAAa;QACjE,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,WAAW,EAAE,WAAW;KAC3B,CAAA;AACL,CAAC;AAZD,oCAYC;AAID,SAAgB,YAAY,CAAC,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW;IACzG,OAAO;QACH,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,WAAW,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC;QACnD,QAAQ,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC;QACpD,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,cAAc,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;QAC5D,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;QACjD,gBAAgB,EAAE,UAAU,CAAC,gBAAgB,IAAI,EAAE;QACnD,WAAW,EAAE,WAAW;KAE3B,CAAC;AACN,CAAC;AAdD,oCAcC;AAED,SAAgB,iBAAiB,CAAC,MAAkB;IAChD,IAAG,MAAM,CAAC,IAAI,KAAK,aAAa,EAAC;QAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC;KAC1B;IAED,IAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAC;QACpE,OAAO,MAAM,CAAC,cAAc,CAAA;KAC/B;IAED,MAAM,CAAC,IAAI,CAAC,yBAAuB,MAAM,CAAC,QAAQ,mBAAc,MAAM,CAAC,QAAQ,sFAAmF,CAAC,CAAC;IACpK,OAAO,MAAM,CAAC,QAAQ,CAAC;AAC3B,CAAC;AAXD,8CAWC"}
@@ -0,0 +1,205 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __spreadArrays = (this && this.__spreadArrays) || function () {
14
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
15
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
16
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
17
+ r[k] = a[j];
18
+ return r;
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.FileEnricher = void 0;
22
+ var FileSignature = require("../js_diff/file-signature");
23
+ var path = require("path");
24
+ var fs = require("fs");
25
+ var logger_1 = require("../../common/logger");
26
+ var logger = logger_1.LoggerFactory.getCreateApplicationLogger();
27
+ var FileEnricher = /** @class */ (function () {
28
+ function FileEnricher(logger, opts, scmRootDir, scmFilesContainer, config) {
29
+ this.logger = logger;
30
+ this.opts = opts;
31
+ this.scmRootDir = scmRootDir;
32
+ this.scmFilesContainer = scmFilesContainer;
33
+ this.config = config;
34
+ }
35
+ FileEnricher.prototype.enrichFiles = function (res) {
36
+ var result = __assign(__assign({}, res), { files: __spreadArrays(res.files) });
37
+ for (var _i = 0, _a = result.files; _i < _a.length; _i++) {
38
+ var file = _a[_i];
39
+ if (file.absolutePath && file.fromSourceMaps) {
40
+ if (this.isFileSupported(file.absolutePath)) {
41
+ var currentFileSource = this.getFileSignature(file);
42
+ file.methods = this.enrichItems(currentFileSource, file.methods, CodeElementsType.METHOD, file.positionToMethod, file.endPositionToMethod);
43
+ file.branches = this.enrichItems(currentFileSource, file.branches, CodeElementsType.BRANCH, file.positionToBranch, {});
44
+ }
45
+ }
46
+ else {
47
+ logger.info("File " + file.absolutePath + " not resolved from source maps, skipping enrichment");
48
+ }
49
+ }
50
+ return result;
51
+ };
52
+ FileEnricher.prototype.isFileSupported = function (absolutePath) {
53
+ if (!fs.existsSync(absolutePath)) {
54
+ logger.warn("Source file '" + absolutePath + "' does not exists, skipping enrichment");
55
+ return false;
56
+ }
57
+ var validExtensions = ['.ts', '.jsx', '.js', '.tsx'];
58
+ var extension = path.extname(absolutePath);
59
+ if (!validExtensions.includes(extension)) {
60
+ logger.info("Extension '" + extension + "' for file '" + absolutePath + "' is not supported, skipping enrichment");
61
+ return false;
62
+ }
63
+ return true;
64
+ };
65
+ FileEnricher.prototype.getItemsMap = function (resolvePositionToElement, currentFileSource, type, resolveEndPositionToElement) {
66
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
67
+ var sourceFileStartPositionMap = type == CodeElementsType.METHOD ? currentFileSource.positionToMethod : currentFileSource.positionToBranchMap;
68
+ var sourceFileEndPositionMap = type == CodeElementsType.METHOD ? currentFileSource.endPositionToMethod : {};
69
+ var sourceElements = type == CodeElementsType.METHOD ? currentFileSource.methods : currentFileSource.branches;
70
+ var sourceFileIdxToStartPosition = this.itemIndexToPosition(sourceFileStartPositionMap);
71
+ var resolvedIdxToStartPosition = this.itemIndexToPosition(resolvePositionToElement);
72
+ var resolvedIdxToEndPosition = type === CodeElementsType.BRANCH ? {} : this.itemIndexToPosition(resolveEndPositionToElement);
73
+ var itemsToEnrich = [];
74
+ var itemsToMarkAsAutoGenerate = [];
75
+ var itemsToAdd = [];
76
+ for (var _i = 0, _l = Object.entries(resolvedIdxToStartPosition); _i < _l.length; _i++) {
77
+ var _m = _l[_i], idx = _m[0], startPositions = _m[1];
78
+ var sourceIdxByStart = this.getIdxByPosition(startPositions, sourceFileStartPositionMap);
79
+ var sourceIdxByEnd = type === CodeElementsType.BRANCH ? -1 : this.getIdxByPosition(resolvedIdxToEndPosition[+idx], sourceFileEndPositionMap);
80
+ if (sourceIdxByStart > -1) {
81
+ itemsToEnrich.push({ resolvedIdx: +idx, sourceIdx: sourceIdxByStart });
82
+ logger.debug("Item starts at '" + ((_c = (_b = (_a = sourceElements[sourceIdxByStart]) === null || _a === void 0 ? void 0 : _a.srcData) === null || _b === void 0 ? void 0 : _b.position) === null || _c === void 0 ? void 0 : _c.join(',')) + "' in file '" + currentFileSource.absolutePath + "' will be enriched");
83
+ }
84
+ else if (sourceIdxByEnd > -1 && ((_e = (_d = sourceElements[sourceIdxByEnd]) === null || _d === void 0 ? void 0 : _d.techSpecificInfo) === null || _e === void 0 ? void 0 : _e.isDecorated)) {
85
+ itemsToEnrich.push({ resolvedIdx: +idx, sourceIdx: sourceIdxByEnd });
86
+ logger.debug("Item starts at '" + ((_h = (_g = (_f = sourceElements[sourceIdxByEnd]) === null || _f === void 0 ? void 0 : _f.srcData) === null || _g === void 0 ? void 0 : _g.position) === null || _h === void 0 ? void 0 : _h.join(',')) + "' in file '" + currentFileSource.absolutePath + "' is a decorated method, will be enriched by end position matching");
87
+ }
88
+ else {
89
+ itemsToMarkAsAutoGenerate.push(+idx);
90
+ logger.debug("Could not find source element in any of the following positions '" + startPositions.join(' || ') + "' in file '" + currentFileSource.absolutePath + "', marking as auto generated");
91
+ }
92
+ }
93
+ if (type === CodeElementsType.METHOD) {
94
+ for (var _o = 0, _p = Object.entries(sourceFileIdxToStartPosition); _o < _p.length; _o++) {
95
+ var _q = _p[_o], idx = _q[0], startPositions = _q[1];
96
+ var resolvedIdxByStart = this.getIdxByPosition(startPositions, resolvePositionToElement);
97
+ var resolvedIdxByEnd = this.getIdxByPosition(resolvedIdxToEndPosition[+idx], resolveEndPositionToElement);
98
+ var isDecorated = resolvedIdxByEnd > -1 && ((_k = (_j = sourceElements[+idx]) === null || _j === void 0 ? void 0 : _j.techSpecificInfo) === null || _k === void 0 ? void 0 : _k.isDecorated) == true;
99
+ if (resolvedIdxByStart === -1 && !isDecorated) {
100
+ itemsToAdd.push(+idx);
101
+ logger.debug("Element in file '" + currentFileSource.absolutePath + "' at position '" + sourceElements[idx].position + "' not exists in generated file");
102
+ }
103
+ }
104
+ }
105
+ return { itemsToEnrich: itemsToEnrich, itemsToMarkAsAutoGenerate: itemsToMarkAsAutoGenerate, itemsToAdd: itemsToAdd };
106
+ };
107
+ FileEnricher.prototype.getIdxByPosition = function (startPositions, sourceFilePositionMap) {
108
+ if (startPositions === void 0) { startPositions = []; }
109
+ for (var _i = 0, startPositions_1 = startPositions; _i < startPositions_1.length; _i++) {
110
+ var position = startPositions_1[_i];
111
+ var sourceIdx = sourceFilePositionMap[position];
112
+ if (sourceIdx > -1) {
113
+ return sourceIdx;
114
+ }
115
+ }
116
+ return -1;
117
+ };
118
+ FileEnricher.prototype.enrichItems = function (currentFileSource, codeItems, type, positionToElement, resolveEndPositionToElement) {
119
+ var result = [];
120
+ if (currentFileSource) {
121
+ var _a = this.getItemsMap(positionToElement, currentFileSource, type, resolveEndPositionToElement), itemsToEnrich = _a.itemsToEnrich, itemsToMarkAsAutoGenerate = _a.itemsToMarkAsAutoGenerate;
122
+ for (var _i = 0, itemsToMarkAsAutoGenerate_1 = itemsToMarkAsAutoGenerate; _i < itemsToMarkAsAutoGenerate_1.length; _i++) {
123
+ var idx = itemsToMarkAsAutoGenerate_1[_i];
124
+ var codeItem = codeItems[idx];
125
+ var codeItemCopy = __assign({}, codeItem);
126
+ codeItemCopy.techSpecificInfo.autoGenerated = true;
127
+ result.push(codeItemCopy);
128
+ }
129
+ for (var _b = 0, itemsToEnrich_1 = itemsToEnrich; _b < itemsToEnrich_1.length; _b++) {
130
+ var item = itemsToEnrich_1[_b];
131
+ var codeItem = codeItems[item.resolvedIdx];
132
+ var codeItemCopy = __assign({}, codeItem);
133
+ if (type === CodeElementsType.METHOD) {
134
+ this.handleMethod(codeItemCopy, currentFileSource.methods[item.sourceIdx]);
135
+ }
136
+ result.push(codeItemCopy);
137
+ }
138
+ // for (const idx of itemsToAdd) {
139
+ // if (type === CodeElementsType.METHOD) {
140
+ // const codeItem = currentFileSource.methods[idx];
141
+ // result.push(EntitiesMapper.toServerMethod(codeItem));
142
+ // } else {
143
+ // const codeItem = currentFileSource.branches[idx];
144
+ // result.push(EntitiesMapper.toServerBranch(codeItem) as any);
145
+ // }
146
+ // }
147
+ }
148
+ return result;
149
+ };
150
+ FileEnricher.prototype.itemIndexToPosition = function (positionMap) {
151
+ var itemToPosition = {};
152
+ for (var _i = 0, _a = Object.entries(positionMap); _i < _a.length; _i++) {
153
+ var _b = _a[_i], position = _b[0], idx = _b[1];
154
+ itemToPosition[idx] = itemToPosition[idx] || [];
155
+ itemToPosition[idx].push(position);
156
+ }
157
+ return itemToPosition;
158
+ };
159
+ FileEnricher.prototype.handleMethod = function (resolvedMethod, method) {
160
+ resolvedMethod.displayName = method.srcData.displayName;
161
+ resolvedMethod.meta = __assign({}, method.meta);
162
+ resolvedMethod.techSpecificInfo = __assign({}, method.techSpecificInfo);
163
+ if (resolvedMethod.techSpecificInfo.isAsync) {
164
+ resolvedMethod.hash = method.srcData.hash;
165
+ resolvedMethod.sigHash = method.srcData.sigHash;
166
+ }
167
+ };
168
+ FileEnricher.prototype.getFileSignature = function (file) {
169
+ var _a;
170
+ var currentPlugs = (_a = this.opts.babylonPlugins) !== null && _a !== void 0 ? _a : [];
171
+ var opts = {
172
+ es6Modules: true,
173
+ babylonPlugins: ['classProperties'].concat(currentPlugs),
174
+ projectRoot: this.opts.projectRoot,
175
+ scmRootDir: this.scmRootDir,
176
+ isBranchCoverage: this.config.useBranchCoverage || this.opts.usebranchcoverage
177
+ };
178
+ var extension = path.extname(file.absolutePath);
179
+ if (extension === '.ts' || extension === '.tsx') {
180
+ opts.babylonPlugins.push('typescript');
181
+ }
182
+ var fileContent = fs.readFileSync(file.absolutePath, 'utf-8');
183
+ do {
184
+ try {
185
+ return FileSignature.create(file.absolutePath, file.logicalPath, fileContent, null, opts, this.scmFilesContainer, this.logger);
186
+ }
187
+ catch (error) {
188
+ if (error.missingPlugin) {
189
+ opts.babylonPlugins = __spreadArrays([error.missingPlugin[0]], opts.babylonPlugins);
190
+ }
191
+ else {
192
+ throw error;
193
+ }
194
+ }
195
+ } while (true);
196
+ };
197
+ return FileEnricher;
198
+ }());
199
+ exports.FileEnricher = FileEnricher;
200
+ var CodeElementsType;
201
+ (function (CodeElementsType) {
202
+ CodeElementsType["BRANCH"] = "branch";
203
+ CodeElementsType["METHOD"] = "method";
204
+ })(CodeElementsType || (CodeElementsType = {}));
205
+ //# sourceMappingURL=file-enricher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-enricher.js","sourceRoot":"","sources":["../../../build-scanner/mappings/file-enricher.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,yDAA4D;AAE5D,2BAA8B;AAE9B,uBAAyB;AACzB,8CAAkD;AAGlD,IAAM,MAAM,GAAG,sBAAa,CAAC,0BAA0B,EAAE,CAAC;AAC1D;IACI,sBACqB,MAAW,EACX,IAAS,EACT,UAAkB,EAClB,iBAAoC,EACpC,MAAsC;QAJtC,WAAM,GAAN,MAAM,CAAK;QACX,SAAI,GAAJ,IAAI,CAAK;QACT,eAAU,GAAV,UAAU,CAAQ;QAClB,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,WAAM,GAAN,MAAM,CAAgC;IAE3D,CAAC;IAED,kCAAW,GAAX,UAAY,GAAwB;QAChC,IAAM,MAAM,yBAA6B,GAAG,KAAE,KAAK,iBAAM,GAAG,CAAC,KAAK,IAAG,CAAA;QACrE,KAAmB,UAAY,EAAZ,KAAA,MAAM,CAAC,KAAK,EAAZ,cAAY,EAAZ,IAAY,EAAE;YAA5B,IAAM,IAAI,SAAA;YACX,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,EAAE;gBAC1C,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;oBACzC,IAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;oBACtD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAiB,CAAC;oBAC3J,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;iBAC1H;aACJ;iBAAM;gBACH,MAAM,CAAC,IAAI,CAAC,UAAQ,IAAI,CAAC,YAAY,wDAAqD,CAAC,CAAA;aAC9F;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,sCAAe,GAAvB,UAAwB,YAAoB;QACxC,IAAG,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,kBAAgB,YAAY,2CAAwC,CAAC,CAAC;YAClF,OAAO,KAAK,CAAC;SAChB;QACD,IAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvD,IAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAE7C,IAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACrC,MAAM,CAAC,IAAI,CAAC,gBAAc,SAAS,oBAAe,YAAY,4CAAyC,CAAC,CAAC;YACzG,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,kCAAW,GAAnB,UAAoB,wBAAmD,EAAE,iBAAgC,EAAE,IAAsB,EAAE,2BAA2B;;QAC1J,IAAM,0BAA0B,GAAG,IAAI,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,gBAAgB,CAAA,CAAC,CAAC,iBAAiB,CAAC,mBAAmB,CAAC;QAC/I,IAAM,wBAAwB,GAAG,IAAI,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9G,IAAM,cAAc,GAAwB,IAAI,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC;QACrI,IAAM,4BAA4B,GAAG,IAAI,CAAC,mBAAmB,CAAC,0BAA0B,CAAC,CAAC;QAC1F,IAAM,0BAA0B,GAAG,IAAI,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,CAAC;QACtF,IAAM,wBAAwB,GAAG,IAAI,KAAK,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,2BAA2B,CAAC,CAAC;QAChI,IAAM,aAAa,GAAG,EAAE,CAAC;QACzB,IAAM,yBAAyB,GAAE,EAAE,CAAC;QACpC,IAAM,UAAU,GAAG,EAAE,CAAC;QAEtB,KAAoC,UAA0C,EAA1C,KAAA,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC,EAA1C,cAA0C,EAA1C,IAA0C,EAAE;YAArE,IAAA,WAAqB,EAApB,GAAG,QAAA,EAAE,cAAc,QAAA;YAC3B,IAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC;YAC3F,IAAM,cAAc,GAAG,IAAI,KAAK,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAAC,EAAE,wBAAwB,CAAC,CAAC;YAE/I,IAAG,gBAAgB,GAAG,CAAC,CAAC,EAAC;gBACrB,aAAa,CAAC,IAAI,CAAC,EAAC,WAAW,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC,CAAC;gBACrE,MAAM,CAAC,KAAK,CAAC,wCAAmB,cAAc,CAAC,gBAAgB,CAAC,0CAAE,OAAO,0CAAE,QAAQ,0CAAE,IAAI,CAAC,GAAG,qBAAe,iBAAiB,CAAC,YAAY,uBAAoB,CAAC,CAAC;aACnK;iBAAM,IAAG,cAAc,GAAG,CAAC,CAAC,iBAAI,cAAc,CAAC,cAAc,CAAC,0CAAE,gBAAgB,0CAAE,WAAW,CAAA,EAAC;gBAC3F,aAAa,CAAC,IAAI,CAAC,EAAC,WAAW,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,cAAc,EAAC,CAAC,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,wCAAmB,cAAc,CAAC,cAAc,CAAC,0CAAE,OAAO,0CAAE,QAAQ,0CAAE,IAAI,CAAC,GAAG,qBAAe,iBAAiB,CAAC,YAAY,uEAAoE,CAAC,CAAC;aACjN;iBAAM;gBACH,yBAAyB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBACrC,MAAM,CAAC,KAAK,CAAC,sEAAoE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAc,iBAAiB,CAAC,YAAY,iCAA8B,CAAC,CAAC;aAC3L;SACJ;QAED,IAAG,IAAI,KAAK,gBAAgB,CAAC,MAAM,EAAE;YACjC,KAAoC,UAA4C,EAA5C,KAAA,MAAM,CAAC,OAAO,CAAC,4BAA4B,CAAC,EAA5C,cAA4C,EAA5C,IAA4C,EAAE;gBAAvE,IAAA,WAAqB,EAApB,GAAG,QAAA,EAAE,cAAc,QAAA;gBAC3B,IAAM,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;gBAC3F,IAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAAC,EAAE,2BAA2B,CAAC,CAAC;gBAC5G,IAAM,WAAW,GAAG,gBAAgB,GAAG,CAAC,CAAC,IAAI,aAAA,cAAc,CAAC,CAAC,GAAG,CAAC,0CAAE,gBAAgB,0CAAE,WAAW,KAAI,IAAI,CAAC;gBAEzG,IAAI,kBAAkB,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE;oBAC3C,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBACtB,MAAM,CAAC,KAAK,CAAC,sBAAoB,iBAAiB,CAAC,YAAY,uBAAkB,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,mCAAgC,CAAC,CAAC;iBAClJ;aACJ;SACJ;QACD,OAAO,EAAC,aAAa,eAAA,EAAE,yBAAyB,2BAAA,EAAE,UAAU,YAAA,EAAC,CAAA;IACjE,CAAC;IAEO,uCAAgB,GAAxB,UAAyB,cAA6B,EAAE,qBAAqB;QAApD,+BAAA,EAAA,mBAA6B;QAClD,KAAuB,UAAc,EAAd,iCAAc,EAAd,4BAAc,EAAd,IAAc,EAAE;YAAlC,IAAM,QAAQ,uBAAA;YACf,IAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAClD,IAAI,SAAS,GAAG,CAAC,CAAC,EAAE;gBACjB,OAAO,SAAS,CAAC;aACnB;SACJ;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IAEO,kCAAW,GAAnB,UAAoB,iBAAgC,EAAE,SAAqB,EAAE,IAAsB,EAAE,iBAA4C,EAAE,2BAA2B;QAC1K,IAAM,MAAM,GAAe,EAAE,CAAC;QAC9B,IAAI,iBAAiB,EAAE;YACb,IAAA,KAA8C,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,IAAI,EAAE,2BAA2B,CAAC,EAArI,aAAa,mBAAA,EAAE,yBAAyB,+BAA6F,CAAC;YAC9I,KAAkB,UAAyB,EAAzB,uDAAyB,EAAzB,uCAAyB,EAAzB,IAAyB,EAAE;gBAAxC,IAAM,GAAG,kCAAA;gBACV,IAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;gBAC/B,IAAM,YAAY,gBAAQ,QAAQ,CAAE,CAAC;gBACrC,YAAY,CAAC,gBAAgB,CAAC,aAAa,GAAG,IAAI,CAAC;gBACnD,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAC7B;YAED,KAAmB,UAAa,EAAb,+BAAa,EAAb,2BAAa,EAAb,IAAa,EAAE;gBAA7B,IAAM,IAAI,sBAAA;gBACX,IAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC5C,IAAM,YAAY,gBAAQ,QAAQ,CAAE,CAAC;gBACrC,IAAI,IAAI,KAAK,gBAAgB,CAAC,MAAM,EAAE;oBAClC,IAAI,CAAC,YAAY,CAAC,YAA0B,EAAE,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;iBAC5F;gBACD,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAC7B;YAGD,kCAAkC;YAClC,8CAA8C;YAC9C,2DAA2D;YAC3D,gEAAgE;YAChE,eAAe;YACf,4DAA4D;YAC5D,uEAAuE;YACvE,QAAQ;YACR,IAAI;SACP;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,0CAAmB,GAA3B,UAA4B,WAAoC;QAC5D,IAAM,cAAc,GAA8B,EAAE,CAAA;QACpD,KAA8B,UAA2B,EAA3B,KAAA,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAA3B,cAA2B,EAA3B,IAA2B,EAAE;YAAhD,IAAA,WAAe,EAAd,QAAQ,QAAA,EAAE,GAAG,QAAA;YACrB,cAAc,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAChD,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACtC;QACD,OAAO,cAAc,CAAC;IAC1B,CAAC;IAEO,mCAAY,GAApB,UAAqB,cAA0B,EAAE,MAAW;QACxD,cAAc,CAAC,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;QACxD,cAAc,CAAC,IAAI,gBAAQ,MAAM,CAAC,IAAI,CAAE,CAAC;QACzC,cAAc,CAAC,gBAAgB,gBAAQ,MAAM,CAAC,gBAAgB,CAAE,CAAC;QACjE,IAAI,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE;YACzC,cAAc,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;YAC1C,cAAc,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;SACnD;IACL,CAAC;IAED,uCAAgB,GAAhB,UAAiB,IAAI;;QACjB,IAAM,YAAY,SAAG,IAAI,CAAC,IAAI,CAAC,cAAc,mCAAI,EAAE,CAAC;QACpD,IAAM,IAAI,GAAG;YACT,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;YACxD,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YAClC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB;SACjF,CAAC;QACF,IAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,MAAM,EAAE;YAC7C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;SACzC;QACD,IAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAChE,GAAG;YACC,IAAI;gBACA,OAAO,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EACpF,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;aAC5C;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,KAAK,CAAC,aAAa,EAAE;oBACrB,IAAI,CAAC,cAAc,mBAAI,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAAK,IAAI,CAAC,cAAc,CAAC,CAAC;iBAC1E;qBAAM;oBACH,MAAM,KAAK,CAAC;iBACf;aACJ;SACJ,QAAQ,IAAI,EAAE;IACnB,CAAC;IAEL,mBAAC;AAAD,CAAC,AA/KD,IA+KC;AA/KY,oCAAY;AAgLzB,IAAK,gBAGJ;AAHD,WAAK,gBAAgB;IACjB,qCAAiB,CAAA;IACjB,qCAAiB,CAAA;AACrB,CAAC,EAHI,gBAAgB,KAAhB,gBAAgB,QAGpB"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FilesDataContainer = void 0;
4
+ var FilesDataContainer = /** @class */ (function () {
5
+ function FilesDataContainer() {
6
+ this._files = {};
7
+ }
8
+ Object.defineProperty(FilesDataContainer.prototype, "files", {
9
+ get: function () {
10
+ return Object.values(this._files);
11
+ },
12
+ enumerable: false,
13
+ configurable: true
14
+ });
15
+ FilesDataContainer.prototype.addFile = function (file) {
16
+ if (!(file.absolutePath in this._files)) {
17
+ this._files[file.absolutePath] = file;
18
+ }
19
+ };
20
+ FilesDataContainer.prototype.addMethod = function (path, method) {
21
+ var _a;
22
+ this._files[path] = this._files[path] || this.createEmptyFileData(path);
23
+ var index = this._files[path].methods.push(method) - 1;
24
+ this._files[path].positionToMethod[method.position.join(',')] = index;
25
+ this._files[path].endPositionToMethod[method.endPosition.join(',')] = index;
26
+ if ((_a = method.meta.identifierPosition) === null || _a === void 0 ? void 0 : _a.every(function (x) { return x !== null; })) {
27
+ this._files[path].positionToMethod[method.meta.identifierPosition.join(',')] = index;
28
+ }
29
+ };
30
+ FilesDataContainer.prototype.addBranch = function (path, branch) {
31
+ this._files[path] = this._files[path] || this.createEmptyFileData(path);
32
+ var index = this._files[path].branches.push(branch) - 1;
33
+ this._files[path].positionToBranch[branch.position.join(',') + "|" + branch.index] = index;
34
+ };
35
+ FilesDataContainer.prototype.createEmptyFileData = function (cleanPath) {
36
+ return {
37
+ lines: [],
38
+ methods: [],
39
+ branches: [],
40
+ logicalPath: cleanPath,
41
+ physicalPath: '',
42
+ hash: '',
43
+ fromSourceMaps: true,
44
+ positionToMethod: {},
45
+ positionToBranch: {},
46
+ endPositionToMethod: {}
47
+ };
48
+ };
49
+ return FilesDataContainer;
50
+ }());
51
+ exports.FilesDataContainer = FilesDataContainer;
52
+ //# sourceMappingURL=files-data-container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files-data-container.js","sourceRoot":"","sources":["../../../build-scanner/mappings/files-data-container.ts"],"names":[],"mappings":";;;AAEA;IAAA;QAEY,WAAM,GAAgC,EAAE,CAAC;IA2CrD,CAAC;IAzCG,sBAAI,qCAAK;aAAT;YACI,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;;;OAAA;IAED,oCAAO,GAAP,UAAQ,IAAc;QAClB,IAAG,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;YACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;SACzC;IACL,CAAC;IAED,sCAAS,GAAT,UAAU,IAAY,EAAE,MAAkB;;QACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACxE,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QAC5E,UAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,0CAAE,KAAK,CAAC,UAAA,CAAC,IAAG,OAAA,CAAC,KAAI,IAAI,EAAT,CAAS,GAAG;YACrD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;SACxF;IACL,CAAC;IAED,sCAAS,GAAT,UAAU,IAAY,EAAE,MAAkB;QACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACxE,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,SAAI,MAAM,CAAC,KAAO,CAAC,GAAG,KAAK,CAAC;IAC/F,CAAC;IAEO,gDAAmB,GAA3B,UAA4B,SAAS;QACjC,OAAO;YACH,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,EAAE;YACZ,WAAW,EAAE,SAAS;YACtB,YAAY,EAAE,EAAE;YAChB,IAAI,EAAE,EAAE;YACR,cAAc,EAAE,IAAI;YACpB,gBAAgB,EAAC,EAAE;YACnB,gBAAgB,EAAC,EAAE;YACnB,mBAAmB,EAAC,EAAE;SACzB,CAAC;IACN,CAAC;IAEL,yBAAC;AAAD,CAAC,AA7CD,IA6CC;AA7CY,gDAAkB"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __spreadArrays = (this && this.__spreadArrays) || function () {
3
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
4
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
5
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
6
+ r[k] = a[j];
7
+ return r;
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.ScmFileFixer = void 0;
11
+ var files_utils_1 = require("../../common/utils/files-utils");
12
+ var path_1 = require("path");
13
+ var logger_1 = require("../../common/logger");
14
+ var file_element_utils_1 = require("./file-element-utils");
15
+ var logger = logger_1.LoggerFactory.getCreateApplicationLogger();
16
+ var ScmFileFixer = /** @class */ (function () {
17
+ function ScmFileFixer(scmFilesContainer, slMapper) {
18
+ this.scmFilesContainer = scmFilesContainer;
19
+ this.slMapper = slMapper;
20
+ }
21
+ ScmFileFixer.prototype.fixFilesPath = function (uniqueFiles, scmRootDir) {
22
+ var duplicatesMatchFiles = [];
23
+ var prefixToAdd = '';
24
+ var uniqueFileCopy = __spreadArrays(uniqueFiles);
25
+ for (var _i = 0, uniqueFiles_1 = uniqueFiles; _i < uniqueFiles_1.length; _i++) {
26
+ var file = uniqueFiles_1[_i];
27
+ var filesFromScm = this.fixPathByScm(file.logicalPath);
28
+ if (filesFromScm.length > 1) {
29
+ duplicatesMatchFiles.push(file);
30
+ }
31
+ else if (filesFromScm.length === 1) {
32
+ var fullScmFilePath = filesFromScm[0];
33
+ prefixToAdd = fullScmFilePath.replace(file.logicalPath, '');
34
+ this.fixOneFile(file, fullScmFilePath, scmRootDir);
35
+ }
36
+ else {
37
+ logger.info("Cannot find file " + file.logicalPath + " in git. File is auto generated.");
38
+ var indexToRemove = uniqueFileCopy.indexOf(file);
39
+ uniqueFileCopy.splice(indexToRemove, 1);
40
+ }
41
+ }
42
+ for (var _a = 0, duplicatesMatchFiles_1 = duplicatesMatchFiles; _a < duplicatesMatchFiles_1.length; _a++) {
43
+ var fileToFix = duplicatesMatchFiles_1[_a];
44
+ var fullScmFile = files_utils_1.FilesUtils.adjustPathSlashes("" + prefixToAdd + fileToFix.logicalPath);
45
+ this.fixOneFile(fileToFix, fullScmFile, scmRootDir);
46
+ }
47
+ return uniqueFileCopy;
48
+ };
49
+ ScmFileFixer.prototype.fixOneFile = function (file, fullScmFilePath, scmRootDir) {
50
+ var _this = this;
51
+ file.logicalPath = files_utils_1.FilesUtils.adjustPathSlashes(fullScmFilePath);
52
+ file.physicalPath = files_utils_1.FilesUtils.adjustPathSlashes(fullScmFilePath);
53
+ file.absolutePath = path_1.join(scmRootDir, file.physicalPath);
54
+ file.methods.forEach(function (method) {
55
+ method.uniqueId = files_utils_1.FilesUtils.adjustPathSlashes(file.logicalPath) + "@" + method.position.join(',');
56
+ _this.slMapper.addUniqueId(method.uniqueIdKey, method.uniqueId);
57
+ delete method.uniqueIdKey;
58
+ });
59
+ file.branches.forEach(function (branch) {
60
+ var position = file_element_utils_1.getBranchPosition(branch);
61
+ branch.uniqueId = files_utils_1.FilesUtils.adjustPathSlashes(file.logicalPath) + "|" + position.join(',') + "|" + branch.index;
62
+ _this.slMapper.addUniqueId(branch.uniqueIdKey, branch.uniqueId);
63
+ delete branch.uniqueIdKey;
64
+ });
65
+ };
66
+ ScmFileFixer.prototype.fixPathByScm = function (sourceFile) {
67
+ var gitFiles = this.scmFilesContainer.getScmPath(sourceFile);
68
+ if (gitFiles === null) {
69
+ return [];
70
+ }
71
+ else {
72
+ return gitFiles;
73
+ }
74
+ };
75
+ return ScmFileFixer;
76
+ }());
77
+ exports.ScmFileFixer = ScmFileFixer;
78
+ //# sourceMappingURL=scm-file-fixer.js.map