packtory 0.0.7 → 0.0.9

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 (339) hide show
  1. package/artifacts/artifacts-builder.d.ts +7 -5
  2. package/artifacts/artifacts-builder.d.ts.map +1 -1
  3. package/artifacts/artifacts-builder.js +47 -18
  4. package/artifacts/artifacts-builder.js.map +1 -1
  5. package/bundle-emitter/emitter.d.ts +12 -2
  6. package/bundle-emitter/emitter.d.ts.map +1 -1
  7. package/bundle-emitter/emitter.js +11 -6
  8. package/bundle-emitter/emitter.js.map +1 -1
  9. package/bundle-emitter/extract-package-tarball.js +1 -2
  10. package/bundle-emitter/extract-package-tarball.js.map +1 -1
  11. package/bundle-emitter/publish-settings-bridge.js +133 -0
  12. package/bundle-emitter/publish-settings-bridge.js.map +1 -0
  13. package/bundle-emitter/registry-client.d.ts +13 -6
  14. package/bundle-emitter/registry-client.d.ts.map +1 -1
  15. package/bundle-emitter/registry-client.js +217 -45
  16. package/bundle-emitter/registry-client.js.map +1 -1
  17. package/bundle-emitter/repository-coherence.js +54 -0
  18. package/bundle-emitter/repository-coherence.js.map +1 -0
  19. package/bundle-emitter/repository-url-normalizer.js +38 -0
  20. package/bundle-emitter/repository-url-normalizer.js.map +1 -0
  21. package/checks/check-runner.js +3 -9
  22. package/checks/check-runner.js.map +1 -1
  23. package/checks/rule.js +13 -0
  24. package/checks/rule.js.map +1 -0
  25. package/checks/rules/max-bundle-size.js +44 -0
  26. package/checks/rules/max-bundle-size.js.map +1 -0
  27. package/checks/rules/no-dev-dependency-imports.js +37 -0
  28. package/checks/rules/no-dev-dependency-imports.js.map +1 -0
  29. package/checks/rules/no-duplicated-files.js +102 -27
  30. package/checks/rules/no-duplicated-files.js.map +1 -1
  31. package/checks/rules/no-side-effects.js +51 -0
  32. package/checks/rules/no-side-effects.js.map +1 -0
  33. package/checks/rules/no-unused-bundle-dependencies.js +33 -0
  34. package/checks/rules/no-unused-bundle-dependencies.js.map +1 -0
  35. package/checks/rules/registry.js +17 -0
  36. package/checks/rules/registry.js.map +1 -0
  37. package/checks/rules/required-files.js +41 -0
  38. package/checks/rules/required-files.js.map +1 -0
  39. package/checks/rules/unique-target-paths.js +34 -0
  40. package/checks/rules/unique-target-paths.js.map +1 -0
  41. package/common/clock.d.ts +7 -0
  42. package/common/clock.d.ts.map +1 -0
  43. package/common/clock.js +11 -0
  44. package/common/clock.js.map +1 -0
  45. package/common/code-files.js +5 -0
  46. package/common/code-files.js.map +1 -0
  47. package/config/additional-package-json-attributes-schema.js +7 -0
  48. package/config/additional-package-json-attributes-schema.js.map +1 -0
  49. package/config/automatic-versioning-settings.js +7 -0
  50. package/config/automatic-versioning-settings.js.map +1 -0
  51. package/config/checks-schema.d.ts +74 -0
  52. package/config/checks-schema.d.ts.map +1 -0
  53. package/config/checks-schema.js +27 -0
  54. package/config/checks-schema.js.map +1 -0
  55. package/config/common-package-settings-schemas.js +20 -0
  56. package/config/common-package-settings-schemas.js.map +1 -0
  57. package/config/config.d.ts +16 -704
  58. package/config/config.d.ts.map +1 -1
  59. package/config/config.js +3 -71
  60. package/config/config.js.map +1 -1
  61. package/config/dead-code-elimination-settings.d.ts +6 -0
  62. package/config/dead-code-elimination-settings.d.ts.map +1 -0
  63. package/config/dead-code-elimination-settings.js +5 -0
  64. package/config/dead-code-elimination-settings.js.map +1 -0
  65. package/config/dependency-policy.d.ts +6 -0
  66. package/config/dependency-policy.d.ts.map +1 -0
  67. package/config/dependency-policy.js +6 -0
  68. package/config/dependency-policy.js.map +1 -0
  69. package/config/main-package-json-schema.js +14 -0
  70. package/config/main-package-json-schema.js.map +1 -0
  71. package/config/manual-versioning-settings.js +7 -0
  72. package/config/manual-versioning-settings.js.map +1 -0
  73. package/config/optional-package-settings-schema.js +15 -0
  74. package/config/optional-package-settings-schema.js.map +1 -0
  75. package/config/package-config.d.ts +49 -0
  76. package/config/package-config.d.ts.map +1 -0
  77. package/config/package-config.js +7 -0
  78. package/config/package-config.js.map +1 -0
  79. package/config/package-interface.d.ts +34 -0
  80. package/config/package-interface.d.ts.map +1 -0
  81. package/config/package-interface.js +26 -0
  82. package/config/package-interface.js.map +1 -0
  83. package/config/package-json.d.ts +11 -10
  84. package/config/package-json.d.ts.map +1 -1
  85. package/config/package-json.js +11 -19
  86. package/config/package-json.js.map +1 -1
  87. package/config/package-schemas.js +10 -0
  88. package/config/package-schemas.js.map +1 -0
  89. package/config/packtory-config-schema.js +7 -0
  90. package/config/packtory-config-schema.js.map +1 -0
  91. package/config/packtory-config-without-registry-schema.js +32 -0
  92. package/config/packtory-config-without-registry-schema.js.map +1 -0
  93. package/config/per-package-settings-schema.js +22 -0
  94. package/config/per-package-settings-schema.js.map +1 -0
  95. package/config/publish-settings.d.ts +22 -0
  96. package/config/publish-settings.d.ts.map +1 -0
  97. package/config/publish-settings.js +26 -0
  98. package/config/publish-settings.js.map +1 -0
  99. package/config/publish-settings.report.js +17 -0
  100. package/config/publish-settings.report.js.map +1 -0
  101. package/config/registry-settings.d.ts +83 -1
  102. package/config/registry-settings.d.ts.map +1 -1
  103. package/config/registry-settings.js +35 -1
  104. package/config/registry-settings.js.map +1 -1
  105. package/config/registry-settings.report.js +41 -0
  106. package/config/registry-settings.report.js.map +1 -0
  107. package/config/root.d.ts +7 -0
  108. package/config/root.d.ts.map +1 -0
  109. package/config/{entry-point.js → root.js} +2 -2
  110. package/config/root.js.map +1 -0
  111. package/config/sbom-settings.js +5 -0
  112. package/config/sbom-settings.js.map +1 -0
  113. package/config/validation.d.ts +2 -2
  114. package/config/validation.d.ts.map +1 -1
  115. package/config/validation.js +155 -37
  116. package/config/validation.js.map +1 -1
  117. package/config/versioning-settings.d.ts.map +1 -1
  118. package/config/versioning-settings.js +2 -9
  119. package/config/versioning-settings.js.map +1 -1
  120. package/dead-code-eliminator/analyzed-bundle.d.ts +27 -0
  121. package/dead-code-eliminator/analyzed-bundle.d.ts.map +1 -0
  122. package/dead-code-eliminator/analyzed-bundle.js +8 -0
  123. package/dead-code-eliminator/analyzed-bundle.js.map +1 -0
  124. package/dead-code-eliminator/cross-bundle/cross-bundle-seeds.js +126 -0
  125. package/dead-code-eliminator/cross-bundle/cross-bundle-seeds.js.map +1 -0
  126. package/dead-code-eliminator/elimination-emitter.js +53 -0
  127. package/dead-code-eliminator/elimination-emitter.js.map +1 -0
  128. package/dead-code-eliminator/eliminator.js +141 -0
  129. package/dead-code-eliminator/eliminator.js.map +1 -0
  130. package/dead-code-eliminator/load-bundle.js +52 -0
  131. package/dead-code-eliminator/load-bundle.js.map +1 -0
  132. package/dead-code-eliminator/reachability/binding-extractor.js +88 -0
  133. package/dead-code-eliminator/reachability/binding-extractor.js.map +1 -0
  134. package/dead-code-eliminator/reachability/impure-statements.js +12 -0
  135. package/dead-code-eliminator/reachability/impure-statements.js.map +1 -0
  136. package/dead-code-eliminator/reachability/reachability.js +141 -0
  137. package/dead-code-eliminator/reachability/reachability.js.map +1 -0
  138. package/dead-code-eliminator/side-effect-classifier.js +289 -0
  139. package/dead-code-eliminator/side-effect-classifier.js.map +1 -0
  140. package/dead-code-eliminator/side-effects-field.js +25 -0
  141. package/dead-code-eliminator/side-effects-field.js.map +1 -0
  142. package/dead-code-eliminator/transform/atom-translator.js +13 -0
  143. package/dead-code-eliminator/transform/atom-translator.js.map +1 -0
  144. package/dead-code-eliminator/transform/declaration-remover.js +92 -0
  145. package/dead-code-eliminator/transform/declaration-remover.js.map +1 -0
  146. package/dead-code-eliminator/transform/line-index.js +27 -0
  147. package/dead-code-eliminator/transform/line-index.js.map +1 -0
  148. package/dead-code-eliminator/transform/source-map-composer.js +68 -0
  149. package/dead-code-eliminator/transform/source-map-composer.js.map +1 -0
  150. package/dependency-scanner/dependency-graph.d.ts +1 -1
  151. package/dependency-scanner/dependency-graph.d.ts.map +1 -1
  152. package/dependency-scanner/dependency-graph.js +5 -7
  153. package/dependency-scanner/dependency-graph.js.map +1 -1
  154. package/dependency-scanner/external-dependencies.js +2 -2
  155. package/dependency-scanner/external-dependencies.js.map +1 -1
  156. package/dependency-scanner/scanner.d.ts +7 -7
  157. package/dependency-scanner/scanner.d.ts.map +1 -1
  158. package/dependency-scanner/scanner.js +9 -14
  159. package/dependency-scanner/scanner.js.map +1 -1
  160. package/dependency-scanner/source-file-references.js +3 -42
  161. package/dependency-scanner/source-file-references.js.map +1 -1
  162. package/dependency-scanner/source-map-file-locator.d.ts.map +1 -1
  163. package/dependency-scanner/source-map-file-locator.js +10 -3
  164. package/dependency-scanner/source-map-file-locator.js.map +1 -1
  165. package/dependency-scanner/typescript-file-host.d.ts +2 -0
  166. package/dependency-scanner/typescript-file-host.d.ts.map +1 -1
  167. package/dependency-scanner/typescript-file-host.js +99 -32
  168. package/dependency-scanner/typescript-file-host.js.map +1 -1
  169. package/dependency-scanner/typescript-project-analyzer.d.ts +4 -5
  170. package/dependency-scanner/typescript-project-analyzer.d.ts.map +1 -1
  171. package/dependency-scanner/typescript-project-analyzer.js +5 -17
  172. package/dependency-scanner/typescript-project-analyzer.js.map +1 -1
  173. package/directed-graph/graph.d.ts +1 -1
  174. package/directed-graph/graph.d.ts.map +1 -1
  175. package/directed-graph/graph.js +132 -97
  176. package/directed-graph/graph.js.map +1 -1
  177. package/file-manager/compare.js +11 -9
  178. package/file-manager/compare.js.map +1 -1
  179. package/file-manager/file-manager.d.ts +1 -1
  180. package/file-manager/file-manager.d.ts.map +1 -1
  181. package/file-manager/file-manager.js +7 -1
  182. package/file-manager/file-manager.js.map +1 -1
  183. package/file-manager/permissions.js +20 -6
  184. package/file-manager/permissions.js.map +1 -1
  185. package/linker/linked-bundle.d.ts +5 -3
  186. package/linker/linked-bundle.d.ts.map +1 -1
  187. package/linker/linker.d.ts.map +1 -1
  188. package/linker/linker.js +8 -7
  189. package/linker/linker.js.map +1 -1
  190. package/linker/resource-graph.js +5 -8
  191. package/linker/resource-graph.js.map +1 -1
  192. package/linker/source-modifier/import-paths.js +1 -12
  193. package/linker/source-modifier/import-paths.js.map +1 -1
  194. package/linker/substitute-bundles.js +55 -48
  195. package/linker/substitute-bundles.js.map +1 -1
  196. package/linker/substituted-resource-graph.js +5 -8
  197. package/linker/substituted-resource-graph.js.map +1 -1
  198. package/npm-oidc-id-token-resolver.js +56 -0
  199. package/npm-oidc-id-token-resolver.js.map +1 -0
  200. package/package-surface/modules.js +307 -0
  201. package/package-surface/modules.js.map +1 -0
  202. package/package-surface/public-module-usage.js +37 -0
  203. package/package-surface/public-module-usage.js.map +1 -0
  204. package/package-surface/surface.d.ts +14 -0
  205. package/package-surface/surface.d.ts.map +1 -0
  206. package/package-surface/surface.js +16 -0
  207. package/package-surface/surface.js.map +1 -0
  208. package/package.json +20 -16
  209. package/packages/package-processor.composition.js +127 -0
  210. package/packages/package-processor.composition.js.map +1 -0
  211. package/packages/packtory/packtory.entry-point.d.ts +16 -6
  212. package/packages/packtory/packtory.entry-point.d.ts.map +1 -1
  213. package/packages/packtory/packtory.entry-point.js +7 -43
  214. package/packages/packtory/packtory.entry-point.js.map +1 -1
  215. package/packtory/map-config.d.ts +7 -16
  216. package/packtory/map-config.d.ts.map +1 -1
  217. package/packtory/map-config.js +5 -60
  218. package/packtory/map-config.js.map +1 -1
  219. package/packtory/normalize-paths.js +2 -2
  220. package/packtory/normalize-paths.js.map +1 -1
  221. package/packtory/package-processor-build.js +75 -0
  222. package/packtory/package-processor-build.js.map +1 -0
  223. package/packtory/package-processor-publish.d.ts +29 -0
  224. package/packtory/package-processor-publish.d.ts.map +1 -0
  225. package/packtory/package-processor-publish.js +134 -0
  226. package/packtory/package-processor-publish.js.map +1 -0
  227. package/packtory/package-processor.d.ts +17 -21
  228. package/packtory/package-processor.d.ts.map +1 -1
  229. package/packtory/package-processor.js +6 -81
  230. package/packtory/package-processor.js.map +1 -1
  231. package/packtory/packtory-publish.js +66 -0
  232. package/packtory/packtory-publish.js.map +1 -0
  233. package/packtory/packtory-resolve.js +77 -0
  234. package/packtory/packtory-resolve.js.map +1 -0
  235. package/packtory/packtory-results.d.ts +47 -0
  236. package/packtory/packtory-results.d.ts.map +1 -0
  237. package/packtory/packtory-results.js +16 -0
  238. package/packtory/packtory-results.js.map +1 -0
  239. package/packtory/packtory.d.ts +16 -37
  240. package/packtory/packtory.d.ts.map +1 -1
  241. package/packtory/packtory.js +33 -114
  242. package/packtory/packtory.js.map +1 -1
  243. package/packtory/prepare-package-options.d.ts +28 -0
  244. package/packtory/prepare-package-options.d.ts.map +1 -0
  245. package/packtory/prepare-package-options.js +122 -0
  246. package/packtory/prepare-package-options.js.map +1 -0
  247. package/packtory/report-attachment.js +25 -0
  248. package/packtory/report-attachment.js.map +1 -0
  249. package/packtory/resolved-package.d.ts +17 -0
  250. package/packtory/resolved-package.d.ts.map +1 -0
  251. package/packtory/resolved-package.js +35 -0
  252. package/packtory/resolved-package.js.map +1 -0
  253. package/packtory/scheduler.d.ts.map +1 -1
  254. package/packtory/scheduler.js +17 -15
  255. package/packtory/scheduler.js.map +1 -1
  256. package/progress/progress-broadcaster.d.ts +128 -5
  257. package/progress/progress-broadcaster.d.ts.map +1 -1
  258. package/progress/progress-broadcaster.js +37 -8
  259. package/progress/progress-broadcaster.js.map +1 -1
  260. package/report/artifact-entry-merger.js +22 -0
  261. package/report/artifact-entry-merger.js.map +1 -0
  262. package/report/config-redactor.js +27 -0
  263. package/report/config-redactor.js.map +1 -0
  264. package/report/decorators.js +68 -0
  265. package/report/decorators.js.map +1 -0
  266. package/report/inspectors.js +74 -0
  267. package/report/inspectors.js.map +1 -0
  268. package/report/report-aggregator.d.ts +61 -0
  269. package/report/report-aggregator.d.ts.map +1 -0
  270. package/report/report-aggregator.js +187 -0
  271. package/report/report-aggregator.js.map +1 -0
  272. package/resource-resolver/content.js +14 -0
  273. package/resource-resolver/content.js.map +1 -1
  274. package/resource-resolver/resolved-bundle.d.ts +4 -2
  275. package/resource-resolver/resolved-bundle.d.ts.map +1 -1
  276. package/resource-resolver/resource-resolve-options.d.ts +12 -5
  277. package/resource-resolver/resource-resolve-options.d.ts.map +1 -1
  278. package/resource-resolver/resource-resolve-options.js +14 -0
  279. package/resource-resolver/resource-resolve-options.js.map +1 -0
  280. package/resource-resolver/resource-resolver.d.ts +1 -1
  281. package/resource-resolver/resource-resolver.d.ts.map +1 -1
  282. package/resource-resolver/resource-resolver.js +37 -22
  283. package/resource-resolver/resource-resolver.js.map +1 -1
  284. package/sbom/extract-license.js +12 -0
  285. package/sbom/extract-license.js.map +1 -0
  286. package/sbom/license-resolver.d.ts +14 -0
  287. package/sbom/license-resolver.d.ts.map +1 -0
  288. package/sbom/license-resolver.js +22 -0
  289. package/sbom/license-resolver.js.map +1 -0
  290. package/sbom/sbom-builder.js +68 -0
  291. package/sbom/sbom-builder.js.map +1 -0
  292. package/sbom/sbom-file.d.ts +19 -0
  293. package/sbom/sbom-file.d.ts.map +1 -0
  294. package/sbom/sbom-file.js +57 -0
  295. package/sbom/sbom-file.js.map +1 -0
  296. package/sbom/sbom-serializer.d.ts +6 -0
  297. package/sbom/sbom-serializer.d.ts.map +1 -0
  298. package/sbom/sbom-serializer.js +11 -0
  299. package/sbom/sbom-serializer.js.map +1 -0
  300. package/sbom/tool-version.js +44 -0
  301. package/sbom/tool-version.js.map +1 -0
  302. package/tar/extract-tar.js +28 -3
  303. package/tar/extract-tar.js.map +1 -1
  304. package/tar/tarball-builder.d.ts.map +1 -1
  305. package/tar/tarball-builder.js +10 -7
  306. package/tar/tarball-builder.js.map +1 -1
  307. package/version-manager/manager.d.ts +5 -1
  308. package/version-manager/manager.d.ts.map +1 -1
  309. package/version-manager/manager.js +9 -1
  310. package/version-manager/manager.js.map +1 -1
  311. package/version-manager/manifest/builder.js +52 -6
  312. package/version-manager/manifest/builder.js.map +1 -1
  313. package/version-manager/manifest/serialize.js +31 -39
  314. package/version-manager/manifest/serialize.js.map +1 -1
  315. package/version-manager/manifest/sort-values.js +17 -0
  316. package/version-manager/manifest/sort-values.js.map +1 -0
  317. package/version-manager/specifier-classifier.js +35 -0
  318. package/version-manager/specifier-classifier.js.map +1 -0
  319. package/version-manager/specifier-errors.js +44 -0
  320. package/version-manager/specifier-errors.js.map +1 -0
  321. package/version-manager/versioned-bundle-dependencies.js +112 -0
  322. package/version-manager/versioned-bundle-dependencies.js.map +1 -0
  323. package/version-manager/versioned-bundle-imports.d.ts +5 -0
  324. package/version-manager/versioned-bundle-imports.d.ts.map +1 -0
  325. package/version-manager/versioned-bundle-imports.js +75 -0
  326. package/version-manager/versioned-bundle-imports.js.map +1 -0
  327. package/version-manager/versioned-bundle.d.ts +16 -8
  328. package/version-manager/versioned-bundle.d.ts.map +1 -1
  329. package/version-manager/versioned-bundle.js +48 -62
  330. package/version-manager/versioned-bundle.js.map +1 -1
  331. package/config/entry-point.d.ts +0 -7
  332. package/config/entry-point.d.ts.map +0 -1
  333. package/config/entry-point.js.map +0 -1
  334. package/file-manager/sort.js +0 -13
  335. package/file-manager/sort.js.map +0 -1
  336. package/list/unique-list.js +0 -5
  337. package/list/unique-list.js.map +0 -1
  338. package/version-manager/manifest/builder.d.ts +0 -5
  339. package/version-manager/manifest/builder.d.ts.map +0 -1
