@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
@@ -69,10 +69,16 @@ var _Environment2 = require("../public/Environment");
69
69
  var _utils2 = require("../utils");
70
70
  var _projectPath = require("../projectPath");
71
71
  var _RequestTracker = require("../RequestTracker");
72
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
73
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
74
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
75
- // $FlowFixMe
72
+ var _EnvironmentManager = require("../EnvironmentManager");
73
+ function _featureFlags() {
74
+ const data = require("@atlaspack/feature-flags");
75
+ _featureFlags = function () {
76
+ return data;
77
+ };
78
+ return data;
79
+ }
80
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
81
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
76
82
  const DEFAULT_DIST_DIRNAME = 'dist';
77
83
  const JS_RE = /\.[mc]?js$/;
78
84
  const JS_EXTENSIONS = ['.js', '.mjs', '.cjs'];
@@ -122,6 +128,33 @@ async function run({
122
128
  }) {
123
129
  let targetResolver = new TargetResolver(api, (0, _utils2.optionsProxy)(options, api.invalidateOnOptionChange));
124
130
  let targets = await targetResolver.resolve((0, _projectPath.fromProjectPath)(options.projectRoot, input.packagePath), input.target);
131
+
132
+ // Filter targets based on allowExplicitTargetEntries feature flag
133
+ if ((0, _featureFlags().getFeatureFlag)('allowExplicitTargetEntries') && options.targets &&
134
+ // Only explicit targets are allowed (i.e. an object of targets)
135
+ !Array.isArray(options.targets)) {
136
+ // Check if ALL targets have sources - only apply new behavior if they do
137
+ const allTargetsHaveSources = targets.every(t => t.source);
138
+ if (allTargetsHaveSources) {
139
+ // Get the current entry file path relative to project root
140
+ const currentEntryPath = input.filePath;
141
+
142
+ // Filter targets to only include those whose source matches the current entry
143
+ targets = targets.filter(target => {
144
+ // Handle both string and array sources
145
+ const sources = Array.isArray(target.source) ? target.source : [target.source];
146
+
147
+ // Check if current entry matches any of the target sources
148
+ return sources.some(source => {
149
+ const targetSourcePath = (0, _projectPath.toProjectPath)(options.projectRoot, _path().default.resolve((0, _projectPath.fromProjectPath)(options.projectRoot, input.packagePath), (0, _nullthrows().default)(source, 'Source must be not be undefined when specified')));
150
+ return targetSourcePath === currentEntryPath;
151
+ });
152
+ });
153
+ } else {
154
+ // If not all targets have sources, fall back to old behavior (skip targets with sources)
155
+ targets = targets.filter(target => !target.source);
156
+ }
157
+ }
125
158
  assertTargetsAreNotEntries(targets, input, options);
126
159
  let configResult = (0, _nullthrows().default)(await api.runRequest((0, _AtlaspackConfigRequest.default)()));
127
160
  let atlaspackConfig = (0, _AtlaspackConfigRequest.getCachedAtlaspackConfig)(configResult, options);
@@ -170,6 +203,7 @@ class TargetResolver {
170
203
 
171
204
  // If an array of strings is passed, it's a filter on the resolved package
172
205
  // targets. Load them, and find the matching targets.
206
+ // @ts-expect-error TS2322
173
207
  targets = optionTargets.map(target => {
174
208
  // null means skipped.
175
209
  if (!packageTargets.has(target)) {
@@ -212,6 +246,7 @@ class TargetResolver {
212
246
  name,
213
247
  distDir: (0, _projectPath.toProjectPath)(this.options.projectRoot, _path().default.resolve(this.fs.cwd(), distDir)),
214
248
  publicUrl: descriptor.publicUrl ?? this.options.defaultTargetOptions.publicUrl,
249
+ inlineRequires: descriptor.inlineRequires ?? false,
215
250
  env: (0, _Environment.createEnvironment)({
216
251
  engines: descriptor.engines,
217
252
  context: descriptor.context,
@@ -221,7 +256,8 @@ class TargetResolver {
221
256
  shouldOptimize: this.options.defaultTargetOptions.shouldOptimize && descriptor.optimize !== false,
222
257
  shouldScopeHoist: this.options.defaultTargetOptions.shouldScopeHoist && descriptor.scopeHoist !== false,
223
258
  sourceMap: normalizeSourceMap(this.options, descriptor.sourceMap),
224
- unstableSingleFileOutput: descriptor.__unstable_singleFileOutput
259
+ unstableSingleFileOutput: descriptor.__unstable_singleFileOutput,
260
+ customEnv: descriptor.env
225
261
  })
226
262
  };
227
263
  if (descriptor.distEntry != null) {
@@ -231,7 +267,17 @@ class TargetResolver {
231
267
  target.source = descriptor.source;
232
268
  }
233
269
  return target;
234
- }).filter(target => !skipTarget(target.name, exclusiveTarget, target.source));
270
+ }).filter(target => (0, _featureFlags().getFeatureFlag)('allowExplicitTargetEntries') && this.options.entries.length !== 0 || !skipTarget(target.name, exclusiveTarget, target.source));
271
+
272
+ // Apply allowExplicitTargetEntries filtering logic
273
+ if ((0, _featureFlags().getFeatureFlag)('allowExplicitTargetEntries')) {
274
+ // Check if ALL targets have sources - only apply new behavior if they do
275
+ const allTargetsHaveSources = targets.every(t => t.source);
276
+ if (!allTargetsHaveSources) {
277
+ // If not all targets have sources, fall back to old behavior (skip targets with sources)
278
+ targets = targets.filter(target => !target.source);
279
+ }
280
+ }
235
281
  }
236
282
  let serve = this.options.serveOptions;
237
283
  if (serve && targets.length > 0) {
@@ -245,7 +291,7 @@ class TargetResolver {
245
291
  }
246
292
  });
247
293
  }
