powerlines 0.19.5 → 0.21.0

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 (315) hide show
  1. package/dist/api.cjs +4 -4
  2. package/dist/api.d.cts +7 -8
  3. package/dist/api.d.ts +7 -8
  4. package/dist/api.js +3 -3
  5. package/dist/astro.cjs +10 -10
  6. package/dist/astro.d.cts +1 -2
  7. package/dist/astro.d.ts +1 -2
  8. package/dist/astro.js +7 -7
  9. package/dist/{chunk-MLAYLHZO.js → chunk-237NITCY.js} +20 -5
  10. package/dist/{chunk-5PRY6OJM.cjs → chunk-2HNC5JVK.cjs} +2 -2
  11. package/dist/{chunk-AEJIVPUZ.js → chunk-2Q2PSPZK.js} +1 -1
  12. package/dist/{chunk-JPWBN72J.js → chunk-3FS7K4DZ.js} +1 -1
  13. package/dist/{chunk-BSGWY4AP.cjs → chunk-3JH36WUJ.cjs} +2 -2
  14. package/dist/{chunk-ZOUGUAQY.cjs → chunk-44UTUCBG.cjs} +34 -16
  15. package/dist/{chunk-KMELWYHW.cjs → chunk-6XRDZOE3.cjs} +967 -664
  16. package/dist/{chunk-YQZXG4X6.cjs → chunk-7C2NEC7D.cjs} +2 -2
  17. package/dist/{chunk-GQM2JCO3.js → chunk-A5GTERYN.js} +2 -2
  18. package/dist/chunk-B4KLWFY6.cjs +32 -0
  19. package/dist/{chunk-I4LLZ5BI.js → chunk-C5TKY75S.js} +1 -1
  20. package/dist/{chunk-TK6CN2KT.cjs → chunk-DMXXNXLS.cjs} +4 -4
  21. package/dist/{chunk-MCDMY6GK.cjs → chunk-F4BD5CXH.cjs} +2 -2
  22. package/dist/chunk-GRAVJX3I.js +29 -0
  23. package/dist/chunk-HV7SHEHD.cjs +118 -0
  24. package/dist/{chunk-WJ4CZKXY.js → chunk-JKBJF3UI.js} +1 -1
  25. package/dist/{chunk-BHPTTRBA.js → chunk-L4AXJFX2.js} +32 -14
  26. package/dist/{chunk-Z63SQZUB.cjs → chunk-LKYBC6DX.cjs} +4 -4
  27. package/dist/{chunk-RR7EC4RF.js → chunk-M6XGEVJY.js} +1 -1
  28. package/dist/{chunk-PAJB5K7A.js → chunk-NZXMP4J5.js} +3 -2
  29. package/dist/{chunk-GFINPIIK.js → chunk-OZU47JET.js} +1000 -704
  30. package/dist/{chunk-FCTNMPJF.cjs → chunk-PAMSESZV.cjs} +1 -1
  31. package/dist/chunk-PDFOF6ZP.js +112 -0
  32. package/dist/{chunk-7HKTQSUG.cjs → chunk-PJP4MECA.cjs} +4 -3
  33. package/dist/{chunk-OJSRHKHW.js → chunk-QQGXARP3.js} +1 -1
  34. package/dist/{chunk-ULFJBFI7.cjs → chunk-SQANNMRF.cjs} +22 -7
  35. package/dist/{chunk-HI3LNK6Q.js → chunk-SVDPKN3U.js} +1 -1
  36. package/dist/chunk-SVF4ATJR.cjs +8 -0
  37. package/dist/{chunk-A3FMGMBV.cjs → chunk-UVM4JAR3.cjs} +2 -2
  38. package/dist/{chunk-VICSRRKQ.js → chunk-WU7I52LM.js} +2 -2
  39. package/dist/{chunk-X5LPEBDE.cjs → chunk-WYJGOC3Y.cjs} +2 -2
  40. package/dist/{chunk-LIXKMZW5.cjs → chunk-YG5ORYN2.cjs} +2 -2
  41. package/dist/{chunk-HEG6IAVR.js → chunk-ZPOCM5XZ.js} +1 -1
  42. package/dist/chunk-ZWF7LZXE.js +5 -0
  43. package/dist/config.d.cts +1 -2
  44. package/dist/config.d.ts +1 -2
  45. package/dist/esbuild.cjs +9 -9
  46. package/dist/esbuild.d.cts +1 -2
  47. package/dist/esbuild.d.ts +1 -2
  48. package/dist/esbuild.js +6 -6
  49. package/dist/farm.cjs +5 -5
  50. package/dist/farm.d.cts +1 -2
  51. package/dist/farm.d.ts +1 -2
  52. package/dist/farm.js +4 -4
  53. package/dist/{hooks-C6t50M6a.d.cts → hooks-CJ1W5lrx.d.cts} +1 -1
  54. package/dist/{hooks-Bq2jUAKs.d.ts → hooks-CNEZpkMS.d.ts} +1 -1
  55. package/dist/index.cjs +45 -287
  56. package/dist/index.d.cts +3 -4
  57. package/dist/index.d.ts +3 -4
  58. package/dist/index.js +20 -244
  59. package/dist/lib/build/esbuild.cjs +5 -5
  60. package/dist/lib/build/esbuild.d.cts +3 -5
  61. package/dist/lib/build/esbuild.d.ts +3 -5
  62. package/dist/lib/build/esbuild.js +2 -2
  63. package/dist/lib/build/index.cjs +25 -25
  64. package/dist/lib/build/index.d.cts +3 -5
  65. package/dist/lib/build/index.d.ts +3 -5
  66. package/dist/lib/build/index.js +9 -9
  67. package/dist/lib/build/rolldown.cjs +3 -3
  68. package/dist/lib/build/rolldown.d.cts +1 -3
  69. package/dist/lib/build/rolldown.d.ts +1 -3
  70. package/dist/lib/build/rolldown.js +2 -2
  71. package/dist/lib/build/rollup.cjs +3 -3
  72. package/dist/lib/build/rollup.d.cts +1 -3
  73. package/dist/lib/build/rollup.d.ts +1 -3
  74. package/dist/lib/build/rollup.js +1 -1
  75. package/dist/lib/build/rspack.cjs +2 -2
  76. package/dist/lib/build/rspack.d.cts +1 -3
  77. package/dist/lib/build/rspack.d.ts +1 -3
  78. package/dist/lib/build/rspack.js +1 -1
  79. package/dist/lib/build/tsup.cjs +6 -6
  80. package/dist/lib/build/tsup.d.cts +1 -3
  81. package/dist/lib/build/tsup.d.ts +1 -3
  82. package/dist/lib/build/tsup.js +3 -3
  83. package/dist/lib/build/unbuild.cjs +5 -5
  84. package/dist/lib/build/unbuild.d.cts +2 -4
  85. package/dist/lib/build/unbuild.d.ts +2 -4
  86. package/dist/lib/build/unbuild.js +2 -2
  87. package/dist/lib/build/vite.cjs +5 -5
  88. package/dist/lib/build/vite.d.cts +1 -3
  89. package/dist/lib/build/vite.d.ts +1 -3
  90. package/dist/lib/build/vite.js +3 -3
  91. package/dist/lib/build/webpack.cjs +2 -2
  92. package/dist/lib/build/webpack.d.cts +1 -3
  93. package/dist/lib/build/webpack.d.ts +1 -3
  94. package/dist/lib/build/webpack.js +1 -1
  95. package/dist/lib/chunk-27VJFYDM.cjs +132 -0
  96. package/dist/lib/chunk-3G4C3YAU.js +124 -0
  97. package/dist/lib/{chunk-DX4TFRS3.js → chunk-43VJVIL2.js} +976 -681
  98. package/dist/lib/{chunk-5EXW3ZRC.cjs → chunk-4FX4VOLA.cjs} +25 -4
  99. package/dist/lib/{chunk-ADKYAHF5.js → chunk-5GM5UAUO.js} +32 -12
  100. package/dist/lib/{chunk-JB2JJXGW.js → chunk-5SADLYYK.js} +1 -1
  101. package/dist/lib/{chunk-KXCEN6Y4.js → chunk-5SP6QZLX.js} +1 -1
  102. package/dist/lib/{chunk-TNHDC2ZQ.cjs → chunk-7XHBIYIN.cjs} +1 -20
  103. package/dist/lib/{chunk-SM3S7DYW.js → chunk-BHDQZ6YX.js} +12 -2
  104. package/dist/lib/{chunk-F7IDAYLH.cjs → chunk-CSJ6KNIX.cjs} +12 -9
  105. package/dist/lib/{chunk-37W2ZDLA.cjs → chunk-E2MVGKGH.cjs} +2 -2
  106. package/dist/lib/{chunk-ET5QBFGZ.cjs → chunk-FN7673NC.cjs} +2 -2
  107. package/dist/lib/{chunk-67IBLMW6.cjs → chunk-GDXHCTCX.cjs} +14 -7
  108. package/dist/lib/{chunk-ESNHFT4V.cjs → chunk-HCOHRD3Q.cjs} +26 -13
  109. package/dist/lib/{chunk-SYHVP3OW.js → chunk-HOZ37BFN.js} +23 -4
  110. package/dist/lib/{chunk-7OHD3BD4.js → chunk-HQ5YA43H.js} +12 -9
  111. package/dist/lib/{chunk-47WZIAPZ.js → chunk-IOM7GRZU.js} +5 -8
  112. package/dist/lib/{chunk-WFUO3YPK.js → chunk-L4NEN725.js} +19 -4
  113. package/dist/lib/{chunk-MVSXEH4P.cjs → chunk-LAFEAMNN.cjs} +6 -9
  114. package/dist/lib/{chunk-7Y5MJRWF.js → chunk-LIN4KAV3.js} +57 -34
  115. package/dist/lib/{chunk-LJ4WO7TW.cjs → chunk-LMO7PRBP.cjs} +35 -13
  116. package/dist/lib/{chunk-4AMFNBTX.cjs → chunk-LPA7UJIR.cjs} +956 -659
  117. package/dist/lib/{chunk-OTBLE55Z.cjs → chunk-MPCVQK2D.cjs} +12 -1
  118. package/dist/lib/{chunk-5ASXKB2V.js → chunk-QAXCBFBP.js} +1 -1
  119. package/dist/lib/{chunk-N2EGPL2L.js → chunk-T7RMV2FW.js} +25 -12
  120. package/dist/lib/{chunk-7K7JH3DF.cjs → chunk-ULJVBW4L.cjs} +19 -4
  121. package/dist/lib/{chunk-UDJ37BEE.cjs → chunk-VGSV2BEL.cjs} +57 -34
  122. package/dist/lib/{chunk-AOKLB4V2.cjs → chunk-Y2BHXV33.cjs} +1 -1
  123. package/dist/lib/{chunk-GRJJZ5VJ.js → chunk-YH5GOJS3.js} +2 -15
  124. package/dist/lib/{chunk-Q3ERHHXJ.js → chunk-YV6MDKW4.js} +13 -6
  125. package/dist/lib/{config-LK_Wl1SU.d.cts → config-7vXtXiGg.d.cts} +204 -118
  126. package/dist/lib/{config-CnPcoKqT.d.ts → config-B9aVEiiX.d.ts} +204 -118
  127. package/dist/lib/config-file.d.cts +1 -3
  128. package/dist/lib/config-file.d.ts +1 -3
  129. package/dist/lib/create-program.d.cts +1 -3
  130. package/dist/lib/create-program.d.ts +1 -3
  131. package/dist/lib/entry.cjs +9 -9
  132. package/dist/lib/entry.d.cts +1 -3
  133. package/dist/lib/entry.d.ts +1 -3
  134. package/dist/lib/entry.js +1 -1
  135. package/dist/lib/{hooks-DX1o8l6J.d.ts → hooks-BxUBzqCb.d.ts} +1 -1
  136. package/dist/lib/{hooks-BD2rDhpA.d.cts → hooks-cvv50JDh.d.cts} +1 -1
  137. package/dist/lib/index.cjs +32 -28
  138. package/dist/lib/index.d.cts +326 -7
  139. package/dist/lib/index.d.ts +326 -7
  140. package/dist/lib/index.js +8 -8
  141. package/dist/lib/logger.d.cts +1 -3
  142. package/dist/lib/logger.d.ts +1 -3
  143. package/dist/lib/typescript/compiler-host.d.cts +1 -3
  144. package/dist/lib/typescript/compiler-host.d.ts +1 -3
  145. package/dist/lib/typescript/import-transformer.d.cts +1 -3
  146. package/dist/lib/typescript/import-transformer.d.ts +1 -3
  147. package/dist/lib/typescript/index.d.cts +1 -3
  148. package/dist/lib/typescript/index.d.ts +1 -3
  149. package/dist/lib/typescript/program.d.cts +1 -3
  150. package/dist/lib/typescript/program.d.ts +1 -3
  151. package/dist/lib/unplugin/factory.cjs +5 -5
  152. package/dist/lib/unplugin/factory.d.cts +7 -9
  153. package/dist/lib/unplugin/factory.d.ts +7 -9
  154. package/dist/lib/unplugin/factory.js +4 -4
  155. package/dist/lib/unplugin/index.cjs +8 -8
  156. package/dist/lib/unplugin/index.d.cts +2 -4
  157. package/dist/lib/unplugin/index.d.ts +2 -4
  158. package/dist/lib/unplugin/index.js +5 -5
  159. package/dist/lib/unplugin/plugin.cjs +3 -3
  160. package/dist/lib/unplugin/plugin.d.cts +1 -3
  161. package/dist/lib/unplugin/plugin.d.ts +1 -3
  162. package/dist/lib/unplugin/plugin.js +2 -2
  163. package/dist/lib/unplugin/resolve-id.cjs +2 -2
  164. package/dist/lib/unplugin/resolve-id.d.cts +1 -3
  165. package/dist/lib/unplugin/resolve-id.d.ts +1 -3
  166. package/dist/lib/unplugin/resolve-id.js +1 -1
  167. package/dist/lib/utilities/bundle.cjs +4 -4
  168. package/dist/lib/utilities/bundle.d.cts +1 -3
  169. package/dist/lib/utilities/bundle.d.ts +1 -3
  170. package/dist/lib/utilities/bundle.js +3 -3
  171. package/dist/lib/utilities/cache.d.cts +1 -3
  172. package/dist/lib/utilities/cache.d.ts +1 -3
  173. package/dist/lib/utilities/file-header.d.cts +1 -3
  174. package/dist/lib/utilities/file-header.d.ts +1 -3
  175. package/dist/lib/utilities/index.cjs +14 -14
  176. package/dist/lib/utilities/index.d.cts +1 -3
  177. package/dist/lib/utilities/index.d.ts +1 -3
  178. package/dist/lib/utilities/index.js +5 -5
  179. package/dist/lib/utilities/meta.cjs +8 -8
  180. package/dist/lib/utilities/meta.d.cts +1 -3
  181. package/dist/lib/utilities/meta.d.ts +1 -3
  182. package/dist/lib/utilities/meta.js +1 -1
  183. package/dist/lib/utilities/resolve-path.d.cts +1 -3
  184. package/dist/lib/utilities/resolve-path.d.ts +1 -3
  185. package/dist/lib/utilities/resolve.cjs +5 -5
  186. package/dist/lib/utilities/resolve.d.cts +1 -3
  187. package/dist/lib/utilities/resolve.d.ts +1 -3
  188. package/dist/lib/utilities/resolve.js +4 -4
  189. package/dist/lib/utilities/source-file.d.cts +1 -3
  190. package/dist/lib/utilities/source-file.d.ts +1 -3
  191. package/dist/lib/utilities/source-map.d.cts +1 -3
  192. package/dist/lib/utilities/source-map.d.ts +1 -3
  193. package/dist/lib/utilities/worker.d.cts +1 -3
  194. package/dist/lib/utilities/worker.d.ts +1 -3
  195. package/dist/lib/utilities/write-file.d.cts +1 -3
  196. package/dist/lib/utilities/write-file.d.ts +1 -3
  197. package/dist/next.cjs +9 -9
  198. package/dist/next.js +6 -6
  199. package/dist/nuxt.cjs +11 -11
  200. package/dist/nuxt.js +8 -8
  201. package/dist/plugin-utils/{chunk-YKIS7BLU.cjs → chunk-5MO4BCOW.cjs} +24 -0
  202. package/dist/plugin-utils/{chunk-HHFA3IEZ.js → chunk-CYVV2MB7.js} +24 -0
  203. package/dist/plugin-utils/{chunk-75UVEMIV.cjs → chunk-DZZPNO5H.cjs} +2 -2
  204. package/dist/plugin-utils/{chunk-WEIEQXIJ.cjs → chunk-ECFS7DPV.cjs} +5 -5
  205. package/dist/plugin-utils/{chunk-MQOW6ENT.cjs → chunk-F65J5WOX.cjs} +1 -1
  206. package/dist/plugin-utils/{chunk-IHME6YWJ.js → chunk-GV7O3E7P.js} +1 -1
  207. package/dist/plugin-utils/chunk-J33TXWF6.js +12 -0
  208. package/dist/plugin-utils/{chunk-PK6PYFWY.js → chunk-L277XSSN.js} +1 -1
  209. package/dist/plugin-utils/{chunk-YDYJAGMP.js → chunk-QKMG6ZAU.js} +1 -1
  210. package/dist/plugin-utils/chunk-QP6OJWFG.cjs +14 -0
  211. package/dist/plugin-utils/{chunk-5TL6KEQ5.cjs → chunk-UNAGYQRB.cjs} +4 -4
  212. package/dist/plugin-utils/{chunk-432MQOUZ.js → chunk-XIXI67PY.js} +1 -1
  213. package/dist/plugin-utils/{config-48EWGWXq.d.cts → config-BzVVjChJ.d.cts} +201 -115
  214. package/dist/plugin-utils/{config-48EWGWXq.d.ts → config-BzVVjChJ.d.ts} +201 -115
  215. package/dist/plugin-utils/enforce.cjs +5 -5
  216. package/dist/plugin-utils/enforce.d.cts +1 -3
  217. package/dist/plugin-utils/enforce.d.ts +1 -3
  218. package/dist/plugin-utils/enforce.js +4 -4
  219. package/dist/plugin-utils/extend.cjs +4 -4
  220. package/dist/plugin-utils/extend.d.cts +1 -3
  221. package/dist/plugin-utils/extend.d.ts +1 -3
  222. package/dist/plugin-utils/extend.js +3 -3
  223. package/dist/plugin-utils/get-config-path.cjs +2 -2
  224. package/dist/plugin-utils/get-config-path.d.cts +2 -4
  225. package/dist/plugin-utils/get-config-path.d.ts +2 -4
  226. package/dist/plugin-utils/get-config-path.js +1 -1
  227. package/dist/plugin-utils/helpers.cjs +14 -14
  228. package/dist/plugin-utils/helpers.d.cts +3 -5
  229. package/dist/plugin-utils/helpers.d.ts +3 -5
  230. package/dist/plugin-utils/helpers.js +1 -1
  231. package/dist/plugin-utils/index.cjs +24 -24
  232. package/dist/plugin-utils/index.d.cts +1 -3
  233. package/dist/plugin-utils/index.d.ts +1 -3
  234. package/dist/plugin-utils/index.js +6 -6
  235. package/dist/plugin-utils/merge.cjs +3 -3
  236. package/dist/plugin-utils/merge.d.cts +1 -3
  237. package/dist/plugin-utils/merge.d.ts +1 -3
  238. package/dist/plugin-utils/merge.js +2 -2
  239. package/dist/plugin-utils/paths.cjs +2 -2
  240. package/dist/plugin-utils/paths.d.cts +4 -5
  241. package/dist/plugin-utils/paths.d.ts +4 -5
  242. package/dist/plugin-utils/paths.js +1 -1
  243. package/dist/{resolved-B41SbjnS.d.cts → resolved-D8vIizyA.d.cts} +81 -66
  244. package/dist/{resolved-J7a2Aeuk.d.ts → resolved-DWxXKJYy.d.ts} +81 -66
  245. package/dist/rolldown.cjs +8 -8
  246. package/dist/rolldown.d.cts +1 -2
  247. package/dist/rolldown.d.ts +1 -2
  248. package/dist/rolldown.js +5 -5
  249. package/dist/rollup.cjs +8 -8
  250. package/dist/rollup.d.cts +1 -2
  251. package/dist/rollup.d.ts +1 -2
  252. package/dist/rollup.js +5 -5
  253. package/dist/rspack.cjs +8 -8
  254. package/dist/rspack.d.cts +1 -2
  255. package/dist/rspack.d.ts +1 -2
  256. package/dist/rspack.js +5 -5
  257. package/dist/tsup.cjs +10 -10
  258. package/dist/tsup.js +7 -7
  259. package/dist/types/babel.d.cts +1 -2
  260. package/dist/types/babel.d.ts +1 -2
  261. package/dist/types/build.d.cts +94 -7
  262. package/dist/types/build.d.ts +94 -7
  263. package/dist/types/commands.cjs +2 -2
  264. package/dist/types/commands.d.cts +1 -2
  265. package/dist/types/commands.d.ts +1 -2
  266. package/dist/types/commands.js +1 -1
  267. package/dist/types/config.d.cts +1 -2
  268. package/dist/types/config.d.ts +1 -2
  269. package/dist/types/context.d.cts +2 -3
  270. package/dist/types/context.d.ts +2 -3
  271. package/dist/types/hooks.d.cts +1 -2
  272. package/dist/types/hooks.d.ts +1 -2
  273. package/dist/types/index.cjs +6 -22
  274. package/dist/types/index.d.cts +2 -3
  275. package/dist/types/index.d.ts +2 -3
  276. package/dist/types/index.js +2 -2
  277. package/dist/types/internal.d.cts +2 -3
  278. package/dist/types/internal.d.ts +2 -3
  279. package/dist/types/plugin.d.cts +1 -2
  280. package/dist/types/plugin.d.ts +1 -2
  281. package/dist/types/resolved.d.cts +1 -2
  282. package/dist/types/resolved.d.ts +1 -2
  283. package/dist/types/unplugin.d.cts +1 -2
  284. package/dist/types/unplugin.d.ts +1 -2
  285. package/dist/types/vfs.cjs +4 -20
  286. package/dist/types/vfs.d.cts +47 -54
  287. package/dist/types/vfs.d.ts +47 -54
  288. package/dist/types/vfs.js +1 -1
  289. package/dist/unloader.cjs +8 -8
  290. package/dist/unloader.d.cts +3 -4
  291. package/dist/unloader.d.ts +3 -4
  292. package/dist/unloader.js +5 -5
  293. package/dist/unplugin.cjs +20 -20
  294. package/dist/unplugin.d.cts +4 -5
  295. package/dist/unplugin.d.ts +4 -5
  296. package/dist/unplugin.js +17 -17
  297. package/dist/vite.cjs +9 -9
  298. package/dist/vite.d.cts +1 -2
  299. package/dist/vite.d.ts +1 -2
  300. package/dist/vite.js +6 -6
  301. package/dist/webpack.cjs +8 -8
  302. package/dist/webpack.d.cts +1 -2
  303. package/dist/webpack.d.ts +1 -2
  304. package/dist/webpack.js +5 -5
  305. package/package.json +8 -6
  306. package/dist/chunk-CWCEYGLM.js +0 -43
  307. package/dist/chunk-F5NKLRZD.cjs +0 -49
  308. package/dist/chunk-OBYFBPPO.js +0 -9
  309. package/dist/chunk-RDMLGFIT.js +0 -29
  310. package/dist/chunk-RF6RSWD4.cjs +0 -16
  311. package/dist/chunk-XDLLDHRY.cjs +0 -32
  312. package/dist/lib/chunk-POOHWK7C.cjs +0 -63
  313. package/dist/lib/chunk-VLHOYZG2.js +0 -55
  314. package/dist/plugin-utils/chunk-2HFS2OOG.cjs +0 -14
  315. package/dist/plugin-utils/chunk-CVZA2RT3.js +0 -12
