@atlaspack/core 2.16.2-canary.48 → 2.16.2-canary.481

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 (380) hide show
  1. package/CHANGELOG.md +1324 -0
  2. package/dist/AssetGraph.js +523 -0
  3. package/dist/Atlaspack.js +701 -0
  4. package/dist/AtlaspackConfig.js +324 -0
  5. package/dist/AtlaspackConfig.schema.js +117 -0
  6. package/dist/BundleGraph.js +1906 -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 +470 -0
  14. package/dist/ReporterRunner.js +151 -0
  15. package/dist/RequestTracker.js +1297 -0
  16. package/dist/SymbolPropagation.js +624 -0
  17. package/dist/TargetDescriptor.schema.js +146 -0
  18. package/dist/Transformation.js +514 -0
  19. package/dist/UncommittedAsset.js +310 -0
  20. package/dist/Validation.js +196 -0
  21. package/dist/applyRuntimes.js +384 -0
  22. package/dist/assetUtils.js +169 -0
  23. package/dist/atlaspack-v3/AtlaspackV3.js +83 -0
  24. package/dist/atlaspack-v3/NapiWorkerPool.js +114 -0
  25. package/dist/atlaspack-v3/fs.js +53 -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 +98 -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 +24 -0
  33. package/dist/atlaspack-v3/worker/compat/mutable-asset.js +152 -0
  34. package/dist/atlaspack-v3/worker/compat/plugin-config.js +64 -0
  35. package/dist/atlaspack-v3/worker/compat/plugin-options.js +137 -0
  36. package/dist/atlaspack-v3/worker/compat/plugin-tracer.js +10 -0
  37. package/dist/atlaspack-v3/worker/compat/target.js +14 -0
  38. package/dist/atlaspack-v3/worker/side-effect-detector.js +243 -0
  39. package/dist/atlaspack-v3/worker/worker.js +398 -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 +371 -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 +430 -0
  59. package/dist/requests/AssetGraphRequestRust.js +471 -0
  60. package/dist/requests/AssetRequest.js +130 -0
  61. package/dist/requests/AtlaspackBuildRequest.js +98 -0
  62. package/dist/requests/AtlaspackConfigRequest.js +493 -0
  63. package/dist/requests/BundleGraphRequest.js +381 -0
  64. package/dist/requests/BundleGraphRequestRust.js +324 -0
  65. package/dist/requests/BundleGraphRequestUtils.js +262 -0
  66. package/dist/requests/ConfigRequest.js +246 -0
  67. package/dist/requests/DevDepRequest.js +204 -0
  68. package/dist/requests/EntryRequest.js +314 -0
  69. package/dist/requests/PackageRequest.js +89 -0
  70. package/dist/requests/PathRequest.js +349 -0
  71. package/dist/requests/TargetRequest.js +1316 -0
  72. package/dist/requests/ValidationRequest.js +49 -0
  73. package/dist/requests/WriteBundleRequest.js +522 -0
  74. package/dist/requests/WriteBundlesRequest.js +190 -0
  75. package/dist/requests/asset-graph-diff.js +128 -0
  76. package/dist/requests/asset-graph-dot.js +131 -0
  77. package/dist/resolveOptions.js +267 -0
  78. package/dist/rustWorkerThreadDylibHack.js +19 -0
  79. package/dist/serializerCore.browser.js +43 -0
  80. package/dist/summarizeRequest.js +39 -0
  81. package/dist/types.js +31 -0
  82. package/dist/utils.js +172 -0
  83. package/dist/worker.js +123 -0
  84. package/lib/AssetGraph.js +53 -15
  85. package/lib/Atlaspack.js +140 -56
  86. package/lib/AtlaspackConfig.js +17 -6
  87. package/lib/AtlaspackConfig.schema.js +16 -5
  88. package/lib/BundleGraph.js +390 -43
  89. package/lib/CommittedAsset.js +8 -2
  90. package/lib/Dependency.js +9 -3
  91. package/lib/Environment.js +16 -10
  92. package/lib/EnvironmentManager.js +143 -0
  93. package/lib/IdentifierRegistry.js +2 -4
  94. package/lib/InternalConfig.js +3 -2
  95. package/lib/PackagerRunner.js +46 -82
  96. package/lib/ReporterRunner.js +8 -12
  97. package/lib/RequestTracker.js +191 -152
  98. package/lib/SymbolPropagation.js +52 -29
  99. package/lib/TargetDescriptor.schema.js +10 -1
  100. package/lib/Transformation.js +68 -19
  101. package/lib/UncommittedAsset.js +17 -24
  102. package/lib/Validation.js +20 -5
  103. package/lib/applyRuntimes.js +98 -7
  104. package/lib/assetUtils.js +16 -6
  105. package/lib/atlaspack-v3/AtlaspackV3.js +58 -15
  106. package/lib/atlaspack-v3/NapiWorkerPool.js +63 -2
  107. package/lib/atlaspack-v3/fs.js +4 -1
  108. package/lib/atlaspack-v3/index.js +28 -1
  109. package/lib/atlaspack-v3/jsCallable.js +0 -2
  110. package/lib/atlaspack-v3/worker/compat/asset-symbols.js +7 -4
  111. package/lib/atlaspack-v3/worker/compat/bitflags.js +31 -25
  112. package/lib/atlaspack-v3/worker/compat/dependency.js +4 -1
  113. package/lib/atlaspack-v3/worker/compat/environment.js +10 -7
  114. package/lib/atlaspack-v3/worker/compat/index.js +0 -11
  115. package/lib/atlaspack-v3/worker/compat/mutable-asset.js +16 -11
  116. package/lib/atlaspack-v3/worker/compat/plugin-config.js +14 -35
  117. package/lib/atlaspack-v3/worker/compat/plugin-options.js +16 -2
  118. package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +3 -0
  119. package/lib/atlaspack-v3/worker/compat/target.js +2 -0
  120. package/lib/atlaspack-v3/worker/index.js +3 -0
  121. package/lib/atlaspack-v3/worker/side-effect-detector.js +214 -0
  122. package/lib/atlaspack-v3/worker/worker.js +231 -79
  123. package/lib/constants.js +0 -1
  124. package/lib/dumpGraphToGraphViz.js +72 -17
  125. package/lib/index.js +46 -3
  126. package/lib/loadAtlaspackPlugin.js +2 -3
  127. package/lib/loadDotEnv.js +5 -2
  128. package/lib/projectPath.js +6 -1
  129. package/lib/public/Asset.js +22 -12
  130. package/lib/public/Bundle.js +16 -18
  131. package/lib/public/BundleGraph.js +27 -25
  132. package/lib/public/BundleGroup.js +5 -6
  133. package/lib/public/Config.js +118 -18
  134. package/lib/public/Dependency.js +9 -7
  135. package/lib/public/Environment.js +13 -8
  136. package/lib/public/MutableBundleGraph.js +56 -15
  137. package/lib/public/PluginOptions.js +2 -2
  138. package/lib/public/Symbols.js +12 -12
  139. package/lib/public/Target.js +8 -7
  140. package/lib/registerCoreWithSerializer.js +7 -4
  141. package/lib/requests/AssetGraphRequest.js +61 -40
  142. package/lib/requests/AssetGraphRequestRust.js +314 -82
  143. package/lib/requests/AssetRequest.js +24 -7
  144. package/lib/requests/AtlaspackBuildRequest.js +53 -7
  145. package/lib/requests/AtlaspackConfigRequest.js +29 -19
  146. package/lib/requests/BundleGraphRequest.js +61 -130
  147. package/lib/requests/BundleGraphRequestRust.js +381 -0
  148. package/lib/requests/BundleGraphRequestUtils.js +280 -0
  149. package/lib/requests/ConfigRequest.js +55 -7
  150. package/lib/requests/DevDepRequest.js +32 -6
  151. package/lib/requests/EntryRequest.js +4 -3
  152. package/lib/requests/PackageRequest.js +56 -12
  153. package/lib/requests/PathRequest.js +26 -6
  154. package/lib/requests/TargetRequest.js +129 -60
  155. package/lib/requests/ValidationRequest.js +6 -2
  156. package/lib/requests/WriteBundleRequest.js +329 -20
  157. package/lib/requests/WriteBundlesRequest.js +64 -10
  158. package/lib/requests/asset-graph-diff.js +13 -8
  159. package/lib/requests/asset-graph-dot.js +2 -8
  160. package/lib/resolveOptions.js +37 -14
  161. package/lib/rustWorkerThreadDylibHack.js +0 -1
  162. package/lib/serializerCore.browser.js +1 -2
  163. package/lib/summarizeRequest.js +1 -1
  164. package/lib/types/AssetGraph.d.ts +55 -0
  165. package/lib/types/Atlaspack.d.ts +52 -0
  166. package/lib/types/AtlaspackConfig.d.ts +65 -0
  167. package/lib/types/AtlaspackConfig.schema.d.ts +53 -0
  168. package/lib/types/BundleGraph.d.ts +232 -0
  169. package/lib/types/CommittedAsset.d.ts +23 -0
  170. package/lib/types/Dependency.d.ts +44 -0
  171. package/lib/types/Environment.d.ts +11 -0
  172. package/lib/types/EnvironmentManager.d.ts +37 -0
  173. package/lib/types/IdentifierRegistry.d.ts +6 -0
  174. package/lib/types/InternalConfig.d.ts +23 -0
  175. package/lib/types/PackagerRunner.d.ts +85 -0
  176. package/lib/types/ReporterRunner.d.ts +25 -0
  177. package/lib/types/RequestTracker.d.ts +385 -0
  178. package/lib/types/SymbolPropagation.d.ts +11 -0
  179. package/lib/types/TargetDescriptor.schema.d.ts +5 -0
  180. package/lib/types/Transformation.d.ts +72 -0
  181. package/lib/types/UncommittedAsset.d.ts +61 -0
  182. package/lib/types/Validation.d.ts +37 -0
  183. package/lib/types/applyRuntimes.d.ts +25 -0
  184. package/lib/types/assetUtils.d.ts +42 -0
  185. package/lib/types/atlaspack-v3/AtlaspackV3.d.ts +35 -0
  186. package/lib/types/atlaspack-v3/NapiWorkerPool.d.ts +13 -0
  187. package/lib/types/atlaspack-v3/fs.d.ts +13 -0
  188. package/lib/types/atlaspack-v3/index.d.ts +6 -0
  189. package/lib/types/atlaspack-v3/jsCallable.d.ts +1 -0
  190. package/lib/types/atlaspack-v3/worker/compat/asset-symbols.d.ts +51 -0
  191. package/lib/types/atlaspack-v3/worker/compat/bitflags.d.ts +14 -0
  192. package/lib/types/atlaspack-v3/worker/compat/dependency.d.ts +25 -0
  193. package/lib/types/atlaspack-v3/worker/compat/environment.d.ts +27 -0
  194. package/{src/atlaspack-v3/worker/compat/index.js → lib/types/atlaspack-v3/worker/compat/index.d.ts} +0 -2
  195. package/lib/types/atlaspack-v3/worker/compat/mutable-asset.d.ts +49 -0
  196. package/lib/types/atlaspack-v3/worker/compat/plugin-config.d.ts +29 -0
  197. package/lib/types/atlaspack-v3/worker/compat/plugin-options.d.ts +23 -0
  198. package/lib/types/atlaspack-v3/worker/compat/plugin-tracer.d.ts +5 -0
  199. package/lib/types/atlaspack-v3/worker/compat/target.d.ts +11 -0
  200. package/lib/types/atlaspack-v3/worker/side-effect-detector.d.ts +76 -0
  201. package/lib/types/atlaspack-v3/worker/worker.d.ts +81 -0
  202. package/lib/types/constants.d.ts +13 -0
  203. package/lib/types/dumpGraphToGraphViz.d.ts +10 -0
  204. package/lib/types/index.d.ts +8 -0
  205. package/lib/types/loadAtlaspackPlugin.d.ts +8 -0
  206. package/lib/types/loadDotEnv.d.ts +3 -0
  207. package/lib/types/projectPath.d.ts +19 -0
  208. package/lib/types/public/Asset.d.ts +74 -0
  209. package/lib/types/public/Bundle.d.ts +45 -0
  210. package/lib/types/public/BundleGraph.d.ts +72 -0
  211. package/lib/types/public/BundleGroup.d.ts +12 -0
  212. package/lib/types/public/Config.d.ts +75 -0
  213. package/lib/types/public/Dependency.d.ts +32 -0
  214. package/lib/types/public/Environment.d.ts +34 -0
  215. package/lib/types/public/MutableBundleGraph.d.ts +26 -0
  216. package/lib/types/public/PluginOptions.d.ts +25 -0
  217. package/lib/types/public/Symbols.d.ts +81 -0
  218. package/lib/types/public/Target.d.ts +16 -0
  219. package/lib/types/registerCoreWithSerializer.d.ts +2 -0
  220. package/lib/types/requests/AssetGraphRequest.d.ts +76 -0
  221. package/lib/types/requests/AssetGraphRequestRust.d.ts +21 -0
  222. package/lib/types/requests/AssetRequest.d.ts +16 -0
  223. package/lib/types/requests/AtlaspackBuildRequest.d.ts +33 -0
  224. package/lib/types/requests/AtlaspackConfigRequest.d.ts +45 -0
  225. package/lib/types/requests/BundleGraphRequest.d.ts +28 -0
  226. package/lib/types/requests/BundleGraphRequestRust.d.ts +34 -0
  227. package/lib/types/requests/BundleGraphRequestUtils.d.ts +38 -0
  228. package/lib/types/requests/ConfigRequest.d.ts +67 -0
  229. package/lib/types/requests/DevDepRequest.d.ts +30 -0
  230. package/lib/types/requests/EntryRequest.d.ts +36 -0
  231. package/lib/types/requests/PackageRequest.d.ts +27 -0
  232. package/lib/types/requests/PathRequest.d.ts +48 -0
  233. package/lib/types/requests/TargetRequest.d.ts +48 -0
  234. package/lib/types/requests/ValidationRequest.d.ts +20 -0
  235. package/lib/types/requests/WriteBundleRequest.d.ts +80 -0
  236. package/lib/types/requests/WriteBundlesRequest.d.ts +32 -0
  237. package/lib/types/requests/asset-graph-diff.d.ts +1 -0
  238. package/lib/types/requests/asset-graph-dot.d.ts +9 -0
  239. package/lib/types/resolveOptions.d.ts +3 -0
  240. package/lib/types/rustWorkerThreadDylibHack.d.ts +9 -0
  241. package/lib/types/serializerCore.browser.d.ts +3 -0
  242. package/lib/types/summarizeRequest.d.ts +10 -0
  243. package/lib/types/types.d.ts +496 -0
  244. package/lib/types/utils.d.ts +23 -0
  245. package/lib/types/worker.d.ts +44 -0
  246. package/lib/types.js +8 -1
  247. package/lib/utils.js +18 -3
  248. package/lib/worker.js +32 -15
  249. package/package.json +26 -36
  250. package/src/{AssetGraph.js → AssetGraph.ts} +87 -51
  251. package/src/{Atlaspack.js → Atlaspack.ts} +181 -72
  252. package/src/{AtlaspackConfig.schema.js → AtlaspackConfig.schema.ts} +25 -19
  253. package/src/{AtlaspackConfig.js → AtlaspackConfig.ts} +78 -54
  254. package/src/{BundleGraph.js → BundleGraph.ts} +575 -145
  255. package/src/{CommittedAsset.js → CommittedAsset.ts} +15 -13
  256. package/src/{Dependency.js → Dependency.ts} +59 -42
  257. package/src/{Environment.js → Environment.ts} +24 -15
  258. package/src/EnvironmentManager.ts +154 -0
  259. package/src/{IdentifierRegistry.js → IdentifierRegistry.ts} +1 -4
  260. package/src/{InternalConfig.js → InternalConfig.ts} +22 -23
  261. package/src/{PackagerRunner.js → PackagerRunner.ts} +114 -159
  262. package/src/{ReporterRunner.js → ReporterRunner.ts} +13 -18
  263. package/src/{RequestTracker.js → RequestTracker.ts} +444 -355
  264. package/src/{SymbolPropagation.js → SymbolPropagation.ts} +178 -61
  265. package/src/{TargetDescriptor.schema.js → TargetDescriptor.schema.ts} +10 -1
  266. package/src/{Transformation.js → Transformation.ts} +110 -65
  267. package/src/{UncommittedAsset.js → UncommittedAsset.ts} +45 -49
  268. package/src/{Validation.js → Validation.ts} +32 -17
  269. package/src/{applyRuntimes.js → applyRuntimes.ts} +135 -26
  270. package/src/{assetUtils.js → assetUtils.ts} +49 -36
  271. package/src/atlaspack-v3/AtlaspackV3.ts +183 -0
  272. package/src/atlaspack-v3/NapiWorkerPool.ts +129 -0
  273. package/src/atlaspack-v3/{fs.js → fs.ts} +8 -4
  274. package/src/atlaspack-v3/{index.js → index.ts} +3 -4
  275. package/src/atlaspack-v3/jsCallable.ts +14 -0
  276. package/src/atlaspack-v3/worker/compat/{asset-symbols.js → asset-symbols.ts} +40 -30
  277. package/src/atlaspack-v3/worker/compat/bitflags.ts +102 -0
  278. package/src/atlaspack-v3/worker/compat/{dependency.js → dependency.ts} +13 -13
  279. package/src/atlaspack-v3/worker/compat/{environment.js → environment.ts} +13 -9
  280. package/src/atlaspack-v3/worker/compat/index.ts +8 -0
  281. package/src/atlaspack-v3/worker/compat/{mutable-asset.js → mutable-asset.ts} +21 -20
  282. package/src/atlaspack-v3/worker/compat/{plugin-config.js → plugin-config.ts} +25 -56
  283. package/src/atlaspack-v3/worker/compat/{plugin-options.js → plugin-options.ts} +19 -5
  284. package/src/atlaspack-v3/worker/compat/{plugin-tracer.js → plugin-tracer.ts} +2 -2
  285. package/src/atlaspack-v3/worker/compat/{target.js → target.ts} +3 -4
  286. package/src/atlaspack-v3/worker/index.js +2 -1
  287. package/src/atlaspack-v3/worker/side-effect-detector.ts +298 -0
  288. package/src/atlaspack-v3/worker/worker.ts +548 -0
  289. package/src/{constants.js → constants.ts} +0 -3
  290. package/src/{dumpGraphToGraphViz.js → dumpGraphToGraphViz.ts} +73 -28
  291. package/src/index.ts +18 -0
  292. package/src/{loadAtlaspackPlugin.js → loadAtlaspackPlugin.ts} +8 -9
  293. package/src/{loadDotEnv.js → loadDotEnv.ts} +2 -2
  294. package/src/{projectPath.js → projectPath.ts} +20 -9
  295. package/src/public/{Asset.js → Asset.ts} +41 -28
  296. package/src/public/{Bundle.js → Bundle.ts} +28 -29
  297. package/src/public/{BundleGraph.js → BundleGraph.ts} +103 -68
  298. package/src/public/{BundleGroup.js → BundleGroup.ts} +7 -10
  299. package/src/public/{Config.js → Config.ts} +171 -33
  300. package/src/public/{Dependency.js → Dependency.ts} +20 -17
  301. package/src/public/{Environment.js → Environment.ts} +28 -17
  302. package/src/public/{MutableBundleGraph.js → MutableBundleGraph.ts} +55 -24
  303. package/src/public/{PluginOptions.js → PluginOptions.ts} +6 -6
  304. package/src/public/{Symbols.js → Symbols.ts} +75 -36
  305. package/src/public/{Target.js → Target.ts} +10 -8
  306. package/src/{registerCoreWithSerializer.js → registerCoreWithSerializer.ts} +9 -7
  307. package/src/requests/{AssetGraphRequest.js → AssetGraphRequest.ts} +117 -90
  308. package/src/requests/AssetGraphRequestRust.ts +557 -0
  309. package/src/requests/{AssetRequest.js → AssetRequest.ts} +24 -18
  310. package/src/requests/AtlaspackBuildRequest.ts +168 -0
  311. package/src/requests/{AtlaspackConfigRequest.js → AtlaspackConfigRequest.ts} +72 -58
  312. package/src/requests/{BundleGraphRequest.js → BundleGraphRequest.ts} +119 -199
  313. package/src/requests/BundleGraphRequestRust.ts +470 -0
  314. package/src/requests/BundleGraphRequestUtils.ts +323 -0
  315. package/src/requests/{ConfigRequest.js → ConfigRequest.ts} +110 -50
  316. package/src/requests/{DevDepRequest.js → DevDepRequest.ts} +60 -35
  317. package/src/requests/{EntryRequest.js → EntryRequest.ts} +36 -31
  318. package/src/requests/{PackageRequest.js → PackageRequest.ts} +52 -25
  319. package/src/requests/{PathRequest.js → PathRequest.ts} +47 -37
  320. package/src/requests/{TargetRequest.js → TargetRequest.ts} +265 -179
  321. package/src/requests/{ValidationRequest.js → ValidationRequest.ts} +18 -17
  322. package/src/requests/WriteBundleRequest.ts +734 -0
  323. package/src/requests/{WriteBundlesRequest.js → WriteBundlesRequest.ts} +134 -50
  324. package/src/requests/{asset-graph-diff.js → asset-graph-diff.ts} +25 -21
  325. package/src/requests/{asset-graph-dot.js → asset-graph-dot.ts} +8 -12
  326. package/src/{resolveOptions.js → resolveOptions.ts} +57 -27
  327. package/src/{rustWorkerThreadDylibHack.js → rustWorkerThreadDylibHack.ts} +1 -4
  328. package/src/{serializerCore.browser.js → serializerCore.browser.ts} +2 -3
  329. package/src/{summarizeRequest.js → summarizeRequest.ts} +17 -5
  330. package/src/types.ts +651 -0
  331. package/src/{utils.js → utils.ts} +52 -21
  332. package/src/{worker.js → worker.ts} +50 -42
  333. package/test/{AssetGraph.test.js → AssetGraph.test.ts} +5 -8
  334. package/test/{Atlaspack.test.js → Atlaspack.test.ts} +5 -10
  335. package/test/{AtlaspackConfig.test.js → AtlaspackConfig.test.ts} +0 -5
  336. package/test/{AtlaspackConfigRequest.test.js → AtlaspackConfigRequest.test.ts} +76 -16
  337. package/test/{BundleGraph.test.js → BundleGraph.test.ts} +8 -13
  338. package/test/{Dependency.test.js → Dependency.test.ts} +2 -3
  339. package/test/{EntryRequest.test.js → EntryRequest.test.ts} +1 -6
  340. package/test/Environment.test.ts +153 -0
  341. package/test/EnvironmentManager.test.ts +188 -0
  342. package/test/{IdentifierRegistry.test.js → IdentifierRegistry.test.ts} +2 -4
  343. package/test/{InternalAsset.test.js → InternalAsset.test.ts} +2 -7
  344. package/test/PackagerRunner.test.ts +0 -0
  345. package/test/{PublicAsset.test.js → PublicAsset.test.ts} +2 -7
  346. package/test/{PublicBundle.test.js → PublicBundle.test.ts} +1 -2
  347. package/test/{PublicDependency.test.js → PublicDependency.test.ts} +0 -2
  348. package/test/PublicEnvironment.test.ts +49 -0
  349. package/test/{PublicMutableBundleGraph.test.js → PublicMutableBundleGraph.test.ts} +6 -11
  350. package/test/{RequestTracker.test.js → RequestTracker.test.ts} +136 -58
  351. package/test/{SymbolPropagation.test.js → SymbolPropagation.test.ts} +124 -74
  352. package/test/{TargetRequest.test.js → TargetRequest.test.ts} +91 -92
  353. package/test/fixtures/config-with-reporters/.parcelrc +7 -0
  354. package/test/fixtures/custom-targets/package.json +6 -0
  355. package/test/public/Config.test.ts +104 -0
  356. package/test/requests/AssetGraphRequestRust.test.ts +443 -0
  357. package/test/requests/{ConfigRequest.test.js → ConfigRequest.test.ts} +202 -13
  358. package/test/requests/{DevDepRequest.test.js → DevDepRequest.test.ts} +0 -2
  359. package/test/requests/WriteBundleRequest.test.ts +602 -0
  360. package/test/{test-utils.js → test-utils.ts} +3 -4
  361. package/test/{utils.test.js → utils.test.ts} +1 -3
  362. package/tsconfig.json +60 -0
  363. package/tsconfig.tsbuildinfo +1 -0
  364. package/index.d.ts +0 -30
  365. package/lib/atlaspack-v3/worker/compat/plugin-logger.js +0 -29
  366. package/src/atlaspack-v3/AtlaspackV3.js +0 -87
  367. package/src/atlaspack-v3/NapiWorkerPool.js +0 -53
  368. package/src/atlaspack-v3/jsCallable.js +0 -18
  369. package/src/atlaspack-v3/worker/compat/bitflags.js +0 -100
  370. package/src/atlaspack-v3/worker/compat/plugin-logger.js +0 -47
  371. package/src/atlaspack-v3/worker/worker.js +0 -369
  372. package/src/index.js +0 -13
  373. package/src/requests/AssetGraphRequestRust.js +0 -263
  374. package/src/requests/AtlaspackBuildRequest.js +0 -111
  375. package/src/requests/WriteBundleRequest.js +0 -369
  376. package/src/types.js +0 -600
  377. package/test/Environment.test.js +0 -119
  378. package/test/PackagerRunner.test.js +0 -27
  379. package/test/PublicEnvironment.test.js +0 -27
  380. package/test/requests/AssetGraphRequestRust.test.js +0 -411