248
- if (!_Environment2.BROWSER_ENVS.has(targets[0].env.context)) {
294
+ if (!_Environment2.BROWSER_ENVS.has((0, _EnvironmentManager.fromEnvironmentId)(targets[0].env).context)) {
249
295
  throw new (_diagnostic().default)({
250
296
  diagnostic: {
251
297
  message: `Only browser targets are supported in serve mode`,
@@ -265,9 +311,11 @@ class TargetResolver {
265
311
  name: 'default',
266
312
  distDir: (0, _projectPath.toProjectPath)(this.options.projectRoot, this.options.serveOptions.distDir),
267
313
  publicUrl: this.options.defaultTargetOptions.publicUrl ?? '/',
314
+ inlineRequires: false,
268
315
  env: (0, _Environment.createEnvironment)({
269
316
  context: 'browser',
270
317
  engines: {
318
+ // @ts-expect-error TS2322
271
319
  browsers: DEFAULT_ENGINES.browsers
272
320
  },
273
321
  shouldOptimize: this.options.defaultTargetOptions.shouldOptimize,
@@ -277,6 +325,7 @@ class TargetResolver {
277
325
  })
278
326
  }];
279
327
  } else {
328
+ // @ts-expect-error TS2322
280
329
  targets = Array.from(packageTargets.values()).filter(Boolean).filter(descriptor => {
281
330
  return descriptor && !skipTarget(descriptor.name, exclusiveTarget, descriptor.source);
282
331
  });
@@ -364,6 +413,7 @@ class TargetResolver {
364
413
  browsers: browserslistBrowsers
365
414
  };
366
415
  browsersLoc = {
416
+ // @ts-expect-error TS2353
367
417
  message: `(defined in ${_path().default.relative(process.cwd(), browserslistConfig)})`
368
418
  };
369
419
  }
@@ -384,8 +434,10 @@ class TargetResolver {
384
434
  if (context === 'browser' && pkgEngines.browsers == null) {
385
435
  pkgEngines = {
386
436
  ...pkgEngines,
437
+ // @ts-expect-error TS2322
387
438
  browsers: (defaultEngines === null || defaultEngines === void 0 ? void 0 : defaultEngines.browsers) ?? DEFAULT_ENGINES.browsers
388
439
  };
440
+ // @ts-expect-error TS2353
389
441
  browsersLoc = {
390
442
  message: '(default)'
391
443
  };
@@ -394,6 +446,7 @@ class TargetResolver {
394
446
  ...pkgEngines,
395
447
  node: (defaultEngines === null || defaultEngines === void 0 ? void 0 : defaultEngines.node) ?? DEFAULT_ENGINES.node
396
448
  };
449
+ // @ts-expect-error TS2353
397
450
  nodeLoc = {
398
451
  message: '(default)'
399
452
  };
@@ -480,6 +533,7 @@ class TargetResolver {
480
533
  _targetDist = pkg[targetName][pkg.name];
481
534
  pointer = `/${targetName}/${(0, _diagnostic().encodeJSONKeyComponent)(pkg.name)}`;
482
535
  } else {
536
+ // @ts-expect-error TS7053
483
537
  _targetDist = pkg[targetName];
484
538
  pointer = `/${targetName}`;
485
539
  }
@@ -510,15 +564,16 @@ class TargetResolver {
510
564
  targets.set(targetName, null);
511
565
  continue;
512
566
  }
513
- if (distEntry != null && !COMMON_TARGETS[targetName].match.test(distEntry)) {
514
- let contents = typeof pkgContents === 'string' ? pkgContents :
515
- // $FlowFixMe
516
- JSON.stringify(pkgContents, null, '\t');
517
- // $FlowFixMe
567
+ if (distEntry != null &&
568
+ // @ts-expect-error TS7053
569
+ !COMMON_TARGETS[targetName].match.test(distEntry)) {
570
+ let contents = typeof pkgContents === 'string' ? pkgContents : JSON.stringify(pkgContents, null, '\t');
518
571
  let listFormat = new Intl.ListFormat('en-US', {
519
572
  type: 'disjunction'
520
573
  });
521
- let extensions = listFormat.format(COMMON_TARGETS[targetName].extensions);
574
+ let extensions = listFormat.format(
575
+ // @ts-expect-error TS7053
576
+ COMMON_TARGETS[targetName].extensions);
522
577
  let ext = _path().default.extname(distEntry);
523
578
  throw new (_diagnostic().default)({
524
579
  diagnostic: {
@@ -540,9 +595,7 @@ class TargetResolver {
540
595
  });
541
596
  }
542
597
  if (descriptor.outputFormat === 'global') {
543
- let contents = typeof pkgContents === 'string' ? pkgContents :
544
- // $FlowFixMe
545
- JSON.stringify(pkgContents, null, '\t');
598
+ let contents = typeof pkgContents === 'string' ? pkgContents : JSON.stringify(pkgContents, null, '\t');
546
599
  throw new (_diagnostic().default)({
547
600
  diagnostic: {
548
601
  message: (0, _diagnostic().md)`The "global" output format is not supported in the "${targetName}" target.`,
@@ -561,13 +614,13 @@ class TargetResolver {
561
614
  }
562
615
  });
563
616
  }
564
- let [inferredOutputFormat, inferredOutputFormatField] = this.inferOutputFormat(distEntry, descriptor, targetName, pkg, pkgFilePath, pkgContents);
617
+ let [inferredOutputFormat, inferredOutputFormatField] = this.inferOutputFormat(distEntry, descriptor, targetName,
618
+ // @ts-expect-error TS2345
619
+ pkg, pkgFilePath, pkgContents);
565
620
  let outputFormat = descriptor.outputFormat ?? this.options.defaultTargetOptions.outputFormat ?? inferredOutputFormat ?? (targetName === 'module' ? 'esmodule' : 'commonjs');
566
621
  let isModule = outputFormat === 'esmodule';
567
622
  if (targetName === 'main' && outputFormat === 'esmodule' && inferredOutputFormat !== 'esmodule') {
568
- let contents = typeof pkgContents === 'string' ? pkgContents :
569
- // $FlowFixMe
570
- JSON.stringify(pkgContents, null, '\t');
623
+ let contents = typeof pkgContents === 'string' ? pkgContents : JSON.stringify(pkgContents, null, '\t');
571
624
  throw new (_diagnostic().default)({
572
625
  diagnostic: {
573
626
  // prettier-ignore
@@ -593,9 +646,7 @@ class TargetResolver {
593
646
  });
594
647
  }
595
648
  if (descriptor.scopeHoist === false) {
596
- let contents = typeof pkgContents === 'string' ? pkgContents :
597
- // $FlowFixMe
598
- JSON.stringify(pkgContents, null, '\t');
649
+ let contents = typeof pkgContents === 'string' ? pkgContents : JSON.stringify(pkgContents, null, '\t');
599
650
  throw new (_diagnostic().default)({
600
651
  diagnostic: {
601
652
  message: 'Scope hoisting cannot be disabled for library targets.',
@@ -620,8 +671,10 @@ class TargetResolver {
620
671
  distDir,
621
672
  distEntry,
622
673
  publicUrl: descriptor.publicUrl ?? this.options.defaultTargetOptions.publicUrl,
674
+ inlineRequires: descriptor.inlineRequires ?? false,
623
675
  env: (0, _Environment.createEnvironment)({
624
676
  engines: descriptor.engines ?? pkgEngines,
677
+ // @ts-expect-error TS2322
625
678
  context,
626
679
  includeNodeModules: descriptor.includeNodeModules ?? false,
627
680
  outputFormat,
@@ -675,10 +728,13 @@ class TargetResolver {
675
728
  });
676
729
  }
677
730
  }
678
- let customTargets = Object.keys(pkgTargets).filter(targetName => !COMMON_TARGETS[targetName]);
731
+ let customTargets = Object.keys(pkgTargets).filter(
732
+ // @ts-expect-error TS7053
733
+ targetName => !COMMON_TARGETS[targetName]);
679
734
 
680
735
  // Custom targets
681
736
  for (let targetName of customTargets) {
737
+ // @ts-expect-error TS7053
682
738
  let distPath = pkg[targetName];
683
739
  let distDir;
684
740
  let distEntry;
@@ -697,9 +753,7 @@ class TargetResolver {
697
753
  };
698
754
  } else {
699
755
  if (typeof distPath !== 'string') {
700
- let contents = typeof pkgContents === 'string' ? pkgContents :
701
- // $FlowFixMe
702
- JSON.stringify(pkgContents, null, '\t');
756
+ let contents = typeof pkgContents === 'string' ? pkgContents : JSON.stringify(pkgContents, null, '\t');
703
757
  throw new (_diagnostic().default)({
704
758
  diagnostic: {
705
759
  message: (0, _diagnostic().md)`Invalid distPath for target "${targetName}"`,
@@ -734,11 +788,11 @@ class TargetResolver {
734
788
  targets.set(targetName, null);
735
789
  continue;
736
790
  }
737
- let [inferredOutputFormat, inferredOutputFormatField] = this.inferOutputFormat(distEntry, descriptor, targetName, pkg, pkgFilePath, pkgContents);
791
+ let [inferredOutputFormat, inferredOutputFormatField] = this.inferOutputFormat(distEntry, descriptor, targetName,
792
+ // @ts-expect-error TS2345
793
+ pkg, pkgFilePath, pkgContents);
738
794
  if (descriptor.scopeHoist === false && descriptor.isLibrary) {
739
- let contents = typeof pkgContents === 'string' ? pkgContents :
740
- // $FlowFixMe
741
- JSON.stringify(pkgContents, null, '\t');
795
+ let contents = typeof pkgContents === 'string' ? pkgContents : JSON.stringify(pkgContents, null, '\t');
742
796
  throw new (_diagnostic().default)({
743
797
  diagnostic: {
744
798
  message: 'Scope hoisting cannot be disabled for library targets.',
@@ -767,6 +821,7 @@ class TargetResolver {
767
821
  distDir: (0, _projectPath.toProjectPath)(this.options.projectRoot, descriptor.distDir != null ? _path().default.resolve(pkgDir, descriptor.distDir) : distDir),
768
822
  distEntry,
769
823
  publicUrl: descriptor.publicUrl ?? this.options.defaultTargetOptions.publicUrl,
824
+ inlineRequires: descriptor.inlineRequires ?? false,
770
825
  env: (0, _Environment.createEnvironment)({
771
826
  engines: descriptor.engines ?? pkgEngines,
772
827
  context: descriptor.context,
@@ -778,7 +833,8 @@ class TargetResolver {
778
833
  // Libraries are not optimized by default, users must explicitly configure this.
779
834
  isLibrary ? descriptor.optimize === true : descriptor.optimize !== false),
780
835
  shouldScopeHoist: shouldScopeHoist && descriptor.scopeHoist !== false,
781
- sourceMap: normalizeSourceMap(this.options, descriptor.sourceMap)
836
+ sourceMap: normalizeSourceMap(this.options, descriptor.sourceMap),
837
+ customEnv: descriptor.env
782
838
  }),
783
839
  loc: (0, _utils2.toInternalSourceLocation)(this.options.projectRoot, loc)
784
840
  });
@@ -836,8 +892,10 @@ class TargetResolver {
836
892
  name: 'default',
837
893
  distDir: this.options.defaultTargetOptions.distDir ?? (0, _projectPath.toProjectPath)(this.options.projectRoot, _path().default.join(pkgDir, DEFAULT_DIST_DIRNAME)),
838
894
  publicUrl: this.options.defaultTargetOptions.publicUrl,
895
+ inlineRequires: false,
839
896
  env: (0, _Environment.createEnvironment)({
840
897
  engines: pkgEngines,
898
+ // @ts-expect-error TS2322
841
899
  context,
842
900
  outputFormat: this.options.defaultTargetOptions.outputFormat,
843
901
  isLibrary: this.options.defaultTargetOptions.isLibrary,
@@ -874,9 +932,7 @@ class TargetResolver {
874
932
  break;
875
933
  }
876
934
  if (descriptor.outputFormat && inferredOutputFormat && descriptor.outputFormat !== inferredOutputFormat) {
877
- let contents = typeof pkgContents === 'string' ? pkgContents :
878
- // $FlowFixMe
879
- JSON.stringify(pkgContents, null, '\t');
935
+ let contents = typeof pkgContents === 'string' ? pkgContents : JSON.stringify(pkgContents, null, '\t');
880
936
  let expectedExtensions;
881
937
  switch (descriptor.outputFormat) {
882
938
  case 'esmodule':
@@ -889,7 +945,6 @@ class TargetResolver {
889
945
  expectedExtensions = ['.js'];
890
946
  break;
891
947
  }
892
- // $FlowFixMe
893
948
  let listFormat = new Intl.ListFormat('en-US', {
894
949
  type: 'disjunction'
895
950
  });
@@ -916,6 +971,8 @@ class TargetResolver {
916
971
  }
917
972
  });
918
973
  }
974
+
975
+ // @ts-expect-error TS2322
919
976
  return [inferredOutputFormat, inferredOutputFormatField];
920
977
  }
921
978
  }
@@ -930,7 +987,7 @@ function parseEngines(engines, pkgPath, pkgContents, prependKey, message) {
930
987
  filePath: pkgPath,
931
988
  prependKey
932
989
  }, '@atlaspack/core', message);
933
- // $FlowFixMe we just verified this
990
+ // @ts-expect-error TS2322
934
991
  return engines;
935
992
  }
936
993
  }
@@ -942,7 +999,7 @@ function parseDescriptor(targetName, descriptor, pkgPath, pkgContents) {
942
999
  prependKey: `/targets/${targetName}`
943
1000
  }, '@atlaspack/core', `Invalid target descriptor for target "${targetName}"`);
944
1001
 
945
- // $FlowFixMe we just verified this
1002
+ // @ts-expect-error TS2322
946
1003
  return descriptor;
947
1004
  }
948
1005
  function parsePackageDescriptor(targetName, descriptor, pkgPath, pkgContents) {
@@ -952,7 +1009,7 @@ function parsePackageDescriptor(targetName, descriptor, pkgPath, pkgContents) {
952
1009
  filePath: pkgPath,
953
1010
  prependKey: `/targets/${targetName}`
954
1011
  }, '@atlaspack/core', `Invalid target descriptor for target "${targetName}"`);
955
- // $FlowFixMe we just verified this
1012
+ // @ts-expect-error TS2322
956
1013
  return descriptor;
957
1014
  }
958
1015
  function parseCommonTargetDescriptor(targetName, descriptor, pkgPath, pkgContents) {
@@ -963,7 +1020,7 @@ function parseCommonTargetDescriptor(targetName, descriptor, pkgPath, pkgContent
963
1020
  prependKey: `/targets/${targetName}`
964
1021
  }, '@atlaspack/core', `Invalid target descriptor for target "${targetName}"`);
965
1022
 
966
- // $FlowFixMe we just verified this
1023
+ // @ts-expect-error TS2322
967
1024
  return descriptor;
968
1025
  }
969
1026
  function assertNoDuplicateTargets(options, targets, pkgFilePath, pkgContents) {
@@ -1012,7 +1069,9 @@ function assertNoDuplicateTargets(options, targets, pkgFilePath, pkgContents) {
1012
1069
  });
1013
1070
  }
1014
1071
  }
1015
- function normalizeSourceMap(options, sourceMap) {
1072
+ function normalizeSourceMap(options,
1073
+ // @ts-expect-error TS2304
1074
+ sourceMap) {
1016
1075
  if (options.defaultTargetOptions.sourceMaps) {
1017
1076
  if (typeof sourceMap === 'boolean') {
1018
1077
  return sourceMap ? {} : undefined;
@@ -1028,6 +1087,7 @@ function assertTargetsAreNotEntries(targets, input, options) {
1028
1087
  if (target.distEntry != null && (0, _projectPath.joinProjectPath)(target.distDir, target.distEntry) === input.filePath) {
1029
1088
  let loc = target.loc;
1030
1089
  let relativeEntry = _path().default.relative(process.cwd(), (0, _projectPath.fromProjectPath)(options.projectRoot, input.filePath));
1090
+ // @ts-expect-error TS2304
1031
1091
  let codeFrames = [];
1032
1092
  if (loc) {
1033
1093
  codeFrames.push({
@@ -1052,7 +1112,9 @@ function assertTargetsAreNotEntries(targets, input, options) {
1052
1112
  origin: '@atlaspack/core',
1053
1113
  message: `Target "${target.name}" is configured to overwrite entry "${relativeEntry}".`,
1054
1114
  codeFrames,
1055
- hints: [(COMMON_TARGETS[target.name] ? `The "${target.name}" field is an _output_ file path so that your build can be consumed by other tools. ` : '') + `Change the "${target.name}" field to point to an output file rather than your source code.`],
1115
+ hints: [
1116
+ // @ts-expect-error TS7053
1117
+ (COMMON_TARGETS[target.name] ? `The "${target.name}" field is an _output_ file path so that your build can be consumed by other tools. ` : '') + `Change the "${target.name}" field to point to an output file rather than your source code.`],
1056
1118
  documentationURL: 'https://parceljs.org/features/targets/'
1057
1119
  }
1058
1120
  });
@@ -1073,24 +1135,27 @@ async function debugResolvedTargets(input, targets, targetInfo, options) {
1073
1135
 
1074
1136
  // Resolve relevant engines for context.
1075
1137
  let engines;
1076
- switch (target.env.context) {
1138
+ const env = (0, _EnvironmentManager.fromEnvironmentId)(target.env);
1139
+ switch (env.context) {
1077
1140
  case 'browser':
1078
1141
  case 'web-worker':
1079
1142
  case 'service-worker':
1080
1143
  case 'worklet':
1081
1144
  {
1082
- let browsers = target.env.engines.browsers;
1145
+ let browsers = env.engines.browsers;
1083
1146
  engines = Array.isArray(browsers) ? browsers.join(', ') : browsers;
1084
1147
  break;
1085
1148
  }
1086
1149
  case 'node':
1087
- engines = target.env.engines.node;
1150
+ engines = env.engines.node;
1088
1151
  break;
1089
1152
  case 'electron-main':
1090
1153
  case 'electron-renderer':
1091
- engines = target.env.engines.electron;
1154
+ engines = env.engines.electron;
1092
1155
  break;
1093
1156
  }
1157
+
1158
+ // @ts-expect-error TS2304
1094
1159
  let highlights = [];
1095
1160
  if (input.loc) {
1096
1161
  highlights.push((0, _diagnostic().convertSourceLocationToHighlight)(input.loc, 'entry defined here'));
@@ -1103,6 +1168,7 @@ async function debugResolvedTargets(input, targets, targetInfo, options) {
1103
1168
  // Builds up map of code highlights for each defined/inferred path in the package.json.
1104
1169
  let jsonHighlights = new Map();
1105
1170
  for (let key in info) {
1171
+ // @ts-expect-error TS7053
1106
1172
  let keyInfo = info[key];
1107
1173
  let path = keyInfo.path || keyInfo.inferred;
1108
1174
  if (!path) {
@@ -1124,11 +1190,10 @@ async function debugResolvedTargets(input, targets, targetInfo, options) {
1124
1190
  highlight.defined = (0, _diagnostic().md)`${key} defined here`;
1125
1191
  }
1126
1192
  if (keyInfo.inferred) {
1127
- highlight.inferred.push((0, _diagnostic().md)`${key} to be ${JSON.stringify(target.env[key])}`);
1193
+ // @ts-expect-error TS2345
1194
+ highlight.inferred.push((0, _diagnostic().md)`${key} to be ${JSON.stringify(env[key])}`);
1128
1195
  }
1129
1196
  }
1130
-
1131
- // $FlowFixMe
1132
1197
  let listFormat = new Intl.ListFormat('en-US');
1133
1198
 
1134
1199
  // Generate human friendly messages for each field.
@@ -1150,26 +1215,30 @@ async function debugResolvedTargets(input, targets, targetInfo, options) {
1150
1215
 
1151
1216
  // Format includeNodeModules to be human readable.
1152
1217
  let includeNodeModules;
1153
- if (typeof target.env.includeNodeModules === 'boolean') {
1154
- includeNodeModules = String(target.env.includeNodeModules);
1155
- } else if (Array.isArray(target.env.includeNodeModules)) {
1156
- includeNodeModules = 'only ' + listFormat.format(target.env.includeNodeModules.map(m => JSON.stringify(m)));
1157
- } else if (target.env.includeNodeModules && typeof target.env.includeNodeModules === 'object') {
1158
- includeNodeModules = 'all except ' + listFormat.format(Object.entries(target.env.includeNodeModules).filter(([, v]) => v === false).map(([k]) => JSON.stringify(k)));
1218
+ if (typeof env.includeNodeModules === 'boolean') {
1219
+ includeNodeModules = String(env.includeNodeModules);
1220
+ } else if (Array.isArray(env.includeNodeModules)) {
1221
+ includeNodeModules = 'only ' + listFormat.format(env.includeNodeModules.map(m => JSON.stringify(m)));
1222
+ } else if (env.includeNodeModules && typeof env.includeNodeModules === 'object') {
1223
+ includeNodeModules = 'all except ' + listFormat.format(Object.entries(env.includeNodeModules).filter(([, v]) => v === false)
1224
+ // @ts-expect-error TS2345
1225
+ .map(([k]) => JSON.stringify(k)));
1159
1226
  }
1160
- let format = v => v.message != null ? _diagnostic().md.italic(v.message) : '';
1227
+ let format = v =>
1228
+ // @ts-expect-error TS2339
1229
+ v.message != null ? _diagnostic().md.italic(v.message) : '';
1161
1230
  _logger().default.verbose({
1162
1231
  origin: '@atlaspack/core',
1163
1232
  message: (0, _diagnostic().md)`**Target** "${target.name}"
1164
1233
 
1165
1234
  **Entry**: ${_path().default.relative(process.cwd(), (0, _projectPath.fromProjectPath)(options.projectRoot, input.filePath))}
1166
1235
  **Output**: ${_path().default.relative(process.cwd(), output)}
1167
- **Format**: ${target.env.outputFormat} ${format(info.outputFormat)}
1168
- **Context**: ${target.env.context} ${format(info.context)}
1236
+ **Format**: ${env.outputFormat} ${format(info.outputFormat)}
1237
+ **Context**: ${env.context} ${format(info.context)}
1169
1238
  **Engines**: ${engines || ''} ${format(info.engines)}
1170
- **Library Mode**: ${String(target.env.isLibrary)} ${format(info.isLibrary)}
1239
+ **Library Mode**: ${String(env.isLibrary)} ${format(info.isLibrary)}
1171
1240
  **Include Node Modules**: ${includeNodeModules} ${format(info.includeNodeModules)}
1172
- **Optimize**: ${String(target.env.shouldOptimize)} ${format(info.shouldOptimize)}`,
1241
+ **Optimize**: ${String(env.shouldOptimize)} ${format(info.shouldOptimize)}`,
1173
1242
  codeFrames: target.loc ? [{
1174
1243
  filePath: targetFilePath,
1175
1244
  codeHighlights: highlights
@@ -16,7 +16,7 @@ var _ReporterRunner = require("../ReporterRunner");
16
16
  var _Validation = _interopRequireDefault(require("../Validation"));
17
17
  var _AtlaspackConfigRequest = _interopRequireDefault(require("./AtlaspackConfigRequest"));
18
18
  var _RequestTracker = require("../RequestTracker");
19
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
20
  function createValidationRequest(input) {
21
21
  return {
22
22
  id: 'validation',
@@ -36,6 +36,7 @@ function createValidationRequest(input) {
36
36
  } = (0, _nullthrows().default)(await api.runRequest((0, _AtlaspackConfigRequest.default)()));
37
37
  let config = new _AtlaspackConfig.AtlaspackConfig(processedConfig, options);
38
38
  let trackedRequestsDesc = assetRequests.filter(request => {
39
+ // @ts-expect-error TS2345
39
40
  return config.getValidatorNames(request.filePath).length > 0;
40
41
  });
41
42
 
@@ -52,10 +53,13 @@ function createValidationRequest(input) {
52
53
  }
53
54
 
54
55
  // Schedule validations on the main thread for all validation plugins that implement "validateAll".
55
- promises.push(new _Validation.default({
56
+ promises.push(
57
+ // @ts-expect-error TS2345
58
+ new _Validation.default({
56
59
  requests: trackedRequestsDesc,
57
60
  options,
58
61
  config,
62
+ // @ts-expect-error TS2322
59
63
  report: _ReporterRunner.report,
60
64
  dedicatedThread: true
61
65
  }).run());