@@ -1,4 +1,65 @@
1
- import { type Emitter } from 'mitt';
1
+ export type StageName = 'build' | 'eliminate' | 'publish' | 'resolveAndLink' | 'tryPublish';
2
+ export type IncludedFile = {
3
+ readonly path: string;
4
+ readonly reason: string;
5
+ };
6
+ export type ExcludedFile = {
7
+ readonly specifier: string;
8
+ readonly reason: string;
9
+ };
10
+ export type ImportRewrite = {
11
+ readonly file: string;
12
+ readonly fromSpecifier: string;
13
+ readonly toSpecifier: string;
14
+ readonly targetBundle: string;
15
+ };
16
+ export type ArtifactStatus = 'changed' | 'generated' | 'unchanged';
17
+ export type ArtifactBadge = 'dead-code-elimination' | 'import-path-rewrite';
18
+ export type FileDecision = {
19
+ readonly path: string;
20
+ readonly decision: 'eliminated' | 'kept' | 'transformed';
21
+ readonly reason: string;
22
+ readonly sourceBytes: number;
23
+ readonly outputBytes?: number;
24
+ };
25
+ export type DroppedSymbol = {
26
+ readonly file: string;
27
+ readonly symbolName: string;
28
+ readonly kind: string;
29
+ readonly reason: string;
30
+ };
31
+ export type CrossBundleSeed = {
32
+ readonly binding: string;
33
+ readonly sourceBundle: string;
34
+ readonly consumerBundle: string;
35
+ readonly gatedBy: string;
36
+ };
37
+ type EliminationBundleResult = {
38
+ readonly packageName: string;
39
+ readonly files: readonly FileDecision[];
40
+ readonly droppedSymbols: readonly DroppedSymbol[];
41
+ readonly seeds: readonly CrossBundleSeed[];
42
+ };
43
+ export type VersionTrigger = 'auto-patch-bump' | 'initial' | 'minimum' | 'pinned';
44
+ export type FieldProvenance = {
45
+ readonly source: 'additionalAttributes' | 'derived' | 'mainPackageJson';
46
+ readonly note?: string;
47
+ };
48
+ export type ArtifactEntry = {
49
+ readonly path: string;
50
+ readonly sizeBytes: number;
51
+ readonly kind: 'additional' | 'manifest' | 'sbom' | 'source';
52
+ readonly sourcePath?: string | undefined;
53
+ readonly status: ArtifactStatus;
54
+ readonly badges: readonly ArtifactBadge[];
55
+ };
56
+ export type EliminatedSourceFile = {
57
+ readonly path: string;
58
+ readonly reason: string;
59
+ readonly sourceBytes: number;
60
+ readonly outputBytes?: number | undefined;
61
+ };
62
+ export type RedactedConfig = Readonly<Record<string, unknown>>;
2
63
  type ProgressEventPayload = {
3
64
  readonly packageName: string;
4
65
  readonly version: string;
@@ -21,6 +82,52 @@ type DonePayload = {
21
82
  readonly version: string;
22
83
  readonly status: 'already-published' | 'initial-version' | 'new-version';
23
84
  };
85
+ type InputsResolvedPayload = {
86
+ readonly packageName: string;
87
+ readonly roots: Readonly<Record<string, string>>;
88
+ readonly sourceFileCount: number;
89
+ readonly siblingVersions: Readonly<Record<string, string>>;
90
+ };
91
+ type EffectiveConfigResolvedPayload = {
92
+ readonly packageName: string;
93
+ readonly config: RedactedConfig;
94
+ };
95
+ type ScanCompletedPayload = {
96
+ readonly packageName: string;
97
+ readonly included: readonly IncludedFile[];
98
+ readonly excluded: readonly ExcludedFile[];
99
+ };
100
+ type LinkingCompletedPayload = {
101
+ readonly packageName: string;
102
+ readonly rewrites: readonly ImportRewrite[];
103
+ };
104
+ type EliminationCompletedPayload = {
105
+ readonly perBundle: readonly EliminationBundleResult[];
106
+ };
107
+ type VersionDeterminedPayload = {
108
+ readonly packageName: string;
109
+ readonly previousVersion: string | undefined;
110
+ readonly chosenVersion: string;
111
+ readonly trigger: VersionTrigger;
112
+ };
113
+ type PackageJsonAssembledPayload = {
114
+ readonly packageName: string;
115
+ readonly fields: Readonly<Record<string, FieldProvenance>>;
116
+ };
117
+ type ArtifactsCollectedPayload = {
118
+ readonly packageName: string;
119
+ readonly entries: readonly ArtifactEntry[];
120
+ };
121
+ type StageTimedPayload = {
122
+ readonly packageName: string;
123
+ readonly stage: StageName;
124
+ readonly durationMs: number;
125
+ };
126
+ type PackageFailedPayload = {
127
+ readonly packageName: string;
128
+ readonly stage: StageName;
129
+ readonly message: string;
130
+ };
24
131
  type Events = {
25
132
  readonly scheduled: ScheduledEventPayload;
26
133
  readonly resolving: ResolvingEventPayload;
@@ -30,14 +137,30 @@ type Events = {
30
137
  readonly publishing: ProgressEventPayload;
31
138
  readonly done: DonePayload;
32
139
  readonly error: ErrorPayload;
140
+ readonly inputsResolved: InputsResolvedPayload;
141
+ readonly effectiveConfigResolved: EffectiveConfigResolvedPayload;
142
+ readonly scanCompleted: ScanCompletedPayload;
143
+ readonly linkingCompleted: LinkingCompletedPayload;
144
+ readonly eliminationCompleted: EliminationCompletedPayload;
145
+ readonly versionDetermined: VersionDeterminedPayload;
146
+ readonly packageJsonAssembled: PackageJsonAssembledPayload;
147
+ readonly artifactsCollected: ArtifactsCollectedPayload;
148
+ readonly stageTimed: StageTimedPayload;
149
+ readonly packageFailed: PackageFailedPayload;
33
150
  };
34
- type ProgressBroadcastEmitter = Emitter<Events>;
151
+ type Listener<TPayload> = (payload: TPayload) => void;
152
+ type ProgressEventName = 'building' | 'done' | 'error' | 'linking' | 'publishing' | 'rebuilding' | 'resolving' | 'scheduled';
35
153
  export type ProgressBroadcastProvider = {
36
- readonly emit: ProgressBroadcastEmitter['emit'];
154
+ readonly emit: <TEventName extends keyof Events>(eventName: TEventName, payload: Events[TEventName]) => void;
155
+ readonly hasSubscribers: (eventName: keyof Events) => boolean;
37
156
  };
38
157
  export type ProgressBroadcastConsumer = {
39
- readonly on: ProgressBroadcastEmitter['on'];
40
- readonly off: ProgressBroadcastEmitter['off'];
158
+ readonly on: <TEventName extends keyof Events>(eventName: TEventName, listener: Listener<Events[TEventName]>) => void;
159
+ readonly off: <TEventName extends keyof Events>(eventName: TEventName, listener: Listener<Events[TEventName]>) => void;
160
+ };
161
+ export type PublicProgressBroadcastConsumer = {
162
+ readonly on: <TEventName extends ProgressEventName>(eventName: TEventName, listener: Listener<Events[TEventName]>) => void;
163
+ readonly off: <TEventName extends ProgressEventName>(eventName: TEventName, listener: Listener<Events[TEventName]>) => void;
41
164
  };
42
165
  export type ProgressBroadcaster = {
43
166
  readonly provider: ProgressBroadcastProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"progress-broadcaster.d.ts","sourceRoot":"","sources":["../../../../source/progress/progress-broadcaster.ts"],"names":[],"mappings":"AAAA,OAA4B,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAMzD,KAAK,oBAAoB,GAAG;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,KAAK,qBAAqB,GAAG;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,KAAK,qBAAqB,GAAG;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,KAAK,YAAY,GAAG;IAChB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACzB,CAAC;AAEF,KAAK,WAAW,GAAG;IACf,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,aAAa,CAAC;CAC5E,CAAC;AAEF,KAAK,MAAM,GAAG;IACV,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;CAChC,CAAC;AAEF,KAAK,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAEhD,MAAM,MAAM,yBAAyB,GAAG;IACpC,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACpC,QAAQ,CAAC,EAAE,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC5C,QAAQ,CAAC,GAAG,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;CAChD,CAAC;AAEF,wBAAgB,yBAAyB,IAAI,mBAAmB,CAY/D"}
1
+ {"version":3,"file":"progress-broadcaster.d.ts","sourceRoot":"","sources":["../../../../source/progress/progress-broadcaster.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,45 @@
1
- import _createEventEmitter, {} from 'mitt';
2
- // workaround for https://github.com/developit/mitt/issues/191
3
- // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- workaround
4
- const createEventEmitter = _createEventEmitter;
1
+ function createListenerRegistry() {
2
+ return {
3
+ scheduled: new Set(),
4
+ resolving: new Set(),
5
+ linking: new Set(),
6
+ building: new Set(),
7
+ rebuilding: new Set(),
8
+ publishing: new Set(),
9
+ done: new Set(),
10
+ error: new Set(),
11
+ inputsResolved: new Set(),
12
+ effectiveConfigResolved: new Set(),
13
+ scanCompleted: new Set(),
14
+ linkingCompleted: new Set(),
15
+ eliminationCompleted: new Set(),
16
+ versionDetermined: new Set(),
17
+ packageJsonAssembled: new Set(),
18
+ artifactsCollected: new Set(),
19
+ stageTimed: new Set(),
20
+ packageFailed: new Set()
21
+ };
22
+ }
5
23
  export function createProgressBroadcaster() {
6
- const emitter = createEventEmitter();
24
+ const listeners = createListenerRegistry();
7
25
  return {
8
26
  provider: {
9
- emit: emitter.emit
27
+ emit: (eventName, payload) => {
28
+ listeners[eventName].forEach((listener) => {
29
+ listener(payload);
30
+ });
31
+ },
32
+ hasSubscribers: (eventName) => {
33
+ return listeners[eventName].size > 0;
34
+ }
10
35
  },
11
36
  consumer: {
12
- on: emitter.on,
13
- off: emitter.off
37
+ on: (eventName, listener) => {
38
+ listeners[eventName].add(listener);
39
+ },
40
+ off: (eventName, listener) => {
41
+ listeners[eventName].delete(listener);
42
+ }
14
43
  }
15
44
  };
16
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"progress-broadcaster.js","sourceRoot":"","sources":["../../../../source/progress/progress-broadcaster.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,EAAE,EAAgB,MAAM,MAAM,CAAC;AAEzD,8DAA8D;AAC9D,qFAAqF;AACrF,MAAM,kBAAkB,GAAG,mBAAoE,CAAC;AAyDhG,MAAM,UAAU,yBAAyB;IACrC,MAAM,OAAO,GAAG,kBAAkB,EAAU,CAAC;IAE7C,OAAO;QACH,QAAQ,EAAE;YACN,IAAI,EAAE,OAAO,CAAC,IAAI;SACrB;QACD,QAAQ,EAAE;YACN,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,GAAG,EAAE,OAAO,CAAC,GAAG;SACnB;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"progress-broadcaster.js","sourceRoot":"","sources":["../../../../source/progress/progress-broadcaster.ts"],"names":[],"mappings":"AAkOA,SAAS,sBAAsB;IAC3B,OAAO;QACH,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,OAAO,EAAE,IAAI,GAAG,EAAE;QAClB,QAAQ,EAAE,IAAI,GAAG,EAAE;QACnB,UAAU,EAAE,IAAI,GAAG,EAAE;QACrB,UAAU,EAAE,IAAI,GAAG,EAAE;QACrB,IAAI,EAAE,IAAI,GAAG,EAAE;QACf,KAAK,EAAE,IAAI,GAAG,EAAE;QAChB,cAAc,EAAE,IAAI,GAAG,EAAE;QACzB,uBAAuB,EAAE,IAAI,GAAG,EAAE;QAClC,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,gBAAgB,EAAE,IAAI,GAAG,EAAE;QAC3B,oBAAoB,EAAE,IAAI,GAAG,EAAE;QAC/B,iBAAiB,EAAE,IAAI,GAAG,EAAE;QAC5B,oBAAoB,EAAE,IAAI,GAAG,EAAE;QAC/B,kBAAkB,EAAE,IAAI,GAAG,EAAE;QAC7B,UAAU,EAAE,IAAI,GAAG,EAAE;QACrB,aAAa,EAAE,IAAI,GAAG,EAAE;KAC3B,CAAC;AACN,CAAC;AAED,MAAM,UAAU,yBAAyB;IACrC,MAAM,SAAS,GAAG,sBAAsB,EAAE,CAAC;IAE3C,OAAO;QACH,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;gBACzB,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACtC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;YACP,CAAC;YACD,cAAc,EAAE,CAAC,SAAS,EAAE,EAAE;gBAC1B,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YACzC,CAAC;SACJ;QACD,QAAQ,EAAE;YACN,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE;gBACxB,SAAS,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC;YACD,GAAG,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE;gBACzB,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1C,CAAC;SACJ;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,22 @@
1
+ // eslint-disable-next-line max-statements -- artifact entry merging intentionally reconciles rewrite and DCE state in one pass
2
+ export function mergeArtifactEntry(entry, rewrittenSourcePaths, transformedSourcePaths) {
3
+ if (entry.sourcePath === undefined) {
4
+ return entry;
5
+ }
6
+ const badgeSet = new Set(entry.badges);
7
+ let { status } = entry;
8
+ if (rewrittenSourcePaths.has(entry.sourcePath)) {
9
+ badgeSet.add('import-path-rewrite');
10
+ status = 'changed';
11
+ }
12
+ if (transformedSourcePaths.has(entry.sourcePath)) {
13
+ badgeSet.add('dead-code-elimination');
14
+ status = 'changed';
15
+ }
16
+ return {
17
+ ...entry,
18
+ status,
19
+ badges: Array.from(badgeSet)
20
+ };
21
+ }
22
+ //# sourceMappingURL=artifact-entry-merger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-entry-merger.js","sourceRoot":"","sources":["../../../../source/report/artifact-entry-merger.ts"],"names":[],"mappings":"AAEA,+HAA+H;AAC/H,MAAM,UAAU,kBAAkB,CAC9B,KAAoB,EACpB,oBAAyC,EACzC,sBAA2C;IAE3C,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAgB,KAAK,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACvB,IAAI,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7C,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACpC,MAAM,GAAG,SAAS,CAAC;IACvB,CAAC;IACD,IAAI,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,QAAQ,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACtC,MAAM,GAAG,SAAS,CAAC;IACvB,CAAC;IACD,OAAO;QACH,GAAG,KAAK;QACR,MAAM;QACN,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;KAC/B,CAAC;AACN,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { redactPublishSettings } from "../config/publish-settings.report.js";
2
+ import { redactRegistrySettings } from "../config/registry-settings.report.js";
3
+ function findPackageConfig(config, packageName) {
4
+ return config.packages.find((entry) => {
5
+ return entry.name === packageName;
6
+ });
7
+ }
8
+ function resolvePublishSettings(config, packageName) {
9
+ const packageConfig = findPackageConfig(config, packageName);
10
+ const resolved = packageConfig?.publishSettings ?? config.commonPackageSettings?.publishSettings;
11
+ return resolved === undefined ? undefined : redactPublishSettings(resolved);
12
+ }
13
+ function resolveSourcesFolder(config, packageName) {
14
+ const packageConfig = findPackageConfig(config, packageName);
15
+ return packageConfig?.sourcesFolder ?? config.commonPackageSettings?.sourcesFolder;
16
+ }
17
+ export function redactConfigForPackage(config, packageName) {
18
+ const publishSettings = resolvePublishSettings(config, packageName);
19
+ const sourcesFolder = resolveSourcesFolder(config, packageName);
20
+ return {
21
+ name: packageName,
22
+ registrySettings: redactRegistrySettings(config.registrySettings),
23
+ ...(publishSettings === undefined ? {} : { publishSettings }),
24
+ ...(sourcesFolder === undefined ? {} : { sourcesFolder })
25
+ };
26
+ }
27
+ //# sourceMappingURL=config-redactor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-redactor.js","sourceRoot":"","sources":["../../../../source/report/config-redactor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAgC,MAAM,sCAAsC,CAAC;AAC3G,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAS/E,SAAS,iBAAiB,CAAC,MAAsB,EAAE,WAAmB;IAClE,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;QAClC,OAAO,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;IACtC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAsB,EAAE,WAAmB;IACvE,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,aAAa,EAAE,eAAe,IAAI,MAAM,CAAC,qBAAqB,EAAE,eAAe,CAAC;IACjG,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAsB,EAAE,WAAmB;IACrE,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC7D,OAAO,aAAa,EAAE,aAAa,IAAI,MAAM,CAAC,qBAAqB,EAAE,aAAa,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAsB,EAAE,WAAmB;IAC9E,MAAM,eAAe,GAAG,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpE,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAChE,OAAO;QACH,IAAI,EAAE,WAAW;QACjB,gBAAgB,EAAE,sBAAsB,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACjE,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;QAC7D,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC;KAC5D,CAAC;AACN,CAAC"}
@@ -0,0 +1,68 @@
1
+ function emitTiming(progressBroadcaster, packageName, stage, start) {
2
+ if (!progressBroadcaster.hasSubscribers('stageTimed')) {
3
+ return;
4
+ }
5
+ progressBroadcaster.emit('stageTimed', {
6
+ packageName,
7
+ stage,
8
+ durationMs: performance.now() - start
9
+ });
10
+ }
11
+ export function withFailureCapture(progressBroadcaster, stage, execute) {
12
+ return async (options) => {
13
+ try {
14
+ return await execute(options);
15
+ }
16
+ catch (error) {
17
+ if (progressBroadcaster.hasSubscribers('packageFailed')) {
18
+ progressBroadcaster.emit('packageFailed', {
19
+ packageName: options.name,
20
+ stage,
21
+ message: error instanceof Error ? error.message : String(error)
22
+ });
23
+ }
24
+ throw error;
25
+ }
26
+ };
27
+ }
28
+ export function withStageTimings(processor, progressBroadcaster) {
29
+ return {
30
+ async resolveAndLink(options) {
31
+ const start = performance.now();
32
+ try {
33
+ return await processor.resolveAndLink(options);
34
+ }
35
+ finally {
36
+ emitTiming(progressBroadcaster, options.name, 'resolveAndLink', start);
37
+ }
38
+ },
39
+ async build(options) {
40
+ const start = performance.now();
41
+ try {
42
+ return await processor.build(options);
43
+ }
44
+ finally {
45
+ emitTiming(progressBroadcaster, options.name, 'build', start);
46
+ }
47
+ },
48
+ async buildAndPublish(options) {
49
+ const start = performance.now();
50
+ try {
51
+ return await processor.buildAndPublish(options);
52
+ }
53
+ finally {
54
+ emitTiming(progressBroadcaster, options.buildOptions.name, 'publish', start);
55
+ }
56
+ },
57
+ async tryBuildAndPublish(options) {
58
+ const start = performance.now();
59
+ try {
60
+ return await processor.tryBuildAndPublish(options);
61
+ }
62
+ finally {
63
+ emitTiming(progressBroadcaster, options.buildOptions.name, 'tryPublish', start);
64
+ }
65
+ }
66
+ };
67
+ }
68
+ //# sourceMappingURL=decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../../source/report/decorators.ts"],"names":[],"mappings":"AAKA,SAAS,UAAU,CACf,mBAA8C,EAC9C,WAAmB,EACnB,KAAgB,EAChB,KAAa;IAEb,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;QACpD,OAAO;IACX,CAAC;IACD,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE;QACnC,WAAW;QACX,KAAK;QACL,UAAU,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK;KACxC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,UAAU,kBAAkB,CAC9B,mBAA8C,EAC9C,KAAgB,EAChB,OAAgD;IAEhD,OAAO,KAAK,EAAE,OAAiB,EAAoB,EAAE;QACjD,IAAI,CAAC;YACD,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,mBAAmB,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC;gBACtD,mBAAmB,CAAC,IAAI,CAAC,eAAe,EAAE;oBACtC,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,KAAK;oBACL,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAClE,CAAC,CAAC;YACP,CAAC;YACD,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC5B,SAA2B,EAC3B,mBAA8C;IAE9C,OAAO;QACH,KAAK,CAAC,cAAc,CAAC,OAAO;YACxB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAChC,IAAI,CAAC;gBACD,OAAO,MAAM,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACnD,CAAC;oBAAS,CAAC;gBACP,UAAU,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;YAC3E,CAAC;QACL,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,OAAO;YACf,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAChC,IAAI,CAAC;gBACD,OAAO,MAAM,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1C,CAAC;oBAAS,CAAC;gBACP,UAAU,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAClE,CAAC;QACL,CAAC;QACD,KAAK,CAAC,eAAe,CAAC,OAAO;YACzB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAChC,IAAI,CAAC;gBACD,OAAO,MAAM,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACpD,CAAC;oBAAS,CAAC;gBACP,UAAU,CAAC,mBAAmB,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACjF,CAAC;QACL,CAAC;QACD,KAAK,CAAC,kBAAkB,CAAC,OAAO;YAC5B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAChC,IAAI,CAAC;gBACD,OAAO,MAAM,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACvD,CAAC;oBAAS,CAAC;gBACP,UAAU,CAAC,mBAAmB,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;YACpF,CAAC;QACL,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,74 @@
1
+ function inferArtifactKind(filePath) {
2
+ if (filePath === 'package.json' || filePath.endsWith('/package.json')) {
3
+ return 'manifest';
4
+ }
5
+ if (filePath.endsWith('.sbom.json') || filePath.endsWith('.cdx.json')) {
6
+ return 'sbom';
7
+ }
8
+ if (/\.(?:cjs|d\.[cm]ts|jsx?|map|mjs|tsx?)$/.test(filePath)) {
9
+ return 'source';
10
+ }
11
+ return 'additional';
12
+ }
13
+ export function inspectArtifactSizes(contents) {
14
+ return contents.map((entry) => {
15
+ const sourcePath = 'sourceFilePath' in entry ? entry.sourceFilePath : undefined;
16
+ const rewritten = entry.isSubstituted === true;
17
+ let status = 'unchanged';
18
+ if (sourcePath === undefined) {
19
+ status = 'generated';
20
+ }
21
+ else if (rewritten) {
22
+ status = 'changed';
23
+ }
24
+ return {
25
+ path: entry.filePath,
26
+ sizeBytes: Buffer.byteLength(entry.content),
27
+ kind: inferArtifactKind(entry.filePath),
28
+ ...(sourcePath === undefined ? {} : { sourcePath }),
29
+ status,
30
+ badges: rewritten ? ['import-path-rewrite'] : []
31
+ };
32
+ });
33
+ }
34
+ export function inspectScanResults(bundle) {
35
+ const included = bundle.contents.map((entry) => {
36
+ return { path: entry.fileDescription.sourceFilePath, reason: 'reachable-from-entry' };
37
+ });
38
+ const excluded = Array.from(bundle.externalDependencies.keys(), (specifier) => {
39
+ return { specifier, reason: 'external-module' };
40
+ });
41
+ return { included, excluded };
42
+ }
43
+ export function inspectLinkerRewrites(bundle) {
44
+ const linkedBundleNames = Array.from(bundle.linkedBundleDependencies.keys());
45
+ return bundle.contents.flatMap((resource) => {
46
+ if (!resource.isSubstituted) {
47
+ return [];
48
+ }
49
+ return linkedBundleNames.map((targetBundle) => {
50
+ return {
51
+ file: resource.fileDescription.sourceFilePath,
52
+ fromSpecifier: resource.fileDescription.sourceFilePath,
53
+ toSpecifier: targetBundle,
54
+ targetBundle
55
+ };
56
+ });
57
+ });
58
+ }
59
+ export function inspectPackageJsonProvenance(assembled, mainPackageJson, additionalAttributes) {
60
+ const result = {};
61
+ for (const key of Object.keys(assembled)) {
62
+ if (additionalAttributes !== undefined && key in additionalAttributes) {
63
+ result[key] = { source: 'additionalAttributes' };
64
+ }
65
+ else if (key in mainPackageJson) {
66
+ result[key] = { source: 'mainPackageJson' };
67
+ }
68
+ else {
69
+ result[key] = { source: 'derived' };
70
+ }
71
+ }
72
+ return result;
73
+ }
74
+ //# sourceMappingURL=inspectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspectors.js","sourceRoot":"","sources":["../../../../source/report/inspectors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import type { ArtifactEntry, CrossBundleSeed, DroppedSymbol, EliminatedSourceFile, ExcludedFile, FieldProvenance, FileDecision, ImportRewrite, IncludedFile, ProgressBroadcastConsumer, RedactedConfig, StageName, VersionTrigger } from '../progress/progress-broadcaster.ts';
2
+ type VersionDecision = {
3
+ readonly previousVersion: string | undefined;
4
+ readonly chosenVersion: string;
5
+ readonly trigger: VersionTrigger;
6
+ };
7
+ type CrossBundleLink = {
8
+ readonly fromBundle: string;
9
+ readonly toBundle: string;
10
+ };
11
+ export type PackageReport = {
12
+ readonly inputs?: {
13
+ readonly roots: Readonly<Record<string, string>>;
14
+ readonly effectiveConfig?: RedactedConfig;
15
+ readonly siblingVersions: Readonly<Record<string, string>>;
16
+ readonly sourceFileCount: number;
17
+ };
18
+ readonly decisions: {
19
+ readonly dependencyScan?: {
20
+ readonly included: readonly IncludedFile[];
21
+ readonly excluded: readonly ExcludedFile[];
22
+ };
23
+ readonly deadCodeElimination?: {
24
+ readonly files: readonly FileDecision[];
25
+ readonly symbols: readonly DroppedSymbol[];
26
+ readonly seeds: readonly CrossBundleSeed[];
27
+ };
28
+ readonly linker?: {
29
+ readonly rewrites: readonly ImportRewrite[];
30
+ };
31
+ readonly version?: VersionDecision;
32
+ readonly packageJson?: Readonly<Record<string, FieldProvenance>>;
33
+ };
34
+ readonly outputs?: {
35
+ readonly tarball: {
36
+ readonly entries: readonly ArtifactEntry[];
37
+ readonly totalBytes: number;
38
+ };
39
+ };
40
+ readonly eliminatedSourceFiles?: readonly EliminatedSourceFile[];
41
+ readonly timings: Readonly<Record<string, number>>;
42
+ readonly failure?: {
43
+ readonly stage: StageName;
44
+ readonly message: string;
45
+ };
46
+ };
47
+ export type BuildReport = {
48
+ readonly schemaVersion: 1;
49
+ readonly generatedAt: string;
50
+ readonly packages: Readonly<Record<string, PackageReport>>;
51
+ readonly aggregate: {
52
+ readonly crossBundleLinks: readonly CrossBundleLink[];
53
+ };
54
+ };
55
+ export type ReportAggregator = {
56
+ readonly unsubscribe: () => void;
57
+ readonly build: () => BuildReport;
58
+ };
59
+ export declare function createReportAggregator(consumer: ProgressBroadcastConsumer): ReportAggregator;
60
+ export {};
61
+ //# sourceMappingURL=report-aggregator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report-aggregator.d.ts","sourceRoot":"","sources":["../../../../source/report/report-aggregator.ts"],"names":[],"mappings":"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"}