@atlaspack/core 2.16.2-canary.37 → 2.16.2-canary.371

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 (367) hide show
  1. package/CHANGELOG.md +941 -0
  2. package/dist/AssetGraph.js +591 -0
  3. package/dist/Atlaspack.js +666 -0
  4. package/dist/AtlaspackConfig.js +324 -0
  5. package/dist/AtlaspackConfig.schema.js +117 -0
  6. package/dist/BundleGraph.js +1740 -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 +514 -0
  19. package/dist/UncommittedAsset.js +315 -0
  20. package/dist/Validation.js +196 -0
  21. package/dist/applyRuntimes.js +383 -0
  22. package/dist/assetUtils.js +169 -0
  23. package/dist/atlaspack-v3/AtlaspackV3.js +74 -0
  24. package/dist/atlaspack-v3/NapiWorkerPool.js +81 -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 +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 +25 -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-logger.js +26 -0
  36. package/dist/atlaspack-v3/worker/compat/plugin-options.js +137 -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/side-effect-detector.js +243 -0
  40. package/dist/atlaspack-v3/worker/worker.js +381 -0
  41. package/dist/constants.js +17 -0
  42. package/dist/dumpGraphToGraphViz.js +281 -0
  43. package/dist/index.js +62 -0
  44. package/dist/loadAtlaspackPlugin.js +128 -0
  45. package/dist/loadDotEnv.js +41 -0
  46. package/dist/projectPath.js +83 -0
  47. package/dist/public/Asset.js +279 -0
  48. package/dist/public/Bundle.js +224 -0
  49. package/dist/public/BundleGraph.js +371 -0
  50. package/dist/public/BundleGroup.js +53 -0
  51. package/dist/public/Config.js +286 -0
  52. package/dist/public/Dependency.js +138 -0
  53. package/dist/public/Environment.js +278 -0
  54. package/dist/public/MutableBundleGraph.js +277 -0
  55. package/dist/public/PluginOptions.js +80 -0
  56. package/dist/public/Symbols.js +248 -0
  57. package/dist/public/Target.js +69 -0
  58. package/dist/registerCoreWithSerializer.js +38 -0
  59. package/dist/requests/AssetGraphRequest.js +439 -0
  60. package/dist/requests/AssetGraphRequestRust.js +273 -0
  61. package/dist/requests/AssetRequest.js +130 -0
  62. package/dist/requests/AtlaspackBuildRequest.js +92 -0
  63. package/dist/requests/AtlaspackConfigRequest.js +493 -0
  64. package/dist/requests/BundleGraphRequest.js +447 -0
  65. package/dist/requests/ConfigRequest.js +246 -0
  66. package/dist/requests/DevDepRequest.js +204 -0
  67. package/dist/requests/EntryRequest.js +314 -0
  68. package/dist/requests/PackageRequest.js +72 -0
  69. package/dist/requests/PathRequest.js +349 -0
  70. package/dist/requests/TargetRequest.js +1311 -0
  71. package/dist/requests/ValidationRequest.js +49 -0
  72. package/dist/requests/WriteBundleRequest.js +254 -0
  73. package/dist/requests/WriteBundlesRequest.js +184 -0
  74. package/dist/requests/asset-graph-diff.js +128 -0
  75. package/dist/requests/asset-graph-dot.js +131 -0
  76. package/dist/resolveOptions.js +269 -0
  77. package/dist/rustWorkerThreadDylibHack.js +19 -0
  78. package/dist/serializerCore.browser.js +43 -0
  79. package/dist/summarizeRequest.js +39 -0
  80. package/dist/types.js +31 -0
  81. package/dist/utils.js +172 -0
  82. package/dist/worker.js +123 -0
  83. package/lib/AssetGraph.js +111 -14
  84. package/lib/Atlaspack.js +94 -41
  85. package/lib/AtlaspackConfig.js +15 -3
  86. package/lib/AtlaspackConfig.schema.js +16 -5
  87. package/lib/BundleGraph.js +197 -32
  88. package/lib/CommittedAsset.js +7 -1
  89. package/lib/Dependency.js +8 -2
  90. package/lib/Environment.js +15 -8
  91. package/lib/EnvironmentManager.js +143 -0
  92. package/lib/IdentifierRegistry.js +1 -3
  93. package/lib/InternalConfig.js +3 -2
  94. package/lib/PackagerRunner.js +90 -27
  95. package/lib/ReporterRunner.js +6 -9
  96. package/lib/RequestTracker.js +266 -156
  97. package/lib/SymbolPropagation.js +42 -18
  98. package/lib/TargetDescriptor.schema.js +7 -1
  99. package/lib/Transformation.js +66 -15
  100. package/lib/UncommittedAsset.js +33 -12
  101. package/lib/Validation.js +18 -2
  102. package/lib/applyRuntimes.js +96 -4
  103. package/lib/assetUtils.js +15 -5
  104. package/lib/atlaspack-v3/AtlaspackV3.js +52 -14
  105. package/lib/atlaspack-v3/NapiWorkerPool.js +28 -1
  106. package/lib/atlaspack-v3/fs.js +3 -1
  107. package/lib/atlaspack-v3/index.js +28 -1
  108. package/lib/atlaspack-v3/jsCallable.js +0 -2
  109. package/lib/atlaspack-v3/worker/compat/asset-symbols.js +7 -4
  110. package/lib/atlaspack-v3/worker/compat/bitflags.js +31 -25
  111. package/lib/atlaspack-v3/worker/compat/dependency.js +4 -1
  112. package/lib/atlaspack-v3/worker/compat/environment.js +10 -7
  113. package/lib/atlaspack-v3/worker/compat/mutable-asset.js +15 -10
  114. package/lib/atlaspack-v3/worker/compat/plugin-config.js +13 -34
  115. package/lib/atlaspack-v3/worker/compat/plugin-options.js +16 -0
  116. package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +3 -0
  117. package/lib/atlaspack-v3/worker/compat/target.js +2 -0
  118. package/lib/atlaspack-v3/worker/index.js +3 -0
  119. package/lib/atlaspack-v3/worker/side-effect-detector.js +215 -0
  120. package/lib/atlaspack-v3/worker/worker.js +199 -71
  121. package/lib/constants.js +0 -1
  122. package/lib/dumpGraphToGraphViz.js +71 -16
  123. package/lib/index.js +45 -1
  124. package/lib/loadDotEnv.js +4 -1
  125. package/lib/projectPath.js +5 -0
  126. package/lib/public/Asset.js +21 -11
  127. package/lib/public/Bundle.js +15 -16
  128. package/lib/public/BundleGraph.js +25 -22
  129. package/lib/public/BundleGroup.js +4 -5
  130. package/lib/public/Config.js +118 -17
  131. package/lib/public/Dependency.js +8 -6
  132. package/lib/public/Environment.js +12 -7
  133. package/lib/public/MutableBundleGraph.js +54 -12
  134. package/lib/public/PluginOptions.js +2 -2
  135. package/lib/public/Symbols.js +11 -11
  136. package/lib/public/Target.js +7 -6
  137. package/lib/registerCoreWithSerializer.js +5 -3
  138. package/lib/requests/AssetGraphRequest.js +74 -27
  139. package/lib/requests/AssetGraphRequestRust.js +140 -64
  140. package/lib/requests/AssetRequest.js +23 -6
  141. package/lib/requests/AtlaspackBuildRequest.js +43 -4
  142. package/lib/requests/AtlaspackConfigRequest.js +27 -16
  143. package/lib/requests/BundleGraphRequest.js +41 -24
  144. package/lib/requests/ConfigRequest.js +53 -4
  145. package/lib/requests/DevDepRequest.js +31 -5
  146. package/lib/requests/EntryRequest.js +2 -0
  147. package/lib/requests/PackageRequest.js +16 -2
  148. package/lib/requests/PathRequest.js +24 -3
  149. package/lib/requests/TargetRequest.js +122 -57
  150. package/lib/requests/ValidationRequest.js +5 -1
  151. package/lib/requests/WriteBundleRequest.js +39 -11
  152. package/lib/requests/WriteBundlesRequest.js +51 -4
  153. package/lib/requests/asset-graph-diff.js +12 -7
  154. package/lib/requests/asset-graph-dot.js +1 -7
  155. package/lib/resolveOptions.js +38 -11
  156. package/lib/rustWorkerThreadDylibHack.js +0 -1
  157. package/lib/types/AssetGraph.d.ts +80 -0
  158. package/lib/types/Atlaspack.d.ts +52 -0
  159. package/lib/types/AtlaspackConfig.d.ts +65 -0
  160. package/lib/types/AtlaspackConfig.schema.d.ts +53 -0
  161. package/lib/types/BundleGraph.d.ts +184 -0
  162. package/lib/types/CommittedAsset.d.ts +23 -0
  163. package/lib/types/Dependency.d.ts +44 -0
  164. package/lib/types/Environment.d.ts +11 -0
  165. package/lib/types/EnvironmentManager.d.ts +37 -0
  166. package/lib/types/IdentifierRegistry.d.ts +6 -0
  167. package/lib/types/InternalConfig.d.ts +23 -0
  168. package/lib/types/PackagerRunner.d.ts +85 -0
  169. package/lib/types/ReporterRunner.d.ts +25 -0
  170. package/lib/types/RequestTracker.d.ts +385 -0
  171. package/lib/types/SymbolPropagation.d.ts +11 -0
  172. package/lib/types/TargetDescriptor.schema.d.ts +5 -0
  173. package/lib/types/Transformation.d.ts +72 -0
  174. package/lib/types/UncommittedAsset.d.ts +61 -0
  175. package/lib/types/Validation.d.ts +37 -0
  176. package/lib/types/applyRuntimes.d.ts +25 -0
  177. package/lib/types/assetUtils.d.ts +42 -0
  178. package/lib/types/atlaspack-v3/AtlaspackV3.d.ts +34 -0
  179. package/lib/types/atlaspack-v3/NapiWorkerPool.d.ts +13 -0
  180. package/lib/types/atlaspack-v3/fs.d.ts +12 -0
  181. package/lib/types/atlaspack-v3/index.d.ts +6 -0
  182. package/lib/types/atlaspack-v3/jsCallable.d.ts +1 -0
  183. package/lib/types/atlaspack-v3/worker/compat/asset-symbols.d.ts +51 -0
  184. package/lib/types/atlaspack-v3/worker/compat/bitflags.d.ts +14 -0
  185. package/lib/types/atlaspack-v3/worker/compat/dependency.d.ts +25 -0
  186. package/lib/types/atlaspack-v3/worker/compat/environment.d.ts +27 -0
  187. package/{src/atlaspack-v3/worker/compat/index.js → lib/types/atlaspack-v3/worker/compat/index.d.ts} +0 -1
  188. package/lib/types/atlaspack-v3/worker/compat/mutable-asset.d.ts +49 -0
  189. package/lib/types/atlaspack-v3/worker/compat/plugin-config.d.ts +29 -0
  190. package/lib/types/atlaspack-v3/worker/compat/plugin-logger.d.ts +9 -0
  191. package/lib/types/atlaspack-v3/worker/compat/plugin-options.d.ts +23 -0
  192. package/lib/types/atlaspack-v3/worker/compat/plugin-tracer.d.ts +5 -0
  193. package/lib/types/atlaspack-v3/worker/compat/target.d.ts +11 -0
  194. package/lib/types/atlaspack-v3/worker/side-effect-detector.d.ts +76 -0
  195. package/lib/types/atlaspack-v3/worker/worker.d.ts +80 -0
  196. package/lib/types/constants.d.ts +13 -0
  197. package/lib/types/dumpGraphToGraphViz.d.ts +10 -0
  198. package/lib/types/index.d.ts +8 -0
  199. package/lib/types/loadAtlaspackPlugin.d.ts +8 -0
  200. package/lib/types/loadDotEnv.d.ts +3 -0
  201. package/lib/types/projectPath.d.ts +19 -0
  202. package/lib/types/public/Asset.d.ts +74 -0
  203. package/lib/types/public/Bundle.d.ts +45 -0
  204. package/lib/types/public/BundleGraph.d.ts +72 -0
  205. package/lib/types/public/BundleGroup.d.ts +12 -0
  206. package/lib/types/public/Config.d.ts +75 -0
  207. package/lib/types/public/Dependency.d.ts +32 -0
  208. package/lib/types/public/Environment.d.ts +34 -0
  209. package/lib/types/public/MutableBundleGraph.d.ts +26 -0
  210. package/lib/types/public/PluginOptions.d.ts +25 -0
  211. package/lib/types/public/Symbols.d.ts +81 -0
  212. package/lib/types/public/Target.d.ts +16 -0
  213. package/lib/types/registerCoreWithSerializer.d.ts +2 -0
  214. package/lib/types/requests/AssetGraphRequest.d.ts +76 -0
  215. package/lib/types/requests/AssetGraphRequestRust.d.ts +21 -0
  216. package/lib/types/requests/AssetRequest.d.ts +16 -0
  217. package/lib/types/requests/AtlaspackBuildRequest.d.ts +33 -0
  218. package/lib/types/requests/AtlaspackConfigRequest.d.ts +45 -0
  219. package/lib/types/requests/BundleGraphRequest.d.ts +28 -0
  220. package/lib/types/requests/ConfigRequest.d.ts +67 -0
  221. package/lib/types/requests/DevDepRequest.d.ts +30 -0
  222. package/lib/types/requests/EntryRequest.d.ts +36 -0
  223. package/lib/types/requests/PackageRequest.d.ts +27 -0
  224. package/lib/types/requests/PathRequest.d.ts +48 -0
  225. package/lib/types/requests/TargetRequest.d.ts +48 -0
  226. package/lib/types/requests/ValidationRequest.d.ts +20 -0
  227. package/lib/types/requests/WriteBundleRequest.d.ts +28 -0
  228. package/lib/types/requests/WriteBundlesRequest.d.ts +32 -0
  229. package/lib/types/requests/asset-graph-diff.d.ts +1 -0
  230. package/lib/types/requests/asset-graph-dot.d.ts +9 -0
  231. package/lib/types/resolveOptions.d.ts +3 -0
  232. package/lib/types/rustWorkerThreadDylibHack.d.ts +9 -0
  233. package/lib/types/serializerCore.browser.d.ts +3 -0
  234. package/lib/types/summarizeRequest.d.ts +10 -0
  235. package/lib/types/types.d.ts +495 -0
  236. package/lib/types/utils.d.ts +23 -0
  237. package/lib/types/worker.d.ts +44 -0
  238. package/lib/types.js +8 -1
  239. package/lib/utils.js +17 -2
  240. package/lib/worker.js +30 -14
  241. package/package.json +25 -35
  242. package/src/{AssetGraph.js → AssetGraph.ts} +156 -52
  243. package/src/{Atlaspack.js → Atlaspack.ts} +134 -67
  244. package/src/{AtlaspackConfig.schema.js → AtlaspackConfig.schema.ts} +25 -19
  245. package/src/{AtlaspackConfig.js → AtlaspackConfig.ts} +78 -54
  246. package/src/{BundleGraph.js → BundleGraph.ts} +383 -140
  247. package/src/{CommittedAsset.js → CommittedAsset.ts} +15 -13
  248. package/src/{Dependency.js → Dependency.ts} +59 -42
  249. package/src/{Environment.js → Environment.ts} +24 -15
  250. package/src/EnvironmentManager.ts +154 -0
  251. package/src/{IdentifierRegistry.js → IdentifierRegistry.ts} +1 -4
  252. package/src/{InternalConfig.js → InternalConfig.ts} +22 -23
  253. package/src/{PackagerRunner.js → PackagerRunner.ts} +179 -87
  254. package/src/{ReporterRunner.js → ReporterRunner.ts} +13 -18
  255. package/src/{RequestTracker.js → RequestTracker.ts} +572 -357
  256. package/src/{SymbolPropagation.js → SymbolPropagation.ts} +165 -57
  257. package/src/{TargetDescriptor.schema.js → TargetDescriptor.schema.ts} +7 -1
  258. package/src/{Transformation.js → Transformation.ts} +110 -65
  259. package/src/{UncommittedAsset.js → UncommittedAsset.ts} +60 -39
  260. package/src/{Validation.js → Validation.ts} +32 -17
  261. package/src/{applyRuntimes.js → applyRuntimes.ts} +133 -26
  262. package/src/{assetUtils.js → assetUtils.ts} +49 -36
  263. package/src/atlaspack-v3/AtlaspackV3.ts +143 -0
  264. package/src/atlaspack-v3/NapiWorkerPool.ts +91 -0
  265. package/src/atlaspack-v3/{fs.js → fs.ts} +3 -4
  266. package/src/atlaspack-v3/{index.js → index.ts} +3 -4
  267. package/src/atlaspack-v3/jsCallable.ts +14 -0
  268. package/src/atlaspack-v3/worker/compat/{asset-symbols.js → asset-symbols.ts} +40 -30
  269. package/src/atlaspack-v3/worker/compat/bitflags.ts +102 -0
  270. package/src/atlaspack-v3/worker/compat/{dependency.js → dependency.ts} +13 -13
  271. package/src/atlaspack-v3/worker/compat/{environment.js → environment.ts} +13 -9
  272. package/src/atlaspack-v3/worker/compat/index.ts +9 -0
  273. package/src/atlaspack-v3/worker/compat/{mutable-asset.js → mutable-asset.ts} +21 -20
  274. package/src/atlaspack-v3/worker/compat/{plugin-config.js → plugin-config.ts} +25 -56
  275. package/src/atlaspack-v3/worker/compat/{plugin-logger.js → plugin-logger.ts} +0 -2
  276. package/src/atlaspack-v3/worker/compat/{plugin-options.js → plugin-options.ts} +19 -5
  277. package/src/atlaspack-v3/worker/compat/{plugin-tracer.js → plugin-tracer.ts} +2 -2
  278. package/src/atlaspack-v3/worker/compat/{target.js → target.ts} +3 -4
  279. package/src/atlaspack-v3/worker/index.js +2 -1
  280. package/src/atlaspack-v3/worker/side-effect-detector.ts +298 -0
  281. package/src/atlaspack-v3/worker/worker.ts +531 -0
  282. package/src/{constants.js → constants.ts} +0 -3
  283. package/src/{dumpGraphToGraphViz.js → dumpGraphToGraphViz.ts} +73 -28
  284. package/src/index.ts +18 -0
  285. package/src/{loadAtlaspackPlugin.js → loadAtlaspackPlugin.ts} +8 -9
  286. package/src/{loadDotEnv.js → loadDotEnv.ts} +2 -2
  287. package/src/{projectPath.js → projectPath.ts} +20 -9
  288. package/src/public/{Asset.js → Asset.ts} +41 -28
  289. package/src/public/{Bundle.js → Bundle.ts} +28 -29
  290. package/src/public/{BundleGraph.js → BundleGraph.ts} +103 -68
  291. package/src/public/{BundleGroup.js → BundleGroup.ts} +7 -10
  292. package/src/public/{Config.js → Config.ts} +171 -33
  293. package/src/public/{Dependency.js → Dependency.ts} +20 -17
  294. package/src/public/{Environment.js → Environment.ts} +28 -17
  295. package/src/public/{MutableBundleGraph.js → MutableBundleGraph.ts} +55 -24
  296. package/src/public/{PluginOptions.js → PluginOptions.ts} +6 -6
  297. package/src/public/{Symbols.js → Symbols.ts} +75 -36
  298. package/src/public/{Target.js → Target.ts} +10 -8
  299. package/src/{registerCoreWithSerializer.js → registerCoreWithSerializer.ts} +9 -7
  300. package/src/requests/{AssetGraphRequest.js → AssetGraphRequest.ts} +129 -80
  301. package/src/requests/AssetGraphRequestRust.ts +364 -0
  302. package/src/requests/{AssetRequest.js → AssetRequest.ts} +24 -18
  303. package/src/requests/AtlaspackBuildRequest.ts +163 -0
  304. package/src/requests/{AtlaspackConfigRequest.js → AtlaspackConfigRequest.ts} +72 -58
  305. package/src/requests/{BundleGraphRequest.js → BundleGraphRequest.ts} +97 -79
  306. package/src/requests/{ConfigRequest.js → ConfigRequest.ts} +110 -50
  307. package/src/requests/{DevDepRequest.js → DevDepRequest.ts} +60 -35
  308. package/src/requests/{EntryRequest.js → EntryRequest.ts} +36 -31
  309. package/src/requests/{PackageRequest.js → PackageRequest.ts} +34 -22
  310. package/src/requests/{PathRequest.js → PathRequest.ts} +47 -37
  311. package/src/requests/{TargetRequest.js → TargetRequest.ts} +260 -179
  312. package/src/requests/{ValidationRequest.js → ValidationRequest.ts} +18 -17
  313. package/src/requests/{WriteBundleRequest.js → WriteBundleRequest.ts} +77 -49
  314. package/src/requests/{WriteBundlesRequest.js → WriteBundlesRequest.ts} +109 -37
  315. package/src/requests/{asset-graph-diff.js → asset-graph-diff.ts} +25 -21
  316. package/src/requests/{asset-graph-dot.js → asset-graph-dot.ts} +8 -12
  317. package/src/{resolveOptions.js → resolveOptions.ts} +59 -25
  318. package/src/{rustWorkerThreadDylibHack.js → rustWorkerThreadDylibHack.ts} +1 -4
  319. package/src/{serializerCore.browser.js → serializerCore.browser.ts} +2 -3
  320. package/src/{summarizeRequest.js → summarizeRequest.ts} +17 -5
  321. package/src/types.ts +650 -0
  322. package/src/{utils.js → utils.ts} +52 -21
  323. package/src/{worker.js → worker.ts} +50 -42
  324. package/test/{AssetGraph.test.js → AssetGraph.test.ts} +37 -8
  325. package/test/{Atlaspack.test.js → Atlaspack.test.ts} +5 -10
  326. package/test/{AtlaspackConfig.test.js → AtlaspackConfig.test.ts} +0 -5
  327. package/test/{AtlaspackConfigRequest.test.js → AtlaspackConfigRequest.test.ts} +76 -16
  328. package/test/{BundleGraph.test.js → BundleGraph.test.ts} +8 -13
  329. package/test/{Dependency.test.js → Dependency.test.ts} +2 -3
  330. package/test/{EntryRequest.test.js → EntryRequest.test.ts} +1 -6
  331. package/test/Environment.test.ts +153 -0
  332. package/test/EnvironmentManager.test.ts +188 -0
  333. package/test/{IdentifierRegistry.test.js → IdentifierRegistry.test.ts} +2 -4
  334. package/test/{InternalAsset.test.js → InternalAsset.test.ts} +2 -7
  335. package/test/PackagerRunner.test.ts +0 -0
  336. package/test/{PublicAsset.test.js → PublicAsset.test.ts} +2 -7
  337. package/test/{PublicBundle.test.js → PublicBundle.test.ts} +1 -2
  338. package/test/{PublicDependency.test.js → PublicDependency.test.ts} +0 -2
  339. package/test/PublicEnvironment.test.ts +49 -0
  340. package/test/{PublicMutableBundleGraph.test.js → PublicMutableBundleGraph.test.ts} +6 -11
  341. package/test/{RequestTracker.test.js → RequestTracker.test.ts} +314 -59
  342. package/test/{SymbolPropagation.test.js → SymbolPropagation.test.ts} +124 -74
  343. package/test/{TargetRequest.test.js → TargetRequest.test.ts} +66 -92
  344. package/test/fixtures/config-with-reporters/.parcelrc +7 -0
  345. package/test/fixtures/custom-targets/package.json +6 -0
  346. package/test/public/Config.test.ts +104 -0
  347. package/test/requests/AssetGraphRequestRust.test.ts +443 -0
  348. package/test/requests/{ConfigRequest.test.js → ConfigRequest.test.ts} +202 -13
  349. package/test/requests/{DevDepRequest.test.js → DevDepRequest.test.ts} +0 -2
  350. package/test/{test-utils.js → test-utils.ts} +4 -11
  351. package/test/{utils.test.js → utils.test.ts} +1 -3
  352. package/tsconfig.json +60 -0
  353. package/tsconfig.tsbuildinfo +1 -0
  354. package/index.d.ts +0 -30
  355. package/src/atlaspack-v3/AtlaspackV3.js +0 -87
  356. package/src/atlaspack-v3/NapiWorkerPool.js +0 -53
  357. package/src/atlaspack-v3/jsCallable.js +0 -18
  358. package/src/atlaspack-v3/worker/compat/bitflags.js +0 -100
  359. package/src/atlaspack-v3/worker/worker.js +0 -362
  360. package/src/index.js +0 -13
  361. package/src/requests/AssetGraphRequestRust.js +0 -263
  362. package/src/requests/AtlaspackBuildRequest.js +0 -111
  363. package/src/types.js +0 -600
  364. package/test/Environment.test.js +0 -119
  365. package/test/PackagerRunner.test.js +0 -27
  366. package/test/PublicEnvironment.test.js +0 -27
  367. package/test/requests/AssetGraphRequestRust.test.js +0 -411
