@atlaspack/core 2.16.2-canary.21 → 2.16.2-canary.211

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 (355) hide show
  1. package/CHANGELOG.md +561 -0
  2. package/dist/AssetGraph.js +591 -0
  3. package/dist/Atlaspack.js +656 -0
  4. package/dist/AtlaspackConfig.js +324 -0
  5. package/dist/AtlaspackConfig.schema.js +108 -0
  6. package/dist/BundleGraph.js +1628 -0
  7. package/dist/CommittedAsset.js +142 -0
  8. package/dist/Dependency.js +125 -0
  9. package/dist/Environment.js +132 -0
  10. package/dist/EnvironmentManager.js +108 -0
  11. package/dist/IdentifierRegistry.js +38 -0
  12. package/dist/InternalConfig.js +37 -0
  13. package/dist/PackagerRunner.js +531 -0
  14. package/dist/ReporterRunner.js +151 -0
  15. package/dist/RequestTracker.js +1368 -0
  16. package/dist/SymbolPropagation.js +617 -0
  17. package/dist/TargetDescriptor.schema.js +143 -0
  18. package/dist/Transformation.js +487 -0
  19. package/dist/UncommittedAsset.js +315 -0
  20. package/dist/Validation.js +196 -0
  21. package/dist/applyRuntimes.js +305 -0
  22. package/dist/assetUtils.js +168 -0
  23. package/dist/atlaspack-v3/AtlaspackV3.js +70 -0
  24. package/dist/atlaspack-v3/NapiWorkerPool.js +57 -0
  25. package/dist/atlaspack-v3/fs.js +52 -0
  26. package/dist/atlaspack-v3/index.js +25 -0
  27. package/dist/atlaspack-v3/jsCallable.js +16 -0
  28. package/dist/atlaspack-v3/worker/compat/asset-symbols.js +190 -0
  29. package/dist/atlaspack-v3/worker/compat/bitflags.js +94 -0
  30. package/dist/atlaspack-v3/worker/compat/dependency.js +43 -0
  31. package/dist/atlaspack-v3/worker/compat/environment.js +57 -0
  32. package/dist/atlaspack-v3/worker/compat/index.js +25 -0
  33. package/dist/atlaspack-v3/worker/compat/mutable-asset.js +152 -0
  34. package/dist/atlaspack-v3/worker/compat/plugin-config.js +76 -0
  35. package/dist/atlaspack-v3/worker/compat/plugin-logger.js +26 -0
  36. package/dist/atlaspack-v3/worker/compat/plugin-options.js +122 -0
  37. package/dist/atlaspack-v3/worker/compat/plugin-tracer.js +10 -0
  38. package/dist/atlaspack-v3/worker/compat/target.js +14 -0
  39. package/dist/atlaspack-v3/worker/worker.js +292 -0
  40. package/dist/constants.js +17 -0
  41. package/dist/dumpGraphToGraphViz.js +281 -0
  42. package/dist/index.js +62 -0
  43. package/dist/loadAtlaspackPlugin.js +128 -0
  44. package/dist/loadDotEnv.js +41 -0
  45. package/dist/projectPath.js +83 -0
  46. package/dist/public/Asset.js +279 -0
  47. package/dist/public/Bundle.js +224 -0
  48. package/dist/public/BundleGraph.js +359 -0
  49. package/dist/public/BundleGroup.js +53 -0
  50. package/dist/public/Config.js +286 -0
  51. package/dist/public/Dependency.js +138 -0
  52. package/dist/public/Environment.js +278 -0
  53. package/dist/public/MutableBundleGraph.js +277 -0
  54. package/dist/public/PluginOptions.js +80 -0
  55. package/dist/public/Symbols.js +248 -0
  56. package/dist/public/Target.js +69 -0
  57. package/dist/registerCoreWithSerializer.js +38 -0
  58. package/dist/requests/AssetGraphRequest.js +429 -0
  59. package/dist/requests/AssetGraphRequestRust.js +246 -0
  60. package/dist/requests/AssetRequest.js +130 -0
  61. package/dist/requests/AtlaspackBuildRequest.js +60 -0
  62. package/dist/requests/AtlaspackConfigRequest.js +490 -0
  63. package/dist/requests/BundleGraphRequest.js +441 -0
  64. package/dist/requests/ConfigRequest.js +222 -0
  65. package/dist/requests/DevDepRequest.js +204 -0
  66. package/dist/requests/EntryRequest.js +314 -0
  67. package/dist/requests/PackageRequest.js +65 -0
  68. package/dist/requests/PathRequest.js +349 -0
  69. package/dist/requests/TargetRequest.js +1310 -0
  70. package/dist/requests/ValidationRequest.js +49 -0
  71. package/dist/requests/WriteBundleRequest.js +254 -0
  72. package/dist/requests/WriteBundlesRequest.js +165 -0
  73. package/dist/requests/asset-graph-diff.js +126 -0
  74. package/dist/requests/asset-graph-dot.js +131 -0
  75. package/dist/resolveOptions.js +268 -0
  76. package/dist/rustWorkerThreadDylibHack.js +19 -0
  77. package/dist/serializerCore.browser.js +43 -0
  78. package/dist/summarizeRequest.js +39 -0
  79. package/dist/types.js +31 -0
  80. package/dist/utils.js +172 -0
  81. package/dist/worker.js +123 -0
  82. package/lib/AssetGraph.js +111 -14
  83. package/lib/Atlaspack.js +82 -35
  84. package/lib/AtlaspackConfig.js +15 -3
  85. package/lib/AtlaspackConfig.schema.js +7 -5
  86. package/lib/BundleGraph.js +83 -30
  87. package/lib/CommittedAsset.js +6 -0
  88. package/lib/Dependency.js +8 -2
  89. package/lib/Environment.js +15 -8
  90. package/lib/EnvironmentManager.js +143 -0
  91. package/lib/IdentifierRegistry.js +1 -3
  92. package/lib/InternalConfig.js +3 -2
  93. package/lib/PackagerRunner.js +66 -23
  94. package/lib/ReporterRunner.js +6 -9
  95. package/lib/RequestTracker.js +256 -139
  96. package/lib/SymbolPropagation.js +22 -3
  97. package/lib/TargetDescriptor.schema.js +7 -1
  98. package/lib/Transformation.js +16 -9
  99. package/lib/UncommittedAsset.js +30 -9
  100. package/lib/Validation.js +18 -2
  101. package/lib/applyRuntimes.js +9 -1
  102. package/lib/assetUtils.js +7 -4
  103. package/lib/atlaspack-v3/AtlaspackV3.js +32 -7
  104. package/lib/atlaspack-v3/NapiWorkerPool.js +3 -0
  105. package/lib/atlaspack-v3/fs.js +3 -1
  106. package/lib/atlaspack-v3/index.js +28 -1
  107. package/lib/atlaspack-v3/jsCallable.js +0 -2
  108. package/lib/atlaspack-v3/worker/compat/asset-symbols.js +7 -4
  109. package/lib/atlaspack-v3/worker/compat/bitflags.js +7 -6
  110. package/lib/atlaspack-v3/worker/compat/dependency.js +3 -0
  111. package/lib/atlaspack-v3/worker/compat/environment.js +10 -7
  112. package/lib/atlaspack-v3/worker/compat/mutable-asset.js +14 -9
  113. package/lib/atlaspack-v3/worker/compat/plugin-config.js +8 -10
  114. package/lib/atlaspack-v3/worker/compat/plugin-options.js +1 -0
  115. package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +3 -0
  116. package/lib/atlaspack-v3/worker/compat/target.js +2 -0
  117. package/lib/atlaspack-v3/worker/index.js +3 -0
  118. package/lib/atlaspack-v3/worker/worker.js +34 -6
  119. package/lib/constants.js +0 -1
  120. package/lib/dumpGraphToGraphViz.js +71 -16
  121. package/lib/index.js +45 -1
  122. package/lib/loadDotEnv.js +4 -1
  123. package/lib/projectPath.js +5 -0
  124. package/lib/public/Asset.js +21 -11
  125. package/lib/public/Bundle.js +15 -16
  126. package/lib/public/BundleGraph.js +10 -4
  127. package/lib/public/BundleGroup.js +4 -5
  128. package/lib/public/Config.js +118 -17
  129. package/lib/public/Dependency.js +8 -6
  130. package/lib/public/Environment.js +12 -7
  131. package/lib/public/MutableBundleGraph.js +54 -12
  132. package/lib/public/PluginOptions.js +2 -2
  133. package/lib/public/Symbols.js +11 -11
  134. package/lib/public/Target.js +7 -6
  135. package/lib/registerCoreWithSerializer.js +5 -3
  136. package/lib/requests/AssetGraphRequest.js +41 -4
  137. package/lib/requests/AssetGraphRequestRust.js +29 -14
  138. package/lib/requests/AssetRequest.js +23 -6
  139. package/lib/requests/AtlaspackBuildRequest.js +6 -2
  140. package/lib/requests/AtlaspackConfigRequest.js +12 -11
  141. package/lib/requests/BundleGraphRequest.js +29 -18
  142. package/lib/requests/ConfigRequest.js +28 -4
  143. package/lib/requests/DevDepRequest.js +31 -5
  144. package/lib/requests/EntryRequest.js +2 -0
  145. package/lib/requests/PackageRequest.js +7 -2
  146. package/lib/requests/PathRequest.js +24 -3
  147. package/lib/requests/TargetRequest.js +120 -56
  148. package/lib/requests/ValidationRequest.js +5 -1
  149. package/lib/requests/WriteBundleRequest.js +39 -11
  150. package/lib/requests/WriteBundlesRequest.js +24 -2
  151. package/lib/requests/asset-graph-diff.js +8 -3
  152. package/lib/requests/asset-graph-dot.js +1 -7
  153. package/lib/resolveOptions.js +36 -10
  154. package/lib/rustWorkerThreadDylibHack.js +0 -1
  155. package/lib/types/AssetGraph.d.ts +80 -0
  156. package/lib/types/Atlaspack.d.ts +52 -0
  157. package/lib/types/AtlaspackConfig.d.ts +65 -0
  158. package/lib/types/AtlaspackConfig.schema.d.ts +46 -0
  159. package/lib/types/BundleGraph.d.ts +182 -0
  160. package/lib/types/CommittedAsset.d.ts +23 -0
  161. package/lib/types/Dependency.d.ts +44 -0
  162. package/lib/types/Environment.d.ts +11 -0
  163. package/lib/types/EnvironmentManager.d.ts +37 -0
  164. package/lib/types/IdentifierRegistry.d.ts +6 -0
  165. package/lib/types/InternalConfig.d.ts +24 -0
  166. package/lib/types/PackagerRunner.d.ts +80 -0
  167. package/lib/types/ReporterRunner.d.ts +25 -0
  168. package/lib/types/RequestTracker.d.ts +385 -0
  169. package/lib/types/SymbolPropagation.d.ts +11 -0
  170. package/lib/types/TargetDescriptor.schema.d.ts +5 -0
  171. package/lib/types/Transformation.d.ts +72 -0
  172. package/lib/types/UncommittedAsset.d.ts +61 -0
  173. package/lib/types/Validation.d.ts +37 -0
  174. package/lib/types/applyRuntimes.d.ts +25 -0
  175. package/lib/types/assetUtils.d.ts +42 -0
  176. package/lib/types/atlaspack-v3/AtlaspackV3.d.ts +26 -0
  177. package/lib/types/atlaspack-v3/NapiWorkerPool.d.ts +12 -0
  178. package/lib/types/atlaspack-v3/fs.d.ts +12 -0
  179. package/lib/types/atlaspack-v3/index.d.ts +5 -0
  180. package/lib/types/atlaspack-v3/jsCallable.d.ts +1 -0
  181. package/lib/types/atlaspack-v3/worker/compat/asset-symbols.d.ts +51 -0
  182. package/lib/types/atlaspack-v3/worker/compat/bitflags.d.ts +15 -0
  183. package/lib/types/atlaspack-v3/worker/compat/dependency.d.ts +25 -0
  184. package/lib/types/atlaspack-v3/worker/compat/environment.d.ts +27 -0
  185. package/{src/atlaspack-v3/worker/compat/index.js → lib/types/atlaspack-v3/worker/compat/index.d.ts} +0 -1
  186. package/lib/types/atlaspack-v3/worker/compat/mutable-asset.d.ts +49 -0
  187. package/lib/types/atlaspack-v3/worker/compat/plugin-config.d.ts +37 -0
  188. package/lib/types/atlaspack-v3/worker/compat/plugin-logger.d.ts +9 -0
  189. package/lib/types/atlaspack-v3/worker/compat/plugin-options.d.ts +22 -0
  190. package/lib/types/atlaspack-v3/worker/compat/plugin-tracer.d.ts +5 -0
  191. package/lib/types/atlaspack-v3/worker/compat/target.d.ts +11 -0
  192. package/lib/types/atlaspack-v3/worker/worker.d.ts +58 -0
  193. package/lib/types/constants.d.ts +13 -0
  194. package/lib/types/dumpGraphToGraphViz.d.ts +10 -0
  195. package/lib/types/index.d.ts +8 -0
  196. package/lib/types/loadAtlaspackPlugin.d.ts +8 -0
  197. package/lib/types/loadDotEnv.d.ts +3 -0
  198. package/lib/types/projectPath.d.ts +19 -0
  199. package/lib/types/public/Asset.d.ts +74 -0
  200. package/lib/types/public/Bundle.d.ts +45 -0
  201. package/lib/types/public/BundleGraph.d.ts +70 -0
  202. package/lib/types/public/BundleGroup.d.ts +12 -0
  203. package/lib/types/public/Config.d.ts +75 -0
  204. package/lib/types/public/Dependency.d.ts +32 -0
  205. package/lib/types/public/Environment.d.ts +34 -0
  206. package/lib/types/public/MutableBundleGraph.d.ts +26 -0
  207. package/lib/types/public/PluginOptions.d.ts +25 -0
  208. package/lib/types/public/Symbols.d.ts +81 -0
  209. package/lib/types/public/Target.d.ts +16 -0
  210. package/lib/types/registerCoreWithSerializer.d.ts +2 -0
  211. package/lib/types/requests/AssetGraphRequest.d.ts +74 -0
  212. package/lib/types/requests/AssetGraphRequestRust.d.ts +21 -0
  213. package/lib/types/requests/AssetRequest.d.ts +16 -0
  214. package/lib/types/requests/AtlaspackBuildRequest.d.ts +29 -0
  215. package/lib/types/requests/AtlaspackConfigRequest.d.ts +45 -0
  216. package/lib/types/requests/BundleGraphRequest.d.ts +28 -0
  217. package/lib/types/requests/ConfigRequest.d.ts +59 -0
  218. package/lib/types/requests/DevDepRequest.d.ts +30 -0
  219. package/lib/types/requests/EntryRequest.d.ts +36 -0
  220. package/lib/types/requests/PackageRequest.d.ts +27 -0
  221. package/lib/types/requests/PathRequest.d.ts +48 -0
  222. package/lib/types/requests/TargetRequest.d.ts +48 -0
  223. package/lib/types/requests/ValidationRequest.d.ts +20 -0
  224. package/lib/types/requests/WriteBundleRequest.d.ts +28 -0
  225. package/lib/types/requests/WriteBundlesRequest.d.ts +26 -0
  226. package/lib/types/requests/asset-graph-diff.d.ts +1 -0
  227. package/lib/types/requests/asset-graph-dot.d.ts +9 -0
  228. package/lib/types/resolveOptions.d.ts +3 -0
  229. package/lib/types/rustWorkerThreadDylibHack.d.ts +9 -0
  230. package/lib/types/serializerCore.browser.d.ts +3 -0
  231. package/lib/types/summarizeRequest.d.ts +10 -0
  232. package/lib/types/types.d.ts +493 -0
  233. package/lib/types/utils.d.ts +23 -0
  234. package/lib/types/worker.d.ts +44 -0
  235. package/lib/types.js +8 -1
  236. package/lib/utils.js +17 -2
  237. package/lib/worker.js +29 -13
  238. package/package.json +24 -34
  239. package/src/{AssetGraph.js → AssetGraph.ts} +156 -52
  240. package/src/{Atlaspack.js → Atlaspack.ts} +113 -60
  241. package/src/{AtlaspackConfig.schema.js → AtlaspackConfig.schema.ts} +16 -19
  242. package/src/{AtlaspackConfig.js → AtlaspackConfig.ts} +78 -54
  243. package/src/{BundleGraph.js → BundleGraph.ts} +213 -133
  244. package/src/{CommittedAsset.js → CommittedAsset.ts} +14 -12
  245. package/src/{Dependency.js → Dependency.ts} +59 -42
  246. package/src/{Environment.js → Environment.ts} +24 -15
  247. package/src/EnvironmentManager.ts +154 -0
  248. package/src/{IdentifierRegistry.js → IdentifierRegistry.ts} +1 -4
  249. package/src/{InternalConfig.js → InternalConfig.ts} +22 -23
  250. package/src/{PackagerRunner.js → PackagerRunner.ts} +149 -81
  251. package/src/{ReporterRunner.js → ReporterRunner.ts} +13 -18
  252. package/src/{RequestTracker.js → RequestTracker.ts} +558 -336
  253. package/src/{SymbolPropagation.js → SymbolPropagation.ts} +137 -39
  254. package/src/{TargetDescriptor.schema.js → TargetDescriptor.schema.ts} +7 -1
  255. package/src/{Transformation.js → Transformation.ts} +67 -61
  256. package/src/{UncommittedAsset.js → UncommittedAsset.ts} +57 -36
  257. package/src/{Validation.js → Validation.ts} +32 -17
  258. package/src/{applyRuntimes.js → applyRuntimes.ts} +35 -26
  259. package/src/{assetUtils.js → assetUtils.ts} +47 -35
  260. package/src/atlaspack-v3/AtlaspackV3.ts +122 -0
  261. package/src/atlaspack-v3/{NapiWorkerPool.js → NapiWorkerPool.ts} +10 -5
  262. package/src/atlaspack-v3/{fs.js → fs.ts} +3 -4
  263. package/src/atlaspack-v3/{index.js → index.ts} +2 -4
  264. package/src/atlaspack-v3/jsCallable.ts +14 -0
  265. package/src/atlaspack-v3/worker/compat/{asset-symbols.js → asset-symbols.ts} +40 -30
  266. package/src/atlaspack-v3/worker/compat/{bitflags.js → bitflags.ts} +9 -10
  267. package/src/atlaspack-v3/worker/compat/{dependency.js → dependency.ts} +12 -12
  268. package/src/atlaspack-v3/worker/compat/{environment.js → environment.ts} +13 -9
  269. package/src/atlaspack-v3/worker/compat/index.ts +9 -0
  270. package/src/atlaspack-v3/worker/compat/{mutable-asset.js → mutable-asset.ts} +20 -19
  271. package/src/atlaspack-v3/worker/compat/{plugin-config.js → plugin-config.ts} +27 -26
  272. package/src/atlaspack-v3/worker/compat/{plugin-logger.js → plugin-logger.ts} +0 -2
  273. package/src/atlaspack-v3/worker/compat/{plugin-options.js → plugin-options.ts} +4 -5
  274. package/src/atlaspack-v3/worker/compat/{plugin-tracer.js → plugin-tracer.ts} +2 -2
  275. package/src/atlaspack-v3/worker/compat/{target.js → target.ts} +3 -4
  276. package/src/atlaspack-v3/worker/index.js +2 -1
  277. package/src/atlaspack-v3/worker/{worker.js → worker.ts} +94 -65
  278. package/src/{constants.js → constants.ts} +0 -3
  279. package/src/{dumpGraphToGraphViz.js → dumpGraphToGraphViz.ts} +73 -28
  280. package/src/index.ts +18 -0
  281. package/src/{loadAtlaspackPlugin.js → loadAtlaspackPlugin.ts} +8 -9
  282. package/src/{loadDotEnv.js → loadDotEnv.ts} +2 -2
  283. package/src/{projectPath.js → projectPath.ts} +20 -9
  284. package/src/public/{Asset.js → Asset.ts} +40 -27
  285. package/src/public/{Bundle.js → Bundle.ts} +28 -29
  286. package/src/public/{BundleGraph.js → BundleGraph.ts} +81 -50
  287. package/src/public/{BundleGroup.js → BundleGroup.ts} +7 -10
  288. package/src/public/{Config.js → Config.ts} +171 -33
  289. package/src/public/{Dependency.js → Dependency.ts} +20 -17
  290. package/src/public/{Environment.js → Environment.ts} +28 -17
  291. package/src/public/{MutableBundleGraph.js → MutableBundleGraph.ts} +55 -24
  292. package/src/public/{PluginOptions.js → PluginOptions.ts} +6 -6
  293. package/src/public/{Symbols.js → Symbols.ts} +75 -36
  294. package/src/public/{Target.js → Target.ts} +10 -8
  295. package/src/{registerCoreWithSerializer.js → registerCoreWithSerializer.ts} +9 -7
  296. package/src/requests/{AssetGraphRequest.js → AssetGraphRequest.ts} +83 -48
  297. package/src/requests/{AssetGraphRequestRust.js → AssetGraphRequestRust.ts} +36 -29
  298. package/src/requests/{AssetRequest.js → AssetRequest.ts} +24 -18
  299. package/src/requests/{AtlaspackBuildRequest.js → AtlaspackBuildRequest.ts} +30 -31
  300. package/src/requests/{AtlaspackConfigRequest.js → AtlaspackConfigRequest.ts} +58 -51
  301. package/src/requests/{BundleGraphRequest.js → BundleGraphRequest.ts} +66 -57
  302. package/src/requests/{ConfigRequest.js → ConfigRequest.ts} +71 -50
  303. package/src/requests/{DevDepRequest.js → DevDepRequest.ts} +60 -35
  304. package/src/requests/{EntryRequest.js → EntryRequest.ts} +36 -31
  305. package/src/requests/{PackageRequest.js → PackageRequest.ts} +21 -21
  306. package/src/requests/{PathRequest.js → PathRequest.ts} +47 -37
  307. package/src/requests/{TargetRequest.js → TargetRequest.ts} +259 -179
  308. package/src/requests/{ValidationRequest.js → ValidationRequest.ts} +18 -17
  309. package/src/requests/{WriteBundleRequest.js → WriteBundleRequest.ts} +77 -49
  310. package/src/requests/{WriteBundlesRequest.js → WriteBundlesRequest.ts} +77 -34
  311. package/src/requests/{asset-graph-diff.js → asset-graph-diff.ts} +14 -14
  312. package/src/requests/{asset-graph-dot.js → asset-graph-dot.ts} +8 -12
  313. package/src/{resolveOptions.js → resolveOptions.ts} +56 -24
  314. package/src/{rustWorkerThreadDylibHack.js → rustWorkerThreadDylibHack.ts} +1 -4
  315. package/src/{serializerCore.browser.js → serializerCore.browser.ts} +2 -3
  316. package/src/{summarizeRequest.js → summarizeRequest.ts} +17 -5
  317. package/src/types.ts +647 -0
  318. package/src/{utils.js → utils.ts} +52 -21
  319. package/src/{worker.js → worker.ts} +49 -41
  320. package/test/{AssetGraph.test.js → AssetGraph.test.ts} +37 -8
  321. package/test/{Atlaspack.test.js → Atlaspack.test.ts} +5 -10
  322. package/test/{AtlaspackConfig.test.js → AtlaspackConfig.test.ts} +0 -5
  323. package/test/{AtlaspackConfigRequest.test.js → AtlaspackConfigRequest.test.ts} +3 -15
  324. package/test/{BundleGraph.test.js → BundleGraph.test.ts} +8 -13
  325. package/test/{Dependency.test.js → Dependency.test.ts} +2 -3
  326. package/test/{EntryRequest.test.js → EntryRequest.test.ts} +1 -6
  327. package/test/Environment.test.ts +153 -0
  328. package/test/EnvironmentManager.test.ts +188 -0
  329. package/test/{IdentifierRegistry.test.js → IdentifierRegistry.test.ts} +2 -4
  330. package/test/{InternalAsset.test.js → InternalAsset.test.ts} +2 -7
  331. package/test/PackagerRunner.test.ts +0 -0
  332. package/test/{PublicAsset.test.js → PublicAsset.test.ts} +2 -7
  333. package/test/{PublicBundle.test.js → PublicBundle.test.ts} +1 -2
  334. package/test/{PublicDependency.test.js → PublicDependency.test.ts} +0 -2
  335. package/test/PublicEnvironment.test.ts +49 -0
  336. package/test/{PublicMutableBundleGraph.test.js → PublicMutableBundleGraph.test.ts} +6 -11
  337. package/test/{RequestTracker.test.js → RequestTracker.test.ts} +314 -59
  338. package/test/{SymbolPropagation.test.js → SymbolPropagation.test.ts} +124 -74
  339. package/test/{TargetRequest.test.js → TargetRequest.test.ts} +54 -92
  340. package/test/public/Config.test.ts +104 -0
  341. package/test/requests/{AssetGraphRequestRust.test.js → AssetGraphRequestRust.test.ts} +163 -134
  342. package/test/requests/{ConfigRequest.test.js → ConfigRequest.test.ts} +202 -13
  343. package/test/requests/{DevDepRequest.test.js → DevDepRequest.test.ts} +0 -2
  344. package/test/{test-utils.js → test-utils.ts} +4 -11
  345. package/test/{utils.test.js → utils.test.ts} +1 -3
  346. package/tsconfig.json +57 -0
  347. package/tsconfig.tsbuildinfo +1 -0
  348. package/index.d.ts +0 -30
  349. package/src/atlaspack-v3/AtlaspackV3.js +0 -87
  350. package/src/atlaspack-v3/jsCallable.js +0 -18
  351. package/src/index.js +0 -13
  352. package/src/types.js +0 -600
  353. package/test/Environment.test.js +0 -119
  354. package/test/PackagerRunner.test.js +0 -27
  355. package/test/PublicEnvironment.test.js +0 -27