@@ -21,13 +21,11 @@ import { Jiti } from 'jiti';
21
21
  import MagicString, { SourceMap } from 'magic-string';
22
22
  import { ParserOptions, ParseResult } from 'oxc-parser';
23
23
  import { Range } from 'semver';
24
- import { TransformResult as TransformResult$1, ExternalIdResult, HookFilter, UnpluginOptions, UnpluginContext, UnpluginBuildContext, UnpluginMessage } from 'unplugin';
24
+ import { TransformResult as TransformResult$1, ExternalIdResult, HookFilter, UnpluginOptions, UnpluginContext, UnpluginMessage, UnpluginBuildContext } from 'unplugin';
25
25
  import { ArrayValues } from '@stryke/types/array';
26
26
  import { P as ParsedTypeScriptConfig, T as TSConfig } from './tsconfig-Bz-CiFqD.cjs';
27
27
  import { PrimitiveJsonValue } from '@stryke/json/types';
28
- import { Volume } from 'memfs';
29
28
  import { PathLike, StatSyncOptions, Stats, RmDirOptions, RmOptions, Mode, MakeDirectoryOptions as MakeDirectoryOptions$1, PathOrFileDescriptor, WriteFileOptions as WriteFileOptions$1 } from 'node:fs';
30
- import { IUnionFs } from 'unionfs';
31
29
 
