@atlaspack/core 2.16.2-canary.27 → 2.16.2-canary.270

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 (358) hide show
  1. package/CHANGELOG.md +665 -0
  2. package/dist/AssetGraph.js +591 -0
  3. package/dist/Atlaspack.js +658 -0
  4. package/dist/AtlaspackConfig.js +324 -0
  5. package/dist/AtlaspackConfig.schema.js +108 -0
  6. package/dist/BundleGraph.js +1635 -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 +545 -0
  14. package/dist/ReporterRunner.js +151 -0
  15. package/dist/RequestTracker.js +1360 -0
  16. package/dist/SymbolPropagation.js +620 -0
  17. package/dist/TargetDescriptor.schema.js +143 -0
  18. package/dist/Transformation.js +490 -0
  19. package/dist/UncommittedAsset.js +315 -0
  20. package/dist/Validation.js +196 -0
  21. package/dist/applyRuntimes.js +305 -0
  22. package/dist/assetUtils.js +168 -0
  23. package/dist/atlaspack-v3/AtlaspackV3.js +70 -0
  24. package/dist/atlaspack-v3/NapiWorkerPool.js +57 -0
  25. package/dist/atlaspack-v3/fs.js +52 -0
  26. package/dist/atlaspack-v3/index.js +25 -0
  27. package/dist/atlaspack-v3/jsCallable.js +16 -0
  28. package/dist/atlaspack-v3/worker/compat/asset-symbols.js +190 -0
  29. package/dist/atlaspack-v3/worker/compat/bitflags.js +94 -0
  30. package/dist/atlaspack-v3/worker/compat/dependency.js +43 -0
  31. package/dist/atlaspack-v3/worker/compat/environment.js +57 -0
  32. package/dist/atlaspack-v3/worker/compat/index.js +25 -0
  33. package/dist/atlaspack-v3/worker/compat/mutable-asset.js +152 -0
  34. package/dist/atlaspack-v3/worker/compat/plugin-config.js +76 -0
  35. package/dist/atlaspack-v3/worker/compat/plugin-logger.js +26 -0
  36. package/dist/atlaspack-v3/worker/compat/plugin-options.js +122 -0
  37. package/dist/atlaspack-v3/worker/compat/plugin-tracer.js +10 -0
  38. package/dist/atlaspack-v3/worker/compat/target.js +14 -0
  39. package/dist/atlaspack-v3/worker/worker.js +297 -0
  40. package/dist/constants.js +17 -0
  41. package/dist/dumpGraphToGraphViz.js +281 -0
  42. package/dist/index.js +62 -0
  43. package/dist/loadAtlaspackPlugin.js +128 -0
  44. package/dist/loadDotEnv.js +41 -0
  45. package/dist/projectPath.js +83 -0
  46. package/dist/public/Asset.js +279 -0
  47. package/dist/public/Bundle.js +224 -0
  48. package/dist/public/BundleGraph.js +359 -0
  49. package/dist/public/BundleGroup.js +53 -0
  50. package/dist/public/Config.js +286 -0
  51. package/dist/public/Dependency.js +138 -0
  52. package/dist/public/Environment.js +278 -0
  53. package/dist/public/MutableBundleGraph.js +277 -0
  54. package/dist/public/PluginOptions.js +80 -0
  55. package/dist/public/Symbols.js +248 -0
  56. package/dist/public/Target.js +69 -0
  57. package/dist/registerCoreWithSerializer.js +38 -0
  58. package/dist/requests/AssetGraphRequest.js +429 -0
  59. package/dist/requests/AssetGraphRequestRust.js +262 -0
  60. package/dist/requests/AssetRequest.js +130 -0
  61. package/dist/requests/AtlaspackBuildRequest.js +65 -0
  62. package/dist/requests/AtlaspackConfigRequest.js +493 -0
  63. package/dist/requests/BundleGraphRequest.js +445 -0
  64. package/dist/requests/ConfigRequest.js +222 -0
  65. package/dist/requests/DevDepRequest.js +204 -0
  66. package/dist/requests/EntryRequest.js +314 -0
  67. package/dist/requests/PackageRequest.js +62 -0
  68. package/dist/requests/PathRequest.js +349 -0
  69. package/dist/requests/TargetRequest.js +1311 -0
  70. package/dist/requests/ValidationRequest.js +49 -0
  71. package/dist/requests/WriteBundleRequest.js +254 -0
  72. package/dist/requests/WriteBundlesRequest.js +184 -0
  73. package/dist/requests/asset-graph-diff.js +128 -0
  74. package/dist/requests/asset-graph-dot.js +131 -0
  75. package/dist/resolveOptions.js +268 -0
  76. package/dist/rustWorkerThreadDylibHack.js +19 -0
  77. package/dist/serializerCore.browser.js +43 -0
  78. package/dist/summarizeRequest.js +39 -0
  79. package/dist/types.js +31 -0
  80. package/dist/utils.js +172 -0
  81. package/dist/worker.js +123 -0
  82. package/lib/AssetGraph.js +111 -14
  83. package/lib/Atlaspack.js +81 -37
  84. package/lib/AtlaspackConfig.js +15 -3
  85. package/lib/AtlaspackConfig.schema.js +7 -5
  86. package/lib/BundleGraph.js +90 -32
  87. package/lib/CommittedAsset.js +6 -0
  88. package/lib/Dependency.js +8 -2
  89. package/lib/Environment.js +15 -8
  90. package/lib/EnvironmentManager.js +143 -0
  91. package/lib/IdentifierRegistry.js +1 -3
  92. package/lib/InternalConfig.js +3 -2
  93. package/lib/PackagerRunner.js +90 -27
  94. package/lib/ReporterRunner.js +6 -9
  95. package/lib/RequestTracker.js +266 -156
  96. package/lib/SymbolPropagation.js +42 -18
  97. package/lib/TargetDescriptor.schema.js +7 -1
  98. package/lib/Transformation.js +26 -10
  99. package/lib/UncommittedAsset.js +30 -9
  100. package/lib/Validation.js +18 -2
  101. package/lib/applyRuntimes.js +9 -1
  102. package/lib/assetUtils.js +7 -4
  103. package/lib/atlaspack-v3/AtlaspackV3.js +32 -7
  104. package/lib/atlaspack-v3/NapiWorkerPool.js +3 -0
  105. package/lib/atlaspack-v3/fs.js +3 -1
  106. package/lib/atlaspack-v3/index.js +28 -1
  107. package/lib/atlaspack-v3/jsCallable.js +0 -2
  108. package/lib/atlaspack-v3/worker/compat/asset-symbols.js +7 -4
  109. package/lib/atlaspack-v3/worker/compat/bitflags.js +7 -6
  110. package/lib/atlaspack-v3/worker/compat/dependency.js +3 -0
  111. package/lib/atlaspack-v3/worker/compat/environment.js +10 -7
  112. package/lib/atlaspack-v3/worker/compat/mutable-asset.js +14 -9
  113. package/lib/atlaspack-v3/worker/compat/plugin-config.js +8 -10
  114. package/lib/atlaspack-v3/worker/compat/plugin-options.js +1 -0
  115. package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +3 -0
  116. package/lib/atlaspack-v3/worker/compat/target.js +2 -0
  117. package/lib/atlaspack-v3/worker/index.js +3 -0
  118. package/lib/atlaspack-v3/worker/worker.js +43 -7
  119. package/lib/constants.js +0 -1
  120. package/lib/dumpGraphToGraphViz.js +71 -16
  121. package/lib/index.js +45 -1
  122. package/lib/loadDotEnv.js +4 -1
  123. package/lib/projectPath.js +5 -0
  124. package/lib/public/Asset.js +21 -11
  125. package/lib/public/Bundle.js +15 -16
  126. package/lib/public/BundleGraph.js +10 -4
  127. package/lib/public/BundleGroup.js +4 -5
  128. package/lib/public/Config.js +118 -17
  129. package/lib/public/Dependency.js +8 -6
  130. package/lib/public/Environment.js +12 -7
  131. package/lib/public/MutableBundleGraph.js +54 -12
  132. package/lib/public/PluginOptions.js +2 -2
  133. package/lib/public/Symbols.js +11 -11
  134. package/lib/public/Target.js +7 -6
  135. package/lib/registerCoreWithSerializer.js +5 -3
  136. package/lib/requests/AssetGraphRequest.js +42 -5
  137. package/lib/requests/AssetGraphRequestRust.js +126 -62
  138. package/lib/requests/AssetRequest.js +23 -6
  139. package/lib/requests/AtlaspackBuildRequest.js +10 -4
  140. package/lib/requests/AtlaspackConfigRequest.js +27 -16
  141. package/lib/requests/BundleGraphRequest.js +34 -19
  142. package/lib/requests/ConfigRequest.js +28 -4
  143. package/lib/requests/DevDepRequest.js +31 -5
  144. package/lib/requests/EntryRequest.js +2 -0
  145. package/lib/requests/PackageRequest.js +2 -1
  146. package/lib/requests/PathRequest.js +24 -3
  147. package/lib/requests/TargetRequest.js +122 -57
  148. package/lib/requests/ValidationRequest.js +5 -1
  149. package/lib/requests/WriteBundleRequest.js +39 -11
  150. package/lib/requests/WriteBundlesRequest.js +51 -4
  151. package/lib/requests/asset-graph-diff.js +12 -7
  152. package/lib/requests/asset-graph-dot.js +1 -7
  153. package/lib/resolveOptions.js +36 -10
  154. package/lib/rustWorkerThreadDylibHack.js +0 -1
  155. package/lib/types/AssetGraph.d.ts +80 -0
  156. package/lib/types/Atlaspack.d.ts +52 -0
  157. package/lib/types/AtlaspackConfig.d.ts +65 -0
  158. package/lib/types/AtlaspackConfig.schema.d.ts +46 -0
  159. package/lib/types/BundleGraph.d.ts +182 -0
  160. package/lib/types/CommittedAsset.d.ts +23 -0
  161. package/lib/types/Dependency.d.ts +44 -0
  162. package/lib/types/Environment.d.ts +11 -0
  163. package/lib/types/EnvironmentManager.d.ts +37 -0
  164. package/lib/types/IdentifierRegistry.d.ts +6 -0
  165. package/lib/types/InternalConfig.d.ts +24 -0
  166. package/lib/types/PackagerRunner.d.ts +85 -0
  167. package/lib/types/ReporterRunner.d.ts +25 -0
  168. package/lib/types/RequestTracker.d.ts +385 -0
  169. package/lib/types/SymbolPropagation.d.ts +11 -0
  170. package/lib/types/TargetDescriptor.schema.d.ts +5 -0
  171. package/lib/types/Transformation.d.ts +72 -0
  172. package/lib/types/UncommittedAsset.d.ts +61 -0
  173. package/lib/types/Validation.d.ts +37 -0
  174. package/lib/types/applyRuntimes.d.ts +25 -0
  175. package/lib/types/assetUtils.d.ts +42 -0
  176. package/lib/types/atlaspack-v3/AtlaspackV3.d.ts +26 -0
  177. package/lib/types/atlaspack-v3/NapiWorkerPool.d.ts +12 -0
  178. package/lib/types/atlaspack-v3/fs.d.ts +12 -0
  179. package/lib/types/atlaspack-v3/index.d.ts +5 -0
  180. package/lib/types/atlaspack-v3/jsCallable.d.ts +1 -0
  181. package/lib/types/atlaspack-v3/worker/compat/asset-symbols.d.ts +51 -0
  182. package/lib/types/atlaspack-v3/worker/compat/bitflags.d.ts +15 -0
  183. package/lib/types/atlaspack-v3/worker/compat/dependency.d.ts +25 -0
  184. package/lib/types/atlaspack-v3/worker/compat/environment.d.ts +27 -0
  185. package/{src/atlaspack-v3/worker/compat/index.js → lib/types/atlaspack-v3/worker/compat/index.d.ts} +0 -1
  186. package/lib/types/atlaspack-v3/worker/compat/mutable-asset.d.ts +49 -0
  187. package/lib/types/atlaspack-v3/worker/compat/plugin-config.d.ts +37 -0
  188. package/lib/types/atlaspack-v3/worker/compat/plugin-logger.d.ts +9 -0
  189. package/lib/types/atlaspack-v3/worker/compat/plugin-options.d.ts +22 -0
  190. package/lib/types/atlaspack-v3/worker/compat/plugin-tracer.d.ts +5 -0
  191. package/lib/types/atlaspack-v3/worker/compat/target.d.ts +11 -0
  192. package/lib/types/atlaspack-v3/worker/worker.d.ts +60 -0
  193. package/lib/types/constants.d.ts +13 -0
  194. package/lib/types/dumpGraphToGraphViz.d.ts +10 -0
  195. package/lib/types/index.d.ts +8 -0
  196. package/lib/types/loadAtlaspackPlugin.d.ts +8 -0
  197. package/lib/types/loadDotEnv.d.ts +3 -0
  198. package/lib/types/projectPath.d.ts +19 -0
  199. package/lib/types/public/Asset.d.ts +74 -0
  200. package/lib/types/public/Bundle.d.ts +45 -0
  201. package/lib/types/public/BundleGraph.d.ts +70 -0
  202. package/lib/types/public/BundleGroup.d.ts +12 -0
  203. package/lib/types/public/Config.d.ts +75 -0
  204. package/lib/types/public/Dependency.d.ts +32 -0
  205. package/lib/types/public/Environment.d.ts +34 -0
  206. package/lib/types/public/MutableBundleGraph.d.ts +26 -0
  207. package/lib/types/public/PluginOptions.d.ts +25 -0
  208. package/lib/types/public/Symbols.d.ts +81 -0
  209. package/lib/types/public/Target.d.ts +16 -0
  210. package/lib/types/registerCoreWithSerializer.d.ts +2 -0
  211. package/lib/types/requests/AssetGraphRequest.d.ts +74 -0
  212. package/lib/types/requests/AssetGraphRequestRust.d.ts +21 -0
  213. package/lib/types/requests/AssetRequest.d.ts +16 -0
  214. package/lib/types/requests/AtlaspackBuildRequest.d.ts +33 -0
  215. package/lib/types/requests/AtlaspackConfigRequest.d.ts +45 -0
  216. package/lib/types/requests/BundleGraphRequest.d.ts +28 -0
  217. package/lib/types/requests/ConfigRequest.d.ts +59 -0
  218. package/lib/types/requests/DevDepRequest.d.ts +30 -0
  219. package/lib/types/requests/EntryRequest.d.ts +36 -0
  220. package/lib/types/requests/PackageRequest.d.ts +27 -0
  221. package/lib/types/requests/PathRequest.d.ts +48 -0
  222. package/lib/types/requests/TargetRequest.d.ts +48 -0
  223. package/lib/types/requests/ValidationRequest.d.ts +20 -0
  224. package/lib/types/requests/WriteBundleRequest.d.ts +28 -0
  225. package/lib/types/requests/WriteBundlesRequest.d.ts +32 -0
  226. package/lib/types/requests/asset-graph-diff.d.ts +1 -0
  227. package/lib/types/requests/asset-graph-dot.d.ts +9 -0
  228. package/lib/types/resolveOptions.d.ts +3 -0
  229. package/lib/types/rustWorkerThreadDylibHack.d.ts +9 -0
  230. package/lib/types/serializerCore.browser.d.ts +3 -0
  231. package/lib/types/summarizeRequest.d.ts +10 -0
  232. package/lib/types/types.d.ts +493 -0
  233. package/lib/types/utils.d.ts +23 -0
  234. package/lib/types/worker.d.ts +44 -0
  235. package/lib/types.js +8 -1
  236. package/lib/utils.js +17 -2
  237. package/lib/worker.js +29 -13
  238. package/package.json +24 -34
  239. package/src/{AssetGraph.js → AssetGraph.ts} +156 -52
  240. package/src/{Atlaspack.js → Atlaspack.ts} +114 -61
  241. package/src/{AtlaspackConfig.schema.js → AtlaspackConfig.schema.ts} +16 -19
  242. package/src/{AtlaspackConfig.js → AtlaspackConfig.ts} +78 -54
  243. package/src/{BundleGraph.js → BundleGraph.ts} +231 -140
  244. package/src/{CommittedAsset.js → CommittedAsset.ts} +14 -12
  245. package/src/{Dependency.js → Dependency.ts} +59 -42
  246. package/src/{Environment.js → Environment.ts} +24 -15
  247. package/src/EnvironmentManager.ts +154 -0
  248. package/src/{IdentifierRegistry.js → IdentifierRegistry.ts} +1 -4
  249. package/src/{InternalConfig.js → InternalConfig.ts} +22 -23
  250. package/src/{PackagerRunner.js → PackagerRunner.ts} +178 -86
  251. package/src/{ReporterRunner.js → ReporterRunner.ts} +13 -18
  252. package/src/{RequestTracker.js → RequestTracker.ts} +572 -357
  253. package/src/{SymbolPropagation.js → SymbolPropagation.ts} +165 -57
  254. package/src/{TargetDescriptor.schema.js → TargetDescriptor.schema.ts} +7 -1
  255. package/src/{Transformation.js → Transformation.ts} +71 -62
  256. package/src/{UncommittedAsset.js → UncommittedAsset.ts} +57 -36
  257. package/src/{Validation.js → Validation.ts} +32 -17
  258. package/src/{applyRuntimes.js → applyRuntimes.ts} +35 -26
  259. package/src/{assetUtils.js → assetUtils.ts} +47 -35
  260. package/src/atlaspack-v3/AtlaspackV3.ts +122 -0
  261. package/src/atlaspack-v3/{NapiWorkerPool.js → NapiWorkerPool.ts} +10 -5
  262. package/src/atlaspack-v3/{fs.js → fs.ts} +3 -4
  263. package/src/atlaspack-v3/{index.js → index.ts} +2 -4
  264. package/src/atlaspack-v3/jsCallable.ts +14 -0
  265. package/src/atlaspack-v3/worker/compat/{asset-symbols.js → asset-symbols.ts} +40 -30
  266. package/src/atlaspack-v3/worker/compat/{bitflags.js → bitflags.ts} +9 -10
  267. package/src/atlaspack-v3/worker/compat/{dependency.js → dependency.ts} +12 -12
  268. package/src/atlaspack-v3/worker/compat/{environment.js → environment.ts} +13 -9
  269. package/src/atlaspack-v3/worker/compat/index.ts +9 -0
  270. package/src/atlaspack-v3/worker/compat/{mutable-asset.js → mutable-asset.ts} +20 -19
  271. package/src/atlaspack-v3/worker/compat/{plugin-config.js → plugin-config.ts} +27 -26
  272. package/src/atlaspack-v3/worker/compat/{plugin-logger.js → plugin-logger.ts} +0 -2
  273. package/src/atlaspack-v3/worker/compat/{plugin-options.js → plugin-options.ts} +4 -5
  274. package/src/atlaspack-v3/worker/compat/{plugin-tracer.js → plugin-tracer.ts} +2 -2
  275. package/src/atlaspack-v3/worker/compat/{target.js → target.ts} +3 -4
  276. package/src/atlaspack-v3/worker/index.js +2 -1
  277. package/src/atlaspack-v3/worker/{worker.js → worker.ts} +102 -66
  278. package/src/{constants.js → constants.ts} +0 -3
  279. package/src/{dumpGraphToGraphViz.js → dumpGraphToGraphViz.ts} +73 -28
  280. package/src/index.ts +18 -0
  281. package/src/{loadAtlaspackPlugin.js → loadAtlaspackPlugin.ts} +8 -9
  282. package/src/{loadDotEnv.js → loadDotEnv.ts} +2 -2
  283. package/src/{projectPath.js → projectPath.ts} +20 -9
  284. package/src/public/{Asset.js → Asset.ts} +40 -27
  285. package/src/public/{Bundle.js → Bundle.ts} +28 -29
  286. package/src/public/{BundleGraph.js → BundleGraph.ts} +81 -50
  287. package/src/public/{BundleGroup.js → BundleGroup.ts} +7 -10
  288. package/src/public/{Config.js → Config.ts} +171 -33
  289. package/src/public/{Dependency.js → Dependency.ts} +20 -17
  290. package/src/public/{Environment.js → Environment.ts} +28 -17
  291. package/src/public/{MutableBundleGraph.js → MutableBundleGraph.ts} +55 -24
  292. package/src/public/{PluginOptions.js → PluginOptions.ts} +6 -6
  293. package/src/public/{Symbols.js → Symbols.ts} +75 -36
  294. package/src/public/{Target.js → Target.ts} +10 -8
  295. package/src/{registerCoreWithSerializer.js → registerCoreWithSerializer.ts} +9 -7
  296. package/src/requests/{AssetGraphRequest.js → AssetGraphRequest.ts} +84 -49
  297. package/src/requests/AssetGraphRequestRust.ts +352 -0
  298. package/src/requests/{AssetRequest.js → AssetRequest.ts} +24 -18
  299. package/src/requests/{AtlaspackBuildRequest.js → AtlaspackBuildRequest.ts} +46 -32
  300. package/src/requests/{AtlaspackConfigRequest.js → AtlaspackConfigRequest.ts} +72 -58
  301. package/src/requests/{BundleGraphRequest.js → BundleGraphRequest.ts} +71 -58
  302. package/src/requests/{ConfigRequest.js → ConfigRequest.ts} +71 -50
  303. package/src/requests/{DevDepRequest.js → DevDepRequest.ts} +60 -35
  304. package/src/requests/{EntryRequest.js → EntryRequest.ts} +36 -31
  305. package/src/requests/{PackageRequest.js → PackageRequest.ts} +20 -22
  306. package/src/requests/{PathRequest.js → PathRequest.ts} +47 -37
  307. package/src/requests/{TargetRequest.js → TargetRequest.ts} +260 -179
  308. package/src/requests/{ValidationRequest.js → ValidationRequest.ts} +18 -17
  309. package/src/requests/{WriteBundleRequest.js → WriteBundleRequest.ts} +77 -49
  310. package/src/requests/{WriteBundlesRequest.js → WriteBundlesRequest.ts} +109 -37
  311. package/src/requests/{asset-graph-diff.js → asset-graph-diff.ts} +25 -21
  312. package/src/requests/{asset-graph-dot.js → asset-graph-dot.ts} +8 -12
  313. package/src/{resolveOptions.js → resolveOptions.ts} +56 -24
  314. package/src/{rustWorkerThreadDylibHack.js → rustWorkerThreadDylibHack.ts} +1 -4
  315. package/src/{serializerCore.browser.js → serializerCore.browser.ts} +2 -3
  316. package/src/{summarizeRequest.js → summarizeRequest.ts} +17 -5
  317. package/src/types.ts +647 -0
  318. package/src/{utils.js → utils.ts} +52 -21
  319. package/src/{worker.js → worker.ts} +49 -41
  320. package/test/{AssetGraph.test.js → AssetGraph.test.ts} +37 -8
  321. package/test/{Atlaspack.test.js → Atlaspack.test.ts} +5 -10
  322. package/test/{AtlaspackConfig.test.js → AtlaspackConfig.test.ts} +0 -5
  323. package/test/{AtlaspackConfigRequest.test.js → AtlaspackConfigRequest.test.ts} +75 -15
  324. package/test/{BundleGraph.test.js → BundleGraph.test.ts} +8 -13
  325. package/test/{Dependency.test.js → Dependency.test.ts} +2 -3
  326. package/test/{EntryRequest.test.js → EntryRequest.test.ts} +1 -6
  327. package/test/Environment.test.ts +153 -0
  328. package/test/EnvironmentManager.test.ts +188 -0
  329. package/test/{IdentifierRegistry.test.js → IdentifierRegistry.test.ts} +2 -4
  330. package/test/{InternalAsset.test.js → InternalAsset.test.ts} +2 -7
  331. package/test/PackagerRunner.test.ts +0 -0
  332. package/test/{PublicAsset.test.js → PublicAsset.test.ts} +2 -7
  333. package/test/{PublicBundle.test.js → PublicBundle.test.ts} +1 -2
  334. package/test/{PublicDependency.test.js → PublicDependency.test.ts} +0 -2
  335. package/test/PublicEnvironment.test.ts +49 -0
  336. package/test/{PublicMutableBundleGraph.test.js → PublicMutableBundleGraph.test.ts} +6 -11
  337. package/test/{RequestTracker.test.js → RequestTracker.test.ts} +314 -59
  338. package/test/{SymbolPropagation.test.js → SymbolPropagation.test.ts} +124 -74
  339. package/test/{TargetRequest.test.js → TargetRequest.test.ts} +66 -92
  340. package/test/fixtures/config-with-reporters/.parcelrc +7 -0
  341. package/test/fixtures/custom-targets/package.json +6 -0
  342. package/test/public/Config.test.ts +104 -0
  343. package/test/requests/{AssetGraphRequestRust.test.js → AssetGraphRequestRust.test.ts} +164 -134
  344. package/test/requests/{ConfigRequest.test.js → ConfigRequest.test.ts} +202 -13
  345. package/test/requests/{DevDepRequest.test.js → DevDepRequest.test.ts} +0 -2
  346. package/test/{test-utils.js → test-utils.ts} +4 -11
  347. package/test/{utils.test.js → utils.test.ts} +1 -3
  348. package/tsconfig.json +57 -0
  349. package/tsconfig.tsbuildinfo +1 -0
  350. package/index.d.ts +0 -30
  351. package/src/atlaspack-v3/AtlaspackV3.js +0 -87
  352. package/src/atlaspack-v3/jsCallable.js +0 -18
  353. package/src/index.js +0 -13
  354. package/src/requests/AssetGraphRequestRust.js +0 -263
  355. package/src/types.js +0 -600
  356. package/test/Environment.test.js +0 -119
  357. package/test/PackagerRunner.test.js +0 -27
  358. package/test/PublicEnvironment.test.js +0 -27
