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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (380) hide show
  1. package/CHANGELOG.md +1324 -0
  2. package/dist/AssetGraph.js +523 -0
  3. package/dist/Atlaspack.js +701 -0
  4. package/dist/AtlaspackConfig.js +324 -0
  5. package/dist/AtlaspackConfig.schema.js +117 -0
  6. package/dist/BundleGraph.js +1906 -0
  7. package/dist/CommittedAsset.js +142 -0
  8. package/dist/Dependency.js +125 -0
  9. package/dist/Environment.js +132 -0
  10. package/dist/EnvironmentManager.js +108 -0
  11. package/dist/IdentifierRegistry.js +38 -0
  12. package/dist/InternalConfig.js +37 -0
  13. package/dist/PackagerRunner.js +470 -0
  14. package/dist/ReporterRunner.js +151 -0
  15. package/dist/RequestTracker.js +1297 -0
  16. package/dist/SymbolPropagation.js +624 -0
  17. package/dist/TargetDescriptor.schema.js +146 -0
  18. package/dist/Transformation.js +514 -0
  19. package/dist/UncommittedAsset.js +310 -0
  20. package/dist/Validation.js +196 -0
  21. package/dist/applyRuntimes.js +384 -0
  22. package/dist/assetUtils.js +169 -0
  23. package/dist/atlaspack-v3/AtlaspackV3.js +83 -0
  24. package/dist/atlaspack-v3/NapiWorkerPool.js +114 -0
  25. package/dist/atlaspack-v3/fs.js +53 -0
  26. package/dist/atlaspack-v3/index.js +25 -0
  27. package/dist/atlaspack-v3/jsCallable.js +16 -0
  28. package/dist/atlaspack-v3/worker/compat/asset-symbols.js +190 -0
  29. package/dist/atlaspack-v3/worker/compat/bitflags.js +98 -0
  30. package/dist/atlaspack-v3/worker/compat/dependency.js +43 -0
  31. package/dist/atlaspack-v3/worker/compat/environment.js +57 -0
  32. package/dist/atlaspack-v3/worker/compat/index.js +24 -0
  33. package/dist/atlaspack-v3/worker/compat/mutable-asset.js +152 -0
  34. package/dist/atlaspack-v3/worker/compat/plugin-config.js +64 -0
  35. package/dist/atlaspack-v3/worker/compat/plugin-options.js +137 -0
  36. package/dist/atlaspack-v3/worker/compat/plugin-tracer.js +10 -0
  37. package/dist/atlaspack-v3/worker/compat/target.js +14 -0
  38. package/dist/atlaspack-v3/worker/side-effect-detector.js +243 -0
  39. package/dist/atlaspack-v3/worker/worker.js +398 -0
  40. package/dist/constants.js +17 -0
  41. package/dist/dumpGraphToGraphViz.js +281 -0
  42. package/dist/index.js +62 -0
  43. package/dist/loadAtlaspackPlugin.js +128 -0
  44. package/dist/loadDotEnv.js +41 -0
  45. package/dist/projectPath.js +83 -0
  46. package/dist/public/Asset.js +279 -0
  47. package/dist/public/Bundle.js +224 -0
  48. package/dist/public/BundleGraph.js +371 -0
  49. package/dist/public/BundleGroup.js +53 -0
  50. package/dist/public/Config.js +286 -0
  51. package/dist/public/Dependency.js +138 -0
  52. package/dist/public/Environment.js +278 -0
  53. package/dist/public/MutableBundleGraph.js +277 -0
  54. package/dist/public/PluginOptions.js +80 -0
  55. package/dist/public/Symbols.js +248 -0
  56. package/dist/public/Target.js +69 -0
  57. package/dist/registerCoreWithSerializer.js +38 -0
  58. package/dist/requests/AssetGraphRequest.js +430 -0
  59. package/dist/requests/AssetGraphRequestRust.js +471 -0
  60. package/dist/requests/AssetRequest.js +130 -0
  61. package/dist/requests/AtlaspackBuildRequest.js +98 -0
  62. package/dist/requests/AtlaspackConfigRequest.js +493 -0
  63. package/dist/requests/BundleGraphRequest.js +381 -0
  64. package/dist/requests/BundleGraphRequestRust.js +324 -0
  65. package/dist/requests/BundleGraphRequestUtils.js +262 -0
  66. package/dist/requests/ConfigRequest.js +246 -0
  67. package/dist/requests/DevDepRequest.js +204 -0
  68. package/dist/requests/EntryRequest.js +314 -0
  69. package/dist/requests/PackageRequest.js +89 -0
  70. package/dist/requests/PathRequest.js +349 -0
  71. package/dist/requests/TargetRequest.js +1316 -0
  72. package/dist/requests/ValidationRequest.js +49 -0
  73. package/dist/requests/WriteBundleRequest.js +522 -0
  74. package/dist/requests/WriteBundlesRequest.js +190 -0
  75. package/dist/requests/asset-graph-diff.js +128 -0
  76. package/dist/requests/asset-graph-dot.js +131 -0
  77. package/dist/resolveOptions.js +267 -0
  78. package/dist/rustWorkerThreadDylibHack.js +19 -0
  79. package/dist/serializerCore.browser.js +43 -0
  80. package/dist/summarizeRequest.js +39 -0
  81. package/dist/types.js +31 -0
  82. package/dist/utils.js +172 -0
  83. package/dist/worker.js +123 -0
  84. package/lib/AssetGraph.js +53 -15
  85. package/lib/Atlaspack.js +140 -56
  86. package/lib/AtlaspackConfig.js +17 -6
  87. package/lib/AtlaspackConfig.schema.js +16 -5
  88. package/lib/BundleGraph.js +390 -43
  89. package/lib/CommittedAsset.js +8 -2
  90. package/lib/Dependency.js +9 -3
  91. package/lib/Environment.js +16 -10
  92. package/lib/EnvironmentManager.js +143 -0
  93. package/lib/IdentifierRegistry.js +2 -4
  94. package/lib/InternalConfig.js +3 -2
  95. package/lib/PackagerRunner.js +46 -82
  96. package/lib/ReporterRunner.js +8 -12
  97. package/lib/RequestTracker.js +191 -152
  98. package/lib/SymbolPropagation.js +52 -29
  99. package/lib/TargetDescriptor.schema.js +10 -1
  100. package/lib/Transformation.js +68 -19
  101. package/lib/UncommittedAsset.js +17 -24
  102. package/lib/Validation.js +20 -5
  103. package/lib/applyRuntimes.js +98 -7
  104. package/lib/assetUtils.js +16 -6
  105. package/lib/atlaspack-v3/AtlaspackV3.js +58 -15
  106. package/lib/atlaspack-v3/NapiWorkerPool.js +63 -2
  107. package/lib/atlaspack-v3/fs.js +4 -1
  108. package/lib/atlaspack-v3/index.js +28 -1
  109. package/lib/atlaspack-v3/jsCallable.js +0 -2
  110. package/lib/atlaspack-v3/worker/compat/asset-symbols.js +7 -4
  111. package/lib/atlaspack-v3/worker/compat/bitflags.js +31 -25
  112. package/lib/atlaspack-v3/worker/compat/dependency.js +4 -1
  113. package/lib/atlaspack-v3/worker/compat/environment.js +10 -7
  114. package/lib/atlaspack-v3/worker/compat/index.js +0 -11
  115. package/lib/atlaspack-v3/worker/compat/mutable-asset.js +16 -11
  116. package/lib/atlaspack-v3/worker/compat/plugin-config.js +14 -35
  117. package/lib/atlaspack-v3/worker/compat/plugin-options.js +16 -2
  118. package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +3 -0
  119. package/lib/atlaspack-v3/worker/compat/target.js +2 -0
  120. package/lib/atlaspack-v3/worker/index.js +3 -0
  121. package/lib/atlaspack-v3/worker/side-effect-detector.js +214 -0
  122. package/lib/atlaspack-v3/worker/worker.js +231 -79
  123. package/lib/constants.js +0 -1
  124. package/lib/dumpGraphToGraphViz.js +72 -17
  125. package/lib/index.js +46 -3
  126. package/lib/loadAtlaspackPlugin.js +2 -3
  127. package/lib/loadDotEnv.js +5 -2
  128. package/lib/projectPath.js +6 -1
  129. package/lib/public/Asset.js +22 -12
  130. package/lib/public/Bundle.js +16 -18
  131. package/lib/public/BundleGraph.js +27 -25
  132. package/lib/public/BundleGroup.js +5 -6
  133. package/lib/public/Config.js +118 -18
  134. package/lib/public/Dependency.js +9 -7
  135. package/lib/public/Environment.js +13 -8
  136. package/lib/public/MutableBundleGraph.js +56 -15
  137. package/lib/public/PluginOptions.js +2 -2
  138. package/lib/public/Symbols.js +12 -12
  139. package/lib/public/Target.js +8 -7
  140. package/lib/registerCoreWithSerializer.js +7 -4
  141. package/lib/requests/AssetGraphRequest.js +61 -40
  142. package/lib/requests/AssetGraphRequestRust.js +314 -82
  143. package/lib/requests/AssetRequest.js +24 -7
  144. package/lib/requests/AtlaspackBuildRequest.js +53 -7
  145. package/lib/requests/AtlaspackConfigRequest.js +29 -19
  146. package/lib/requests/BundleGraphRequest.js +61 -130
  147. package/lib/requests/BundleGraphRequestRust.js +381 -0
  148. package/lib/requests/BundleGraphRequestUtils.js +280 -0
  149. package/lib/requests/ConfigRequest.js +55 -7
  150. package/lib/requests/DevDepRequest.js +32 -6
  151. package/lib/requests/EntryRequest.js +4 -3
  152. package/lib/requests/PackageRequest.js +56 -12
  153. package/lib/requests/PathRequest.js +26 -6
  154. package/lib/requests/TargetRequest.js +129 -60
  155. package/lib/requests/ValidationRequest.js +6 -2
  156. package/lib/requests/WriteBundleRequest.js +329 -20
  157. package/lib/requests/WriteBundlesRequest.js +64 -10
  158. package/lib/requests/asset-graph-diff.js +13 -8
  159. package/lib/requests/asset-graph-dot.js +2 -8
  160. package/lib/resolveOptions.js +37 -14
  161. package/lib/rustWorkerThreadDylibHack.js +0 -1
  162. package/lib/serializerCore.browser.js +1 -2
  163. package/lib/summarizeRequest.js +1 -1
  164. package/lib/types/AssetGraph.d.ts +55 -0
  165. package/lib/types/Atlaspack.d.ts +52 -0
  166. package/lib/types/AtlaspackConfig.d.ts +65 -0
  167. package/lib/types/AtlaspackConfig.schema.d.ts +53 -0
  168. package/lib/types/BundleGraph.d.ts +232 -0
  169. package/lib/types/CommittedAsset.d.ts +23 -0
  170. package/lib/types/Dependency.d.ts +44 -0
  171. package/lib/types/Environment.d.ts +11 -0
  172. package/lib/types/EnvironmentManager.d.ts +37 -0
  173. package/lib/types/IdentifierRegistry.d.ts +6 -0
  174. package/lib/types/InternalConfig.d.ts +23 -0
  175. package/lib/types/PackagerRunner.d.ts +85 -0
  176. package/lib/types/ReporterRunner.d.ts +25 -0
  177. package/lib/types/RequestTracker.d.ts +385 -0
  178. package/lib/types/SymbolPropagation.d.ts +11 -0
  179. package/lib/types/TargetDescriptor.schema.d.ts +5 -0
  180. package/lib/types/Transformation.d.ts +72 -0
  181. package/lib/types/UncommittedAsset.d.ts +61 -0
  182. package/lib/types/Validation.d.ts +37 -0
  183. package/lib/types/applyRuntimes.d.ts +25 -0
  184. package/lib/types/assetUtils.d.ts +42 -0
  185. package/lib/types/atlaspack-v3/AtlaspackV3.d.ts +35 -0
  186. package/lib/types/atlaspack-v3/NapiWorkerPool.d.ts +13 -0
  187. package/lib/types/atlaspack-v3/fs.d.ts +13 -0
  188. package/lib/types/atlaspack-v3/index.d.ts +6 -0
  189. package/lib/types/atlaspack-v3/jsCallable.d.ts +1 -0
  190. package/lib/types/atlaspack-v3/worker/compat/asset-symbols.d.ts +51 -0
  191. package/lib/types/atlaspack-v3/worker/compat/bitflags.d.ts +14 -0
  192. package/lib/types/atlaspack-v3/worker/compat/dependency.d.ts +25 -0
  193. package/lib/types/atlaspack-v3/worker/compat/environment.d.ts +27 -0
  194. package/{src/atlaspack-v3/worker/compat/index.js → lib/types/atlaspack-v3/worker/compat/index.d.ts} +0 -2
  195. package/lib/types/atlaspack-v3/worker/compat/mutable-asset.d.ts +49 -0
  196. package/lib/types/atlaspack-v3/worker/compat/plugin-config.d.ts +29 -0
  197. package/lib/types/atlaspack-v3/worker/compat/plugin-options.d.ts +23 -0
  198. package/lib/types/atlaspack-v3/worker/compat/plugin-tracer.d.ts +5 -0
  199. package/lib/types/atlaspack-v3/worker/compat/target.d.ts +11 -0
  200. package/lib/types/atlaspack-v3/worker/side-effect-detector.d.ts +76 -0
  201. package/lib/types/atlaspack-v3/worker/worker.d.ts +81 -0
  202. package/lib/types/constants.d.ts +13 -0
  203. package/lib/types/dumpGraphToGraphViz.d.ts +10 -0
  204. package/lib/types/index.d.ts +8 -0
  205. package/lib/types/loadAtlaspackPlugin.d.ts +8 -0
  206. package/lib/types/loadDotEnv.d.ts +3 -0
  207. package/lib/types/projectPath.d.ts +19 -0
  208. package/lib/types/public/Asset.d.ts +74 -0
  209. package/lib/types/public/Bundle.d.ts +45 -0
  210. package/lib/types/public/BundleGraph.d.ts +72 -0
  211. package/lib/types/public/BundleGroup.d.ts +12 -0
  212. package/lib/types/public/Config.d.ts +75 -0
  213. package/lib/types/public/Dependency.d.ts +32 -0
  214. package/lib/types/public/Environment.d.ts +34 -0
  215. package/lib/types/public/MutableBundleGraph.d.ts +26 -0
  216. package/lib/types/public/PluginOptions.d.ts +25 -0
  217. package/lib/types/public/Symbols.d.ts +81 -0
  218. package/lib/types/public/Target.d.ts +16 -0
  219. package/lib/types/registerCoreWithSerializer.d.ts +2 -0
  220. package/lib/types/requests/AssetGraphRequest.d.ts +76 -0
  221. package/lib/types/requests/AssetGraphRequestRust.d.ts +21 -0
  222. package/lib/types/requests/AssetRequest.d.ts +16 -0
  223. package/lib/types/requests/AtlaspackBuildRequest.d.ts +33 -0
  224. package/lib/types/requests/AtlaspackConfigRequest.d.ts +45 -0
  225. package/lib/types/requests/BundleGraphRequest.d.ts +28 -0
  226. package/lib/types/requests/BundleGraphRequestRust.d.ts +34 -0
  227. package/lib/types/requests/BundleGraphRequestUtils.d.ts +38 -0
  228. package/lib/types/requests/ConfigRequest.d.ts +67 -0
  229. package/lib/types/requests/DevDepRequest.d.ts +30 -0
  230. package/lib/types/requests/EntryRequest.d.ts +36 -0
  231. package/lib/types/requests/PackageRequest.d.ts +27 -0
  232. package/lib/types/requests/PathRequest.d.ts +48 -0
  233. package/lib/types/requests/TargetRequest.d.ts +48 -0
  234. package/lib/types/requests/ValidationRequest.d.ts +20 -0
  235. package/lib/types/requests/WriteBundleRequest.d.ts +80 -0
  236. package/lib/types/requests/WriteBundlesRequest.d.ts +32 -0
  237. package/lib/types/requests/asset-graph-diff.d.ts +1 -0
  238. package/lib/types/requests/asset-graph-dot.d.ts +9 -0
  239. package/lib/types/resolveOptions.d.ts +3 -0
  240. package/lib/types/rustWorkerThreadDylibHack.d.ts +9 -0
  241. package/lib/types/serializerCore.browser.d.ts +3 -0
  242. package/lib/types/summarizeRequest.d.ts +10 -0
  243. package/lib/types/types.d.ts +496 -0
  244. package/lib/types/utils.d.ts +23 -0
  245. package/lib/types/worker.d.ts +44 -0
  246. package/lib/types.js +8 -1
  247. package/lib/utils.js +18 -3
  248. package/lib/worker.js +32 -15
  249. package/package.json +26 -36
  250. package/src/{AssetGraph.js → AssetGraph.ts} +87 -51
  251. package/src/{Atlaspack.js → Atlaspack.ts} +181 -72
  252. package/src/{AtlaspackConfig.schema.js → AtlaspackConfig.schema.ts} +25 -19
  253. package/src/{AtlaspackConfig.js → AtlaspackConfig.ts} +78 -54
  254. package/src/{BundleGraph.js → BundleGraph.ts} +575 -145
  255. package/src/{CommittedAsset.js → CommittedAsset.ts} +15 -13
  256. package/src/{Dependency.js → Dependency.ts} +59 -42
  257. package/src/{Environment.js → Environment.ts} +24 -15
  258. package/src/EnvironmentManager.ts +154 -0
  259. package/src/{IdentifierRegistry.js → IdentifierRegistry.ts} +1 -4
  260. package/src/{InternalConfig.js → InternalConfig.ts} +22 -23
  261. package/src/{PackagerRunner.js → PackagerRunner.ts} +114 -159
  262. package/src/{ReporterRunner.js → ReporterRunner.ts} +13 -18
  263. package/src/{RequestTracker.js → RequestTracker.ts} +444 -355
  264. package/src/{SymbolPropagation.js → SymbolPropagation.ts} +178 -61
  265. package/src/{TargetDescriptor.schema.js → TargetDescriptor.schema.ts} +10 -1
  266. package/src/{Transformation.js → Transformation.ts} +110 -65
  267. package/src/{UncommittedAsset.js → UncommittedAsset.ts} +45 -49
  268. package/src/{Validation.js → Validation.ts} +32 -17
  269. package/src/{applyRuntimes.js → applyRuntimes.ts} +135 -26
  270. package/src/{assetUtils.js → assetUtils.ts} +49 -36
  271. package/src/atlaspack-v3/AtlaspackV3.ts +183 -0
  272. package/src/atlaspack-v3/NapiWorkerPool.ts +129 -0
  273. package/src/atlaspack-v3/{fs.js → fs.ts} +8 -4
  274. package/src/atlaspack-v3/{index.js → index.ts} +3 -4
  275. package/src/atlaspack-v3/jsCallable.ts +14 -0
  276. package/src/atlaspack-v3/worker/compat/{asset-symbols.js → asset-symbols.ts} +40 -30
  277. package/src/atlaspack-v3/worker/compat/bitflags.ts +102 -0
  278. package/src/atlaspack-v3/worker/compat/{dependency.js → dependency.ts} +13 -13
  279. package/src/atlaspack-v3/worker/compat/{environment.js → environment.ts} +13 -9
  280. package/src/atlaspack-v3/worker/compat/index.ts +8 -0
  281. package/src/atlaspack-v3/worker/compat/{mutable-asset.js → mutable-asset.ts} +21 -20
  282. package/src/atlaspack-v3/worker/compat/{plugin-config.js → plugin-config.ts} +25 -56
  283. package/src/atlaspack-v3/worker/compat/{plugin-options.js → plugin-options.ts} +19 -5
  284. package/src/atlaspack-v3/worker/compat/{plugin-tracer.js → plugin-tracer.ts} +2 -2
  285. package/src/atlaspack-v3/worker/compat/{target.js → target.ts} +3 -4
  286. package/src/atlaspack-v3/worker/index.js +2 -1
  287. package/src/atlaspack-v3/worker/side-effect-detector.ts +298 -0
  288. package/src/atlaspack-v3/worker/worker.ts +548 -0
  289. package/src/{constants.js → constants.ts} +0 -3
  290. package/src/{dumpGraphToGraphViz.js → dumpGraphToGraphViz.ts} +73 -28
  291. package/src/index.ts +18 -0
  292. package/src/{loadAtlaspackPlugin.js → loadAtlaspackPlugin.ts} +8 -9
  293. package/src/{loadDotEnv.js → loadDotEnv.ts} +2 -2
  294. package/src/{projectPath.js → projectPath.ts} +20 -9
  295. package/src/public/{Asset.js → Asset.ts} +41 -28
  296. package/src/public/{Bundle.js → Bundle.ts} +28 -29
  297. package/src/public/{BundleGraph.js → BundleGraph.ts} +103 -68
  298. package/src/public/{BundleGroup.js → BundleGroup.ts} +7 -10
  299. package/src/public/{Config.js → Config.ts} +171 -33
  300. package/src/public/{Dependency.js → Dependency.ts} +20 -17
  301. package/src/public/{Environment.js → Environment.ts} +28 -17
  302. package/src/public/{MutableBundleGraph.js → MutableBundleGraph.ts} +55 -24
  303. package/src/public/{PluginOptions.js → PluginOptions.ts} +6 -6
  304. package/src/public/{Symbols.js → Symbols.ts} +75 -36
  305. package/src/public/{Target.js → Target.ts} +10 -8
  306. package/src/{registerCoreWithSerializer.js → registerCoreWithSerializer.ts} +9 -7
  307. package/src/requests/{AssetGraphRequest.js → AssetGraphRequest.ts} +117 -90
  308. package/src/requests/AssetGraphRequestRust.ts +557 -0
  309. package/src/requests/{AssetRequest.js → AssetRequest.ts} +24 -18
  310. package/src/requests/AtlaspackBuildRequest.ts +168 -0
  311. package/src/requests/{AtlaspackConfigRequest.js → AtlaspackConfigRequest.ts} +72 -58
  312. package/src/requests/{BundleGraphRequest.js → BundleGraphRequest.ts} +119 -199
  313. package/src/requests/BundleGraphRequestRust.ts +470 -0
  314. package/src/requests/BundleGraphRequestUtils.ts +323 -0
  315. package/src/requests/{ConfigRequest.js → ConfigRequest.ts} +110 -50
  316. package/src/requests/{DevDepRequest.js → DevDepRequest.ts} +60 -35
  317. package/src/requests/{EntryRequest.js → EntryRequest.ts} +36 -31
  318. package/src/requests/{PackageRequest.js → PackageRequest.ts} +52 -25
  319. package/src/requests/{PathRequest.js → PathRequest.ts} +47 -37
  320. package/src/requests/{TargetRequest.js → TargetRequest.ts} +265 -179
  321. package/src/requests/{ValidationRequest.js → ValidationRequest.ts} +18 -17
  322. package/src/requests/WriteBundleRequest.ts +734 -0
  323. package/src/requests/{WriteBundlesRequest.js → WriteBundlesRequest.ts} +134 -50
  324. package/src/requests/{asset-graph-diff.js → asset-graph-diff.ts} +25 -21
  325. package/src/requests/{asset-graph-dot.js → asset-graph-dot.ts} +8 -12
  326. package/src/{resolveOptions.js → resolveOptions.ts} +57 -27
  327. package/src/{rustWorkerThreadDylibHack.js → rustWorkerThreadDylibHack.ts} +1 -4
  328. package/src/{serializerCore.browser.js → serializerCore.browser.ts} +2 -3
  329. package/src/{summarizeRequest.js → summarizeRequest.ts} +17 -5
  330. package/src/types.ts +651 -0
  331. package/src/{utils.js → utils.ts} +52 -21
  332. package/src/{worker.js → worker.ts} +50 -42
  333. package/test/{AssetGraph.test.js → AssetGraph.test.ts} +5 -8
  334. package/test/{Atlaspack.test.js → Atlaspack.test.ts} +5 -10
  335. package/test/{AtlaspackConfig.test.js → AtlaspackConfig.test.ts} +0 -5
  336. package/test/{AtlaspackConfigRequest.test.js → AtlaspackConfigRequest.test.ts} +76 -16
  337. package/test/{BundleGraph.test.js → BundleGraph.test.ts} +8 -13
  338. package/test/{Dependency.test.js → Dependency.test.ts} +2 -3
  339. package/test/{EntryRequest.test.js → EntryRequest.test.ts} +1 -6
  340. package/test/Environment.test.ts +153 -0
  341. package/test/EnvironmentManager.test.ts +188 -0
  342. package/test/{IdentifierRegistry.test.js → IdentifierRegistry.test.ts} +2 -4
  343. package/test/{InternalAsset.test.js → InternalAsset.test.ts} +2 -7
  344. package/test/PackagerRunner.test.ts +0 -0
  345. package/test/{PublicAsset.test.js → PublicAsset.test.ts} +2 -7
  346. package/test/{PublicBundle.test.js → PublicBundle.test.ts} +1 -2
  347. package/test/{PublicDependency.test.js → PublicDependency.test.ts} +0 -2
  348. package/test/PublicEnvironment.test.ts +49 -0
  349. package/test/{PublicMutableBundleGraph.test.js → PublicMutableBundleGraph.test.ts} +6 -11
  350. package/test/{RequestTracker.test.js → RequestTracker.test.ts} +136 -58
  351. package/test/{SymbolPropagation.test.js → SymbolPropagation.test.ts} +124 -74
  352. package/test/{TargetRequest.test.js → TargetRequest.test.ts} +91 -92
  353. package/test/fixtures/config-with-reporters/.parcelrc +7 -0
  354. package/test/fixtures/custom-targets/package.json +6 -0
  355. package/test/public/Config.test.ts +104 -0
  356. package/test/requests/AssetGraphRequestRust.test.ts +443 -0
  357. package/test/requests/{ConfigRequest.test.js → ConfigRequest.test.ts} +202 -13
  358. package/test/requests/{DevDepRequest.test.js → DevDepRequest.test.ts} +0 -2
  359. package/test/requests/WriteBundleRequest.test.ts +602 -0
  360. package/test/{test-utils.js → test-utils.ts} +3 -4
  361. package/test/{utils.test.js → utils.test.ts} +1 -3
  362. package/tsconfig.json +60 -0
  363. package/tsconfig.tsbuildinfo +1 -0
  364. package/index.d.ts +0 -30
  365. package/lib/atlaspack-v3/worker/compat/plugin-logger.js +0 -29
  366. package/src/atlaspack-v3/AtlaspackV3.js +0 -87
  367. package/src/atlaspack-v3/NapiWorkerPool.js +0 -53
  368. package/src/atlaspack-v3/jsCallable.js +0 -18
  369. package/src/atlaspack-v3/worker/compat/bitflags.js +0 -100
  370. package/src/atlaspack-v3/worker/compat/plugin-logger.js +0 -47
  371. package/src/atlaspack-v3/worker/worker.js +0 -369
  372. package/src/index.js +0 -13
  373. package/src/requests/AssetGraphRequestRust.js +0 -263
  374. package/src/requests/AtlaspackBuildRequest.js +0 -111
  375. package/src/requests/WriteBundleRequest.js +0 -369
  376. package/src/types.js +0 -600
  377. package/test/Environment.test.js +0 -119
  378. package/test/PackagerRunner.test.js +0 -27
  379. package/test/PublicEnvironment.test.js +0 -27
  380. package/test/requests/AssetGraphRequestRust.test.js +0 -411