32
30
  type UnpluginBuildVariant = "rollup" | "webpack" | "rspack" | "vite" | "esbuild" | "farm" | "unloader" | "rolldown";
33
31
  type BuildVariant = UnpluginBuildVariant | "tsup" | "unbuild";
@@ -39,6 +37,87 @@ interface BuildConfig {
39
37
  * @defaultValue "neutral"
40
38
  */
41
39
  platform?: "node" | "browser" | "neutral";
40
+ /**
41
+ * Array of strings indicating the polyfills to include for the build.
42
+ *
43
+ * @remarks
44
+ * This option allows you to specify which polyfills should be included in the build process to ensure compatibility with the target environment. The paths for the polyfills can use placeholder tokens (the `replacePathTokens` helper function will be used to resolve the actual values).
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * {
49
+ * polyfill: ['{projectRoot}/custom-polyfill.ts']
50
+ * }
51
+ * ```
52
+ */
53
+ polyfill?: string[];
54
+ /**
55
+ * Array of strings indicating the order in which fields in a package.json file should be resolved to determine the entry point for a module.
56
+ *
57
+ * @defaultValue `['browser', 'module', 'jsnext:main', 'jsnext']`
58
+ */
59
+ mainFields?: string[];
60
+ /**
61
+ * Array of strings indicating what conditions should be used for module resolution.
62
+ */
63
+ conditions?: string[];
64
+ /**
65
+ * Array of strings indicating what file extensions should be used for module resolution.
66
+ *
67
+ * @defaultValue `['.mjs', '.js', '.mts', '.ts', '.jsx', '.tsx', '.json']`
68
+ */
69
+ extensions?: string[];
70
+ /**
71
+ * Array of strings indicating what modules should be deduplicated to a single version in the build.
72
+ *
73
+ * @remarks
74
+ * This option is useful for ensuring that only one version of a module is included in the bundle, which can help reduce bundle size and avoid conflicts.
75
+ */
76
+ dedupe?: string[];
77
+ /**
78
+ * Array of strings or regular expressions that indicate what modules are builtin for the environment.
79
+ */
80
+ builtins?: (string | RegExp)[];
81
+ /**
82
+ * Define global variable replacements.
83
+ *
84
+ * @remarks
85
+ * This option allows you to specify global constants that will be replaced in the code during the build process. It is similar to the `define` option in esbuild and Vite, enabling you to replace specific identifiers with constant expressions at build time.
86
+ *
87
+ * @example
88
+ * ```ts
89
+ * {
90
+ * define: {
91
+ * __VERSION__: '"1.0.0"',
92
+ * __DEV__: 'process.env.NODE_ENV !== "production"'
93
+ * }
94
+ * }
95
+ * ```
96
+ *
97
+ * @see https://esbuild.github.io/api/#define
98
+ * @see https://vitejs.dev/config/build-options.html#define
99
+ * @see https://github.com/rollup/plugins/tree/master/packages/replace
100
+ */
101
+ define?: Record<string, any>;
102
+ /**
103
+ * Global variables that will have import statements injected where necessary
104
+ *
105
+ * @remarks
106
+ * This option allows you to specify global variables that should be automatically imported from specified modules whenever they are used in the code. This is particularly useful for polyfilling Node.js globals in a browser environment.
107
+ *
108
+ * @example
109
+ * ```ts
110
+ * {
111
+ * inject: {
112
+ * process: 'process/browser',
113
+ * Buffer: ['buffer', 'Buffer'],
114
+ * }
115
+ * }
116
+ * ```
117
+ *
118
+ * @see https://github.com/rollup/plugins/tree/master/packages/inject
119
+ */
120
+ inject?: Record<string, string | string[]>;
42
121
  /**
43
122
  * The alias mappings to use for module resolution during the build process.
44
123
  *
@@ -54,8 +133,13 @@ interface BuildConfig {
54
133
  * }
55
134
  * }
56
135
  * ```
136
+ *
137
+ * @see https://github.com/rollup/plugins/tree/master/packages/alias
57
138
  */
58
- alias?: Record<string, string>;
139
+ alias?: Record<string, string> | Array<{
140
+ find: string | RegExp;
141
+ replacement: string;
142
+ }>;
59
143
  /**
60
144
  * A list of modules that should not be bundled, even if they are external dependencies.
61
145
  *
@@ -72,15 +156,16 @@ interface BuildConfig {
72
156
  */
73
157
  skipNodeModulesBundle?: boolean;
74
158
  /**
75
- * Should the Powerlines processes skip the `"prepare"` task prior to building?
159
+ * An optional set of override options to apply to the selected build variant.
76
160
  *
77
- * @defaultValue false
161
+ * @remarks
162
+ * This option allows you to provide configuration options with the guarantee that they will **not** be overridden and will take precedence over other build configurations.
78
163
  */
79
- skipPrepare?: boolean;
164
+ override?: Record<string, any>;
80
165
  }
