@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
package/dist/index.js ADDED
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.EnvironmentManager = exports.Environment = exports.createEnvironment = exports.resolveOptions = exports.ATLASPACK_VERSION = exports.WORKER_PATH = exports.INTERNAL_TRANSFORM = exports.INTERNAL_RESOLVE = exports.createWorkerFarm = exports.BuildError = exports.Parcel = exports.Atlaspack = exports.default = void 0;
43
+ const EnvironmentManager = __importStar(require("./EnvironmentManager"));
44
+ exports.EnvironmentManager = EnvironmentManager;
45
+ var Atlaspack_1 = require("./Atlaspack");
46
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(Atlaspack_1).default; } });
47
+ Object.defineProperty(exports, "Atlaspack", { enumerable: true, get: function () { return __importDefault(Atlaspack_1).default; } });
48
+ Object.defineProperty(exports, "Parcel", { enumerable: true, get: function () { return __importDefault(Atlaspack_1).default; } });
49
+ Object.defineProperty(exports, "BuildError", { enumerable: true, get: function () { return Atlaspack_1.BuildError; } });
50
+ Object.defineProperty(exports, "createWorkerFarm", { enumerable: true, get: function () { return Atlaspack_1.createWorkerFarm; } });
51
+ Object.defineProperty(exports, "INTERNAL_RESOLVE", { enumerable: true, get: function () { return Atlaspack_1.INTERNAL_RESOLVE; } });
52
+ Object.defineProperty(exports, "INTERNAL_TRANSFORM", { enumerable: true, get: function () { return Atlaspack_1.INTERNAL_TRANSFORM; } });
53
+ Object.defineProperty(exports, "WORKER_PATH", { enumerable: true, get: function () { return Atlaspack_1.WORKER_PATH; } });
54
+ var constants_1 = require("./constants");
55
+ Object.defineProperty(exports, "ATLASPACK_VERSION", { enumerable: true, get: function () { return constants_1.ATLASPACK_VERSION; } });
56
+ var resolveOptions_1 = require("./resolveOptions");
57
+ Object.defineProperty(exports, "resolveOptions", { enumerable: true, get: function () { return __importDefault(resolveOptions_1).default; } });
58
+ var Environment_1 = require("./Environment");
59
+ Object.defineProperty(exports, "createEnvironment", { enumerable: true, get: function () { return Environment_1.createEnvironment; } });
60
+ var Environment_2 = require("./public/Environment");
61
+ Object.defineProperty(exports, "Environment", { enumerable: true, get: function () { return __importDefault(Environment_2).default; } });
62
+ __exportStar(require("./atlaspack-v3"), exports);
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.default = loadPlugin;
40
+ const path_1 = __importDefault(require("path"));
41
+ const nullthrows_1 = __importDefault(require("nullthrows"));
42
+ const diagnostic_1 = __importStar(require("@atlaspack/diagnostic"));
43
+ const utils_1 = require("@atlaspack/utils");
44
+ const projectPath_1 = require("./projectPath");
45
+ const NODE_MODULES = `${path_1.default.sep}node_modules${path_1.default.sep}`;
46
+ const CONFIG = Symbol.for('parcel-plugin-config');
47
+ async function loadPlugin(pluginName, configPath, keyPath, options) {
48
+ let resolveFrom = configPath;
49
+ // Config packages can reference plugins, but cannot contain other plugins within them.
50
+ // This forces every published plugin to be published separately so they can be mixed and matched if needed.
51
+ if (resolveFrom.includes(NODE_MODULES) && pluginName.startsWith('.')) {
52
+ let configContents = await options.inputFS.readFile(configPath, 'utf8');
53
+ throw new diagnostic_1.default({
54
+ diagnostic: {
55
+ message: (0, diagnostic_1.md) `Local plugins are not supported in Atlaspack config packages. Please publish "${pluginName}" as a separate npm package.`,
56
+ origin: '@atlaspack/core',
57
+ codeFrames: keyPath
58
+ ? [
59
+ {
60
+ filePath: configPath,
61
+ language: 'json5',
62
+ code: configContents,
63
+ codeHighlights: (0, diagnostic_1.generateJSONCodeHighlights)(configContents, [
64
+ {
65
+ key: keyPath,
66
+ type: 'value',
67
+ },
68
+ ]),
69
+ },
70
+ ]
71
+ : undefined,
72
+ },
73
+ });
74
+ }
75
+ let pkg;
76
+ try {
77
+ ({ pkg } = await options.packageManager.resolve(pluginName, resolveFrom, {
78
+ shouldAutoInstall: options.shouldAutoInstall,
79
+ }));
80
+ }
81
+ catch (err) {
82
+ if (err.code !== 'MODULE_NOT_FOUND') {
83
+ throw err;
84
+ }
85
+ let configContents = await options.inputFS.readFile(configPath, 'utf8');
86
+ let alternatives = await (0, utils_1.findAlternativeNodeModules)(options.inputFS, pluginName, path_1.default.dirname(resolveFrom));
87
+ throw new diagnostic_1.default({
88
+ diagnostic: {
89
+ message: (0, diagnostic_1.md) `Cannot find Atlaspack plugin "${pluginName}"`,
90
+ origin: '@atlaspack/core',
91
+ codeFrames: keyPath
92
+ ? [
93
+ {
94
+ filePath: configPath,
95
+ language: 'json5',
96
+ code: configContents,
97
+ codeHighlights: (0, diagnostic_1.generateJSONCodeHighlights)(configContents, [
98
+ {
99
+ key: keyPath,
100
+ type: 'value',
101
+ message: (0, diagnostic_1.md) `Cannot find module "${pluginName}"${alternatives[0]
102
+ ? `, did you mean "${alternatives[0]}"?`
103
+ : ''}`,
104
+ },
105
+ ]),
106
+ },
107
+ ]
108
+ : undefined,
109
+ },
110
+ });
111
+ }
112
+ let plugin = await options.packageManager.require(pluginName, resolveFrom, {
113
+ shouldAutoInstall: options.shouldAutoInstall,
114
+ });
115
+ plugin = plugin.default ? plugin.default : plugin;
116
+ if (!plugin) {
117
+ throw new Error(`Plugin ${pluginName} has no exports.`);
118
+ }
119
+ plugin = plugin[CONFIG];
120
+ if (!plugin) {
121
+ throw new Error(`Plugin ${pluginName} is not a valid Atlaspack plugin, should export an instance of a Atlaspack plugin ex. "export default new Reporter({ ... })".`);
122
+ }
123
+ return {
124
+ plugin,
125
+ version: (0, nullthrows_1.default)(pkg).version,
126
+ resolveFrom: (0, projectPath_1.toProjectPath)(options.projectRoot, resolveFrom),
127
+ };
128
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = loadEnv;
7
+ const utils_1 = require("@atlaspack/utils");
8
+ const dotenv_1 = __importDefault(require("dotenv"));
9
+ const dotenv_expand_1 = __importDefault(require("dotenv-expand"));
10
+ async function loadEnv(env, fs, filePath, projectRoot) {
11
+ const NODE_ENV = env.NODE_ENV ?? 'development';
12
+ const dotenvFiles = [
13
+ '.env',
14
+ // Don't include `.env.local` for `test` environment
15
+ // since normally you expect tests to produce the same
16
+ // results for everyone
17
+ NODE_ENV === 'test' ? null : '.env.local',
18
+ `.env.${NODE_ENV}`,
19
+ `.env.${NODE_ENV}.local`,
20
+ ].filter(Boolean);
21
+ let envs = await Promise.all(dotenvFiles.map(async (dotenvFile) => {
22
+ const envPath = await (0, utils_1.resolveConfig)(fs, filePath,
23
+ // @ts-expect-error TS2322
24
+ [dotenvFile], projectRoot);
25
+ if (envPath == null) {
26
+ return;
27
+ }
28
+ // `ignoreProcessEnv` prevents dotenv-expand from writing values into `process.env`:
29
+ // https://github.com/motdotla/dotenv-expand/blob/ddb73d02322fe8522b4e05b73e1c1ad24ea7c14a/lib/main.js#L5
30
+ let output = (0, dotenv_expand_1.default)({
31
+ parsed: dotenv_1.default.parse(await fs.readFile(envPath)),
32
+ // @ts-expect-error TS2353
33
+ ignoreProcessEnv: true,
34
+ });
35
+ if (output.error != null) {
36
+ throw output.error;
37
+ }
38
+ return output.parsed;
39
+ }));
40
+ return Object.assign({}, ...envs);
41
+ }
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.fromProjectPath = exports.toProjectPath = void 0;
7
+ exports.fromProjectPathRelative = fromProjectPathRelative;
8
+ exports.toProjectPathUnsafe = toProjectPathUnsafe;
9
+ exports.joinProjectPath = joinProjectPath;
10
+ const path_1 = __importDefault(require("path"));
11
+ const utils_1 = require("@atlaspack/utils");
12
+ const feature_flags_1 = require("@atlaspack/feature-flags");
13
+ /**
14
+ * Converts a file path to a project-relative path.
15
+ *
16
+ * @param projectRoot - The project root.
17
+ * @param p - The file path to convert.
18
+ * @returns The project path.
19
+ */
20
+ function toProjectPath_(projectRoot, p) {
21
+ // If the file path is not provided, then treat it as though it is already from the project root
22
+ if (p == null) {
23
+ return p;
24
+ }
25
+ // If the file path is already relative and it does not begin with '.', then treat the path as if it
26
+ // is already from the project root. This prevents relative paths from being processed twice,
27
+ // most often within `toInternalSourceLocation` when handling loc types from symbols and asset
28
+ // dependencies.
29
+ if (p[0] !== '.' && !path_1.default.isAbsolute(p)) {
30
+ return p;
31
+ }
32
+ // If the file is outside the project root, store an absolute path rather than a relative one.
33
+ // This way if the project root is moved, the file references still work. Accessing files outside
34
+ // the project root is not portable anyway.
35
+ let relative = (0, utils_1.relativePath)(projectRoot, p, false);
36
+ if (relative.startsWith('..')) {
37
+ // e.g given projectRoot = '/Users/monorepo/project' and p = '/Users/monorepo/other-project/src/index.js' --> relative = '../other-project/src/index.js'
38
+ if ((0, feature_flags_1.getFeatureFlagValue)('patchProjectPaths')) {
39
+ return relative;
40
+ }
41
+ return process.platform === 'win32' ? (0, utils_1.normalizeSeparators)(p) : p;
42
+ }
43
+ return relative;
44
+ }
45
+ // @ts-expect-error TS2322
46
+ exports.toProjectPath = toProjectPath_;
47
+ function fromProjectPath_(projectRoot, p) {
48
+ if (p == null) {
49
+ return null;
50
+ }
51
+ // Project paths use normalized unix separators, so we only need to
52
+ // convert them on Windows.
53
+ let projectPath = process.platform === 'win32' ? path_1.default.normalize(p) : p;
54
+ // If the path is absolute (e.g. outside the project root), just return it.
55
+ if (path_1.default.isAbsolute(projectPath)) {
56
+ return projectPath;
57
+ }
58
+ // Add separator if needed. Doing this manunally is much faster than path.join.
59
+ if (projectRoot[projectRoot.length - 1] !== path_1.default.sep) {
60
+ return projectRoot + path_1.default.sep + projectPath;
61
+ }
62
+ return projectRoot + projectPath;
63
+ }
64
+ // @ts-expect-error TS2322
65
+ exports.fromProjectPath = fromProjectPath_;
66
+ /**
67
+ * Returns a path relative to the project root. This should be used when computing cache keys
68
+ */
69
+ function fromProjectPathRelative(p) {
70
+ return p;
71
+ }
72
+ /**
73
+ * This function should be avoided, it doesn't change the actual value.
74
+ */
75
+ function toProjectPathUnsafe(p) {
76
+ return p;
77
+ }
78
+ /**
79
+ * Joins a project root with relative paths (similar to `path.join`)
80
+ */
81
+ function joinProjectPath(a, ...b) {
82
+ return path_1.default.posix.join(a, ...b);
83
+ }
@@ -0,0 +1,279 @@
1
+ "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ var _BaseAsset_asset, _BaseAsset_query, _Asset_asset, _Asset_env, _MutableAsset_asset;
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.MutableAsset = exports.Asset = void 0;
19
+ exports.assetToAssetValue = assetToAssetValue;
20
+ exports.mutableAssetToUncommittedAsset = mutableAssetToUncommittedAsset;
21
+ exports.assetFromValue = assetFromValue;
22
+ const nullthrows_1 = __importDefault(require("nullthrows"));
23
+ const Environment_1 = __importDefault(require("./Environment"));
24
+ const Dependency_1 = require("./Dependency");
25
+ const Symbols_1 = require("./Symbols");
26
+ const UncommittedAsset_1 = __importDefault(require("../UncommittedAsset"));
27
+ const CommittedAsset_1 = __importDefault(require("../CommittedAsset"));
28
+ const Environment_2 = require("../Environment");
29
+ const projectPath_1 = require("../projectPath");
30
+ const types_1 = require("../types");
31
+ const utils_1 = require("../utils");
32
+ const EnvironmentManager_1 = require("../EnvironmentManager");
33
+ const inspect = Symbol.for('nodejs.util.inspect.custom');
34
+ const uncommittedAssetValueToAsset = new WeakMap();
35
+ const committedAssetValueToAsset = new WeakMap();
36
+ const assetValueToMutableAsset = new WeakMap();
37
+ const _assetToAssetValue = new WeakMap();
38
+ const _mutableAssetToUncommittedAsset = new WeakMap();
39
+ function assetToAssetValue(asset) {
40
+ return (0, nullthrows_1.default)(_assetToAssetValue.get(asset));
41
+ }
42
+ function mutableAssetToUncommittedAsset(mutableAsset) {
43
+ return (0, nullthrows_1.default)(_mutableAssetToUncommittedAsset.get(mutableAsset));
44
+ }
45
+ function assetFromValue(value, options) {
46
+ return new Asset(value.committed
47
+ ? new CommittedAsset_1.default(value, options)
48
+ : new UncommittedAsset_1.default({
49
+ value,
50
+ options,
51
+ }));
52
+ }
53
+ class BaseAsset {
54
+ constructor(asset) {
55
+ _BaseAsset_asset.set(this, void 0);
56
+ _BaseAsset_query.set(this, void 0);
57
+ __classPrivateFieldSet(this, _BaseAsset_asset, asset, "f");
58
+ _assetToAssetValue.set(this, asset.value);
59
+ }
60
+ [(_BaseAsset_asset = new WeakMap(), _BaseAsset_query = new WeakMap(), inspect)]() {
61
+ return `Asset(${this.filePath})`;
62
+ }
63
+ get id() {
64
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.id;
65
+ }
66
+ get type() {
67
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.type;
68
+ }
69
+ get env() {
70
+ return new Environment_1.default((0, EnvironmentManager_1.fromEnvironmentId)(__classPrivateFieldGet(this, _BaseAsset_asset, "f").value.env), __classPrivateFieldGet(this, _BaseAsset_asset, "f").options);
71
+ }
72
+ get fs() {
73
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").options.inputFS;
74
+ }
75
+ get filePath() {
76
+ return (0, projectPath_1.fromProjectPath)(__classPrivateFieldGet(this, _BaseAsset_asset, "f").options.projectRoot, __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.filePath);
77
+ }
78
+ get query() {
79
+ if (!__classPrivateFieldGet(this, _BaseAsset_query, "f")) {
80
+ __classPrivateFieldSet(this, _BaseAsset_query, new URLSearchParams(__classPrivateFieldGet(this, _BaseAsset_asset, "f").value.query ?? ''), "f");
81
+ }
82
+ return __classPrivateFieldGet(this, _BaseAsset_query, "f");
83
+ }
84
+ get meta() {
85
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.meta;
86
+ }
87
+ get bundleBehavior() {
88
+ let bundleBehavior = __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.bundleBehavior;
89
+ return bundleBehavior == null ? null : types_1.BundleBehaviorNames[bundleBehavior];
90
+ }
91
+ get isBundleSplittable() {
92
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.isBundleSplittable;
93
+ }
94
+ get isSource() {
95
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.isSource;
96
+ }
97
+ get sideEffects() {
98
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.sideEffects;
99
+ }
100
+ get symbols() {
101
+ // @ts-expect-error TS2322
102
+ return new Symbols_1.AssetSymbols(__classPrivateFieldGet(this, _BaseAsset_asset, "f").options, __classPrivateFieldGet(this, _BaseAsset_asset, "f").value);
103
+ }
104
+ get uniqueKey() {
105
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.uniqueKey;
106
+ }
107
+ get astGenerator() {
108
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.astGenerator;
109
+ }
110
+ get pipeline() {
111
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").value.pipeline;
112
+ }
113
+ getDependencies() {
114
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f")
115
+ .getDependencies()
116
+ .map((dep) => (0, Dependency_1.getPublicDependency)(dep, __classPrivateFieldGet(this, _BaseAsset_asset, "f").options));
117
+ }
118
+ getCode() {
119
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").getCode();
120
+ }
121
+ getBuffer() {
122
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").getBuffer();
123
+ }
124
+ getStream() {
125
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").getStream();
126
+ }
127
+ getMap() {
128
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").getMap();
129
+ }
130
+ getAST() {
131
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").getAST();
132
+ }
133
+ getMapBuffer() {
134
+ return __classPrivateFieldGet(this, _BaseAsset_asset, "f").getMapBuffer();
135
+ }
136
+ }
137
+ class Asset extends BaseAsset {
138
+ constructor(asset) {
139
+ let assetValueToAsset = asset.value.committed
140
+ ? committedAssetValueToAsset
141
+ : uncommittedAssetValueToAsset;
142
+ let existing = assetValueToAsset.get(asset.value);
143
+ if (existing != null) {
144
+ return existing;
145
+ }
146
+ super(asset);
147
+ // @ts-expect-error TS2564
148
+ _Asset_asset.set(this, void 0);
149
+ _Asset_env.set(this, void 0);
150
+ __classPrivateFieldSet(this, _Asset_asset, asset, "f");
151
+ assetValueToAsset.set(asset.value, this);
152
+ return this;
153
+ }
154
+ get env() {
155
+ __classPrivateFieldSet(this, _Asset_env, __classPrivateFieldGet(this, _Asset_env, "f") ?? new Environment_1.default((0, EnvironmentManager_1.fromEnvironmentId)(__classPrivateFieldGet(this, _Asset_asset, "f").value.env), __classPrivateFieldGet(this, _Asset_asset, "f").options), "f");
156
+ return __classPrivateFieldGet(this, _Asset_env, "f");
157
+ }
158
+ get stats() {
159
+ return __classPrivateFieldGet(this, _Asset_asset, "f").value.stats;
160
+ }
161
+ }
162
+ exports.Asset = Asset;
163
+ _Asset_asset = new WeakMap(), _Asset_env = new WeakMap();
164
+ class MutableAsset extends BaseAsset {
165
+ constructor(asset) {
166
+ let existing = assetValueToMutableAsset.get(asset.value);
167
+ if (existing != null) {
168
+ return existing;
169
+ }
170
+ super(asset);
171
+ // @ts-expect-error TS2564
172
+ _MutableAsset_asset.set(this, void 0);
173
+ __classPrivateFieldSet(this, _MutableAsset_asset, asset, "f");
174
+ assetValueToMutableAsset.set(asset.value, this);
175
+ _mutableAssetToUncommittedAsset.set(this, asset);
176
+ return this;
177
+ }
178
+ setMap(map) {
179
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").setMap(map);
180
+ }
181
+ get type() {
182
+ return __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.type;
183
+ }
184
+ // @ts-expect-error TS1095
185
+ set type(type): void {
186
+ if (type !== __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.type) {
187
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.type = type;
188
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").updateId();
189
+ }
190
+ }
191
+ get bundleBehavior() {
192
+ let bundleBehavior = __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.bundleBehavior;
193
+ return bundleBehavior == null ? null : types_1.BundleBehaviorNames[bundleBehavior];
194
+ }
195
+ // @ts-expect-error TS1095
196
+ set bundleBehavior(bundleBehavior): void {
197
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.bundleBehavior = bundleBehavior
198
+ ? types_1.BundleBehavior[bundleBehavior]
199
+ : null;
200
+ }
201
+ get isBundleSplittable() {
202
+ return __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.isBundleSplittable;
203
+ }
204
+ // @ts-expect-error TS1095
205
+ set isBundleSplittable(isBundleSplittable): void {
206
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.isBundleSplittable = isBundleSplittable;
207
+ }
208
+ get sideEffects() {
209
+ return __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.sideEffects;
210
+ }
211
+ // @ts-expect-error TS1095
212
+ set sideEffects(sideEffects): void {
213
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.sideEffects = sideEffects;
214
+ }
215
+ get uniqueKey() {
216
+ return __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.uniqueKey;
217
+ }
218
+ // @ts-expect-error TS1095
219
+ set uniqueKey(uniqueKey): void {
220
+ if (__classPrivateFieldGet(this, _MutableAsset_asset, "f").value.uniqueKey != null) {
221
+ throw new Error("Cannot change an asset's uniqueKey after it has been set.");
222
+ }
223
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.uniqueKey = uniqueKey;
224
+ }
225
+ get symbols() {
226
+ // @ts-expect-error TS2322
227
+ return new Symbols_1.MutableAssetSymbols(__classPrivateFieldGet(this, _MutableAsset_asset, "f").options, __classPrivateFieldGet(this, _MutableAsset_asset, "f").value);
228
+ }
229
+ addDependency(dep) {
230
+ return __classPrivateFieldGet(this, _MutableAsset_asset, "f").addDependency(dep);
231
+ }
232
+ invalidateOnFileChange(filePath) {
233
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").invalidateOnFileChange((0, projectPath_1.toProjectPath)(__classPrivateFieldGet(this, _MutableAsset_asset, "f").options.projectRoot, filePath));
234
+ }
235
+ invalidateOnFileCreate(invalidation) {
236
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").invalidateOnFileCreate(invalidation);
237
+ }
238
+ invalidateOnEnvChange(env) {
239
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").invalidateOnEnvChange(env);
240
+ }
241
+ invalidateOnStartup() {
242
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").invalidateOnStartup();
243
+ }
244
+ invalidateOnBuild() {
245
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").invalidateOnBuild();
246
+ }
247
+ isASTDirty() {
248
+ return __classPrivateFieldGet(this, _MutableAsset_asset, "f").isASTDirty;
249
+ }
250
+ setBuffer(buffer) {
251
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").setBuffer(buffer);
252
+ }
253
+ setCode(code) {
254
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").setCode(code);
255
+ }
256
+ setStream(stream) {
257
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").setStream(stream);
258
+ }
259
+ setAST(ast) {
260
+ return __classPrivateFieldGet(this, _MutableAsset_asset, "f").setAST(ast);
261
+ }
262
+ addURLDependency(url, opts) {
263
+ return this.addDependency({
264
+ specifier: url,
265
+ specifierType: 'url',
266
+ priority: 'lazy',
267
+ ...opts,
268
+ });
269
+ }
270
+ setEnvironment(env) {
271
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").value.env = (0, Environment_2.createEnvironment)({
272
+ ...env,
273
+ loc: (0, utils_1.toInternalSourceLocation)(__classPrivateFieldGet(this, _MutableAsset_asset, "f").options.projectRoot, env.loc),
274
+ });
275
+ __classPrivateFieldGet(this, _MutableAsset_asset, "f").updateId();
276
+ }
277
+ }
278
+ exports.MutableAsset = MutableAsset;
279
+ _MutableAsset_asset = new WeakMap();