@@ -0,0 +1,114 @@
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 _NapiWorkerPool_workers, _NapiWorkerPool_napiWorkers, _NapiWorkerPool_workerCount;
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.NapiWorkerPool = void 0;
19
+ const worker_threads_1 = require("worker_threads");
20
+ const path_1 = __importDefault(require("path"));
21
+ const process_1 = __importDefault(require("process"));
22
+ const rust_1 = require("@atlaspack/rust");
23
+ const logger_1 = __importDefault(require("@atlaspack/logger"));
24
+ const WORKER_PATH = path_1.default.join(__dirname, 'worker', 'index.js');
25
+ const ATLASPACK_NAPI_WORKERS = process_1.default.env.ATLASPACK_NAPI_WORKERS &&
26
+ parseInt(process_1.default.env.ATLASPACK_NAPI_WORKERS, 10);
27
+ class NapiWorkerPool {
28
+ constructor({ workerCount } = { workerCount: undefined }) {
29
+ _NapiWorkerPool_workers.set(this, void 0);
30
+ _NapiWorkerPool_napiWorkers.set(this, void 0);
31
+ _NapiWorkerPool_workerCount.set(this, void 0);
32
+ // @ts-expect-error TS2322
33
+ __classPrivateFieldSet(this, _NapiWorkerPool_workerCount, workerCount ??
34
+ ATLASPACK_NAPI_WORKERS ??
35
+ // Default to a maximum of 4 workers as performance worsens beyond that
36
+ // point in most cases
37
+ Math.min((0, rust_1.getAvailableThreads)(), 4), "f");
38
+ if (!__classPrivateFieldGet(this, _NapiWorkerPool_workerCount, "f")) {
39
+ // TODO use main thread if workerCount is 0
40
+ }
41
+ __classPrivateFieldSet(this, _NapiWorkerPool_workers, [], "f");
42
+ __classPrivateFieldSet(this, _NapiWorkerPool_napiWorkers, [], "f");
43
+ for (let i = 0; i < __classPrivateFieldGet(this, _NapiWorkerPool_workerCount, "f"); i++) {
44
+ let worker = new worker_threads_1.Worker(WORKER_PATH);
45
+ __classPrivateFieldGet(this, _NapiWorkerPool_workers, "f").push(worker);
46
+ __classPrivateFieldGet(this, _NapiWorkerPool_napiWorkers, "f").push(new Promise((res) => worker.once('message', res)));
47
+ // Re-emit log events from the worker thread into the main-thread logger
48
+ // so they reach reporters and are subject to log-level filtering.
49
+ worker.on('message', (message) => {
50
+ if (message != null &&
51
+ typeof message === 'object' &&
52
+ message.type === 'logEvent') {
53
+ const event = message.event;
54
+ switch (event.level) {
55
+ case 'verbose':
56
+ logger_1.default.verbose(event.diagnostics);
57
+ break;
58
+ case 'info':
59
+ logger_1.default.info(event.diagnostics);
60
+ break;
61
+ case 'warn':
62
+ logger_1.default.warn(event.diagnostics);
63
+ break;
64
+ case 'error':
65
+ logger_1.default.error(event.diagnostics);
66
+ break;
67
+ case 'progress':
68
+ logger_1.default.progress(event.message);
69
+ break;
70
+ }
71
+ }
72
+ });
73
+ }
74
+ }
75
+ clearAllWorkerState() {
76
+ return Promise.all(__classPrivateFieldGet(this, _NapiWorkerPool_workers, "f").map((worker) => new Promise((res) => {
77
+ worker.postMessage('clearState');
78
+ // Set up a message handler that only resolves on 'stateCleared'
79
+ // and ignores all other messages (like the initial napiWorker Transferable)
80
+ const messageHandler = (message) => {
81
+ if (message === 'stateCleared') {
82
+ worker.removeListener('message', messageHandler);
83
+ res();
84
+ }
85
+ else if (message != null &&
86
+ typeof message === 'object' &&
87
+ message.type === 'logEvent') {
88
+ // logEvent messages are forwarded asynchronously from the worker
89
+ // logger bridge and are expected at any time; ignore them here.
90
+ }
91
+ else {
92
+ // Log unexpected messages for debugging
93
+ // eslint-disable-next-line no-console
94
+ console.warn(`[NapiWorkerPool] Received unexpected message during clearAllWorkerState: ${JSON.stringify(message)} (type: ${typeof message})`);
95
+ // Keep listening for 'stateCleared' - don't remove the listener
96
+ }
97
+ };
98
+ worker.on('message', messageHandler);
99
+ })));
100
+ }
101
+ workerCount() {
102
+ return __classPrivateFieldGet(this, _NapiWorkerPool_workerCount, "f");
103
+ }
104
+ getWorkers() {
105
+ return Promise.all(__classPrivateFieldGet(this, _NapiWorkerPool_napiWorkers, "f"));
106
+ }
107
+ shutdown() {
108
+ for (const worker of __classPrivateFieldGet(this, _NapiWorkerPool_workers, "f")) {
109
+ worker.terminate();
110
+ }
111
+ }
112
+ }
113
+ exports.NapiWorkerPool = NapiWorkerPool;
114
+ _NapiWorkerPool_workers = new WeakMap(), _NapiWorkerPool_napiWorkers = new WeakMap(), _NapiWorkerPool_workerCount = new WeakMap();
@@ -0,0 +1,53 @@
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 _FileSystemV3_fs;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.FileSystemV3 = void 0;
16
+ const jsCallable_1 = require("./jsCallable");
17
+ // @ts-expect-error TS2420
18
+ class FileSystemV3 {
19
+ constructor(fs) {
20
+ _FileSystemV3_fs.set(this, void 0);
21
+ this.canonicalize = (0, jsCallable_1.jsCallable)((path) => __classPrivateFieldGet(this, _FileSystemV3_fs, "f").realpathSync(path));
22
+ this.createDirectory = (0, jsCallable_1.jsCallable)((path) => __classPrivateFieldGet(this, _FileSystemV3_fs, "f").mkdirp(path));
23
+ this.cwd = (0, jsCallable_1.jsCallable)(() => __classPrivateFieldGet(this, _FileSystemV3_fs, "f").cwd());
24
+ this.isFile = (path) => {
25
+ try {
26
+ return __classPrivateFieldGet(this, _FileSystemV3_fs, "f").statSync(path).isFile();
27
+ }
28
+ catch {
29
+ return false;
30
+ }
31
+ };
32
+ this.isDir = (path) => {
33
+ try {
34
+ return __classPrivateFieldGet(this, _FileSystemV3_fs, "f").statSync(path).isDirectory();
35
+ }
36
+ catch {
37
+ return false;
38
+ }
39
+ };
40
+ this.readFile = (0, jsCallable_1.jsCallable)((path, encoding) => {
41
+ if (!encoding) {
42
+ return [...__classPrivateFieldGet(this, _FileSystemV3_fs, "f").readFileSync(path)];
43
+ }
44
+ else {
45
+ return __classPrivateFieldGet(this, _FileSystemV3_fs, "f").readFileSync(path, encoding);
46
+ }
47
+ });
48
+ this.writeFile = (0, jsCallable_1.jsCallable)((path, contents) => __classPrivateFieldGet(this, _FileSystemV3_fs, "f").writeFile(path, Buffer.from(contents)));
49
+ __classPrivateFieldSet(this, _FileSystemV3_fs, fs, "f");
50
+ }
51
+ }
52
+ exports.FileSystemV3 = FileSystemV3;
53
+ _FileSystemV3_fs = new WeakMap();
@@ -0,0 +1,25 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.NapiWorkerPool = exports.AtlaspackV3 = exports.FileSystemV3 = void 0;
18
+ var fs_1 = require("./fs");
19
+ Object.defineProperty(exports, "FileSystemV3", { enumerable: true, get: function () { return fs_1.FileSystemV3; } });
20
+ var AtlaspackV3_1 = require("./AtlaspackV3");
21
+ Object.defineProperty(exports, "AtlaspackV3", { enumerable: true, get: function () { return AtlaspackV3_1.AtlaspackV3; } });
22
+ var NapiWorkerPool_1 = require("./NapiWorkerPool");
23
+ Object.defineProperty(exports, "NapiWorkerPool", { enumerable: true, get: function () { return NapiWorkerPool_1.NapiWorkerPool; } });
24
+ __exportStar(require("./AtlaspackV3"), exports);
25
+ __exportStar(require("./NapiWorkerPool"), exports);
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.jsCallable = jsCallable;
4
+ function jsCallable(fn) {
5
+ return async (...args) => {
6
+ try {
7
+ // Promises and is safe to use on non-promises
8
+ return await fn(...args);
9
+ }
10
+ catch (error) {
11
+ // eslint-disable-next-line no-console
12
+ console.error(error);
13
+ throw error;
14
+ }
15
+ };
16
+ }
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ 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");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
+ if (kind === "m") throw new TypeError("Private method is not writable");
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
+ 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");
11
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
+ };
13
+ var _MutableDependencySymbols_symbols, _MutableDependencySymbols_locals, _AssetSymbols_instances, _AssetSymbols_symbols, _AssetSymbols_locals, _AssetSymbols_set, _MutableAssetSymbols_symbols, _MutableAssetSymbols_locals;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.MutableAssetSymbols = exports.AssetSymbols = exports.MutableDependencySymbols = void 0;
16
+ class MutableDependencySymbols {
17
+ get isCleared() {
18
+ return __classPrivateFieldGet(this, _MutableDependencySymbols_symbols, "f").size === 0;
19
+ }
20
+ constructor(inner) {
21
+ _MutableDependencySymbols_symbols.set(this, void 0);
22
+ _MutableDependencySymbols_locals.set(this, void 0);
23
+ __classPrivateFieldSet(this, _MutableDependencySymbols_symbols, new Map(), "f");
24
+ __classPrivateFieldSet(this, _MutableDependencySymbols_locals, new Set(), "f");
25
+ for (const { exported, local, loc, isWeak } of inner || []) {
26
+ this.set(exported, local, loc, isWeak);
27
+ }
28
+ }
29
+ ensure() {
30
+ throw new Error('MutableDependencySymbols.ensure()');
31
+ }
32
+ get(exportSymbol) {
33
+ return __classPrivateFieldGet(this, _MutableDependencySymbols_symbols, "f").get(exportSymbol);
34
+ }
35
+ hasExportSymbol(exportSymbol) {
36
+ return __classPrivateFieldGet(this, _MutableDependencySymbols_symbols, "f").has(exportSymbol);
37
+ }
38
+ hasLocalSymbol(local) {
39
+ return __classPrivateFieldGet(this, _MutableDependencySymbols_locals, "f").has(local);
40
+ }
41
+ exportSymbols() {
42
+ return __classPrivateFieldGet(this, _MutableDependencySymbols_symbols, "f").keys();
43
+ }
44
+ set(exportSymbol, local, loc, isWeak) {
45
+ __classPrivateFieldGet(this, _MutableDependencySymbols_locals, "f").add(local);
46
+ __classPrivateFieldGet(this, _MutableDependencySymbols_symbols, "f").set(exportSymbol, {
47
+ local,
48
+ loc,
49
+ meta: {},
50
+ isWeak: isWeak ?? false,
51
+ });
52
+ }
53
+ delete(exportSymbol) {
54
+ let existing = __classPrivateFieldGet(this, _MutableDependencySymbols_symbols, "f").get(exportSymbol);
55
+ if (!existing)
56
+ return;
57
+ __classPrivateFieldGet(this, _MutableDependencySymbols_locals, "f").delete(existing.local);
58
+ __classPrivateFieldGet(this, _MutableDependencySymbols_symbols, "f").delete(exportSymbol);
59
+ }
60
+ /*:: @@iterator(): Iterator<[Symbol, DependencyAssetSymbol]> { return ({}: any); } */
61
+ // @ts-expect-error TS2416
62
+ [(_MutableDependencySymbols_symbols = new WeakMap(), _MutableDependencySymbols_locals = new WeakMap(), Symbol.iterator)]() {
63
+ return __classPrivateFieldGet(this, _MutableDependencySymbols_symbols, "f").values();
64
+ }
65
+ }
66
+ exports.MutableDependencySymbols = MutableDependencySymbols;
67
+ class AssetSymbols {
68
+ get isCleared() {
69
+ return __classPrivateFieldGet(this, _AssetSymbols_symbols, "f").size === 0;
70
+ }
71
+ constructor(inner) {
72
+ _AssetSymbols_instances.add(this);
73
+ _AssetSymbols_symbols.set(this, void 0);
74
+ _AssetSymbols_locals.set(this, void 0);
75
+ __classPrivateFieldSet(this, _AssetSymbols_symbols, new Map(), "f");
76
+ __classPrivateFieldSet(this, _AssetSymbols_locals, new Set(), "f");
77
+ for (const { exported, local, loc } of inner || []) {
78
+ __classPrivateFieldGet(this, _AssetSymbols_instances, "m", _AssetSymbols_set).call(this, exported, local, loc);
79
+ }
80
+ }
81
+ get(exportSymbol) {
82
+ return __classPrivateFieldGet(this, _AssetSymbols_symbols, "f").get(exportSymbol);
83
+ }
84
+ hasExportSymbol(exportSymbol) {
85
+ return __classPrivateFieldGet(this, _AssetSymbols_symbols, "f").has(exportSymbol);
86
+ }
87
+ hasLocalSymbol(local) {
88
+ return __classPrivateFieldGet(this, _AssetSymbols_locals, "f").has(local);
89
+ }
90
+ exportSymbols() {
91
+ return __classPrivateFieldGet(this, _AssetSymbols_symbols, "f").keys();
92
+ }
93
+ intoNapi() {
94
+ return [];
95
+ }
96
+ /*:: @@iterator(): Iterator<[Symbol, AssetSymbol]> { return ({}: any); } */
97
+ // @ts-expect-error TS2416
98
+ [(_AssetSymbols_symbols = new WeakMap(), _AssetSymbols_locals = new WeakMap(), _AssetSymbols_instances = new WeakSet(), _AssetSymbols_set = function _AssetSymbols_set(exportSymbol, local, loc) {
99
+ __classPrivateFieldGet(this, _AssetSymbols_locals, "f").add(local);
100
+ __classPrivateFieldGet(this, _AssetSymbols_symbols, "f").set(exportSymbol, {
101
+ local,
102
+ loc,
103
+ meta: {},
104
+ });
105
+ }, Symbol.iterator)]() {
106
+ return __classPrivateFieldGet(this, _AssetSymbols_symbols, "f").values();
107
+ }
108
+ }
109
+ exports.AssetSymbols = AssetSymbols;
110
+ class MutableAssetSymbols {
111
+ get isCleared() {
112
+ return __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").size === 0;
113
+ }
114
+ constructor(inner) {
115
+ _MutableAssetSymbols_symbols.set(this, void 0);
116
+ _MutableAssetSymbols_locals.set(this, void 0);
117
+ __classPrivateFieldSet(this, _MutableAssetSymbols_symbols, new Map(), "f");
118
+ __classPrivateFieldSet(this, _MutableAssetSymbols_locals, new Set(), "f");
119
+ for (const { exported, loc, local, isEsmExport, selfReferenced, isStaticBindingSafe, } of inner || []) {
120
+ this.set(exported, local, loc, {
121
+ isEsm: isEsmExport,
122
+ isStaticBindingSafe,
123
+ selfReferenced,
124
+ });
125
+ }
126
+ }
127
+ intoNapi() {
128
+ const results = [];
129
+ for (const [exportSymbol, { local, loc, meta }] of __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").entries()) {
130
+ results.push({
131
+ exported: exportSymbol,
132
+ local,
133
+ loc: loc
134
+ ? {
135
+ filePath: loc.filePath,
136
+ start: {
137
+ line: loc.start.line,
138
+ column: loc.start.column,
139
+ },
140
+ end: {
141
+ line: loc.end.line,
142
+ column: loc.end.column,
143
+ },
144
+ }
145
+ : undefined,
146
+ isEsmExport: Boolean(meta?.isEsm),
147
+ isStaticBindingSafe: Boolean(meta?.isStaticBindingSafe),
148
+ isWeak: false,
149
+ selfReferenced: Boolean(meta?.selfReferenced),
150
+ });
151
+ }
152
+ return results;
153
+ }
154
+ ensure() {
155
+ throw new Error('MutableAssetSymbols.ensure()');
156
+ }
157
+ set(exportSymbol, local, loc, meta) {
158
+ __classPrivateFieldGet(this, _MutableAssetSymbols_locals, "f").add(local);
159
+ __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").set(exportSymbol, {
160
+ local,
161
+ loc,
162
+ meta,
163
+ });
164
+ }
165
+ get(exportSymbol) {
166
+ return __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").get(exportSymbol);
167
+ }
168
+ hasExportSymbol(exportSymbol) {
169
+ return __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").has(exportSymbol);
170
+ }
171
+ hasLocalSymbol(local) {
172
+ return __classPrivateFieldGet(this, _MutableAssetSymbols_locals, "f").has(local);
173
+ }
174
+ exportSymbols() {
175
+ return __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").keys();
176
+ }
177
+ delete(exportSymbol) {
178
+ let existing = __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").get(exportSymbol);
179
+ if (!existing)
180
+ return;
181
+ __classPrivateFieldGet(this, _MutableAssetSymbols_locals, "f").delete(existing.local);
182
+ __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").delete(exportSymbol);
183
+ }
184
+ /*:: @@iterator(): Iterator<[Symbol, AssetSymbol]> { return ({}: any); } */
185
+ // @ts-expect-error TS2416
186
+ [(_MutableAssetSymbols_symbols = new WeakMap(), _MutableAssetSymbols_locals = new WeakMap(), Symbol.iterator)]() {
187
+ return __classPrivateFieldGet(this, _MutableAssetSymbols_symbols, "f").values();
188
+ }
189
+ }
190
+ exports.MutableAssetSymbols = MutableAssetSymbols;
@@ -0,0 +1,98 @@
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 _BitFlags_kv, _BitFlags_vk;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.specifierTypeMap = exports.packageConditionsMap = exports.dependencyPriorityMap = exports.bundleBehaviorMap = exports.BitFlags = void 0;
16
+ /// BitFlags is used to map number/string types from napi types
17
+ class BitFlags {
18
+ // @ts-expect-error TS2344
19
+ constructor(source) {
20
+ // @ts-expect-error TS2344
21
+ _BitFlags_kv.set(this, void 0);
22
+ _BitFlags_vk.set(this, void 0);
23
+ __classPrivateFieldSet(this, _BitFlags_kv, source, "f");
24
+ __classPrivateFieldSet(this, _BitFlags_vk, Object.fromEntries(Object.entries(source).map((a) => a.reverse())), "f");
25
+ }
26
+ into(key) {
27
+ const found = __classPrivateFieldGet(this, _BitFlags_kv, "f")[key];
28
+ if (found === undefined) {
29
+ throw new Error(`Invalid BundleBehavior(${key})`);
30
+ }
31
+ return found;
32
+ }
33
+ intoNullable(key) {
34
+ if (key === undefined || key === null) {
35
+ return undefined;
36
+ }
37
+ return this.into(key);
38
+ }
39
+ from(key) {
40
+ const found = __classPrivateFieldGet(this, _BitFlags_vk, "f")[key];
41
+ if (found === undefined) {
42
+ throw new Error(`Invalid BundleBehavior(${key})`);
43
+ }
44
+ return found;
45
+ }
46
+ fromNullable(key) {
47
+ if (key === undefined || key === null) {
48
+ return undefined;
49
+ }
50
+ return this.from(key);
51
+ }
52
+ toArray(keys) {
53
+ let values = [];
54
+ for (let [key, value] of Object.entries(__classPrivateFieldGet(this, _BitFlags_kv, "f"))) {
55
+ if ((keys & value) !== 0) {
56
+ values.push(key);
57
+ }
58
+ }
59
+ return values;
60
+ }
61
+ }
62
+ exports.BitFlags = BitFlags;
63
+ _BitFlags_kv = new WeakMap(), _BitFlags_vk = new WeakMap();
64
+ exports.bundleBehaviorMap = new BitFlags({
65
+ inline: 0,
66
+ isolated: 1,
67
+ inlineIsolated: 2,
68
+ });
69
+ exports.dependencyPriorityMap = new BitFlags({
70
+ sync: 0,
71
+ parallel: 1,
72
+ lazy: 2,
73
+ conditional: 3,
74
+ });
75
+ // Note: The bitflags must match the bitflags in the Rust code.
76
+ // crates/atlaspack_core/src/types/package_json.rs
77
+ exports.packageConditionsMap = new BitFlags({
78
+ import: 1 << 0,
79
+ require: 1 << 1,
80
+ module: 1 << 2,
81
+ node: 1 << 3,
82
+ browser: 1 << 4,
83
+ worker: 1 << 5,
84
+ worklet: 1 << 6,
85
+ electron: 1 << 7,
86
+ development: 1 << 8,
87
+ production: 1 << 9,
88
+ types: 1 << 10,
89
+ default: 1 << 11,
90
+ style: 1 << 12,
91
+ sass: 1 << 13,
92
+ });
93
+ exports.specifierTypeMap = new BitFlags({
94
+ esm: 0,
95
+ commonjs: 1,
96
+ url: 2,
97
+ custom: 3,
98
+ });
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Dependency = void 0;
4
+ const target_1 = require("./target");
5
+ const asset_symbols_1 = require("./asset-symbols");
6
+ const bitflags_1 = require("./bitflags");
7
+ class Dependency {
8
+ get id() {
9
+ throw new Error('Dependency.id');
10
+ }
11
+ constructor(inner, env) {
12
+ this.env = env;
13
+ this.meta = inner.meta || {};
14
+ this.target = undefined;
15
+ if (inner.target) {
16
+ this.target = new target_1.Target(inner.target, this.env);
17
+ }
18
+ if (!inner.bundleBehavior) {
19
+ this.bundleBehavior = undefined;
20
+ }
21
+ else {
22
+ this.bundleBehavior = bitflags_1.bundleBehaviorMap.from(inner.bundleBehavior);
23
+ }
24
+ this.bundleBehavior = undefined;
25
+ // @ts-expect-error TS2322
26
+ this.symbols = new asset_symbols_1.MutableDependencySymbols(inner.symbols || []);
27
+ this.specifier = inner.specifier;
28
+ this.specifierType = bitflags_1.specifierTypeMap.from(inner.specifierType);
29
+ this.priority = bitflags_1.dependencyPriorityMap.from(inner.priority);
30
+ this.needsStableName = inner.needsStableName;
31
+ this.isOptional = inner.isOptional;
32
+ this.isEntry = inner.isEntry;
33
+ this.loc = inner.loc;
34
+ this.packageConditions = bitflags_1.packageConditionsMap.toArray(inner.packageConditions || []);
35
+ this.sourceAssetId = inner.sourceAssetId;
36
+ this.sourcePath = inner.sourcePath;
37
+ this.sourceAssetType = inner.sourceAssetType;
38
+ this.resolveFrom = inner.resolveFrom ?? inner.sourcePath;
39
+ this.range = inner.range;
40
+ this.pipeline = inner.pipeline;
41
+ }
42
+ }
43
+ exports.Dependency = Dependency;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Environment = void 0;
4
+ class Environment {
5
+ constructor(inner) {
6
+ // TODO
7
+ this.id = '';
8
+ this.includeNodeModules = inner.includeNodeModules;
9
+ this.context = inner.context;
10
+ this.engines = inner.engines;
11
+ this.outputFormat = inner.outputFormat;
12
+ this.sourceType = inner.sourceType;
13
+ this.isLibrary = inner.isLibrary;
14
+ this.shouldOptimize = inner.shouldOptimize;
15
+ this.shouldScopeHoist = inner.shouldScopeHoist;
16
+ this.sourceMap = inner.sourceMap;
17
+ this.loc = inner.loc;
18
+ this.unstableSingleFileOutput = false;
19
+ this.customEnv = inner.customEnv;
20
+ }
21
+ isBrowser() {
22
+ return (this.context === 'browser' ||
23
+ this.isWorker() ||
24
+ this.isTesseract() ||
25
+ this.isWorklet() ||
26
+ this.context === 'electron-renderer');
27
+ }
28
+ isNode() {
29
+ return this.context === 'node' || this.isElectron();
30
+ }
31
+ isElectron() {
32
+ return (this.context === 'electron-main' || this.context === 'electron-renderer');
33
+ }
34
+ isWorker() {
35
+ return this.context === 'web-worker' || this.context === 'service-worker';
36
+ }
37
+ isWorklet() {
38
+ return this.context === 'worklet';
39
+ }
40
+ isTesseract() {
41
+ return this.context === 'tesseract';
42
+ }
43
+ isIsolated() {
44
+ return this.isWorker() || this.isTesseract() || this.isWorklet();
45
+ }
46
+ // TODO
47
+ // eslint-disable-next-line no-unused-vars
48
+ matchesEngines(minVersions, defaultValue) {
49
+ return true;
50
+ }
51
+ // TODO
52
+ // eslint-disable-next-line no-unused-vars
53
+ supports(feature, defaultValue) {
54
+ return true;
55
+ }
56
+ }
57
+ exports.Environment = Environment;
@@ -0,0 +1,24 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./bitflags"), exports);
18
+ __exportStar(require("./dependency"), exports);
19
+ __exportStar(require("./environment"), exports);
20
+ __exportStar(require("./target"), exports);
21
+ __exportStar(require("./plugin-config"), exports);
22
+ __exportStar(require("./plugin-tracer"), exports);
23
+ __exportStar(require("./plugin-options"), exports);
24
+ __exportStar(require("./mutable-asset"), exports);