81
- type BuildResolvedConfig = BuildConfig;
82
- type ESBuildBuildConfig = Omit<BuildOptions, "entryPoints" | "sourceRoot" | "platform" | "outdir" | "env" | "assets" | "external" | "tsconfig" | "tsconfigRaw" | "logLevel"> & BuildConfig;
83
- type ESBuildResolvedBuildConfig = BuildOptions & BuildResolvedConfig;
166
+ type BuildResolvedConfig = Omit<BuildConfig, "override">;
167
+ type ESBuildBuildConfig = Omit<BuildOptions, "entryPoints" | "sourceRoot" | "platform" | "outdir" | "env" | "assets" | "external" | "inject" | "tsconfig" | "tsconfigRaw" | "logLevel"> & BuildConfig;
168
+ type ESBuildResolvedBuildConfig = Omit<BuildOptions, "inject"> & BuildResolvedConfig;
84
169
  type ViteBuildConfig = Omit<UserConfig$1, "entry" | "entryPoints" | "tsconfig" | "tsconfigRaw" | "environments" | "output"> & BuildConfig;
85
170
  type ViteResolvedBuildConfig = UserConfig$1 & BuildResolvedConfig;
86
171
  type WebpackBuildConfig = Omit<Configuration, "name" | "entry" | "entryPoints" | "tsconfig" | "tsconfigRaw"> & BuildConfig;