@@ -1,5 +1,3 @@
1
- // @flow strict-local
2
-
3
1
  import type {
4
2
  FilePath,
5
3
  GenerateOutput,
@@ -31,7 +29,7 @@ import ThrowableDiagnostic, {
31
29
  errorToDiagnostic,
32
30
  escapeMarkdown,
33
31
  md,
34
- type Diagnostic,
32
+ Diagnostic,
35
33
  } from '@atlaspack/diagnostic';
36
34
  import {SOURCEMAP_EXTENSIONS} from '@atlaspack/utils';
37
35
 
@@ -53,7 +51,8 @@ import {createConfig} from './InternalConfig';
53
51
  import {
54
52
  loadPluginConfig,
55
53
  getConfigRequests,
56
- type ConfigRequest,
54
+ ConfigRequest,
55
+ loadPluginSetup,
57
56
  } from './requests/ConfigRequest';
58
57
  import {
59
58
  createDevDependency,
@@ -61,7 +60,7 @@ import {
61
60
  getWorkerDevDepRequests,
62
61
  } from './requests/DevDepRequest';
63
62
  import {
64
- type ProjectPath,
63
+ ProjectPath,
65
64
  fromProjectPath,
66
65
  fromProjectPathRelative,
67
66
  toProjectPathUnsafe,
@@ -70,27 +69,34 @@ import {
70
69
  import {invalidateOnFileCreateToInternal, createInvalidations} from './utils';
71
70
  import invariant from 'assert';
72
71
  import {tracer, PluginTracer} from '@atlaspack/profiler';
72
+ import SourceMap from '@atlaspack/source-map';
73
+ import {getFeatureFlag} from '@atlaspack/feature-flags';
74
+ import {createBuildCache} from '@atlaspack/build-cache';
73
75
 
74
76
  type GenerateFunc = (input: UncommittedAsset) => Promise<GenerateOutput>;
75
77
 
76
78
  type PostProcessFunc = (
77
- Array<UncommittedAsset>,
79
+ arg1: Array<UncommittedAsset>,
78
80
  ) => Promise<Array<UncommittedAsset> | null>;
79
81
 
80
- export type TransformationOpts = {|
81
- options: AtlaspackOptions,
82
- config: AtlaspackConfig,
83
- request: TransformationRequest,
84
- workerApi: WorkerApi,
85
- |};
86
-
87
- export type TransformationResult = {|
88
- assets?: Array<AssetValue>,
89
- error?: Array<Diagnostic>,
90
- configRequests: Array<ConfigRequest>,
91
- invalidations: Invalidations,
92
- devDepRequests: Array<DevDepRequest | DevDepRequestRef>,
93
- |};
82
+ export type TransformationOpts = {
83
+ options: AtlaspackOptions;
84
+ config: AtlaspackConfig;
85
+ request: TransformationRequest;
86
+ workerApi: WorkerApi;
87
+ };
88
+
89
+ export type TransformationResult = {
90
+ assets?: Array<AssetValue>;
91
+ error?: Array<Diagnostic>;
92
+ configRequests: Array<ConfigRequest>;
93
+ invalidations: Invalidations;
94
+ devDepRequests: Array<DevDepRequest | DevDepRequestRef>;
95
+ };
96
+
97
+ // Global setup config are not file-specific, so we only need to
98
+ // load them once per build.
99
+ const setupConfig = createBuildCache<string, Config>();
94
100
 
95
101
  export default class Transformation {
96
102
  request: TransformationRequest;
@@ -140,7 +146,7 @@ export default class Transformation {
140
146
  // Load existing sourcemaps, this automatically runs the source contents extraction
141
147
  try {
142
148
  existing = await asset.loadExistingSourcemap();
143
- } catch (err) {
149
+ } catch (err: any) {
144
150
  logger.verbose([
145
151
  {
146
152
  origin: '@atlaspack/core',
@@ -165,7 +171,9 @@ export default class Transformation {
165
171
  // If no existing sourcemap was found, initialize asset.sourceContent
166
172
  // with the original contents. This will be used when the transformer
167
173
  // calls setMap to ensure the source content is in the sourcemap.
168
- asset.sourceContent = await asset.getCode();
174
+ if (!getFeatureFlag('omitSourcesContentInMemory')) {
175
+ asset.sourceContent = await asset.getCode();
176
+ }
169
177
  }
170
178
 
171
179
  invalidateDevDeps(
@@ -175,6 +183,7 @@ export default class Transformation {
175
183
  );
176
184
 
177
185
  let pipeline = await this.loadPipeline(
186
+ // @ts-expect-error TS2345
178
187
  this.request.filePath,
179
188
  asset.value.isSource,
180
189
  asset.value.pipeline,
@@ -184,7 +193,7 @@ export default class Transformation {
184
193
  let results = await this.runPipelines(pipeline, asset);
185
194
  await Promise.all(results.map((asset) => asset.commit()));
186
195
  assets = results.map((a) => a.value);
187
- } catch (e) {
196
+ } catch (e: any) {
188
197
  error = e;
189
198
  }
190
199
 
@@ -197,8 +206,8 @@ export default class Transformation {
197
206
  ...this.resolverRunner.devDepRequests.values(),
198
207
  ]);
199
208
 
200
- // $FlowFixMe because of $$raw
201
209
  return {
210
+ // @ts-expect-error TS2353
202
211
  $$raw: true,
203
212
  assets,
204
213
  configRequests,
@@ -224,6 +233,7 @@ export default class Transformation {
224
233
  size,
225
234
  isSource: summarizedIsSource,
226
235
  } = await summarizeRequest(this.options.inputFS, {
236
+ // @ts-expect-error TS2322
227
237
  filePath: fromProjectPath(this.options.projectRoot, filePath),
228
238
  code,
229
239
  });
@@ -234,10 +244,13 @@ export default class Transformation {
234
244
  return new UncommittedAsset({
235
245
  value: createAsset(this.options.projectRoot, {
236
246
  code,
247
+ // @ts-expect-error TS2322
237
248
  filePath,
238
249
  isSource,
250
+ // @ts-expect-error TS2345
239
251
  type: path.extname(fromProjectPathRelative(filePath)).slice(1),
240
252
  pipeline,
253
+ // @ts-expect-error TS2322
241
254
  env,
242
255
  query,
243
256
  stats: {
@@ -325,7 +338,7 @@ export default class Transformation {
325
338
  range,
326
339
  },
327
340
  );
328
- } catch (err) {
341
+ } catch (err: any) {
329
342
  // ignore
330
343
  }
331
344
 
@@ -347,8 +360,8 @@ export default class Transformation {
347
360
 
348
361
  let initialType = initialAsset.value.type;
349
362
  let inputAssets = [initialAsset];
350
- let resultingAssets = [];
351
- let finalAssets = [];
363
+ let resultingAssets: Array<UncommittedAsset> = [];
364
+ let finalAssets: Array<UncommittedAsset> = [];
352
365
  for (let transformer of pipeline.transformers) {
353
366
  resultingAssets = [];
354
367
  for (let asset of inputAssets) {
@@ -399,7 +412,7 @@ export default class Transformation {
399
412
  ),
400
413
  );
401
414
  }
402
- } catch (e) {
415
+ } catch (e: any) {
403
416
  let diagnostic = errorToDiagnostic(e, {
404
417
  origin: transformer.name,
405
418
  filePath: fromProjectPath(
@@ -453,7 +466,7 @@ export default class Transformation {
453
466
  if (asset.isASTDirty && asset.generate) {
454
467
  let output = await asset.generate();
455
468
  asset.content = output.content;
456
- asset.mapBuffer = output.map?.toBuffer();
469
+ asset.mapBuffer = SourceMap.safeToBuffer(output.map);
457
470
  }
458
471
 
459
472
  asset.clearAST();
@@ -466,7 +479,7 @@ export default class Transformation {
466
479
  async loadPipeline(
467
480
  filePath: ProjectPath,
468
481
  isSource: boolean,
469
- pipeline: ?string,
482
+ pipeline?: string | null,
470
483
  ): Promise<Pipeline> {
471
484
  let transformers = await this.atlaspackConfig.getTransformers(
472
485
  filePath,
@@ -502,13 +515,13 @@ export default class Transformation {
502
515
  newType,
503
516
  newPipeline,
504
517
  currentPipeline,
505
- }: {|
506
- filePath: ProjectPath,
507
- isSource: boolean,
508
- newType: string,
509
- newPipeline: ?string,
510
- currentPipeline: Pipeline,
511
- |}): Promise<?Pipeline> {
518
+ }: {
519
+ filePath: ProjectPath;
520
+ isSource: boolean;
521
+ newType: string;
522
+ newPipeline: string | null | undefined;
523
+ currentPipeline: Pipeline;
524
+ }): Promise<Pipeline | null | undefined> {
512
525
  let filePathRelative = fromProjectPathRelative(filePath);
513
526
  let nextFilePath = toProjectPathUnsafe(
514
527
  filePathRelative.slice(0, -path.extname(filePathRelative).length) +
@@ -529,17 +542,48 @@ export default class Transformation {
529
542
  }
530
543
 
531
544
  async loadTransformerConfig(
532
- transformer: LoadedPlugin<Transformer<mixed>>,
545
+ transformer: LoadedPlugin<Transformer<unknown>>,
533
546
  isSource: boolean,
534
- ): Promise<?Config> {
547
+ ): Promise<Config | null | undefined> {
548
+ // Only load setup config for a transformer once per build.
549
+ let config = setupConfig.get(transformer.name);
550
+
551
+ if (config == null && transformer.plugin.setup != null) {
552
+ config = createConfig({
553
+ plugin: transformer.name,
554
+ searchPath: toProjectPathUnsafe('index'),
555
+ // Consider project setup config as source
556
+ isSource: true,
557
+ });
558
+
559
+ await loadPluginSetup(
560
+ transformer.name,
561
+ transformer.plugin.setup,
562
+ config,
563
+ this.options,
564
+ );
565
+
566
+ setupConfig.set(transformer.name, config);
567
+ }
568
+
569
+ if (config != null) {
570
+ for (let devDep of config.devDeps) {
571
+ await this.addDevDependency(devDep);
572
+ }
573
+
574
+ // `loadConfig` is not called for setup configs
575
+ return config;
576
+ }
577
+
535
578
  let loadConfig = transformer.plugin.loadConfig;
536
579
  if (!loadConfig) {
537
580
  return;
538
581
  }
539
582
 
540
- let config = createConfig({
583
+ config = createConfig({
541
584
  plugin: transformer.name,
542
585
  isSource,
586
+ // @ts-expect-error TS2322
543
587
  searchPath: this.request.filePath,
544
588
  env: this.request.env,
545
589
  });
@@ -556,12 +600,12 @@ export default class Transformation {
556
600
  async runTransformer(
557
601
  pipeline: Pipeline,
558
602
  asset: UncommittedAsset,
559
- transformer: Transformer<mixed>,
603
+ transformer: Transformer<unknown>,
560
604
  transformerName: string,
561
- preloadedConfig: ?Config,
562
- configKeyPath?: string,
605
+ preloadedConfig: Config | null | undefined,
606
+ configKeyPath: string | null | undefined,
563
607
  atlaspackConfig: AtlaspackConfig,
564
- ): Promise<$ReadOnlyArray<TransformerResult | UncommittedAsset>> {
608
+ ): Promise<ReadonlyArray<TransformerResult | UncommittedAsset>> {
565
609
  const logger = new PluginLogger({origin: transformerName});
566
610
  const tracer = new PluginTracer({
567
611
  origin: transformerName,
@@ -603,6 +647,7 @@ export default class Transformation {
603
647
  throw new ThrowableDiagnostic({diagnostic: result.diagnostics});
604
648
  }
605
649
 
650
+ // @ts-expect-error TS2322
606
651
  return fromProjectPath(
607
652
  this.options.projectRoot,
608
653
  nullthrows(result.assetGroup).filePath,
@@ -625,7 +670,7 @@ export default class Transformation {
625
670
  ) {
626
671
  let output = await asset.generate();
627
672
  asset.content = output.content;
628
- asset.mapBuffer = output.map?.toBuffer();
673
+ asset.mapBuffer = SourceMap.safeToBuffer(output.map);
629
674
  }
630
675
 
631
676
  // Load config for the transformer.
@@ -649,8 +694,8 @@ export default class Transformation {
649
694
  }
650
695
 
651
696
  // Transform.
697
+ // @ts-expect-error TS2322
652
698
  let transfomerResult: Array<TransformerResult | MutableAsset> =
653
- // $FlowFixMe the returned IMutableAsset really is a MutableAsset
654
699
  await transformer.transform({
655
700
  asset: new MutableAsset(asset),
656
701
  config,
@@ -712,27 +757,27 @@ export default class Transformation {
712
757
  }
713
758
  }
714
759
 
715
- type Pipeline = {|
716
- id: string,
717
- transformers: Array<TransformerWithNameAndConfig>,
718
- options: AtlaspackOptions,
719
- pluginOptions: PluginOptions,
720
- workerApi: WorkerApi,
721
- postProcess?: PostProcessFunc,
722
- generate?: GenerateFunc,
723
- |};
724
-
725
- type TransformerWithNameAndConfig = {|
726
- name: PackageName,
727
- plugin: Transformer<mixed>,
728
- config: ?Config,
729
- configKeyPath?: string,
730
- resolveFrom: ProjectPath,
731
- range?: ?SemverRange,
732
- |};
760
+ type Pipeline = {
761
+ id: string;
762
+ transformers: Array<TransformerWithNameAndConfig>;
763
+ options: AtlaspackOptions;
764
+ pluginOptions: PluginOptions;
765
+ workerApi: WorkerApi;
766
+ postProcess?: PostProcessFunc;
767
+ generate?: GenerateFunc;
768
+ };
769
+
770
+ type TransformerWithNameAndConfig = {
771
+ name: PackageName;
772
+ plugin: Transformer<unknown>;
773
+ config: Config | null | undefined;
774
+ configKeyPath?: string;
775
+ resolveFrom: ProjectPath;
776
+ range?: SemverRange | null | undefined;
777
+ };
733
778
 
734
779
  function normalizeAssets(
735
- options,
780
+ options: AtlaspackOptions,
736
781
  results: Array<TransformerResult | MutableAsset>,
737
782
  ): Array<TransformerResult | UncommittedAsset> {
738
783
  return results.map((result) => {
@@ -1,5 +1,3 @@
1
- // @flow strict-local
2
-
3
1
  import type {
4
2
  AST,
5
3
  Blob,
@@ -13,7 +11,7 @@ import type {Asset, Dependency, AtlaspackOptions, Invalidations} from './types';
13
11
 
14
12
  import invariant from 'assert';
15
13
  import {Readable} from 'stream';
16
- import SourceMap from '@parcel/source-map';
14
+ import SourceMap from '@atlaspack/source-map';
17
15
  import {serializeRaw} from '@atlaspack/build-cache';
18
16
  import {
19
17
  blobToStream,
@@ -30,36 +28,32 @@ import {ATLASPACK_VERSION} from './constants';
30
28
  import {createAsset, createAssetIdFromOptions} from './assetUtils';
31
29
  import {BundleBehaviorNames} from './types';
32
30
  import {invalidateOnFileCreateToInternal, createInvalidations} from './utils';
33
- import {
34
- type ProjectPath,
35
- fromProjectPath,
36
- fromProjectPathRelative,
37
- } from './projectPath';
38
- import {getFeatureFlag} from '@atlaspack/feature-flags';
39
-
40
- type UncommittedAssetOptions = {|
41
- value: Asset,
42
- options: AtlaspackOptions,
43
- content?: ?Blob,
44
- mapBuffer?: ?Buffer,
45
- ast?: ?AST,
46
- isASTDirty?: ?boolean,
47
- code?: ?string,
48
- invalidations?: Invalidations,
49
- |};
31
+ import {ProjectPath, fromProjectPath} from './projectPath';
32
+ import {fromEnvironmentId} from './EnvironmentManager';
33
+
34
+ type UncommittedAssetOptions = {
35
+ value: Asset;
36
+ options: AtlaspackOptions;
37
+ content?: Blob | null | undefined;
38
+ mapBuffer?: Buffer | null | undefined;
39
+ ast?: AST | null | undefined;
40
+ isASTDirty?: boolean | null | undefined;
41
+ code?: string | null | undefined;
42
+ invalidations?: Invalidations;
43
+ };
50
44
 
51
45
  export default class UncommittedAsset {
52
46
  value: Asset;
53
47
  options: AtlaspackOptions;
54
- content: ?(Blob | Promise<Buffer>);
55
- mapBuffer: ?Buffer;
56
- sourceContent: ?string;
57
- map: ?SourceMap;
58
- ast: ?AST;
48
+ content: Blob | Promise<Buffer> | null | undefined;
49
+ mapBuffer: Buffer | null | undefined;
50
+ sourceContent: string | null | undefined;
51
+ map: SourceMap | null | undefined;
52
+ ast: AST | null | undefined;
59
53
  isASTDirty: boolean;
60
- code: ?string;
54
+ code: string | null | undefined;
61
55
  invalidations: Invalidations;
62
- generate: ?() => Promise<GenerateOutput>;
56
+ generate: (() => Promise<GenerateOutput>) | null | undefined;
63
57
 
64
58
  constructor({
65
59
  value,
@@ -125,9 +119,10 @@ export default class UncommittedAsset {
125
119
  this.value.committed = true;
126
120
  }
127
121
 
128
- async commitContent(
129
- contentKey: string,
130
- ): Promise<{|size: number, hash: string|}> {
122
+ async commitContent(contentKey: string): Promise<{
123
+ size: number;
124
+ hash: string;
125
+ }> {
131
126
  let content = await this.content;
132
127
  if (content == null) {
133
128
  return {size: 0, hash: ''};
@@ -139,7 +134,8 @@ export default class UncommittedAsset {
139
134
  await this.options.cache.setStream(
140
135
  contentKey,
141
136
  content.pipe(
142
- new TapStream((buf) => {
137
+ // @ts-expect-error TS2554
138
+ new TapStream((buf: Buffer) => {
143
139
  hash.writeBuffer(buf);
144
140
  size += buf.length;
145
141
  }),
@@ -175,6 +171,7 @@ export default class UncommittedAsset {
175
171
  if (typeof content === 'string' || content instanceof Buffer) {
176
172
  return content.toString();
177
173
  } else if (content != null) {
174
+ // @ts-expect-error TS2345
178
175
  this.content = bufferStream(content);
179
176
  return (await this.content).toString();
180
177
  }
@@ -192,6 +189,7 @@ export default class UncommittedAsset {
192
189
  return Buffer.from(content);
193
190
  }
194
191
 
192
+ // @ts-expect-error TS2345
195
193
  this.content = bufferStream(content);
196
194
  return this.content;
197
195
  }
@@ -229,7 +227,7 @@ export default class UncommittedAsset {
229
227
  this.clearAST();
230
228
  }
231
229
 
232
- async loadExistingSourcemap(): Promise<?SourceMap> {
230
+ async loadExistingSourcemap(): Promise<SourceMap | null | undefined> {
233
231
  if (this.map) {
234
232
  return this.map;
235
233
  }
@@ -246,18 +244,18 @@ export default class UncommittedAsset {
246
244
 
247
245
  if (map) {
248
246
  this.map = map;
249
- this.mapBuffer = map.toBuffer();
247
+ this.mapBuffer = SourceMap.safeToBuffer(map);
250
248
  this.setCode(code.replace(SOURCEMAP_RE, ''));
251
249
  }
252
250
 
253
251
  return this.map;
254
252
  }
255
253
 
256
- getMapBuffer(): Promise<?Buffer> {
254
+ getMapBuffer(): Promise<Buffer | null | undefined> {
257
255
  return Promise.resolve(this.mapBuffer);
258
256
  }
259
257
 
260
- async getMap(): Promise<?SourceMap> {
258
+ async getMap(): Promise<SourceMap | null | undefined> {
261
259
  if (this.map == null) {
262
260
  let mapBuffer = this.mapBuffer ?? (await this.getMapBuffer());
263
261
  if (mapBuffer) {
@@ -269,14 +267,13 @@ export default class UncommittedAsset {
269
267
  return this.map;
270
268
  }
271
269
 
272
- setMap(map: ?SourceMap): void {
270
+ setMap(map?: SourceMap | null): void {
273
271
  // If we have sourceContent available, it means this asset is source code without
274
272
  // a previous source map. Ensure that the map set by the transformer has the original
275
273
  // source content available.
276
274
  if (map != null && this.sourceContent != null) {
277
275
  map.setSourceContent(
278
276
  fromProjectPath(this.options.projectRoot, this.value.filePath),
279
- // $FlowFixMe
280
277
  this.sourceContent,
281
278
  );
282
279
  this.sourceContent = null;
@@ -286,7 +283,7 @@ export default class UncommittedAsset {
286
283
  this.mapBuffer = this.map?.toBuffer();
287
284
  }
288
285
 
289
- getAST(): Promise<?AST> {
286
+ getAST(): Promise<AST | null | undefined> {
290
287
  return Promise.resolve(this.ast);
291
288
  }
292
289
 
@@ -306,11 +303,6 @@ export default class UncommittedAsset {
306
303
  }
307
304
 
308
305
  getCacheKey(key: string): string {
309
- if (getFeatureFlag('cachePerformanceImprovements')) {
310
- const filePath = fromProjectPathRelative(this.value.filePath);
311
- return `Asset/${ATLASPACK_VERSION}/${filePath}/${this.value.id}/${key}`;
312
- }
313
-
314
306
  return hashString(ATLASPACK_VERSION + key + this.value.id);
315
307
  }
316
308
 
@@ -319,9 +311,13 @@ export default class UncommittedAsset {
319
311
  let {env, symbols, ...rest} = opts;
320
312
  let dep = createDependency(this.options.projectRoot, {
321
313
  ...rest,
322
- // $FlowFixMe "convert" the $ReadOnlyMaps to the interal mutable one
314
+ // @ts-expect-error TS2322
323
315
  symbols,
324
- env: mergeEnvironments(this.options.projectRoot, this.value.env, env),
316
+ env: mergeEnvironments(
317
+ this.options.projectRoot,
318
+ fromEnvironmentId(this.value.env),
319
+ env,
320
+ ),
325
321
  sourceAssetId: this.value.id,
326
322
  sourcePath: fromProjectPath(
327
323
  this.options.projectRoot,
@@ -386,7 +382,7 @@ export default class UncommittedAsset {
386
382
  isSource: this.value.isSource,
387
383
  env: mergeEnvironments(
388
384
  this.options.projectRoot,
389
- this.value.env,
385
+ fromEnvironmentId(this.value.env),
390
386
  result.env,
391
387
  ),
392
388
  dependencies:
@@ -404,7 +400,7 @@ export default class UncommittedAsset {
404
400
  time: 0,
405
401
  size: this.value.stats.size,
406
402
  },
407
- // $FlowFixMe
403
+ // @ts-expect-error TS2322
408
404
  symbols: result.symbols,
409
405
  sideEffects: result.sideEffects ?? this.value.sideEffects,
410
406
  uniqueKey: result.uniqueKey,
@@ -419,7 +415,7 @@ export default class UncommittedAsset {
419
415
  content,
420
416
  ast: result.ast,
421
417
  isASTDirty: result.ast === this.ast ? this.isASTDirty : true,
422
- mapBuffer: result.map ? result.map.toBuffer() : null,
418
+ mapBuffer: SourceMap.safeToBuffer(result.map),
423
419
  code: this.code,
424
420
  invalidations: this.invalidations,
425
421
  });
@@ -435,7 +431,7 @@ export default class UncommittedAsset {
435
431
  }
436
432
 
437
433
  updateId() {
438
- // $FlowFixMe - this is fine
434
+ // @ts-expect-error TS2345
439
435
  this.value.id = createAssetIdFromOptions(this.value);
440
436
  }
441
437
  }