@@ -0,0 +1,493 @@
1
+ import type { ContentKey } from '@atlaspack/graph';
2
+ import type { ASTGenerator, BuildMode, Engines, EnvironmentContext, EnvMap, FilePath, Glob, LogLevel, Meta, DependencySpecifier, PackageName, ReporterEvent, SemverRange, ServerOptions, SourceType, Stats, TargetSourceMapOptions, ConfigResult, OutputFormat, TargetDescriptor, HMROptions, DetailedReportOptions, Symbol } from '@atlaspack/types';
3
+ import type { SharedReference } from '@atlaspack/workers';
4
+ import type { FileSystem } from '@atlaspack/fs';
5
+ import type { Cache } from '@atlaspack/cache';
6
+ import type { PackageManager } from '@atlaspack/package-manager';
7
+ import type { ProjectPath } from './projectPath';
8
+ import type { Event } from '@parcel/watcher';
9
+ import type { FeatureFlags } from '@atlaspack/feature-flags';
10
+ import type { BackendType } from '@parcel/watcher';
11
+ import type { EnvironmentRef } from './EnvironmentManager';
12
+ export type SetComplement<A, B extends A> = A extends B ? never : A;
13
+ export type Diff<T extends U, U extends object> = Pick<T, SetComplement<keyof T, keyof U>>;
14
+ export type AtlaspackPluginNode = {
15
+ packageName: PackageName;
16
+ resolveFrom: ProjectPath;
17
+ keyPath?: string;
18
+ };
19
+ export type ParcelPluginNode = AtlaspackPluginNode;
20
+ export type PureAtlaspackConfigPipeline = ReadonlyArray<AtlaspackPluginNode>;
21
+ export type ExtendableAtlaspackConfigPipeline = ReadonlyArray<AtlaspackPluginNode | '...'>;
22
+ export type ProcessedAtlaspackConfig = {
23
+ resolvers?: PureAtlaspackConfigPipeline;
24
+ transformers?: Partial<Record<Glob, ExtendableAtlaspackConfigPipeline>>;
25
+ bundler: ParcelPluginNode | null | undefined;
26
+ namers?: PureAtlaspackConfigPipeline;
27
+ runtimes?: PureAtlaspackConfigPipeline;
28
+ packagers?: Partial<Record<Glob, ParcelPluginNode>>;
29
+ optimizers?: Partial<Record<Glob, ExtendableAtlaspackConfigPipeline>>;
30
+ compressors?: Partial<Record<Glob, ExtendableAtlaspackConfigPipeline>>;
31
+ reporters?: PureAtlaspackConfigPipeline;
32
+ validators?: Partial<Record<Glob, ExtendableAtlaspackConfigPipeline>>;
33
+ filePath: ProjectPath;
34
+ resolveFrom?: ProjectPath;
35
+ };
36
+ export type Environment = {
37
+ id: string;
38
+ context: EnvironmentContext;
39
+ engines: Engines;
40
+ includeNodeModules: boolean | Array<PackageName> | Partial<Record<PackageName, boolean>>;
41
+ outputFormat: OutputFormat;
42
+ sourceType: SourceType;
43
+ isLibrary: boolean;
44
+ shouldOptimize: boolean;
45
+ shouldScopeHoist: boolean;
46
+ sourceMap: TargetSourceMapOptions | null | undefined;
47
+ loc: InternalSourceLocation | null | undefined;
48
+ unstableSingleFileOutput: boolean;
49
+ customEnv: EnvMap | null | undefined;
50
+ };
51
+ export type InternalSourceLocation = {
52
+ readonly filePath: ProjectPath;
53
+ /** inclusive */
54
+ readonly start: {
55
+ readonly line: number;
56
+ readonly column: number;
57
+ };
58
+ /** exclusive */
59
+ readonly end: {
60
+ readonly line: number;
61
+ readonly column: number;
62
+ };
63
+ };
64
+ export type Target = {
65
+ distEntry?: FilePath | null | undefined;
66
+ distDir: ProjectPath;
67
+ env: EnvironmentRef;
68
+ name: string;
69
+ publicUrl: string;
70
+ loc?: InternalSourceLocation | null | undefined;
71
+ pipeline?: string;
72
+ source?: FilePath | Array<FilePath>;
73
+ };
74
+ export declare const SpecifierType: {
75
+ readonly esm: 0;
76
+ readonly commonjs: 1;
77
+ readonly url: 2;
78
+ readonly custom: 3;
79
+ };
80
+ export declare const Priority: {
81
+ readonly sync: 0;
82
+ readonly parallel: 1;
83
+ readonly lazy: 2;
84
+ readonly conditional: 3;
85
+ };
86
+ export declare const ExportsCondition: {
87
+ readonly import: number;
88
+ readonly require: number;
89
+ readonly module: number;
90
+ readonly style: number;
91
+ readonly sass: number;
92
+ readonly less: number;
93
+ };
94
+ export type Dependency = {
95
+ id: string;
96
+ specifier: DependencySpecifier;
97
+ specifierType: (typeof SpecifierType)[keyof typeof SpecifierType];
98
+ priority: (typeof Priority)[keyof typeof Priority];
99
+ needsStableName: boolean;
100
+ bundleBehavior: (typeof BundleBehavior)[keyof typeof BundleBehavior] | null | undefined;
101
+ isEntry: boolean;
102
+ isOptional: boolean;
103
+ loc: InternalSourceLocation | null | undefined;
104
+ env: EnvironmentRef;
105
+ packageConditions?: number;
106
+ customPackageConditions?: Array<string>;
107
+ meta: Meta;
108
+ resolverMeta?: Meta | null | undefined;
109
+ resolverPriority?: (typeof Priority)[keyof typeof Priority];
110
+ target: Target | null | undefined;
111
+ sourceAssetId: string | null | undefined;
112
+ sourcePath: ProjectPath | null | undefined;
113
+ sourceAssetType?: string | null | undefined;
114
+ resolveFrom: ProjectPath | null | undefined;
115
+ range: SemverRange | null | undefined;
116
+ symbols: Map<Symbol, {
117
+ local: Symbol;
118
+ loc: InternalSourceLocation | null | undefined;
119
+ isWeak: boolean;
120
+ meta?: Meta | null | undefined;
121
+ }> | null | undefined;
122
+ pipeline?: string | null | undefined;
123
+ };
124
+ export declare const BundleBehavior: {
125
+ readonly inline: 0;
126
+ readonly isolated: 1;
127
+ readonly inlineIsolated: 2;
128
+ };
129
+ export declare const BundleBehaviorNames: Array<keyof typeof BundleBehavior>;
130
+ export type Asset = {
131
+ id: ContentKey;
132
+ committed: boolean;
133
+ filePath: ProjectPath;
134
+ query: string | null | undefined;
135
+ type: string;
136
+ dependencies: Map<string, Dependency>;
137
+ bundleBehavior: (typeof BundleBehavior)[keyof typeof BundleBehavior] | null | undefined;
138
+ isBundleSplittable: boolean;
139
+ isSource: boolean;
140
+ env: EnvironmentRef;
141
+ meta: Meta;
142
+ stats: Stats;
143
+ contentKey: string | null | undefined;
144
+ mapKey: string | null | undefined;
145
+ outputHash: string | null | undefined;
146
+ pipeline: string | null | undefined;
147
+ astKey: string | null | undefined;
148
+ astGenerator: ASTGenerator | null | undefined;
149
+ symbols: Map<Symbol, {
150
+ local: Symbol;
151
+ loc: InternalSourceLocation | null | undefined;
152
+ meta?: Meta | null | undefined;
153
+ }> | null | undefined;
154
+ sideEffects: boolean;
155
+ uniqueKey: string | null | undefined;
156
+ configPath?: ProjectPath;
157
+ plugin: PackageName | null | undefined;
158
+ configKeyPath?: string;
159
+ isLargeBlob?: boolean;
160
+ };
161
+ export type InternalGlob = ProjectPath;
162
+ export type InternalFile = {
163
+ readonly filePath: ProjectPath;
164
+ readonly hash?: string;
165
+ };
166
+ export type FileInvalidation = {
167
+ type: 'file';
168
+ filePath: ProjectPath;
169
+ };
170
+ export type EnvInvalidation = {
171
+ type: 'env';
172
+ key: string;
173
+ };
174
+ export type OptionInvalidation = {
175
+ type: 'option';
176
+ key: string;
177
+ };
178
+ export type RequestInvalidation = FileInvalidation | EnvInvalidation | OptionInvalidation;
179
+ export type InternalFileInvalidation = {
180
+ filePath: ProjectPath;
181
+ };
182
+ export type InternalGlobInvalidation = {
183
+ glob: InternalGlob;
184
+ };
185
+ export type InternalFileAboveInvalidation = {
186
+ fileName: string;
187
+ aboveFilePath: ProjectPath;
188
+ };
189
+ export type InternalFileCreateInvalidation = InternalFileInvalidation | InternalGlobInvalidation | InternalFileAboveInvalidation;
190
+ export type Invalidations = {
191
+ invalidateOnFileChange: Set<ProjectPath>;
192
+ invalidateOnFileCreate: Array<InternalFileCreateInvalidation>;
193
+ invalidateOnEnvChange: Set<string>;
194
+ invalidateOnOptionChange: Set<string>;
195
+ invalidateOnStartup: boolean;
196
+ invalidateOnBuild: boolean;
197
+ };
198
+ export type DevDepRequestRef = {
199
+ type: 'ref';
200
+ specifier: DependencySpecifier;
201
+ resolveFrom: ProjectPath;
202
+ hash: string;
203
+ };
204
+ export type DevDepRequest = {
205
+ specifier: DependencySpecifier;
206
+ resolveFrom: ProjectPath;
207
+ hash: string;
208
+ invalidateOnFileCreate: Array<InternalFileCreateInvalidation>;
209
+ invalidateOnFileChange: Set<ProjectPath>;
210
+ invalidateOnStartup: boolean;
211
+ additionalInvalidations?: Array<{
212
+ specifier: DependencySpecifier;
213
+ resolveFrom: ProjectPath;
214
+ range?: SemverRange | null | undefined;
215
+ }>;
216
+ };
217
+ declare type GlobPattern = string;
218
+ export type AtlaspackOptions = {
219
+ entries: Array<ProjectPath>;
220
+ config?: DependencySpecifier;
221
+ defaultConfig?: DependencySpecifier;
222
+ env: EnvMap;
223
+ parcelVersion: string;
224
+ targets: Array<string> | {
225
+ readonly [key: string]: TargetDescriptor;
226
+ } | null | undefined;
227
+ shouldDisableCache: boolean;
228
+ cacheDir: FilePath;
229
+ watchDir: FilePath;
230
+ watchIgnore?: Array<FilePath | GlobPattern>;
231
+ watchBackend?: BackendType;
232
+ mode: BuildMode;
233
+ hmrOptions: HMROptions | null | undefined;
234
+ shouldContentHash: boolean;
235
+ serveOptions: ServerOptions | false;
236
+ shouldBuildLazily: boolean;
237
+ lazyIncludes: RegExp[];
238
+ lazyExcludes: RegExp[];
239
+ shouldBundleIncrementally: boolean;
240
+ shouldAutoInstall: boolean;
241
+ logLevel: LogLevel;
242
+ projectRoot: FilePath;
243
+ shouldProfile: boolean;
244
+ shouldTrace: boolean;
245
+ shouldPatchConsole: boolean;
246
+ detailedReport?: DetailedReportOptions | null | undefined;
247
+ unstableFileInvalidations?: Array<Event>;
248
+ inputFS: FileSystem;
249
+ outputFS: FileSystem;
250
+ cache: Cache;
251
+ packageManager: PackageManager;
252
+ additionalReporters: Array<{
253
+ packageName: DependencySpecifier;
254
+ resolveFrom: ProjectPath;
255
+ }>;
256
+ instanceId: string;
257
+ readonly defaultTargetOptions: {
258
+ readonly shouldOptimize: boolean;
259
+ readonly shouldScopeHoist?: boolean;
260
+ readonly sourceMaps: boolean;
261
+ readonly publicUrl: string;
262
+ readonly distDir?: ProjectPath;
263
+ readonly engines?: Engines;
264
+ readonly outputFormat?: OutputFormat;
265
+ readonly isLibrary?: boolean;
266
+ };
267
+ readonly featureFlags: FeatureFlags;
268
+ };
269
+ export type ParcelOptions = AtlaspackOptions;
270
+ export type AssetNode = {
271
+ id: ContentKey;
272
+ readonly type: 'asset';
273
+ value: Asset;
274
+ usedSymbols: Set<Symbol>;
275
+ hasDeferred?: boolean;
276
+ usedSymbolsDownDirty: boolean;
277
+ usedSymbolsUpDirty: boolean;
278
+ requested?: boolean;
279
+ };
280
+ export type DependencyNode = {
281
+ id: ContentKey;
282
+ type: 'dependency';
283
+ value: Dependency;
284
+ complete?: boolean;
285
+ correspondingRequest?: string;
286
+ deferred: boolean;
287
+ /** dependency was deferred (= no used symbols (in immediate parents) & side-effect free) */
288
+ hasDeferred?: boolean;
289
+ usedSymbolsDown: Set<Symbol>;
290
+ /**
291
+ * a requested symbol -> either
292
+ * - if ambiguous (e.g. dependency to asset group with both CSS modules and JS asset): undefined
293
+ * - if external: null
294
+ * - the asset it resolved to, and the potentially renamed export name
295
+ */
296
+ usedSymbolsUp: Map<Symbol, {
297
+ asset: ContentKey;
298
+ symbol: Symbol | null | undefined;
299
+ } | undefined | null>;
300
+ usedSymbolsDownDirty: boolean;
301
+ /**
302
+ * In the down pass, `usedSymbolsDown` changed. This needs to be propagated to the resolutionAsset
303
+ * in the up pass.
304
+ */
305
+ usedSymbolsUpDirtyDown: boolean;
306
+ /**
307
+ * In the up pass, `usedSymbolsUp` changed. This needs to be propagated to the sourceAsset in the
308
+ * up pass.
309
+ */
310
+ usedSymbolsUpDirtyUp: boolean;
311
+ /** dependency was excluded (= no used symbols (globally) & side-effect free) */
312
+ excluded: boolean;
313
+ };
314
+ export type RootNode = {
315
+ id: ContentKey;
316
+ readonly type: 'root';
317
+ value: string | null;
318
+ };
319
+ export type AssetRequestInput = {
320
+ name?: string;
321
+ filePath: ProjectPath;
322
+ env: EnvironmentRef;
323
+ isSource?: boolean;
324
+ canDefer?: boolean;
325
+ sideEffects?: boolean;
326
+ runtimeAssetRequiringExecutionOnLoad?: boolean;
327
+ code?: string;
328
+ pipeline?: string | null | undefined;
329
+ optionsRef: SharedReference;
330
+ isURL?: boolean;
331
+ query?: string | null | undefined;
332
+ isSingleChangeRebuild?: boolean;
333
+ };
334
+ export type AssetRequestResult = Array<Asset>;
335
+ export type AssetGroup = Partial<Diff<AssetRequestInput, {
336
+ optionsRef: SharedReference;
337
+ }>>;
338
+ export type AssetGroupNode = {
339
+ id: ContentKey;
340
+ readonly type: 'asset_group';
341
+ value: AssetGroup;
342
+ correspondingRequest?: string;
343
+ /** this node was deferred (= no used symbols (in immediate parents) & side-effect free) */
344
+ deferred?: boolean;
345
+ hasDeferred?: boolean;
346
+ usedSymbolsDownDirty: boolean;
347
+ };
348
+ export type TransformationRequest = AssetGroup & {
349
+ invalidateReason: number;
350
+ devDeps: Map<PackageName, string>;
351
+ invalidDevDeps: Array<{
352
+ specifier: DependencySpecifier;
353
+ resolveFrom: ProjectPath;
354
+ }>;
355
+ };
356
+ export type DepPathRequestNode = {
357
+ id: ContentKey;
358
+ readonly type: 'dep_path_request';
359
+ value: Dependency;
360
+ };
361
+ export type AssetRequestNode = {
362
+ id: ContentKey;
363
+ readonly type: 'asset_request';
364
+ value: AssetRequestInput;
365
+ };
366
+ export type EntrySpecifierNode = {
367
+ id: ContentKey;
368
+ readonly type: 'entry_specifier';
369
+ value: ProjectPath;
370
+ correspondingRequest?: string;
371
+ };
372
+ export type Entry = {
373
+ filePath: ProjectPath;
374
+ packagePath: ProjectPath;
375
+ target?: string;
376
+ loc?: InternalSourceLocation | null | undefined;
377
+ };
378
+ export type EntryFileNode = {
379
+ id: ContentKey;
380
+ readonly type: 'entry_file';
381
+ value: Entry;
382
+ correspondingRequest?: string;
383
+ };
384
+ export type AssetGraphNode = AssetGroupNode | AssetNode | DependencyNode | EntrySpecifierNode | EntryFileNode | RootNode;
385
+ export type BundleGraphNode = AssetNode | DependencyNode | EntrySpecifierNode | EntryFileNode | RootNode | BundleGroupNode | BundleNode;
386
+ export type InternalDevDepOptions = {
387
+ specifier: DependencySpecifier;
388
+ resolveFrom: ProjectPath;
389
+ range?: SemverRange | null | undefined;
390
+ additionalInvalidations?: Array<{
391
+ specifier: DependencySpecifier;
392
+ resolveFrom: ProjectPath;
393
+ range?: SemverRange | null | undefined;
394
+ }>;
395
+ };
396
+ export type Config = {
397
+ id: string;
398
+ isSource: boolean;
399
+ searchPath: ProjectPath;
400
+ env: EnvironmentRef;
401
+ cacheKey: string | null | undefined;
402
+ result: ConfigResult;
403
+ invalidateOnFileChange: Set<ProjectPath>;
404
+ invalidateOnConfigKeyChange: Array<{
405
+ filePath: ProjectPath;
406
+ configKey: string[];
407
+ }>;
408
+ invalidateOnFileCreate: Array<InternalFileCreateInvalidation>;
409
+ invalidateOnEnvChange: Set<string>;
410
+ invalidateOnOptionChange: Set<string>;
411
+ devDeps: Array<InternalDevDepOptions>;
412
+ invalidateOnStartup: boolean;
413
+ invalidateOnBuild: boolean;
414
+ };
415
+ export type EntryRequest = {
416
+ specifier: DependencySpecifier;
417
+ result?: ProjectPath;
418
+ };
419
+ export type EntryRequestNode = {
420
+ id: ContentKey;
421
+ readonly type: 'entry_request';
422
+ value: string;
423
+ };
424
+ export type TargetRequestNode = {
425
+ id: ContentKey;
426
+ readonly type: 'target_request';
427
+ value: ProjectPath;
428
+ };
429
+ export type CacheEntry = {
430
+ filePath: ProjectPath;
431
+ env: Environment;
432
+ hash: string;
433
+ assets: Array<Asset>;
434
+ initialAssets: Array<Asset> | null | undefined;
435
+ };
436
+ export type Bundle = {
437
+ id: ContentKey;
438
+ publicId: string | null | undefined;
439
+ hashReference: string;
440
+ type: string;
441
+ env: EnvironmentRef;
442
+ entryAssetIds: Array<ContentKey>;
443
+ mainEntryId: ContentKey | null | undefined;
444
+ needsStableName: boolean | null | undefined;
445
+ bundleBehavior: (typeof BundleBehavior)[keyof typeof BundleBehavior] | null | undefined;
446
+ isSplittable: boolean | null | undefined;
447
+ isPlaceholder?: boolean;
448
+ target: Target;
449
+ name: string | null | undefined;
450
+ displayName: string | null | undefined;
451
+ pipeline: string | null | undefined;
452
+ manualSharedBundle?: string | null | undefined;
453
+ conditions?: Map<string, string>;
454
+ };
455
+ export type BundleNode = {
456
+ id: ContentKey;
457
+ readonly type: 'bundle';
458
+ value: Bundle;
459
+ };
460
+ export type BundleGroup = {
461
+ target: Target;
462
+ entryAssetId: string;
463
+ };
464
+ export type BundleGroupNode = {
465
+ id: ContentKey;
466
+ readonly type: 'bundle_group';
467
+ value: BundleGroup;
468
+ };
469
+ export type PackagedBundleInfo = {
470
+ filePath: ProjectPath;
471
+ bundleId: ContentKey;
472
+ type: string;
473
+ stats: Stats;
474
+ };
475
+ export type TransformationOpts = {
476
+ request: AssetGroup;
477
+ optionsRef: SharedReference;
478
+ configCachePath: string;
479
+ };
480
+ export type ValidationOpts = {
481
+ requests: AssetGroup[];
482
+ optionsRef: SharedReference;
483
+ configCachePath: string;
484
+ };
485
+ export type ReportFn = (event: ReporterEvent) => undefined | Promise<undefined>;
486
+ export type Condition = {
487
+ publicId: string;
488
+ assets: Set<Asset>;
489
+ key: string;
490
+ ifTrueDependency: Dependency;
491
+ ifFalseDependency: Dependency;
492
+ };
493
+ export {};
@@ -0,0 +1,23 @@
1
+ import type { FilePath, FileCreateInvalidation, SourceLocation } from '@atlaspack/types';
2
+ import type { BundleGroup, AtlaspackOptions, InternalFileCreateInvalidation, InternalSourceLocation, InternalDevDepOptions, Invalidations } from './types';
3
+ export type SetComplement<A, B extends A> = A extends B ? never : A;
4
+ export type Diff<T extends U, U extends object> = Pick<T, SetComplement<keyof T, keyof U>>;
5
+ export declare function getBundleGroupId(bundleGroup: BundleGroup): string;
6
+ export declare function assertSignalNotAborted(signal?: AbortSignal | null): void;
7
+ export declare class BuildAbortError extends Error {
8
+ name: string;
9
+ }
10
+ export declare function getPublicId(id: string, alreadyExists: (arg1: string) => boolean): string;
11
+ export declare function optionsProxy(options: AtlaspackOptions, invalidateOnOptionChange: (arg1: string) => void, addDevDependency?: (devDep: InternalDevDepOptions) => void): AtlaspackOptions;
12
+ export declare function hashFromOption(value: unknown): string;
13
+ export declare function invalidateOnFileCreateToInternal(projectRoot: FilePath, invalidation: FileCreateInvalidation): InternalFileCreateInvalidation;
14
+ export declare function createInvalidations(): Invalidations;
15
+ export declare function fromInternalSourceLocation(projectRoot: FilePath, loc?: InternalSourceLocation | null): SourceLocation | null | undefined;
16
+ export declare function toInternalSourceLocation(projectRoot: FilePath, loc?: SourceLocation | null): InternalSourceLocation | null | undefined;
17
+ export declare function toInternalSymbols<T extends {
18
+ loc: SourceLocation | null | undefined;
19
+ }>(projectRoot: FilePath, symbols?: Map<symbol, T> | null): Map<symbol, {
20
+ loc: InternalSourceLocation | null | undefined;
21
+ } & Partial<Diff<T, {
22
+ loc: SourceLocation | null | undefined;
23
+ }>>> | null | undefined;
@@ -0,0 +1,44 @@
1
+ import type { Bundle, AtlaspackOptions, RequestInvalidation } from './types';
2
+ import type { SharedReference, WorkerApi } from '@atlaspack/workers';
3
+ import type { DevDepSpecifier } from './requests/DevDepRequest';
4
+ import { TransformationOpts, TransformationResult } from './Transformation';
5
+ import { RunPackagerRunnerResult } from './PackagerRunner';
6
+ import { ValidationOpts } from './Validation';
7
+ import '@atlaspack/cache';
8
+ import '@atlaspack/package-manager';
9
+ import '@atlaspack/fs';
10
+ export type SetComplement<A, B extends A> = A extends B ? never : A;
11
+ export type Diff<T extends U, U extends object> = Pick<T, SetComplement<keyof T, keyof U>>;
12
+ type WorkerTransformationOpts = Diff<TransformationOpts, {
13
+ workerApi: unknown;
14
+ options: AtlaspackOptions;
15
+ }> & {
16
+ optionsRef: SharedReference;
17
+ configCachePath: string;
18
+ };
19
+ type WorkerValidationOpts = Diff<ValidationOpts, {
20
+ workerApi: unknown;
21
+ options: AtlaspackOptions;
22
+ }> & {
23
+ optionsRef: SharedReference;
24
+ configCachePath: string;
25
+ };
26
+ export declare function clearWorkerBuildCaches(): void;
27
+ export declare function runTransform(workerApi: WorkerApi, opts: WorkerTransformationOpts): Promise<TransformationResult>;
28
+ export declare function runValidate(workerApi: WorkerApi, opts: WorkerValidationOpts): Promise<void>;
29
+ export declare function runPackage(workerApi: WorkerApi, { bundle, bundleGraphReference, configCachePath, optionsRef, previousDevDeps, invalidDevDeps, previousInvalidations, }: {
30
+ bundle: Bundle;
31
+ bundleGraphReference: SharedReference;
32
+ configCachePath: string;
33
+ optionsRef: SharedReference;
34
+ previousDevDeps: Map<string, string>;
35
+ invalidDevDeps: Array<DevDepSpecifier>;
36
+ previousInvalidations: Array<RequestInvalidation>;
37
+ }): Promise<RunPackagerRunnerResult>;
38
+ export declare function childInit(): Promise<void>;
39
+ export declare function invalidateRequireCache(workerApi: WorkerApi, file: string): void;
40
+ /**
41
+ * This is used to wait until workers are responding to messages.
42
+ */
43
+ export declare function ping(): boolean;
44
+ export {};
package/lib/types.js CHANGED
@@ -4,6 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.SpecifierType = exports.Priority = exports.ExportsCondition = exports.BundleBehaviorNames = exports.BundleBehavior = void 0;
7
+ // flow-to-ts helpers
8
+
9
+ // /flow-to-ts helpers
10
+
7
11
  const SpecifierType = exports.SpecifierType = {
8
12
  esm: 0,
9
13
  commonjs: 1,
@@ -28,8 +32,11 @@ const ExportsCondition = exports.ExportsCondition = {
28
32
  };
29
33
  const BundleBehavior = exports.BundleBehavior = {
30
34
  inline: 0,
31
- isolated: 1
35
+ isolated: 1,
36
+ inlineIsolated: 2
32
37
  };
38
+
39
+ // @ts-expect-error TS2322
33
40
  const BundleBehaviorNames = exports.BundleBehaviorNames = Object.keys(BundleBehavior);
34
41
 
35
42
  // Asset group nodes are essentially used as placeholders for the results of an asset request
package/lib/utils.js CHANGED
@@ -37,6 +37,10 @@ function _utils() {
37
37
  }
38
38
  var _projectPath = require("./projectPath");
39
39
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
40
+ // flow-to-ts helpers
41
+
42
+ // /flow-to-ts helpers
43
+
40
44
  const base62 = (0, _baseX().default)('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
41
45
  function getBundleGroupId(bundleGroup) {
42
46
  return 'bundle_group:' + bundleGroup.target.name + bundleGroup.entryAssetId;
@@ -75,6 +79,8 @@ function optionsProxy(options, invalidateOnOptionChange, addDevDependency) {
75
79
  if (!ignoreOptions.has(prop)) {
76
80
  invalidateOnOptionChange(prop);
77
81
  }
82
+
83
+ // @ts-expect-error TS7053
78
84
  return target[prop];
79
85
  }
80
86
  });
@@ -94,30 +100,39 @@ function proxyPackageManager(projectRoot, packageManager, addDevDependency) {
94
100
  return require;
95
101
  }
96
102
 
97
- // $FlowFixMe
103
+ // @ts-expect-error TS7053
98
104
  return target[prop];
99
105
  }