@@ -104,7 +189,7 @@ type UnbuildResolvedBuildConfig = UnbuildOptions & BuildResolvedConfig;
104
189
  type FarmBuildConfig = Partial<Omit<UserConfig$2, "tsconfig" | "tsconfigRaw" | "assets" | "outputPath" | "mode" | "format" | "platform" | "projectRoot" | "env" | "entry" | "entryPoints">> & BuildConfig;
105
190
  type FarmResolvedBuildConfig = UserConfig$2 & BuildResolvedConfig;
106
191
 
107
- declare const SUPPORTED_COMMANDS: readonly ["new", "clean", "prepare", "lint", "test", "build", "docs", "release", "finalize"];
192
+ declare const SUPPORTED_COMMANDS: readonly ["new", "clean", "prepare", "lint", "test", "build", "docs", "deploy", "finalize"];
108
193
  type CommandType = ArrayValues<typeof SUPPORTED_COMMANDS>;
109
194
 
110
195
  interface ResolvedEntryTypeDefinition extends TypeDefinition {
@@ -117,7 +202,7 @@ interface ResolvedEntryTypeDefinition extends TypeDefinition {
117
202
  */
118
203
  output?: string;
119
204
  }
120
- type EnvironmentResolvedConfig = Omit<EnvironmentConfig, "consumer" | "mode" | "ssr" | "preview" | "mainFields" | "extensions"> & Required<Pick<EnvironmentConfig, "consumer" | "mode" | "ssr" | "mainFields" | "extensions">> & {
205
+ type EnvironmentResolvedConfig = Omit<EnvironmentConfig, "consumer" | "mode" | "ssr" | "preview"> & Required<Pick<EnvironmentConfig, "consumer" | "mode" | "ssr">> & {
121
206
  /**
122
207
  * The name of the environment
123
208
  */
@@ -134,7 +219,7 @@ type OutputResolvedConfig = Required<Omit<OutputConfig, "assets"> & {
134
219
  /**
135
220
  * The resolved options for the Powerlines project configuration.
136
221
  */
137
- type ResolvedConfig<TUserConfig extends UserConfig = UserConfig> = Omit<TUserConfig, "name" | "title" | "plugins" | "mode" | "environments" | "platform" | "tsconfig" | "lint" | "test" | "build" | "transform" | "override" | "root" | "variant" | "type" | "output" | "logLevel" | "framework"> & Required<Pick<TUserConfig, "name" | "title" | "plugins" | "mode" | "environments" | "tsconfig" | "lint" | "test" | "build" | "transform" | "override" | "framework">> & {
222
+ type ResolvedConfig<TUserConfig extends UserConfig = UserConfig> = Omit<TUserConfig, "name" | "title" | "plugins" | "mode" | "environments" | "platform" | "tsconfig" | "lint" | "test" | "build" | "transform" | "deploy" | "variant" | "type" | "output" | "logLevel" | "framework"> & Required<Pick<TUserConfig, "name" | "title" | "plugins" | "mode" | "environments" | "tsconfig" | "lint" | "test" | "build" | "transform" | "deploy" | "framework">> & {
138
223
  /**
139
224
  * The configuration options that were provided inline to the Powerlines CLI.
140
225
  */
@@ -165,6 +250,13 @@ type ResolvedConfig<TUserConfig extends UserConfig = UserConfig> = Omit<TUserCon
165
250
  * The output configuration options to use for the build process
166
251
  */
167
252
  output: OutputResolvedConfig;
253
+ /**
254
+ * Configuration provided to build processes
255
+ *
256
+ * @remarks
257
+ * This configuration can be used by plugins during the `build` command. It will generally contain options specific to the selected {@link BuildVariant | build variant}.
258
+ */
259
+ build: Omit<TUserConfig["build"], "override"> & Required<Pick<Required<TUserConfig["build"]>, "override">>;
168
260
  /**
169
261
  * The log level to use for the Powerlines processes.
170
262
  *
@@ -205,6 +297,10 @@ interface GenerateTypesResult {
205
297
  directives?: string[];
206
298
  code: string;
207
299
  }
300
+ type DeepPartial<T> = {
301
+ [K in keyof T]?: DeepPartial<T[K]>;
302
+ };
303
+ type ConfigResult<TContext extends PluginContext = PluginContext> = DeepPartial<TContext["config"]> & Record<string, any>;
208
304
  interface BasePluginHookFunctions<TContext extends PluginContext = PluginContext> extends Record<CommandType, (this: TContext) => MaybePromise<void>> {
209
305
  /**
210
306
  * A function that returns configuration options to be merged with the build context's options.
@@ -220,7 +316,7 @@ interface BasePluginHookFunctions<TContext extends PluginContext = PluginContext
220
316
  * @param config - The partial configuration object to be modified.
221
317
  * @returns A promise that resolves to a partial configuration object.
222
318
  */
223
- config: (this: Context<TContext["config"]>) => MaybePromise<Partial<TContext["config"]["userConfig"]>>;
319
+ config: (this: UnresolvedContext<TContext["config"]>) => MaybePromise<ConfigResult<TContext>>;
224
320
  /**
225
321
  * Modify environment configs before it's resolved. The hook can either mutate the passed-in environment config directly, or return a partial config object that will be deeply merged into existing config.
226
322
  *
@@ -328,7 +424,7 @@ type PluginHooks<TContext extends PluginContext = PluginContext> = {
328
424
  * @param config - The partial configuration object to be modified.
329
425
  * @returns A promise that resolves to a partial configuration object.
330
426
  */
331
- config: PluginHook<(this: Context<TContext["config"]>) => MaybePromise<Partial<TContext["config"]["userConfig"]>>> | Partial<TContext["config"]["userConfig"]>;
427
+ config: PluginHook<(this: UnresolvedContext<TContext["config"]>) => MaybePromise<ConfigResult<TContext>>> | ConfigResult<TContext>;
332
428
  /**
333
429
  * A hook that is called to transform the source code.
334
430
  *
@@ -436,11 +532,8 @@ type InferHookHandler<TContext extends PluginContext, TKey extends HookKeys<TCon
436
532
  type InferHookReturnType<TContext extends PluginContext, TKey extends HookKeys<TContext>> = ReturnType<InferHookHandler<TContext, TKey>> extends Promise<infer U> ? U extends Promise<infer V> ? V : U : ReturnType<InferHookHandler<TContext, TKey>>;
437
533
  type InferHookParameters<TContext extends PluginContext, TKey extends HookKeys<TContext>> = Parameters<InferHookHandler<TContext, TKey>>;
438
534
 
439
- declare const __VFS_INIT__ = "__VFS_INIT__";
440
- declare const __VFS_REVERT__ = "__VFS_REVERT__";
441
- declare const __VFS_CACHE__ = "__VFS_CACHE__";
442
- declare const __VFS_VIRTUAL__ = "__VFS_VIRTUAL__";
443
- declare const __VFS_UNIFIED__ = "__VFS_UNIFIED__";
535
+ declare const __VFS_PATCH__: unique symbol;
536
+ declare const __VFS_REVERT__: unique symbol;
444
537
  type OutputModeType = "fs" | "virtual";
445
538
  interface VirtualFile {
446
539
  /**
@@ -480,7 +573,24 @@ interface VirtualFile {
480
573
  */
481
574
  code: string | NodeJS.ArrayBufferView;
482
575
  }
483
- type VirtualFileSystemMetadata = Pick<VirtualFile, "id" | "details" | "variant" | "mode">;
576
+ interface VirtualFileMetadata {
577
+ /**
578
+ * The identifier for the file data.
579
+ */
580
+ id: string;
581
+ /**
582
+ * The variant of the file.
583
+ */
584
+ variant: string;
585
+ /**
586
+ * The output mode of the file.
587
+ */
588
+ mode: string;
589
+ /**
590
+ * Additional metadata associated with the file.
591
+ */
592
+ properties: Record<string, string>;
593
+ }
484
594
  interface ResolveFSOptions {
485
595
  mode?: OutputModeType;
486
596
  }
@@ -509,12 +619,18 @@ interface ResolvePathOptions extends ResolveFSOptions {
509
619
  type?: "file" | "directory";
510
620
  }
511
621
  interface VirtualFileSystemInterface {
512
- [__VFS_INIT__]: () => void;
622
+ /**
623
+ * Patches the File System to include the virtual file system (VFS) contents.
624
+ */
625
+ [__VFS_PATCH__]: () => void;
626
+ /**
627
+ * Reverts the virtual file system (VFS) to its previous state.
628
+ */
513
629
  [__VFS_REVERT__]: () => void;
514
630
  /**
515
631
  * The underlying file metadata.
516
632
  */
517
- meta: Record<string, VirtualFileSystemMetadata | undefined>;
633
+ metadata: Record<string, VirtualFileMetadata | undefined>;
518
634
  /**
519
635
  * A map of module ids to their file paths.
520
636
  */
@@ -534,7 +650,7 @@ interface VirtualFileSystemInterface {
534
650
  * @param options - Optional parameters for resolving the path.
535
651
  * @returns Whether the path or id corresponds to a file written to the file system **(actually exists on disk)**.
536
652
  */
537
- isFs: (pathOrId: string, options?: ResolvePathOptions) => boolean;
653
+ isPhysical: (pathOrId: string, options?: ResolvePathOptions) => boolean;
538
654
  /**
539
655
  * Checks if a file exists in the virtual file system (VFS).
540
656
  *
@@ -549,15 +665,6 @@ interface VirtualFileSystemInterface {
549
665
  * @returns `true` if the directory exists, otherwise `false`.
550
666
  */
551
667
  isDirectory: (path: string) => boolean;
552
- /**
553
- * Check if a path exists within one of the directories specified in the tsconfig.json's `path` field.
554
- *
555
- * @see https://www.typescriptlang.org/tsconfig#paths
556
- *
557
- * @param pathOrId - The path or id to check.
558
- * @returns Whether the path or id corresponds to a virtual file.
559
- */
560
- isTsconfigPath: (pathOrId: string) => boolean;
561
668
  /**
562
669
  * Checks if a file exists in the virtual file system (VFS).
563
670
  *
@@ -571,7 +678,7 @@ interface VirtualFileSystemInterface {
571
678
  * @param pathOrId - The path or id of the file.
572
679
  * @returns The metadata of the file if it exists, otherwise undefined.
573
680
  */
574
- getMetadata: (pathOrId: PathLike) => VirtualFileSystemMetadata | undefined;
681
+ getMetadata: (pathOrId: PathLike) => VirtualFileMetadata | undefined;
575
682
  /**
576
683
  * Gets the stats of a file in the virtual file system (VFS).
577
684
  *
@@ -779,23 +886,12 @@ interface VirtualFileSystemInterface {
779
886
  */
780
887
  resolve: (pathOrId: string, options?: ResolvePathOptions) => string | false;
781
888
  /**
782
- * Resolves a path based on TypeScript's `tsconfig.json` paths.
783
- *
784
- * @see https://www.typescriptlang.org/tsconfig#paths
889
+ * Formats a path to match the virtual file system (VFS) structure.
785
890
  *
786
- * @param path - The path to check.
787
- * @returns The resolved file path if it exists, otherwise undefined.
891
+ * @param path - The path to format.
892
+ * @returns The formatted path.
788
893
  */
789
- resolveTsconfigPath: (path: string) => string | false;
790
- /**
791
- * Resolves a package name based on TypeScript's `tsconfig.json` paths.
792
- *
793
- * @see https://www.typescriptlang.org/tsconfig#paths
794
- *
795
- * @param path - The path to check.
796
- * @returns The resolved package name if it exists, otherwise undefined.
797
- */
798
- resolveTsconfigPathPackage: (path: string) => string | false;
894
+ formatPath: (path: string) => string;
799
895
  /**
800
896
  * Resolves a path or id to a file path in the virtual file system.
801
897
  *
@@ -804,23 +900,9 @@ interface VirtualFileSystemInterface {
804
900
  */
805
901
  realpathSync: (pathOrId: string) => string;
806
902
  /**
807
- * Retrieves a partial metadata mapping of all files in the virtual file system (VFS).
808
- *
809
- * @returns A record mapping file paths to their partial metadata.
810
- */
811
- getPartialMeta: () => Record<string, Partial<VirtualFileSystemMetadata>>;
812
- /**
813
- * A map of cached file paths to their underlying file content.
814
- */
815
- [__VFS_CACHE__]: Map<string, string>;
816
- /**
817
- * A reference to the underlying virtual file system.
818
- */
819
- [__VFS_VIRTUAL__]: Volume;
820
- /**
821
- * A reference to the underlying unified file system.
903
+ * Disposes of the virtual file system (VFS), writes any virtual file changes to disk, and releases any associated resources.
822
904
  */
823
- [__VFS_UNIFIED__]: IUnionFs;
905
+ dispose: () => Promise<void>;
824
906
  }
825
907
 
826
908
  type WorkerProcess<TExposedMethods extends ReadonlyArray<string>> = {
@@ -854,14 +936,6 @@ interface MetaInfo {
854
936
  * A hash that represents the path to the project root directory
855
937
  */
856
938
  configHash: string;
857
- /**
858
- * A mapping of runtime ids to their corresponding file paths
859
- */
860
- builtinIdMap: Record<string, string>;
861
- /**
862
- * A mapping of virtual file paths to their corresponding file contents
863
- */
864
- virtualFiles: Record<string, string | null>;
865
939
  }
866
940
  interface Resolver extends Jiti {
867
941
  plugin: Jiti;
@@ -902,7 +976,13 @@ interface InitContextOptions {
902
976
  */
903
977
  isHighPriority: boolean;
904
978
  }
905
- interface Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
979
+ /**
980
+ * The unresolved Powerlines context.
981
+ *
982
+ * @remarks
983
+ * This context is used before the user configuration has been fully resolved after the `config`.
984
+ */
985
+ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
906
986
  /**
907
987
  * The Storm workspace configuration
908
988
  */
@@ -910,7 +990,10 @@ interface Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
910
990
  /**
911
991
  * An object containing the options provided to Powerlines
912
992
  */
913
- config: TResolvedConfig;
993
+ config: Omit<TResolvedConfig["userConfig"], "build" | "output"> & Required<Pick<TResolvedConfig["userConfig"], "build" | "output">> & {
994
+ projectRoot: NonUndefined<TResolvedConfig["userConfig"]["root"]>;
995
+ output: TResolvedConfig["output"];
996
+ };
914
997
  /**
915
998
  * A logging function for the Powerlines engine
916
999
  */
@@ -1067,6 +1150,12 @@ interface Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
1067
1150
  */
1068
1151
  extendLog: (name: string) => LogFn;
1069
1152
  }
1153
+ type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = Omit<UnresolvedContext<TResolvedConfig>, "config"> & {
1154
+ /**
1155
+ * The fully resolved Powerlines configuration
1156
+ */
1157
+ config: TResolvedConfig;
1158
+ };
1070
1159
  interface APIContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends Context<TResolvedConfig> {
1071
1160
  /**
1072
1161
  * The expected plugins options for the Powerlines project.
@@ -1301,24 +1390,33 @@ interface BaseConfig {
1301
1390
  * The entry point(s) for the application
1302
1391
  */
1303
1392
  entry?: TypeDefinitionParameter | TypeDefinitionParameter[];
1393
+ /**
1394
+ * Configuration for the output of the build process
1395
+ */
1396
+ output?: OutputConfig;
1304
1397
  /**
1305
1398
  * Configuration for linting the source code
1399
+ *
1400
+ * @remarks
1401
+ * If set to `false`, linting will be disabled.
1306
1402
  */
1307
1403
  lint?: Record<string, any> | false;
1308
1404
  /**
1309
1405
  * Configuration for testing the source code
1406
+ *
1407
+ * @remarks
1408
+ * If set to `false`, testing will be disabled.
1310
1409
  */
1311
1410
  test?: Record<string, any> | false;
1312
- /**
1313
- * Configuration for the output of the build process
1314
- */
1315
- output?: OutputConfig;
1316
1411
  /**
1317
1412
  * Configuration for the transformation of the source code
1318
1413
  */
1319
1414
  transform?: Record<string, any>;
1320
1415
  /**
1321
- * Options to to provide to the build process
1416
+ * Configuration provided to build processes
1417
+ *
1418
+ * @remarks
1419
+ * This configuration can be used by plugins during the `build` command. It will generally contain options specific to the selected {@link BuildVariant | build variant}.
1322
1420
  */
1323
1421
  build?: BuildConfig;
1324
1422
  /**
@@ -1328,6 +1426,13 @@ interface BaseConfig {
1328
1426
  * This configuration will be used by the documentation generation plugins during the `docs` command.
1329
1427
  */
1330
1428
  docs?: Record<string, any>;
1429
+ /**
1430
+ * Configuration for deploying the source code
1431
+ *
1432
+ * @remarks
1433
+ * If set to `false`, the deployment will be disabled.
1434
+ */
1435
+ deploy?: Record<string, any> | false;
1331
1436
  /**
1332
1437
  * The path to the tsconfig file to be used by the compiler
1333
1438
  *
@@ -1348,37 +1453,6 @@ interface BaseConfig {
1348
1453
  tsconfigRaw?: TSConfig;
1349
1454
  }
1350
1455
  interface EnvironmentConfig extends BaseConfig {
1351
- /**
1352
- * Array of strings indicating the order in which fields in a package.json file should be resolved to determine the entry point for a module.
1353
- *
1354
- * @defaultValue `['browser', 'module', 'jsnext:main', 'jsnext']`
1355
- */
1356
- mainFields?: string[];
1357
- /**
1358
- * Array of strings indicating what conditions should be used for module resolution.
1359
- */
1360
- conditions?: string[];
1361
- /**
1362
- * Array of strings indicating what conditions should be used for external modules.
1363
- */
1364
- externalConditions?: string[];
1365
- /**
1366
- * Array of strings indicating what file extensions should be used for module resolution.
1367
- *
1368
- * @defaultValue `['.mjs', '.js', '.mts', '.ts', '.jsx', '.tsx', '.json']`
1369
- */
1370
- extensions?: string[];
1371
- /**
1372
- * Array of strings indicating what modules should be deduplicated to a single version in the build.
1373
- *
1374
- * @remarks
1375
- * This option is useful for ensuring that only one version of a module is included in the bundle, which can help reduce bundle size and avoid conflicts.
1376
- */
1377
- dedupe?: string[];
1378
- /**
1379
- * Array of strings or regular expressions that indicate what modules are builtin for the environment.
1380
- */
1381
- builtins?: (string | RegExp)[];
1382
1456
  /**
1383
1457
  * Configuration options for the preview server
1384
1458
  */
@@ -1451,14 +1525,26 @@ interface CommonUserConfig extends BaseConfig {
1451
1525
  */
1452
1526
  framework?: string;
1453
1527
  }
1454
- type UserConfig<TBuildConfig extends BuildConfig = BuildConfig, TBuildResolvedConfig extends BuildResolvedConfig = BuildResolvedConfig, TBuildVariant extends string = any> = CommonUserConfig & {
1455
- build?: TBuildConfig & {
1528
+ type UserConfig<TBuildConfig extends BuildConfig = BuildConfig, TBuildResolvedConfig extends BuildResolvedConfig = BuildResolvedConfig, TBuildVariant extends string = any> = Omit<CommonUserConfig, "build"> & {
1529
+ /**
1530
+ * Configuration provided to build processes
1531
+ *
1532
+ * @remarks
1533
+ * This configuration can be used by plugins during the `build` command. It will generally contain options specific to the selected {@link BuildVariant | build variant}.
1534
+ */
1535
+ build: Omit<TBuildConfig, "override"> & {
1456
1536
  /**
1457
1537
  * The build variant being used by the Powerlines engine.
1458
1538
  */
1459
1539
  variant?: TBuildVariant;
1540
+ /**
1541
+ * An optional set of override options to apply to the selected build variant.
1542
+ *
1543
+ * @remarks
1544
+ * This option allows you to provide configuration options with the guarantee that they will **not** be overridden and will take precedence over other build configurations.
1545
+ */
1546
+ override?: Partial<TBuildResolvedConfig>;
1460
1547
  };
1461
- override?: Partial<TBuildResolvedConfig>;
1462
1548
  };
1463
1549
  type WebpackUserConfig = UserConfig<WebpackBuildConfig, WebpackResolvedBuildConfig, "webpack">;
1464
1550
  type RspackUserConfig = UserConfig<RspackBuildConfig, RspackResolvedBuildConfig, "rspack">;
@@ -1482,7 +1568,7 @@ type ParsedUserConfig<TUserConfig extends UserConfig = UserConfig> = TUserConfig
1482
1568
  */
1483
1569
  configFile?: ConfigLayer<TUserConfig>["configFile"];
1484
1570
  };
1485
- type PowerlinesCommand = "new" | "prepare" | "build" | "lint" | "test" | "docs" | "release" | "clean";
1571
+ type PowerlinesCommand = "new" | "prepare" | "build" | "lint" | "test" | "docs" | "deploy" | "clean";
1486
1572
  /**
1487
1573
  * The configuration provided while executing Powerlines commands.
1488
1574
  */
@@ -1532,11 +1618,11 @@ type DocsInlineConfig<TUserConfig extends UserConfig = UserConfig> = InlineConfi
1532
1618
  */
1533
1619
  command: "docs";
1534
1620
  };
1535
- type ReleaseInlineConfig<TUserConfig extends UserConfig = UserConfig> = InlineConfig<TUserConfig> & {
1621
+ type DeployInlineConfig<TUserConfig extends UserConfig = UserConfig> = InlineConfig<TUserConfig> & {
1536
1622
  /**
1537
1623
  * A string identifier for the Powerlines command being executed
1538
1624
  */
1539
- command: "release";
1625
+ command: "deploy";
1540
1626
  };
1541
1627
 
1542
- export type { APIContext as A, BuildVariant as B, Context as C, DocsInlineConfig as D, ESBuildResolvedBuildConfig as E, HookKeys as H, InferHookParameters as I, LogFn as L, MetaInfo as M, NewInlineConfig as N, PowerlinesCommand as P, ResolvedEntryTypeDefinition as R, SelectHooksOptions as S, TsupBuildConfig as T, UnbuildBuildConfig as U, ViteResolvedBuildConfig as V, WorkspaceConfig as W, ParsedUserConfig as a, RolldownResolvedBuildConfig as b, RollupResolvedBuildConfig as c, TsupResolvedBuildConfig as d, PluginContext as e, SourceFile as f, TransformResult as g, WorkerProcess as h, ResolvedConfig as i, EnvironmentContext as j, InferHookReturnType as k, UnbuildResolvedBuildConfig as l, InferUnpluginVariant as m, BuildPlugin as n, InferResolvedConfig as o, UnpluginBuildVariant as p, InferUserConfig as q, InitialUserConfig as r, PrepareInlineConfig as s, CleanInlineConfig as t, BuildInlineConfig as u, LintInlineConfig as v, ReleaseInlineConfig as w };
1628
+ export { type APIContext as A, type BuildVariant as B, type Context as C, type PrepareInlineConfig as D, type ESBuildResolvedBuildConfig as E, type CleanInlineConfig as F, type BuildInlineConfig as G, type HookKeys as H, type InferHookParameters as I, type LintInlineConfig as J, type DocsInlineConfig as K, type LogFn as L, type MakeDirectoryOptions as M, type NewInlineConfig as N, type DeployInlineConfig as O, type PowerlinesCommand as P, type ResolvePathOptions as R, type SelectHooksOptions as S, type TsupBuildConfig as T, type UnbuildBuildConfig as U, type VirtualFileSystemInterface as V, type WriteFileData as W, __VFS_PATCH__ as _, type VirtualFileMetadata as a, type ResolveFSOptions as b, type WriteFileOptions as c, __VFS_REVERT__ as d, type WorkspaceConfig as e, type ParsedUserConfig as f, type ResolvedEntryTypeDefinition as g, type RolldownResolvedBuildConfig as h, type RollupResolvedBuildConfig as i, type TsupResolvedBuildConfig as j, type ViteResolvedBuildConfig as k, type PluginContext as l, type SourceFile as m, type MetaInfo as n, type TransformResult as o, type WorkerProcess as p, type ResolvedConfig as q, type EnvironmentContext as r, type InferHookReturnType as s, type UnbuildResolvedBuildConfig as t, type InferUnpluginVariant as u, type BuildPlugin as v, type InferResolvedConfig as w, type UnpluginBuildVariant as x, type InferUserConfig as y, type InitialUserConfig as z };