@@ -1,5 +1,3 @@
1
- // @flow strict-local
2
-
3
1
  import type {NodeId} from '@atlaspack/graph';
4
2
  import type {Async} from '@atlaspack/types';
5
3
  import type {SharedReference} from '@atlaspack/workers';
@@ -20,6 +18,7 @@ import logger from '@atlaspack/logger';
20
18
 
21
19
  import invariant from 'assert';
22
20
  import nullthrows from 'nullthrows';
21
+ import {getFeatureFlag} from '@atlaspack/feature-flags';
23
22
  import {PromiseQueue, setEqual} from '@atlaspack/utils';
24
23
  import {hashString} from '@atlaspack/rust';
25
24
  import ThrowableDiagnostic from '@atlaspack/diagnostic';
@@ -30,44 +29,46 @@ import createEntryRequest from './EntryRequest';
30
29
  import createTargetRequest from './TargetRequest';
31
30
  import createAssetRequest from './AssetRequest';
32
31
  import createPathRequest from './PathRequest';
33
- import {type ProjectPath, fromProjectPathRelative} from '../projectPath';
32
+ import {ProjectPath, fromProjectPathRelative} from '../projectPath';
34
33
  import dumpGraphToGraphViz from '../dumpGraphToGraphViz';
35
34
  import {propagateSymbols} from '../SymbolPropagation';