@@ -0,0 +1,9 @@
1
+ export * from './bitflags';
2
+ export * from './dependency';
3
+ export * from './environment';
4
+ export * from './target';
5
+ export * from './plugin-config';
6
+ export * from './plugin-tracer';
7
+ export * from './plugin-logger';
8
+ export * from './plugin-options';
9
+ export * from './mutable-asset';
@@ -1,6 +1,4 @@
1
- // @flow
2
-
3
- import SourceMap from '@parcel/source-map';
1
+ import SourceMap from '@atlaspack/source-map';
4
2
  import * as napi from '@atlaspack/rust';
5
3
  import {Readable} from 'stream';
6
4
  import type {
@@ -21,39 +19,43 @@ import type {
21
19
  import {bundleBehaviorMap} from './bitflags';
22
20
  import {MutableAssetSymbols} from './asset-symbols';
23
21
 
22
+ // @ts-expect-error TS2694
24
23
  export type InnerAsset = napi.Asset;
25
24
 
26
25
  export class MutableAsset implements IMutableAsset {
27
- bundleBehavior: ?BundleBehavior;
26
+ bundleBehavior: BundleBehavior | null | undefined;
28
27
  env: Environment;
29
28
  filePath: FilePath;
30
29
  fs: FileSystem;
31
30
  id: string;
32
31
  isBundleSplittable: boolean;
32
+ // @ts-expect-error TS2564
33
33
  isMapDirty: boolean;
34
34
  isSource: boolean;
35
35
  meta: Meta;
36
- pipeline: ?string;
36
+ pipeline: string | null | undefined;
37
37
  query: URLSearchParams;
38
38
  sideEffects: boolean;
39
39
  stats: Stats;
40
+ // @ts-expect-error TS2416
40
41
  symbols: MutableAssetSymbols;
41
42
  type: string;
42
- uniqueKey: ?string;
43
+ uniqueKey: string | null | undefined;
43
44
 
44
45
  #astDirty: boolean;
45
- #ast: ?AST;
46
+ #ast: AST | null | undefined;
46
47
  #contents: Buffer;
47
48
  #inner: InnerAsset;
48
- #map: ?string;
49
+ #map: string | null | undefined;
49
50
  #projectRoot: string;
50
- #sourceMap: ?SourceMap;
51
+ #sourceMap: SourceMap | null | undefined;
51
52
 
52
- get astGenerator(): ?ASTGenerator {
53
+ get astGenerator(): ASTGenerator | null | undefined {
53
54
  throw new Error('get MutableAsset.astGenerator');
54
55
  }
55
56
 
56
- set astGenerator(value: ?ASTGenerator) {
57
+ // @ts-expect-error TS1051
58
+ set astGenerator(value?: ASTGenerator | null) {
57
59
  throw new Error('set MutableAsset.astGenerator');
58
60
  }
59
61
 
@@ -62,7 +64,7 @@ export class MutableAsset implements IMutableAsset {
62
64
  contents: Buffer,
63
65
  env: Environment,
64
66
  fs: FileSystem,
65
- map: ?string,
67
+ map: string | null | undefined,
66
68
  projectRoot: string,
67
69
  ) {
68
70
  this.bundleBehavior = bundleBehaviorMap.fromNullable(asset.bundleBehavior);
@@ -89,7 +91,7 @@ export class MutableAsset implements IMutableAsset {
89
91
  }
90
92
 
91
93
  // eslint-disable-next-line require-await
92
- async getAST(): Promise<?AST> {
94
+ async getAST(): Promise<AST | null | undefined> {
93
95
  return this.#ast;
94
96
  }
95
97
 
@@ -125,7 +127,7 @@ export class MutableAsset implements IMutableAsset {
125
127
  }
126
128
 
127
129
  setStream(stream: Readable): void {
128
- const data = [];
130
+ const data: Array<Buffer> = [];
129
131
 
130
132
  stream.on('data', (chunk) => {
131
133
  data.push(chunk);
@@ -140,11 +142,10 @@ export class MutableAsset implements IMutableAsset {
140
142
  });
141
143
  }
142
144
 
143
- getMap(): Promise<?SourceMap> {
145
+ getMap(): Promise<SourceMap | null | undefined> {
144
146
  // Only create the source map if it is requested
145
147
  if (!this.#sourceMap && this.#map && typeof this.#map === 'string') {
146
148
  let sourceMap = new SourceMap(this.#projectRoot);
147
- // $FlowFixMe Flow is dumb
148
149
  sourceMap.addVLQMap(JSON.parse(this.#map));
149
150
  this.#sourceMap = sourceMap;
150
151
  }
@@ -153,18 +154,18 @@ export class MutableAsset implements IMutableAsset {
153
154
  }
154
155
 
155
156
  // eslint-disable-next-line no-unused-vars
156
- setMap(sourceMap: ?SourceMap): void {
157
+ setMap(sourceMap?: SourceMap | null): void {
157
158
  this.isMapDirty = true;
158
159
  this.#sourceMap = sourceMap;
159
160
  }
160
161
 
161
- getMapBuffer(): Promise<?Buffer> {
162
+ getMapBuffer(): Promise<Buffer | null | undefined> {
162
163
  throw new Error(
163
164
  'getMapBuffer() is considered an internal implementation detail, please use getMap() instead',
164
165
  );
165
166
  }
166
167
 
167
- getDependencies(): $ReadOnlyArray<Dependency> {
168
+ getDependencies(): ReadonlyArray<Dependency> {
168
169
  throw new Error('MutableAsset.getDependencies');
169
170
  }
170
171
 
@@ -174,7 +175,7 @@ export class MutableAsset implements IMutableAsset {
174
175
  }
175
176
 
176
177
  // eslint-disable-next-line no-unused-vars
177
- addURLDependency(url: string, opts: $Shape<DependencyOptions>): string {
178
+ addURLDependency(url: string, opts: Partial<DependencyOptions>): string {
178
179
  throw new Error('MutableAsset.addURLDependency()');
179
180
  }
180
181
 
@@ -1,5 +1,3 @@
1
- // @flow
2
-
3
1
  import type {
4
2
  Config as IPluginConfig,
5
3
  DevDepOptions,
@@ -8,58 +6,25 @@ import type {
8
6
  FileCreateInvalidation,
9
7
  ConfigResultWithFilePath,
10
8
  PackageJSON,
11
- PackageManager as IPackageManager,
12
9
  } from '@atlaspack/types';
13
10
 
14
- import type {FileSystem as IFileSystem} from '@atlaspack/fs';
15
11
  import ClassicPublicConfig from '../../../public/Config';
16
-
17
- export type PluginConfigOptions = {|
18
- isSource: boolean,
19
- searchPath: FilePath,
20
- projectRoot: FilePath,
21
- env: Environment,
22
- fs: IFileSystem,
23
- packageManager: IPackageManager,
24
- |};
12
+ import {type ConfigOpts, createConfig} from '../../../InternalConfig';
25
13
 
26
14
  export class PluginConfig implements IPluginConfig {
27
15
  isSource: boolean;
28
16
  searchPath: FilePath;
29
- #projectRoot: FilePath;
30
17
  env: Environment;
31
18
  #inner: ClassicPublicConfig;
32
19
 
33
- constructor({
34
- env,
35
- isSource,
36
- searchPath,
37
- projectRoot,
38
- fs,
39
- packageManager,
40
- }: PluginConfigOptions) {
41
- this.env = env;
42
- this.isSource = isSource;
43
- this.searchPath = searchPath;
20
+ constructor(configOpts: ConfigOpts, options: any) {
21
+ let internalConfig = createConfig(configOpts);
44
22
 
45
- this.#inner = new ClassicPublicConfig(
46
- // $FlowFixMe
47
- {
48
- invalidateOnConfigKeyChange: [],
49
- invalidateOnFileCreate: [],
50
- invalidateOnFileChange: new Set(),
51
- devDeps: [],
52
- // $FlowFixMe
53
- searchPath: searchPath.replace(projectRoot + '/', ''),
54
- },
55
- // $FlowFixMe
56
- {
57
- projectRoot,
58
- inputFS: fs,
59
- outputFS: fs,
60
- packageManager,
61
- },
62
- );
23
+ this.isSource = internalConfig.isSource;
24
+ this.searchPath = internalConfig.searchPath;
25
+ // @ts-expect-error TS2564
26
+ this.env = internalConfig.env;
27
+ this.#inner = new ClassicPublicConfig(internalConfig, options);
63
28
  }
64
29
 
65
30
  // eslint-disable-next-line no-unused-vars
@@ -85,12 +50,12 @@ export class PluginConfig implements IPluginConfig {
85
50
  // eslint-disable-next-line no-unused-vars
86
51
  filePaths: Array<FilePath>,
87
52
  // eslint-disable-next-line no-unused-vars
88
- options?: {|
89
- packageKey?: string,
90
- parse?: boolean,
91
- exclude?: boolean,
92
- |},
93
- ): Promise<?ConfigResultWithFilePath<T>> {
53
+ options?: {
54
+ packageKey?: string;
55
+ parse?: boolean;
56
+ exclude?: boolean;
57
+ },
58
+ ): Promise<ConfigResultWithFilePath<T> | null | undefined> {
94
59
  return this.#inner.getConfig(filePaths, options);
95
60
  }
96
61
 
@@ -100,16 +65,20 @@ export class PluginConfig implements IPluginConfig {
100
65
  // eslint-disable-next-line no-unused-vars
101
66
  filePaths: Array<FilePath>,
102
67
  // eslint-disable-next-line no-unused-vars
103
- options?: {|
104
- packageKey?: string,
105
- parse?: boolean,
106
- exclude?: boolean,
107
- |},
108
- ): Promise<?ConfigResultWithFilePath<T>> {
68
+ options?:
69
+ | {
70
+ packageKey?: string;
71
+ parse?: boolean;
72
+ exclude?: boolean;
73
+ }
74
+ | {
75
+ readTracking?: boolean;
76
+ },
77
+ ): Promise<ConfigResultWithFilePath<T> | null | undefined> {
109
78
  return this.#inner.getConfigFrom(searchPath, filePaths, options);
110
79
  }
111
80
 
112
- getPackage(): Promise<?PackageJSON> {
81
+ getPackage(): Promise<PackageJSON | null | undefined> {
113
82
  return this.#inner.getPackage();
114
83
  }
115
84
  }
@@ -1,5 +1,3 @@
1
- // @flow
2
-
3
1
  import type {PluginLogger as IPlguinLogger} from '@atlaspack/types';
4
2
  import type {
5
3
  Diagnostifiable,
@@ -1,5 +1,3 @@
1
- // @flow
2
-
3
1
  import type {
4
2
  PluginOptions as IPluginOptions,
5
3
  LogLevel,
@@ -16,6 +14,7 @@ import type {FeatureFlags} from '@atlaspack/feature-flags';
16
14
 
17
15
  export class PluginOptions implements IPluginOptions {
18
16
  #options: IPluginOptions;
17
+ used = false;
19
18
 
20
19
  get env(): EnvMap {
21
20
  if (!('env' in this.#options)) {
@@ -29,6 +28,7 @@ export class PluginOptions implements IPluginOptions {
29
28
  if (!('projectRoot' in this.#options)) {
30
29
  throw new Error('PluginOptions.projectRoot');
31
30
  }
31
+ this.used = true;
32
32
  return this.#options.projectRoot;
33
33
  }
34
34
 
@@ -36,6 +36,7 @@ export class PluginOptions implements IPluginOptions {
36
36
  if (!('packageManager' in this.#options)) {
37
37
  throw new Error('PluginOptions.packageManager');
38
38
  }
39
+ this.used = true;
39
40
  return this.#options.packageManager;
40
41
  }
41
42
 
@@ -43,6 +44,7 @@ export class PluginOptions implements IPluginOptions {
43
44
  if (!('mode' in this.#options)) {
44
45
  throw new Error('PluginOptions.mode');
45
46
  }
47
+ this.used = true;
46
48
  return this.#options.mode;
47
49
  }
48
50
 
@@ -51,13 +53,15 @@ export class PluginOptions implements IPluginOptions {
51
53
  return 'UNKNOWN VERSION';
52
54
  // throw new Error('PluginOptions.parcelVersion');
53
55
  }
56
+ this.used = true;
54
57
  return this.#options.parcelVersion;
55
58
  }
56
59
 
57
- get hmrOptions(): ?HMROptions {
60
+ get hmrOptions(): HMROptions | null | undefined {
58
61
  if (!('hmrOptions' in this.#options)) {
59
62
  throw new Error('PluginOptions.hmrOptions');
60
63
  }
64
+ this.used = true;
61
65
  return this.#options.hmrOptions;
62
66
  }
63
67
 
@@ -65,6 +69,7 @@ export class PluginOptions implements IPluginOptions {
65
69
  if (!('serveOptions' in this.#options)) {
66
70
  throw new Error('PluginOptions.serveOptions');
67
71
  }
72
+ this.used = true;
68
73
  return this.#options.serveOptions;
69
74
  }
70
75
 
@@ -72,6 +77,7 @@ export class PluginOptions implements IPluginOptions {
72
77
  if (!('shouldBuildLazily' in this.#options)) {
73
78
  throw new Error('PluginOptions.shouldBuildLazily');
74
79
  }
80
+ this.used = true;
75
81
  return this.#options.shouldBuildLazily;
76
82
  }
77
83
 
@@ -79,6 +85,7 @@ export class PluginOptions implements IPluginOptions {
79
85
  if (!('shouldAutoInstall' in this.#options)) {
80
86
  throw new Error('PluginOptions.shouldAutoInstall');
81
87
  }
88
+ this.used = true;
82
89
  return this.#options.shouldAutoInstall;
83
90
  }
84
91
 
@@ -93,6 +100,7 @@ export class PluginOptions implements IPluginOptions {
93
100
  if (!('cacheDir' in this.#options)) {
94
101
  throw new Error('PluginOptions.cacheDir');
95
102
  }
103
+ this.used = true;
96
104
  return this.#options.cacheDir;
97
105
  }
98
106
 
@@ -100,6 +108,7 @@ export class PluginOptions implements IPluginOptions {
100
108
  if (!('inputFS' in this.#options)) {
101
109
  throw new Error('PluginOptions.inputFS');
102
110
  }
111
+ this.used = true;
103
112
  return this.#options.inputFS;
104
113
  }
105
114
 
@@ -107,6 +116,7 @@ export class PluginOptions implements IPluginOptions {
107
116
  if (!('outputFS' in this.#options)) {
108
117
  throw new Error('PluginOptions.outputFS');
109
118
  }
119
+ this.used = true;
110
120
  return this.#options.outputFS;
111
121
  }
112
122
 
@@ -114,13 +124,15 @@ export class PluginOptions implements IPluginOptions {
114
124
  if (!('instanceId' in this.#options)) {
115
125
  throw new Error('PluginOptions.instanceId');
116
126
  }
127
+ this.used = true;
117
128
  return this.#options.instanceId;
118
129
  }
119
130
 
120
- get detailedReport(): ?DetailedReportOptions {
131
+ get detailedReport(): DetailedReportOptions | null | undefined {
121
132
  if (!('detailedReport' in this.#options)) {
122
133
  throw new Error('PluginOptions.detailedReport');
123
134
  }
135
+ this.used = true;
124
136
  return this.#options.detailedReport;
125
137
  }
126
138
 
@@ -128,10 +140,12 @@ export class PluginOptions implements IPluginOptions {
128
140
  if (!('featureFlags' in this.#options)) {
129
141
  throw new Error('PluginOptions.featureFlags');
130
142
  }
143
+ this.used = true;
131
144
  return this.#options.featureFlags;
132
145
  }
133
146
 
134
- constructor(options: $Partial<IPluginOptions>) {
147
+ constructor(options: Partial<IPluginOptions>) {
148
+ // @ts-expect-error TS2322
135
149
  this.#options = options;
136
150
  }
137
151
  }
@@ -1,10 +1,10 @@
1
- // @flow
2
-
3
1
  import type {PluginTracer as IPluginTracer} from '@atlaspack/types';
4
2
 
5
3
  export class PluginTracer implements IPluginTracer {
4
+ // @ts-expect-error TS2564
6
5
  enabled: false;
7
6
 
7
+ // @ts-expect-error TS2416
8
8
  createMeasurement() {
9
9
  throw new Error('PluginTracer.createMeasurement');
10
10
  }
@@ -1,5 +1,4 @@
1
- // @flow
2
-
1
+ // @ts-expect-error TS2305
3
2
  import type {Target as NapiTarget} from '@atlaspack/rust';
4
3
  import type {
5
4
  Target as ITarget,
@@ -9,12 +8,12 @@ import type {
9
8
  } from '@atlaspack/types';
10
9
 
11
10
  export class Target implements ITarget {
12
- distEntry: ?FilePath;
11
+ distEntry: FilePath | null | undefined;
13
12
  distDir: FilePath;
14
13
  env: Environment;
15
14
  name: string;
16
15
  publicUrl: string;
17
- loc: ?SourceLocation;
16
+ loc: SourceLocation | null | undefined;
18
17
 
19
18
  constructor(inner: NapiTarget, env: Environment) {
20
19
  this.distDir = inner.distDir;
@@ -1,5 +1,6 @@
1
1
  if (
2
- process.env.ATLASPACK_BUILD_ENV !== 'production' ||
2
+ process.env.ATLASPACK_SOURCES === 'true' ||
3
+ process.env.ATLASPACK_BUILD_ENV === 'test' ||
3
4
  process.env.ATLASPACK_SELF_BUILD
4
5
  ) {
5
6
  require('@atlaspack/babel-register');