100
106
  });
101
107
  }
102
108
  function hashFromOption(value) {
103
109
  if (typeof value === 'object' && value != null) {
110
+ // @ts-expect-error TS2345
104
111
  return (0, _utils().hashObject)(value);
105
112
  }
106
113
  return String(value);
107
114
  }
108
115
  function invalidateOnFileCreateToInternal(projectRoot, invalidation) {
116
+ // @ts-expect-error TS2339
109
117
  if (invalidation.glob != null) {
118
+ // @ts-expect-error TS2339
110
119
  return {
111
120
  glob: (0, _projectPath.toProjectPath)(projectRoot, invalidation.glob)
112
121
  };
122
+ // @ts-expect-error TS2339
113
123
  } else if (invalidation.filePath != null) {
114
124
  return {
125
+ // @ts-expect-error TS2339
115
126
  filePath: (0, _projectPath.toProjectPath)(projectRoot, invalidation.filePath)
116
127
  };
117
128
  } else {
118
- (0, _assert().default)(invalidation.aboveFilePath != null && invalidation.fileName != null);
129
+ (0, _assert().default)(
130
+ // @ts-expect-error TS2339
131
+ invalidation.aboveFilePath != null && invalidation.fileName != null);
119
132
  return {
133
+ // @ts-expect-error TS2339
120
134
  fileName: invalidation.fileName,
135
+ // @ts-expect-error TS2339
121
136
  aboveFilePath: (0, _projectPath.toProjectPath)(projectRoot, invalidation.aboveFilePath)
122
137
  };
123
138
  }