36
35
  import {requestTypes} from '../RequestTracker';
37
36
 
38
- export type AssetGraphRequestInput = {|
39
- entries?: Array<ProjectPath>,
40
- assetGroups?: Array<AssetGroup>,
41
- optionsRef: SharedReference,
42
- name: string,
43
- shouldBuildLazily?: boolean,
44
- lazyIncludes?: RegExp[],
45
- lazyExcludes?: RegExp[],
46
- requestedAssetIds?: Set<string>,
47
- |};
48
-
49
- export type AssetGraphRequestResult = {|
50
- assetGraph: AssetGraph,
37
+ export type AssetGraphRequestInput = {
38
+ entries?: Array<ProjectPath>;
39
+ assetGroups?: Array<AssetGroup>;
40
+ optionsRef: SharedReference;
41
+ name: string;
42
+ shouldBuildLazily?: boolean;
43
+ lazyIncludes?: RegExp[];
44
+ lazyExcludes?: RegExp[];
45
+ requestedAssetIds?: Set<string>;
46
+ };
47
+
48
+ export type AssetGraphRequestResult = {
49
+ assetGraph: AssetGraph;
51
50
  /** Assets added/modified since the last successful build. */
52
- changedAssets: Map<string, Asset>,
51
+ changedAssets: Map<string, Asset>;
53
52
  /** Assets added/modified since the last symbol propagation invocation. */
54
- changedAssetsPropagation: Set<string>,
55
- assetGroupsWithRemovedParents: ?Set<NodeId>,
56
- previousSymbolPropagationErrors: ?Map<NodeId, Array<Diagnostic>>,
57
- assetRequests: Array<AssetGroup>,
58
- |};
59
-
60
- type RunInput = {|
61
- input: AssetGraphRequestInput,
62
- ...StaticRunOpts<AssetGraphRequestResult>,
63
- |};
64
-
65
- type AssetGraphRequest = {|
66
- id: string,
67
- +type: typeof requestTypes.asset_graph_request,
68
- run: (RunInput) => Async<AssetGraphRequestResult>,
69
- input: AssetGraphRequestInput,
70
- |};
53
+ changedAssetsPropagation: Set<string>;
54
+ assetGroupsWithRemovedParents: Set<NodeId> | null | undefined;
55
+ previousSymbolPropagationErrors:
56
+ | Map<NodeId, Array<Diagnostic>>
57
+ | null
58
+ | undefined;
59
+ assetRequests: Array<AssetGroup>;
60
+ };
61
+
62
+ type RunInput = {
63
+ input: AssetGraphRequestInput;
64
+ } & StaticRunOpts<AssetGraphRequestResult>;
65
+
66
+ type AssetGraphRequest = {
67
+ id: string;
68
+ readonly type: typeof requestTypes.asset_graph_request;
69
+ run: (arg1: RunInput) => Async<AssetGraphRequestResult>;
70
+ input: AssetGraphRequestInput;
71
+ };
71
72
 
72
73
  export default function createAssetGraphRequest(
73
74
  requestInput: AssetGraphRequestInput,
@@ -83,6 +84,11 @@ export default function createAssetGraphRequest(
83
84
  let assetGraphRequest = await await builder.build();
84
85
 
85
86
  // early break for incremental bundling if production or flag is off;
87
+ assetGraphRequest.assetGraph.setDisableIncrementalBundling(
88
+ !input.options.shouldBundleIncrementally ||
89
+ input.options.mode === 'production',
90
+ );
91
+
86
92
  if (
87
93
  !input.options.shouldBundleIncrementally ||
88
94
  input.options.mode === 'production'
@@ -106,10 +112,10 @@ const typesWithRequests = new Set([
106
112
  export class AssetGraphBuilder {
107
113
  assetGraph: AssetGraph;
108
114
  assetRequests: Array<AssetGroup> = [];
109
- queue: PromiseQueue<mixed>;
115
+ queue: PromiseQueue<unknown>;
110
116
  changedAssets: Map<string, Asset>;
111
117
  changedAssetsPropagation: Set<string>;
112
- prevChangedAssetsPropagation: ?Set<string>;
118
+ prevChangedAssetsPropagation: Set<string> | null | undefined;
113
119
  optionsRef: SharedReference;
114
120
  options: AtlaspackOptions;
115
121
  api: RunAPI<AssetGraphRequestResult>;
@@ -125,7 +131,7 @@ export class AssetGraphBuilder {
125
131
 
126
132
  constructor(
127
133
  {input, api, options}: RunInput,
128
- prevResult: ?AssetGraphRequestResult,
134
+ prevResult?: AssetGraphRequestResult | null,
129
135
  ) {
130
136
  let {
131
137
  entries,
@@ -161,20 +167,30 @@ export class AssetGraphBuilder {
161
167
  this.shouldBuildLazily = shouldBuildLazily ?? false;
162
168
  this.lazyIncludes = lazyIncludes ?? [];
163
169
  this.lazyExcludes = lazyExcludes ?? [];
164
- this.cacheKey =
165
- hashString(
170
+ if (getFeatureFlag('cachePerformanceImprovements')) {
171
+ const key = hashString(
166
172
  `${ATLASPACK_VERSION}${name}${JSON.stringify(entries) ?? ''}${
167
173
  options.mode
168
174
  }${options.shouldBuildLazily ? 'lazy' : 'eager'}`,
169
- ) + '-AssetGraph';
175
+ );
176
+ this.cacheKey = `AssetGraph/${ATLASPACK_VERSION}/${options.mode}/${key}`;
177
+ } else {
178
+ this.cacheKey =
179
+ hashString(
180
+ `${ATLASPACK_VERSION}${name}${JSON.stringify(entries) ?? ''}${
181
+ options.mode
182
+ }${options.shouldBuildLazily ? 'lazy' : 'eager'}`,
183
+ ) + '-AssetGraph';
184
+ }
170
185
 
171
186
  this.isSingleChangeRebuild =
172
187
  api
173
188
  .getInvalidSubRequests()
189
+ // @ts-expect-error TS2367
174
190
  .filter((req) => req.requestType === 'asset_request').length === 1;
175
191
  this.queue = new PromiseQueue();
176
192
 
177
- assetGraph.onNodeRemoved = (nodeId) => {
193
+ assetGraph.onNodeRemoved = (nodeId: NodeId) => {
178
194
  this.assetGroupsWithRemovedParents.delete(nodeId);
179
195
 
180
196
  // This needs to mark all connected nodes that doesn't become orphaned
@@ -196,7 +212,7 @@ export class AssetGraphBuilder {
196
212
  }
197
213
 
198
214
  async build(): Promise<AssetGraphRequestResult> {
199
- let errors = [];
215
+ let errors: Array<Error> = [];
200
216
  let rootNodeId = nullthrows(
201
217
  this.assetGraph.rootNodeId,
202
218
  'A root node is required to traverse',
@@ -224,6 +240,7 @@ export class AssetGraphBuilder {
224
240
  for (let childNodeId of this.assetGraph.getNodeIdsConnectedFrom(nodeId)) {
225
241
  let child = nullthrows(this.assetGraph.getNode(childNodeId));
226
242
  if (
243
+ // @ts-expect-error TS2339
227
244
  (!visited.has(childNodeId) || child.hasDeferred) &&
228
245
  this.shouldVisitChild(nodeId, childNodeId)
229
246
  ) {
@@ -310,7 +327,7 @@ export class AssetGraphBuilder {
310
327
  diagnostic: [...errors.values()][0],
311
328
  });
312
329
  }
313
- } catch (e) {
330
+ } catch (e: any) {
314
331
  await dumpGraphToGraphViz(
315
332
  this.assetGraph,
316
333
  'AssetGraph_' + this.name + '_failed',
@@ -428,9 +445,12 @@ export class AssetGraphBuilder {
428
445
  shouldSkipRequest(nodeId: NodeId): boolean {
429
446
  let node = nullthrows(this.assetGraph.getNode(nodeId));
430
447
  return (
448
+ // @ts-expect-error TS2339
431
449
  node.complete === true ||
432
450
  !typesWithRequests.has(node.type) ||
451
+ // @ts-expect-error TS2339
433
452
  (node.correspondingRequest != null &&
453
+ // @ts-expect-error TS2339
434
454
  this.api.canSkipSubrequest(node.correspondingRequest))
435
455
  );
436
456
  }
@@ -459,7 +479,7 @@ export class AssetGraphBuilder {
459
479
  `Can not queue corresponding request of node with type ${node.type}`,
460
480
  );
461
481
  }
462
- return new Promise((resolve) => {
482
+ return new Promise((resolve: (result: Promise<null> | null) => void) => {
463
483
  this.queue.add(() =>
464
484
  promise.then(
465
485
  () => {
@@ -501,6 +521,7 @@ export class AssetGraphBuilder {
501
521
 
502
522
  if (didEntriesChange) {
503
523
  this.assetGraph.safeToIncrementallyBundle = false;
524
+ this.assetGraph.setNeedsBundling();
504
525
  }
505
526
  }
506
527
  }
@@ -515,15 +536,16 @@ export class AssetGraphBuilder {
515
536
 
516
537
  async runPathRequest(input: Dependency) {
517
538
  let request = createPathRequest({dependency: input, name: this.name});
518
- let result = await this.api.runRequest<PathRequestInput, ?AssetGroup>(
519
- request,
520
- {force: true},
521
- );
539
+ let result = await this.api.runRequest<
540
+ PathRequestInput,
541
+ AssetGroup | null | undefined
542
+ >(request, {force: true});
522
543
  this.assetGraph.resolveDependency(input, result, request.id);
523
544
  }
524
545
 
525
546
  async runAssetRequest(input: AssetGroup) {
526
547
  this.assetRequests.push(input);
548
+ // @ts-expect-error TS2345
527
549
  let request = createAssetRequest({
528
550
  ...input,
529
551
  name: this.name,
@@ -538,16 +560,28 @@ export class AssetGraphBuilder {
538
560
 
539
561
  if (assets != null) {
540
562
  for (let asset of assets) {
563
+ // Pass the runtimeAssetRequiringExecutionOnLoad flag from the asset
564
+ // group down to the asset itself, for reading in the packager.
565
+ if (input.runtimeAssetRequiringExecutionOnLoad) {
566
+ asset.meta = {
567
+ ...(asset.meta ?? {}),
568
+ runtimeAssetRequiringExecutionOnLoad:
569
+ input.runtimeAssetRequiringExecutionOnLoad,
570
+ };
571
+ }
572
+
541
573
  if (this.assetGraph.safeToIncrementallyBundle) {
542
574
  let otherAsset = this.assetGraph.getNodeByContentKey(asset.id);
543
575
  if (otherAsset != null) {
544
576
  invariant(otherAsset.type === 'asset');
545
577
  if (!this._areDependenciesEqualForAssets(asset, otherAsset.value)) {
546
578
  this.assetGraph.safeToIncrementallyBundle = false;
579
+ this.assetGraph.setNeedsBundling();
547
580
  }
548
581
  } else {
549
582
  // adding a new entry or dependency
550
583
  this.assetGraph.safeToIncrementallyBundle = false;
584
+ this.assetGraph.setNeedsBundling();
551
585
  }
552
586
  }
553
587
  this.changedAssets.set(asset.id, asset);
@@ -556,6 +590,7 @@ export class AssetGraphBuilder {
556
590
  this.assetGraph.resolveAssetGroup(input, assets, request.id);
557
591
  } else {
558
592
  this.assetGraph.safeToIncrementallyBundle = false;
593
+ this.assetGraph.setNeedsBundling();
559
594
  }
560
595
 
561
596
  this.isSingleChangeRebuild = false;
@@ -1,14 +1,13 @@
1
- // @flow strict-local
2
-
3
1
  import invariant from 'assert';
4
2
 
5
3
  import ThrowableDiagnostic from '@atlaspack/diagnostic';
6
4
  import type {Async} from '@atlaspack/types';
7
5
  import {instrument} from '@atlaspack/logger';
6
+ import {getFeatureFlag} from '@atlaspack/feature-flags';
8
7
 
9
8
  import AssetGraph, {nodeFromAssetGroup} from '../AssetGraph';
10
9
  import type {AtlaspackV3} from '../atlaspack-v3';
11
- import {requestTypes, type StaticRunOpts} from '../RequestTracker';
10
+ import {requestTypes, StaticRunOpts} from '../RequestTracker';
12
11
  import {propagateSymbols} from '../SymbolPropagation';
13
12
  import type {Environment, Asset} from '../types';
14
13
 
@@ -16,29 +15,31 @@ import type {
16
15
  AssetGraphRequestInput,
17
16
  AssetGraphRequestResult,
18
17
  } from './AssetGraphRequest';
18
+ import {toEnvironmentRef} from '../EnvironmentManager';
19
+ import {getEnvironmentHash} from '../Environment';
19
20
 
20
- type RunInput = {|
21
- input: AssetGraphRequestInput,
22
- ...StaticRunOpts<AssetGraphRequestResult>,
23
- |};
21
+ type RunInput = {
22
+ input: AssetGraphRequestInput;
23
+ } & StaticRunOpts<AssetGraphRequestResult>;
24
24
 
25
- type AssetGraphRequest = {|
26
- id: string,
27
- +type: typeof requestTypes.asset_graph_request,
28
- run: (RunInput) => Async<AssetGraphRequestResult>,
29
- input: AssetGraphRequestInput,
30
- |};
25
+ type AssetGraphRequest = {
26
+ id: string;
27
+ readonly type: typeof requestTypes.asset_graph_request;
28
+ run: (arg1: RunInput) => Async<AssetGraphRequestResult>;
29
+ input: AssetGraphRequestInput;
30
+ };
31
31
 
32
32
  export function createAssetGraphRequestRust(
33
33
  rustAtlaspack: AtlaspackV3,
34
34
  ): (input: AssetGraphRequestInput) => AssetGraphRequest {
35
- return (input) => ({
35
+ return (input: AssetGraphRequestInput) => ({
36
36
  type: requestTypes.asset_graph_request,
37
37
  id: input.name,
38
38
  run: async (input) => {
39
39
  let options = input.options;
40
40
  let serializedAssetGraph = await rustAtlaspack.buildAssetGraph();
41
41
 
42
+ // @ts-expect-error TS7006
42
43
  serializedAssetGraph.nodes = serializedAssetGraph.nodes.map((node) =>
43
44
  JSON.parse(node),
44
45
  );
@@ -78,10 +79,9 @@ export function createAssetGraphRequestRust(
78
79
  });
79
80
  }
80
81
 
81
- // $FlowFixMe
82
82
  export function getAssetGraph(serializedGraph: any): {
83
- assetGraph: AssetGraph,
84
- changedAssets: Map<string, Asset>,
83
+ assetGraph: AssetGraph;
84
+ changedAssets: Map<string, Asset>;
85
85
  } {
86
86
  let graph = new AssetGraph({
87
87
  _contentKeyToNodeId: new Map(),
@@ -91,26 +91,23 @@ export function getAssetGraph(serializedGraph: any): {
91
91
 
92
92
  graph.safeToIncrementallyBundle = false;
93
93
 
94
+ // @ts-expect-error TS7031
94
95
  function mapSymbols({exported, ...symbol}) {
95
96
  let jsSymbol = {
96
97
  local: symbol.local ?? undefined,
97
98
  loc: symbol.loc ?? undefined,
98
- meta: undefined,
99
99
  isWeak: symbol.isWeak,
100
+ meta: {
101
+ isEsm: symbol.isEsmExport,
102
+ isStaticBindingSafe: symbol.isStaticBindingSafe,
103
+ },
100
104
  };
101
105
 
102
106
  if (symbol.exported) {
103
- // $FlowFixMe
107
+ // @ts-expect-error TS2339
104
108
  jsSymbol.exported = symbol.exported;
105
109
  }
106
110
 
107
- if (symbol.isEsmExport) {
108
- // $FlowFixMe
109
- jsSymbol.meta = {
110
- isEsm: true,
111
- };
112
- }
113
-
114
111
  return [exported, jsSymbol];
115
112
  }
116
113
 
@@ -136,7 +133,7 @@ export function getAssetGraph(serializedGraph: any): {
136
133
 
137
134
  let envId = envs.get(envKey);
138
135
  if (envId == null) {
139
- envId = envs.size;
136
+ envId = `${envs.size}`;
140
137
  envs.set(envKey, envId);
141
138
  }
142
139
 
@@ -166,9 +163,14 @@ export function getAssetGraph(serializedGraph: any): {
166
163
 
167
164
  asset.committed = true;
168
165
  asset.contentKey = id;
169
- asset.env.id = getEnvId(asset.env);
166
+ asset.env.id = getFeatureFlag('environmentDeduplication')
167
+ ? // TODO: Rust can do this and avoid copying a significant amount of data over
168
+ getEnvironmentHash(asset.env)
169
+ : getEnvId(asset.env);
170
170
  asset.mapKey = `map:${asset.id}`;
171
171
 
172
+ asset.env = toEnvironmentRef(asset.env);
173
+
172
174
  // This is populated later when we map the edges between assets and dependencies
173
175
  asset.dependencies = new Map();
174
176
 
@@ -195,7 +197,11 @@ export function getAssetGraph(serializedGraph: any): {
195
197
  let dependency = node.value.dependency;
196
198
 
197
199
  dependency.id = id;
198
- dependency.env.id = getEnvId(dependency.env);
200
+ dependency.env.id = getFeatureFlag('environmentDeduplication')
201
+ ? // TODO: Rust can do this and avoid copying a significant amount of data over
202
+ getEnvironmentHash(dependency.env)
203
+ : getEnvId(dependency.env);
204
+ dependency.env = toEnvironmentRef(dependency.env);
199
205
 
200
206
  if (dependency.symbols != null) {
201
207
  dependency.symbols = new Map(dependency.symbols?.map(mapSymbols));
@@ -214,6 +220,7 @@ export function getAssetGraph(serializedGraph: any): {
214
220
  deferred: false,
215
221
  excluded: false,
216
222
  hasDeferred: node.has_deferred,
223
+ // @ts-expect-error TS2322
217
224
  usedSymbolsDown,
218
225
  usedSymbolsDownDirty: true,
219
226
  usedSymbolsUp,
@@ -1,5 +1,3 @@
1
- // @flow strict-local
2
-
3
1
  import type {ContentKey} from '@atlaspack/graph';
4
2
  import type {Async} from '@atlaspack/types';
5
3
  import type {StaticRunOpts} from '../RequestTracker';
@@ -21,18 +19,18 @@ import {fromProjectPath, fromProjectPathRelative} from '../projectPath';
21
19
  import {report} from '../ReporterRunner';
22
20
  import {requestTypes} from '../RequestTracker';
23
21
  import type {DevDepRequestResult} from './DevDepRequest';
22
+ import {toEnvironmentId} from '../EnvironmentManager';
24
23
 
25
- type RunInput<TResult> = {|
26
- input: AssetRequestInput,
27
- ...StaticRunOpts<TResult>,
28
- |};
24
+ type RunInput<TResult> = {
25
+ input: AssetRequestInput;
26
+ } & StaticRunOpts<TResult>;
29
27
 
30
- export type AssetRequest = {|
31
- id: ContentKey,
32
- +type: typeof requestTypes.asset_request,
33
- run: (RunInput<AssetRequestResult>) => Async<AssetRequestResult>,
34
- input: AssetRequestInput,
35
- |};
28
+ export type AssetRequest = {
29
+ id: ContentKey;
30
+ readonly type: typeof requestTypes.asset_request;
31
+ run: (arg1: RunInput<AssetRequestResult>) => Async<AssetRequestResult>;
32
+ input: AssetRequestInput;
33
+ };
36
34
 
37
35
  export default function createAssetRequest(
38
36
  input: AssetRequestInput,
@@ -51,7 +49,7 @@ function getId(input: AssetRequestInput) {
51
49
  return hashString(
52
50
  type +
53
51
  fromProjectPathRelative(input.filePath) +
54
- input.env.id +
52
+ toEnvironmentId(input.env) +
55
53
  String(input.isSource) +
56
54
  String(input.sideEffects) +
57
55
  (input.code ?? '') +
@@ -62,6 +60,7 @@ function getId(input: AssetRequestInput) {
62
60
  );
63
61
  }
64
62
 
63
+ // @ts-expect-error TS7031
65
64
  async function run({input, api, farm, invalidateReason, options}) {
66
65
  report({
67
66
  type: 'buildProgress',
@@ -73,6 +72,7 @@ async function run({input, api, farm, invalidateReason, options}) {
73
72
  let start = Date.now();
74
73
  let {optionsRef, ...rest} = input;
75
74
  let {cachePath} = nullthrows(
75
+ // @ts-expect-error TS2347
76
76
  await api.runRequest<null, ConfigAndCachePath>(
77
77
  createAtlaspackConfigRequest(),
78
78
  ),
@@ -82,9 +82,12 @@ async function run({input, api, farm, invalidateReason, options}) {
82
82
  await Promise.all(
83
83
  api
84
84
  .getSubRequests()
85
+ // @ts-expect-error TS7006
85
86
  .filter((req) => req.requestType === requestTypes.dev_dep_request)
87
+ // @ts-expect-error TS7006
86
88
  .map(async (req) => [
87
89
  req.id,
90
+ // @ts-expect-error TS2347
88
91
  nullthrows(await api.getRequestResult<DevDepRequestResult>(req.id)),
89
92
  ]),
90
93
  ),
@@ -95,21 +98,24 @@ async function run({input, api, farm, invalidateReason, options}) {
95
98
  invalidateReason,
96
99
  devDeps: new Map(
97
100
  [...previousDevDepRequests.entries()]
98
- .filter(([id]) => api.canSkipSubrequest(id))
99
- .map(([, req]: [string, DevDepRequestResult]) => [
101
+ // @ts-expect-error TS2769
102
+ .filter(([id]: [any]) => api.canSkipSubrequest(id))
103
+ .map(([, req]: [any, any]) => [
100
104
  `${req.specifier}:${fromProjectPathRelative(req.resolveFrom)}`,
101
105
  req.hash,
102
106
  ]),
103
107
  ),
104
108
  invalidDevDeps: await Promise.all(
105
109
  [...previousDevDepRequests.entries()]
106
- .filter(([id]) => !api.canSkipSubrequest(id))
107
- .flatMap(([, req]: [string, DevDepRequestResult]) => {
110
+ // @ts-expect-error TS2769
111
+ .filter(([id]: [any]) => !api.canSkipSubrequest(id))
112
+ .flatMap(([, req]: [any, any]) => {
108
113
  return [
109
114
  {
110
115
  specifier: req.specifier,
111
116
  resolveFrom: req.resolveFrom,
112
117
  },
118
+ // @ts-expect-error TS7006
113
119
  ...(req.additionalInvalidations ?? []).map((i) => ({
114
120
  specifier: i.specifier,
115
121
  resolveFrom: i.resolveFrom,
@@ -127,7 +133,7 @@ async function run({input, api, farm, invalidateReason, options}) {
127
133
  configCachePath: cachePath,
128
134
  optionsRef,
129
135
  request,
130
- }): TransformationResult);
136
+ })) as TransformationResult;
131
137
 
132
138
  let time = Date.now() - start;
133
139
  if (assets) {
@@ -1,5 +1,3 @@
1
- // @flow strict-local
2
-
3
1
  import type {ContentKey} from '@atlaspack/graph';
4
2
  import type {Async} from '@atlaspack/types';
5
3
  import type {SharedReference} from '@atlaspack/workers';
@@ -9,7 +7,7 @@ import type {Asset, AssetGroup, PackagedBundleInfo} from '../types';
9
7
  import type BundleGraph from '../BundleGraph';
10
8
 
11
9
  import createBundleGraphRequest, {
12
- type BundleGraphResult,
10
+ BundleGraphResult,
13
11
  } from './BundleGraphRequest';
14
12
  import createWriteBundlesRequest from './WriteBundlesRequest';
15
13
  import {assertSignalNotAborted} from '../utils';
@@ -23,32 +21,31 @@ import {assetFromValue} from '../public/Asset';
23
21
  import {tracer} from '@atlaspack/profiler';
24
22
  import {requestTypes} from '../RequestTracker';
25
23
 
26
- type AtlaspackBuildRequestInput = {|
27
- optionsRef: SharedReference,
28
- requestedAssetIds: Set<string>,
29
- signal?: AbortSignal,
30
- |};
31
-
32
- export type AtlaspackBuildRequestResult = {|
33
- bundleGraph: BundleGraph,
34
- bundleInfo: Map<string, PackagedBundleInfo>,
35
- changedAssets: Map<string, Asset>,
36
- assetRequests: Array<AssetGroup>,
37
- |};
38
-
39
- type RunInput<TResult> = {|
40
- input: AtlaspackBuildRequestInput,
41
- ...StaticRunOpts<TResult>,
42
- |};
43
-
44
- export type AtlaspackBuildRequest = {|
45
- id: ContentKey,
46
- +type: typeof requestTypes.atlaspack_build_request,
24
+ type AtlaspackBuildRequestInput = {
25
+ optionsRef: SharedReference;
26
+ requestedAssetIds: Set<string>;
27
+ signal?: AbortSignal;
28
+ };
29
+
30
+ export type AtlaspackBuildRequestResult = {
31
+ bundleGraph: BundleGraph;
32
+ bundleInfo: Map<string, PackagedBundleInfo>;
33
+ changedAssets: Map<string, Asset>;
34
+ assetRequests: Array<AssetGroup>;
35
+ };
36
+
37
+ type RunInput<TResult> = {
38
+ input: AtlaspackBuildRequestInput;
39
+ } & StaticRunOpts<TResult>;
40
+
41
+ export type AtlaspackBuildRequest = {
42
+ id: ContentKey;
43
+ readonly type: typeof requestTypes.atlaspack_build_request;
47
44
  run: (
48
- RunInput<AtlaspackBuildRequestResult>,
49
- ) => Async<AtlaspackBuildRequestResult>,
50
- input: AtlaspackBuildRequestInput,
51
- |};
45
+ arg1: RunInput<AtlaspackBuildRequestResult>,
46
+ ) => Async<AtlaspackBuildRequestResult>;
47
+ input: AtlaspackBuildRequestInput;
48
+ };
52
49
 
53
50
  export default function createAtlaspackBuildRequest(
54
51
  input: AtlaspackBuildRequestInput,
@@ -61,6 +58,7 @@ export default function createAtlaspackBuildRequest(
61
58
  };
62
59
  }
63
60
 
61
+ // @ts-expect-error TS7031
64
62
  async function run({input, api, options, rustAtlaspack}) {
65
63
  let {optionsRef, requestedAssetIds, signal} = input;
66
64
 
@@ -77,7 +75,7 @@ async function run({input, api, options, rustAtlaspack}) {
77
75
  (options.shouldBuildLazily && requestedAssetIds.size > 0),
78
76
  });
79
77
 
80
- // $FlowFixMe Added in Flow 0.121.0 upgrade in #4381 (Windows only)
78
+ // @ts-expect-error TS2345
81
79
  dumpGraphToGraphViz(bundleGraph._graph, 'BundleGraph', bundleGraphEdgeTypes);
82
80
 
83
81
  await report({
@@ -85,12 +83,13 @@ async function run({input, api, options, rustAtlaspack}) {
85
83
  phase: 'bundled',
86
84
  bundleGraph: new IBundleGraph(
87
85
  bundleGraph,
88
- (bundle, bundleGraph, options) =>
86
+ // @ts-expect-error TS2304
87
+ (bundle: Bundle, bundleGraph: BundleGraph, options: AtlaspackOptions) =>
89
88
  NamedBundle.get(bundle, bundleGraph, options),
90
89
  options,
91
90
  ),
92
91
  changedAssets: new Map(
93
- Array.from(changedAssets).map(([id, asset]) => [
92
+ Array.from(changedAssets).map(([id, asset]: [any, any]) => [
94
93
  id,
95
94
  assetFromValue(asset, options),
96
95
  ]),