powerlines 0.9.0 → 0.10.1

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 (365) hide show
  1. package/dist/astro.cjs +9 -9
  2. package/dist/astro.d.cts +2 -1
  3. package/dist/astro.d.ts +2 -1
  4. package/dist/astro.js +6 -6
  5. package/dist/{chunk-3L4KRPXQ.cjs → chunk-2RHPFVYT.cjs} +17 -18
  6. package/dist/{chunk-VQ5O5N7V.js → chunk-3Y5CCIJR.js} +3 -3
  7. package/dist/{chunk-YE56I7CZ.cjs → chunk-5XYGZ3DC.cjs} +2 -2
  8. package/dist/{chunk-V4TNA6HX.js → chunk-5Y4JYQ66.js} +3 -3
  9. package/dist/{chunk-WM76YQJH.cjs → chunk-66GXB2UY.cjs} +4 -4
  10. package/dist/{chunk-VOB62ELC.js → chunk-6TJGZR5X.js} +4 -4
  11. package/dist/{chunk-OKC6TA7P.js → chunk-6UDHGAAI.js} +3 -3
  12. package/dist/{chunk-ETEQKM36.cjs → chunk-7IWH37DY.cjs} +2 -2
  13. package/dist/{chunk-BDTLKRKQ.js → chunk-EGSEJQCE.js} +3 -3
  14. package/dist/{chunk-ILVCZATT.js → chunk-GPPJ2CRE.js} +2 -2
  15. package/dist/{chunk-RGJMMCOR.js → chunk-HVT7PBFF.js} +3 -3
  16. package/dist/chunk-IJBH5OUN.cjs +12 -0
  17. package/dist/chunk-JBTSAOIQ.js +31 -0
  18. package/dist/{chunk-W3NQCDUN.js → chunk-KYGEWAEG.js} +3 -3
  19. package/dist/{chunk-FOLQTZUP.cjs → chunk-L2SAK2JC.cjs} +4 -4
  20. package/dist/chunk-LXMNDUPG.cjs +12 -0
  21. package/dist/{chunk-GHW2FUF5.js → chunk-N7NE3VOU.js} +4 -4
  22. package/dist/{chunk-OEL3BTQP.js → chunk-OYIM2M74.js} +547 -522
  23. package/dist/{chunk-QK36ULYT.cjs → chunk-QHGPZK2H.cjs} +4 -4
  24. package/dist/chunk-RQ4CHMPO.cjs +12 -0
  25. package/dist/chunk-S5QFX2GM.cjs +12 -0
  26. package/dist/{chunk-IOBFVFH2.js → chunk-S746E63M.js} +3 -3
  27. package/dist/{chunk-MKZOY5EV.js → chunk-SDEBJQDT.js} +12 -13
  28. package/dist/chunk-SL3CXJWD.cjs +34 -0
  29. package/dist/{chunk-KC4VY5X4.cjs → chunk-UHCRNFFC.cjs} +9 -9
  30. package/dist/{chunk-ZQZ5ZUGG.cjs → chunk-UTVZVGM3.cjs} +555 -530
  31. package/dist/{chunk-QIKKQQF7.cjs → chunk-UZQYBO6Z.cjs} +4 -4
  32. package/dist/{chunk-65PSZQFC.js → chunk-VIRKTIPK.js} +3 -3
  33. package/dist/{chunk-UYS3BU6I.js → chunk-WCPY7HPU.js} +4 -4
  34. package/dist/{chunk-MMDBMHAW.js → chunk-WPVIF35O.js} +2 -2
  35. package/dist/chunk-YG7U2GIR.cjs +24 -0
  36. package/dist/{chunk-BY4UTCHZ.cjs → chunk-ZBDP43LG.cjs} +6 -6
  37. package/dist/chunk-ZFATNDSY.cjs +12 -0
  38. package/dist/{chunk-C3I5QEF5.js → chunk-ZU4IRZSQ.js} +7 -7
  39. package/dist/define-config.d.cts +2 -1
  40. package/dist/define-config.d.ts +2 -1
  41. package/dist/esbuild.cjs +8 -8
  42. package/dist/esbuild.d.cts +2 -1
  43. package/dist/esbuild.d.ts +2 -1
  44. package/dist/esbuild.js +5 -5
  45. package/dist/extend-plugin.d.cts +2 -1
  46. package/dist/extend-plugin.d.ts +2 -1
  47. package/dist/farm.cjs +4 -4
  48. package/dist/farm.d.cts +2 -1
  49. package/dist/farm.d.ts +2 -1
  50. package/dist/farm.js +3 -3
  51. package/dist/{hooks-D0gf1nT3.d.ts → hooks-BGYnc61f.d.ts} +1 -1
  52. package/dist/{hooks-fVJu9DCF.d.cts → hooks-gk8S8LFP.d.cts} +1 -1
  53. package/dist/index.cjs +27 -27
  54. package/dist/index.d.cts +4 -3
  55. package/dist/index.d.ts +4 -3
  56. package/dist/index.js +18 -18
  57. package/dist/internal/api.cjs +3 -3
  58. package/dist/internal/api.d.cts +3 -2
  59. package/dist/internal/api.d.ts +3 -2
  60. package/dist/internal/api.js +2 -2
  61. package/dist/lib/build/esbuild.cjs +4 -4
  62. package/dist/lib/build/esbuild.d.cts +2 -1
  63. package/dist/lib/build/esbuild.d.ts +2 -1
  64. package/dist/lib/build/esbuild.js +1 -1
  65. package/dist/lib/build/index.cjs +25 -25
  66. package/dist/lib/build/index.d.cts +3 -2
  67. package/dist/lib/build/index.d.ts +3 -2
  68. package/dist/lib/build/index.js +9 -9
  69. package/dist/lib/build/rolldown.cjs +3 -3
  70. package/dist/lib/build/rolldown.d.cts +2 -1
  71. package/dist/lib/build/rolldown.d.ts +2 -1
  72. package/dist/lib/build/rolldown.js +2 -2
  73. package/dist/lib/build/rollup.cjs +3 -3
  74. package/dist/lib/build/rollup.d.cts +2 -1
  75. package/dist/lib/build/rollup.d.ts +2 -1
  76. package/dist/lib/build/rollup.js +1 -1
  77. package/dist/lib/build/rspack.cjs +2 -2
  78. package/dist/lib/build/rspack.d.cts +2 -1
  79. package/dist/lib/build/rspack.d.ts +2 -1
  80. package/dist/lib/build/rspack.js +1 -1
  81. package/dist/lib/build/tsup.cjs +5 -5
  82. package/dist/lib/build/tsup.d.cts +2 -1
  83. package/dist/lib/build/tsup.d.ts +2 -1
  84. package/dist/lib/build/tsup.js +2 -2
  85. package/dist/lib/build/unbuild.cjs +6 -6
  86. package/dist/lib/build/unbuild.d.cts +3 -2
  87. package/dist/lib/build/unbuild.d.ts +3 -2
  88. package/dist/lib/build/unbuild.js +3 -3
  89. package/dist/lib/build/vite.cjs +4 -4
  90. package/dist/lib/build/vite.d.cts +2 -1
  91. package/dist/lib/build/vite.d.ts +2 -1
  92. package/dist/lib/build/vite.js +2 -2
  93. package/dist/lib/build/webpack.cjs +2 -2
  94. package/dist/lib/build/webpack.d.cts +2 -1
  95. package/dist/lib/build/webpack.d.ts +2 -1
  96. package/dist/lib/build/webpack.js +1 -1
  97. package/dist/lib/{chunk-7CZ2QZEV.js → chunk-3I2YOM2E.js} +4 -4
  98. package/dist/lib/chunk-3I2YOM2E.js.map +1 -0
  99. package/dist/lib/{chunk-KAOWUIFH.cjs → chunk-4XUVP2LL.cjs} +3 -3
  100. package/dist/lib/chunk-4XUVP2LL.cjs.map +1 -0
  101. package/dist/lib/{chunk-ZKYZWEHY.cjs → chunk-6U2UX2PX.cjs} +4 -4
  102. package/dist/lib/chunk-6U2UX2PX.cjs.map +1 -0
  103. package/dist/lib/{chunk-VRNWPH35.cjs → chunk-7EAV6Q7B.cjs} +10 -9
  104. package/dist/lib/chunk-7EAV6Q7B.cjs.map +1 -0
  105. package/dist/lib/{chunk-ZYBUJ2HE.js → chunk-CAPN4FSS.js} +7 -7
  106. package/dist/lib/chunk-CAPN4FSS.js.map +1 -0
  107. package/dist/lib/{chunk-LTBRHAQ2.cjs → chunk-GJNFAFKR.cjs} +4 -4
  108. package/dist/lib/chunk-GJNFAFKR.cjs.map +1 -0
  109. package/dist/lib/{chunk-VANFTXBT.cjs → chunk-GWYTWFZE.cjs} +7 -7
  110. package/dist/lib/chunk-GWYTWFZE.cjs.map +1 -0
  111. package/dist/lib/{chunk-DKE25WTL.js → chunk-HQ6TGY34.js} +2 -2
  112. package/dist/lib/chunk-HQ6TGY34.js.map +1 -0
  113. package/dist/lib/{chunk-QSBORJCS.js → chunk-HZDOJWUO.js} +6 -6
  114. package/dist/lib/chunk-HZDOJWUO.js.map +1 -0
  115. package/dist/lib/{chunk-ECJPGNXE.cjs → chunk-IK3ABDPP.cjs} +2 -2
  116. package/dist/lib/chunk-IK3ABDPP.cjs.map +1 -0
  117. package/dist/lib/{chunk-G5DJO4HA.cjs → chunk-JTUL3477.cjs} +5 -5
  118. package/dist/lib/chunk-JTUL3477.cjs.map +1 -0
  119. package/dist/lib/{chunk-E7UTFXPP.js → chunk-KFE2IR3Y.js} +4 -4
  120. package/dist/lib/chunk-KFE2IR3Y.js.map +1 -0
  121. package/dist/lib/{chunk-RY67J24J.js → chunk-KSBESEOF.js} +2 -2
  122. package/dist/lib/chunk-KSBESEOF.js.map +1 -0
  123. package/dist/lib/{chunk-26W3IQT6.js → chunk-LTVWU4J2.js} +5 -5
  124. package/dist/lib/chunk-LTVWU4J2.js.map +1 -0
  125. package/dist/lib/{chunk-GWAVDFOE.js → chunk-M7U5RMK7.js} +8 -6
  126. package/dist/lib/chunk-M7U5RMK7.js.map +1 -0
  127. package/dist/lib/{chunk-YQG6JE5R.cjs → chunk-M7WHFUKR.cjs} +549 -527
  128. package/dist/lib/chunk-M7WHFUKR.cjs.map +1 -0
  129. package/dist/lib/{chunk-EOO7IRCI.js → chunk-MAHHHINV.js} +3 -3
  130. package/dist/lib/chunk-MAHHHINV.js.map +1 -0
  131. package/dist/lib/{chunk-7FQQFIHR.cjs → chunk-NANLYIUO.cjs} +4 -4
  132. package/dist/lib/chunk-NANLYIUO.cjs.map +1 -0
  133. package/dist/lib/{chunk-TNCZYSNV.js → chunk-NE46WXNJ.js} +2 -2
  134. package/dist/lib/chunk-NE46WXNJ.js.map +1 -0
  135. package/dist/lib/{chunk-QGJVGFY4.js → chunk-OF5IJ4WG.js} +6 -6
  136. package/dist/lib/chunk-OF5IJ4WG.js.map +1 -0
  137. package/dist/lib/{chunk-6IEUZ5DZ.js → chunk-PIFE7MUZ.js} +525 -503
  138. package/dist/lib/chunk-PIFE7MUZ.js.map +1 -0
  139. package/dist/lib/{chunk-2ZYHO243.js → chunk-PXSRMP4E.js} +2 -2
  140. package/dist/lib/chunk-PXSRMP4E.js.map +1 -0
  141. package/dist/lib/{chunk-CXYZENE4.js → chunk-Q2L3FNJO.js} +13 -7
  142. package/dist/lib/chunk-Q2L3FNJO.js.map +1 -0
  143. package/dist/lib/{chunk-XFIGAAKN.cjs → chunk-Q2RUDKWY.cjs} +8 -6
  144. package/dist/lib/chunk-Q2RUDKWY.cjs.map +1 -0
  145. package/dist/lib/{chunk-NFDRIBCM.js → chunk-Q3KJZ3B5.js} +5 -7
  146. package/dist/lib/chunk-Q3KJZ3B5.js.map +1 -0
  147. package/dist/lib/{chunk-FHZJQZOE.cjs → chunk-QXJHCA3E.cjs} +7 -7
  148. package/dist/lib/chunk-QXJHCA3E.cjs.map +1 -0
  149. package/dist/lib/{chunk-TZFBE35T.cjs → chunk-RQICHHZM.cjs} +2 -2
  150. package/dist/lib/chunk-RQICHHZM.cjs.map +1 -0
  151. package/dist/lib/{chunk-7MXG5EG2.js → chunk-RXQWNSZX.js} +3 -3
  152. package/dist/lib/chunk-RXQWNSZX.js.map +1 -0
  153. package/dist/lib/{chunk-I6A564OE.cjs → chunk-U36VZLW6.cjs} +2 -2
  154. package/dist/lib/chunk-U36VZLW6.cjs.map +1 -0
  155. package/dist/lib/{chunk-65DUUIIF.cjs → chunk-UQJWVRRE.cjs} +2 -2
  156. package/dist/lib/chunk-UQJWVRRE.cjs.map +1 -0
  157. package/dist/lib/{chunk-XHCRXNQ3.cjs → chunk-V5OY4ALI.cjs} +5 -5
  158. package/dist/lib/chunk-V5OY4ALI.cjs.map +1 -0
  159. package/dist/lib/{chunk-I3I4BYJ4.js → chunk-VJN72T2O.js} +5 -5
  160. package/dist/lib/chunk-VJN72T2O.js.map +1 -0
  161. package/dist/lib/{chunk-KACTPBW2.cjs → chunk-W4OMKQ7W.cjs} +14 -8
  162. package/dist/lib/chunk-W4OMKQ7W.cjs.map +1 -0
  163. package/dist/lib/{chunk-SB3NFYXT.cjs → chunk-XZD7S5TU.cjs} +5 -5
  164. package/dist/lib/chunk-XZD7S5TU.cjs.map +1 -0
  165. package/dist/lib/{chunk-PJKWY74P.js → chunk-YBIWVB66.js} +10 -9
  166. package/dist/lib/chunk-YBIWVB66.js.map +1 -0
  167. package/dist/lib/{chunk-JXIRUV56.js → chunk-YF3YHK4X.js} +5 -5
  168. package/dist/lib/chunk-YF3YHK4X.js.map +1 -0
  169. package/dist/lib/{chunk-TJQEGHJA.cjs → chunk-YVDJCVE5.cjs} +12 -12
  170. package/dist/lib/chunk-YVDJCVE5.cjs.map +1 -0
  171. package/dist/lib/{chunk-M2TB43VG.cjs → chunk-ZP7PDTVE.cjs} +7 -9
  172. package/dist/lib/chunk-ZP7PDTVE.cjs.map +1 -0
  173. package/dist/lib/{config-BOPIY57U.d.cts → config-AuIGsUck.d.cts} +110 -106
  174. package/dist/lib/{config-Chd_3Uh3.d.ts → config-B_WTwd49.d.ts} +110 -106
  175. package/dist/lib/config-file.d.cts +2 -1
  176. package/dist/lib/config-file.d.ts +2 -1
  177. package/dist/lib/entry.d.cts +2 -1
  178. package/dist/lib/entry.d.ts +2 -1
  179. package/dist/lib/{hooks-DkVRKYVN.d.cts → hooks-4KkL9GD2.d.cts} +1 -1
  180. package/dist/lib/{hooks-56fQP2HY.d.ts → hooks-DErK4Fv4.d.ts} +1 -1
  181. package/dist/lib/index.cjs +36 -36
  182. package/dist/lib/index.d.cts +3 -2
  183. package/dist/lib/index.d.ts +3 -2
  184. package/dist/lib/index.js +11 -11
  185. package/dist/lib/logger.d.cts +2 -1
  186. package/dist/lib/logger.d.ts +2 -1
  187. package/dist/lib/typescript/compiler-host.cjs +6 -6
  188. package/dist/lib/typescript/compiler-host.cjs.map +1 -1
  189. package/dist/lib/typescript/compiler-host.d.cts +2 -1
  190. package/dist/lib/typescript/compiler-host.d.ts +2 -1
  191. package/dist/lib/typescript/compiler-host.js +5 -5
  192. package/dist/lib/typescript/compiler-host.js.map +1 -1
  193. package/dist/lib/typescript/import-transformer.cjs +1 -1
  194. package/dist/lib/typescript/import-transformer.cjs.map +1 -1
  195. package/dist/lib/typescript/import-transformer.d.cts +2 -1
  196. package/dist/lib/typescript/import-transformer.d.ts +2 -1
  197. package/dist/lib/typescript/import-transformer.js +1 -1
  198. package/dist/lib/typescript/import-transformer.js.map +1 -1
  199. package/dist/lib/typescript/index.cjs +6 -6
  200. package/dist/lib/typescript/index.d.cts +2 -1
  201. package/dist/lib/typescript/index.d.ts +2 -1
  202. package/dist/lib/typescript/index.js +1 -1
  203. package/dist/lib/typescript/program.cjs +6 -6
  204. package/dist/lib/typescript/program.d.cts +2 -1
  205. package/dist/lib/typescript/program.d.ts +2 -1
  206. package/dist/lib/typescript/program.js +1 -1
  207. package/dist/lib/unplugin/factory.cjs +6 -6
  208. package/dist/lib/unplugin/factory.d.cts +3 -2
  209. package/dist/lib/unplugin/factory.d.ts +3 -2
  210. package/dist/lib/unplugin/factory.js +5 -5
  211. package/dist/lib/unplugin/index.cjs +9 -9
  212. package/dist/lib/unplugin/index.d.cts +3 -2
  213. package/dist/lib/unplugin/index.d.ts +3 -2
  214. package/dist/lib/unplugin/index.js +6 -6
  215. package/dist/lib/unplugin/plugin.cjs +4 -4
  216. package/dist/lib/unplugin/plugin.d.cts +2 -1
  217. package/dist/lib/unplugin/plugin.d.ts +2 -1
  218. package/dist/lib/unplugin/plugin.js +3 -3
  219. package/dist/lib/unplugin/resolve-id.cjs +2 -2
  220. package/dist/lib/unplugin/resolve-id.d.cts +2 -1
  221. package/dist/lib/unplugin/resolve-id.d.ts +2 -1
  222. package/dist/lib/unplugin/resolve-id.js +1 -1
  223. package/dist/lib/utilities/cache.cjs +4 -4
  224. package/dist/lib/utilities/cache.js +2 -2
  225. package/dist/lib/utilities/file-header.d.cts +2 -1
  226. package/dist/lib/utilities/file-header.d.ts +2 -1
  227. package/dist/lib/utilities/index.cjs +24 -24
  228. package/dist/lib/utilities/index.d.cts +2 -1
  229. package/dist/lib/utilities/index.d.ts +2 -1
  230. package/dist/lib/utilities/index.js +7 -7
  231. package/dist/lib/utilities/meta.cjs +8 -8
  232. package/dist/lib/utilities/meta.d.cts +2 -1
  233. package/dist/lib/utilities/meta.d.ts +2 -1
  234. package/dist/lib/utilities/meta.js +1 -1
  235. package/dist/lib/utilities/plugin-helpers.d.cts +2 -1
  236. package/dist/lib/utilities/plugin-helpers.d.ts +2 -1
  237. package/dist/lib/utilities/resolve-path.cjs +2 -2
  238. package/dist/lib/utilities/resolve-path.d.cts +2 -1
  239. package/dist/lib/utilities/resolve-path.d.ts +2 -1
  240. package/dist/lib/utilities/resolve-path.js +1 -1
  241. package/dist/lib/utilities/source-file.cjs +4 -4
  242. package/dist/lib/utilities/source-file.js +1 -1
  243. package/dist/lib/utilities/source-map.cjs +2 -2
  244. package/dist/lib/utilities/source-map.js +1 -1
  245. package/dist/lib/utilities/worker.cjs +3 -3
  246. package/dist/lib/utilities/worker.d.cts +2 -1
  247. package/dist/lib/utilities/worker.d.ts +2 -1
  248. package/dist/lib/utilities/worker.js +1 -1
  249. package/dist/lib/utilities/write-file.cjs +2 -2
  250. package/dist/lib/utilities/write-file.d.cts +2 -1
  251. package/dist/lib/utilities/write-file.d.ts +2 -1
  252. package/dist/lib/utilities/write-file.js +1 -1
  253. package/dist/next.cjs +8 -8
  254. package/dist/next.js +5 -5
  255. package/dist/nuxt.cjs +10 -10
  256. package/dist/nuxt.js +7 -7
  257. package/dist/{resolved-NZTd64-O.d.cts → resolved-CcuVqMqc.d.cts} +28 -3
  258. package/dist/{resolved-DhHHMnUD.d.ts → resolved-Dhscmo3z.d.ts} +28 -3
  259. package/dist/rolldown.cjs +7 -7
  260. package/dist/rolldown.d.cts +2 -1
  261. package/dist/rolldown.d.ts +2 -1
  262. package/dist/rolldown.js +4 -4
  263. package/dist/rollup.cjs +7 -7
  264. package/dist/rollup.d.cts +2 -1
  265. package/dist/rollup.d.ts +2 -1
  266. package/dist/rollup.js +4 -4
  267. package/dist/rspack.cjs +7 -7
  268. package/dist/rspack.d.cts +2 -1
  269. package/dist/rspack.d.ts +2 -1
  270. package/dist/rspack.js +4 -4
  271. package/dist/tsup.cjs +9 -9
  272. package/dist/tsup.js +6 -6
  273. package/dist/types/babel.d.cts +2 -1
  274. package/dist/types/babel.d.ts +2 -1
  275. package/dist/types/commands.d.cts +2 -1
  276. package/dist/types/commands.d.ts +2 -1
  277. package/dist/types/compiler.d.cts +2 -1
  278. package/dist/types/compiler.d.ts +2 -1
  279. package/dist/types/config.d.cts +2 -1
  280. package/dist/types/config.d.ts +2 -1
  281. package/dist/types/context.cjs +2 -2
  282. package/dist/types/context.d.cts +2 -1
  283. package/dist/types/context.d.ts +2 -1
  284. package/dist/types/context.js +1 -1
  285. package/dist/types/hooks.d.cts +2 -1
  286. package/dist/types/hooks.d.ts +2 -1
  287. package/dist/types/index.cjs +9 -9
  288. package/dist/types/index.d.cts +3 -2
  289. package/dist/types/index.d.ts +3 -2
  290. package/dist/types/index.js +2 -2
  291. package/dist/types/internal.d.cts +3 -2
  292. package/dist/types/internal.d.ts +3 -2
  293. package/dist/types/plugin.d.cts +2 -1
  294. package/dist/types/plugin.d.ts +2 -1
  295. package/dist/types/resolved.d.cts +2 -1
  296. package/dist/types/resolved.d.ts +2 -1
  297. package/dist/types/unplugin.d.cts +2 -1
  298. package/dist/types/unplugin.d.ts +2 -1
  299. package/dist/types/vfs.cjs +7 -7
  300. package/dist/types/vfs.d.cts +93 -111
  301. package/dist/types/vfs.d.ts +93 -111
  302. package/dist/types/vfs.js +1 -1
  303. package/dist/unloader.cjs +7 -7
  304. package/dist/unloader.d.cts +2 -1
  305. package/dist/unloader.d.ts +2 -1
  306. package/dist/unloader.js +4 -4
  307. package/dist/unplugin.cjs +19 -19
  308. package/dist/unplugin.d.cts +3 -2
  309. package/dist/unplugin.d.ts +3 -2
  310. package/dist/unplugin.js +16 -16
  311. package/dist/vite.cjs +8 -8
  312. package/dist/vite.d.cts +2 -1
  313. package/dist/vite.d.ts +2 -1
  314. package/dist/vite.js +5 -5
  315. package/dist/webpack.cjs +7 -7
  316. package/dist/webpack.d.cts +2 -1
  317. package/dist/webpack.d.ts +2 -1
  318. package/dist/webpack.js +4 -4
  319. package/package.json +9 -9
  320. package/dist/chunk-4JUWHOFJ.cjs +0 -12
  321. package/dist/chunk-ARHKVB3S.cjs +0 -12
  322. package/dist/chunk-JCXSBKRJ.js +0 -31
  323. package/dist/chunk-NRMXL6VA.cjs +0 -34
  324. package/dist/chunk-QKXJRYA5.cjs +0 -12
  325. package/dist/chunk-STLRGAW6.cjs +0 -24
  326. package/dist/chunk-TJIHTRP5.cjs +0 -12
  327. package/dist/chunk-VES34CLG.cjs +0 -12
  328. package/dist/lib/chunk-26W3IQT6.js.map +0 -1
  329. package/dist/lib/chunk-2ZYHO243.js.map +0 -1
  330. package/dist/lib/chunk-65DUUIIF.cjs.map +0 -1
  331. package/dist/lib/chunk-6IEUZ5DZ.js.map +0 -1
  332. package/dist/lib/chunk-7CZ2QZEV.js.map +0 -1
  333. package/dist/lib/chunk-7FQQFIHR.cjs.map +0 -1
  334. package/dist/lib/chunk-7MXG5EG2.js.map +0 -1
  335. package/dist/lib/chunk-CXYZENE4.js.map +0 -1
  336. package/dist/lib/chunk-DKE25WTL.js.map +0 -1
  337. package/dist/lib/chunk-E7UTFXPP.js.map +0 -1
  338. package/dist/lib/chunk-ECJPGNXE.cjs.map +0 -1
  339. package/dist/lib/chunk-EOO7IRCI.js.map +0 -1
  340. package/dist/lib/chunk-FHZJQZOE.cjs.map +0 -1
  341. package/dist/lib/chunk-G5DJO4HA.cjs.map +0 -1
  342. package/dist/lib/chunk-GWAVDFOE.js.map +0 -1
  343. package/dist/lib/chunk-I3I4BYJ4.js.map +0 -1
  344. package/dist/lib/chunk-I6A564OE.cjs.map +0 -1
  345. package/dist/lib/chunk-JXIRUV56.js.map +0 -1
  346. package/dist/lib/chunk-KACTPBW2.cjs.map +0 -1
  347. package/dist/lib/chunk-KAOWUIFH.cjs.map +0 -1
  348. package/dist/lib/chunk-LTBRHAQ2.cjs.map +0 -1
  349. package/dist/lib/chunk-M2TB43VG.cjs.map +0 -1
  350. package/dist/lib/chunk-NFDRIBCM.js.map +0 -1
  351. package/dist/lib/chunk-PJKWY74P.js.map +0 -1
  352. package/dist/lib/chunk-QGJVGFY4.js.map +0 -1
  353. package/dist/lib/chunk-QSBORJCS.js.map +0 -1
  354. package/dist/lib/chunk-RY67J24J.js.map +0 -1
  355. package/dist/lib/chunk-SB3NFYXT.cjs.map +0 -1
  356. package/dist/lib/chunk-TJQEGHJA.cjs.map +0 -1
  357. package/dist/lib/chunk-TNCZYSNV.js.map +0 -1
  358. package/dist/lib/chunk-TZFBE35T.cjs.map +0 -1
  359. package/dist/lib/chunk-VANFTXBT.cjs.map +0 -1
  360. package/dist/lib/chunk-VRNWPH35.cjs.map +0 -1
  361. package/dist/lib/chunk-XFIGAAKN.cjs.map +0 -1
  362. package/dist/lib/chunk-XHCRXNQ3.cjs.map +0 -1
  363. package/dist/lib/chunk-YQG6JE5R.cjs.map +0 -1
  364. package/dist/lib/chunk-ZKYZWEHY.cjs.map +0 -1
  365. package/dist/lib/chunk-ZYBUJ2HE.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/unplugin/resolve-id.ts"],"names":["NON_NODE_MODULE_REGEX","handleResolveId","context","args","options","id","fs","isVirtualFile","importer","paths","resolvedPath","resolvePath","external","config","projectType","isTsconfigPath","tsconfigPath","resolveTsconfigPath","tsconfigPathPackage","resolveTsconfigPathPackage","Boolean","noExternal","includes","skipResolve","undefined","skipNodeModulesBundle","match","resolvePatterns","startsWith","test","isBuiltinFile"],"mappings":";;;AAuBA,IAAMA,qBAAAA,GAAwB,mCAAA;AA0B9B,eAAsBC,eAAAA,CACpBC,OAAAA,EACAC,IAAAA,EACAC,OAAAA,GAAqC,EAAC,EAAC;AAEvC,EAAA,IAAID,KAAKE,EAAAA,EAAI;AACX,IAAA,IACEH,OAAAA,CAAQI,EAAAA,CAAGC,aAAAA,CAAcJ,IAAAA,CAAKE,EAAE,CAAA,IAC/BF,IAAAA,CAAKK,QAAAA,IACJN,OAAAA,CAAQI,EAAAA,CAAGC,aAAAA,CAAcJ,IAAAA,CAAKE,EAAAA,EAAI;MAChCI,KAAAA,EAAO;QAACN,IAAAA,CAAKK;;AACf,KAAA,CAAA,EACF;AACA,MAAA,MAAME,eAAeP,IAAAA,CAAKK,QAAAA,GACtBN,QAAQI,EAAAA,CAAGK,WAAAA,CAAYR,KAAKE,EAAAA,EAAI;QAC9BI,KAAAA,EAAO;UAACN,IAAAA,CAAKK;;AACf,OAAA,CAAA,GACAN,OAAAA,CAAQI,EAAAA,CAAGK,WAAAA,CAAYR,KAAKE,EAAE,CAAA;AAClC,MAAA,IAAIK,YAAAA,EAAc;AAChB,QAAA,OAAO;UACLL,EAAAA,EAAIK,YAAAA;UACJE,QAAAA,EAAUV,OAAAA,CAAQW,OAAOC,WAAAA,KAAgB;AAC3C,SAAA;AACF,MAAA;AACF,IAAA;AAEA,IAAA,IAAIZ,OAAAA,CAAQI,EAAAA,CAAGS,cAAAA,CAAeZ,IAAAA,CAAKE,EAAE,CAAA,EAAG;AACtC,MAAA,MAAMW,YAAAA,GAAed,OAAAA,CAAQI,EAAAA,CAAGW,mBAAAA,CAAoBd,KAAKE,EAAE,CAAA;AAC3D,MAAA,MAAMa,mBAAAA,GAAsBhB,OAAAA,CAAQI,EAAAA,CAAGa,0BAAAA,CACrChB,KAAKE,EAAE,CAAA;AAET,MAAA,IAAIW,gBAAgBE,mBAAAA,EAAqB;AACvC,QAAA,OAAO;UACLb,EAAAA,EAAIW,YAAAA;AACJJ,UAAAA,QAAAA,EAAUQ,OAAAA,CACR,CAAChB,OAAAA,CAAQiB,UAAAA,EAAYC,SAASJ,mBAAAA,CAAAA,KAC3Bd,OAAAA,CAAQQ,QAAAA,EAAUU,SAASJ,mBAAAA,CAAAA,IAC1BhB,OAAAA,CAAQW,MAAAA,CAAOC,gBAAgB,aAAA,CAAY;AAEnD,SAAA;AACF,MAAA;AACF,IAAA;AAEA,IAAA,IAAIV,QAAQmB,WAAAA,EAAa;AACvB,MAAA,OAAOC,MAAAA;AACT,IAAA;AAEA,IAAA,IAAIpB,QAAQqB,qBAAAA,EAAuB;AACjC,MAAA,IACEC,KAAAA,CAAMvB,KAAKE,EAAAA,EAAID,OAAAA,CAAQuB,eAAe,CAAA,IACtCD,KAAAA,CAAMvB,KAAKE,EAAAA,EAAID,OAAAA,CAAQiB,UAAU,CAAA,IACjClB,IAAAA,CAAKE,GAAGuB,UAAAA,CAAW,WAAA,KACnBzB,IAAAA,CAAKE,EAAAA,CAAGuB,UAAAA,CAAW,UAAA,CAAA,EACnB;AACA,QAAA,OAAOJ,MAAAA;AACT,MAAA;AAEA,MAAA,IAAIE,KAAAA,CAAMvB,IAAAA,CAAKE,EAAAA,EAAID,OAAAA,CAAQQ,QAAQ,KAAKT,IAAAA,CAAKE,EAAAA,CAAGuB,UAAAA,CAAW,OAAA,CAAA,EAAU;AACnE,QAAA,OAAO;AAAEvB,UAAAA,EAAAA,EAAIF,IAAAA,CAAKE,EAAAA;UAAIO,QAAAA,EAAU;AAAK,SAAA;AACvC,MAAA;AAGA,MAAA,IAAI,CAACZ,qBAAAA,CAAsB6B,IAAAA,CAAK1B,IAAAA,CAAKE,EAAE,CAAA,EAAG;AACxC,QAAA,OAAO;AACLA,UAAAA,EAAAA,EAAIF,IAAAA,CAAKE,EAAAA;UACTO,QAAAA,EAAU;AACZ,SAAA;AACF,MAAA;IACF,CAAA,MAAO;AACL,MAAA,IACEc,MAAMvB,IAAAA,CAAKE,EAAAA,EAAID,QAAQiB,UAAU,CAAA,IACjCnB,QAAQI,EAAAA,CAAGwB,aAAAA,CAAc3B,IAAAA,CAAKE,EAAE,KAC/BF,IAAAA,CAAKK,QAAAA,IACJN,QAAQI,EAAAA,CAAGwB,aAAAA,CAAc3B,KAAKE,EAAAA,EAAI;QAChCI,KAAAA,EAAO;UAACN,IAAAA,CAAKK;;AACf,OAAA,CAAA,EACF;AACA,QAAA,OAAOgB,MAAAA;AACT,MAAA;AAEA,MAAA,IAAIE,KAAAA,CAAMvB,IAAAA,CAAKE,EAAAA,EAAID,OAAAA,CAAQQ,QAAQ,KAAKT,IAAAA,CAAKE,EAAAA,CAAGuB,UAAAA,CAAW,OAAA,CAAA,EAAU;AACnE,QAAA,OAAO;AAAEvB,UAAAA,EAAAA,EAAIF,IAAAA,CAAKE,EAAAA;UAAIO,QAAAA,EAAU;AAAK,SAAA;AACvC,MAAA;AACF,IAAA;AACF,EAAA;AAEA,EAAA,OAAOY,MAAAA;AACT;AAvFsBvB,MAAAA,CAAAA,eAAAA,EAAAA,iBAAAA,CAAAA","file":"chunk-PJKWY74P.js","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { match } from \"bundle-require\";\nimport type { ExternalIdResult } from \"unplugin\";\nimport type { Context } from \"../../types/context\";\n\n// Must not start with \"/\" or \"./\" or \"../\" or \"C:\\\" or be the exact strings \"..\" or \".\"\nconst NON_NODE_MODULE_REGEX = /^[A-Z]:[/\\\\]|^\\.{0,2}\\/|^\\.{1,2}$/;\n\nexport interface ResolveIdArgs {\n id: string;\n importer: string | undefined;\n options: {\n isEntry: boolean;\n };\n}\n\nexport interface ResolveIdOptions {\n skipResolve?: boolean;\n skipNodeModulesBundle?: boolean;\n external: (string | RegExp)[];\n noExternal: (string | RegExp)[];\n resolvePatterns: (string | RegExp)[];\n}\n\n/**\n * Handle the resolveId hook for the unplugin.\n *\n * @param context - The plugin context.\n * @param args - The arguments for the hook.\n * @param options - The options for the hook.\n * @returns The resolved id or null if not found.\n */\nexport async function handleResolveId(\n context: Context,\n args: ResolveIdArgs,\n options: Partial<ResolveIdOptions> = {}\n): Promise<ExternalIdResult | null | undefined> {\n if (args.id) {\n if (\n context.fs.isVirtualFile(args.id) ||\n (args.importer &&\n context.fs.isVirtualFile(args.id, {\n paths: [args.importer]\n }))\n ) {\n const resolvedPath = args.importer\n ? context.fs.resolvePath(args.id, {\n paths: [args.importer]\n })\n : context.fs.resolvePath(args.id);\n if (resolvedPath) {\n return {\n id: resolvedPath,\n external: context.config.projectType !== \"application\"\n };\n }\n }\n\n if (context.fs.isTsconfigPath(args.id)) {\n const tsconfigPath = context.fs.resolveTsconfigPath(args.id);\n const tsconfigPathPackage = context.fs.resolveTsconfigPathPackage(\n args.id\n );\n if (tsconfigPath && tsconfigPathPackage) {\n return {\n id: tsconfigPath,\n external: Boolean(\n !options.noExternal?.includes(tsconfigPathPackage) &&\n (options.external?.includes(tsconfigPathPackage) ??\n context.config.projectType !== \"application\")\n )\n };\n }\n }\n\n if (options.skipResolve) {\n return undefined;\n }\n\n if (options.skipNodeModulesBundle) {\n if (\n match(args.id, options.resolvePatterns) ||\n match(args.id, options.noExternal) ||\n args.id.startsWith(\"internal:\") ||\n args.id.startsWith(\"virtual:\")\n ) {\n return undefined;\n }\n\n if (match(args.id, options.external) || args.id.startsWith(\"node:\")) {\n return { id: args.id, external: true };\n }\n\n // Exclude any other import that looks like a Node module\n if (!NON_NODE_MODULE_REGEX.test(args.id)) {\n return {\n id: args.id,\n external: true\n };\n }\n } else {\n if (\n match(args.id, options.noExternal) ||\n context.fs.isBuiltinFile(args.id) ||\n (args.importer &&\n context.fs.isBuiltinFile(args.id, {\n paths: [args.importer]\n }))\n ) {\n return undefined;\n }\n\n if (match(args.id, options.external) || args.id.startsWith(\"node:\")) {\n return { id: args.id, external: true };\n }\n }\n }\n\n return undefined;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/build/vite.ts"],"names":["DEFAULT_VITE_CONFIG","resolve","extensions","json","stringify","logLevel","clearScreen","extractViteConfig","context","defu","alias","fs","builtinIdMap","keys","reduce","ret","id","path","get","config","build","variant","override","external","noExternal","skipNodeModulesBundle","rootDir","sourceRoot","platform","mode","cacheDir","joinPaths","cachePath","outDir","output","outputPath","tsconfig","tsconfigFilePath","tsconfigRaw","tsconfigJson","esbuild","extractESBuildConfig","undefined","envDir","projectRoot","Array","from","minify","metafile","sourcemap"],"mappings":";;;;;AAyBO,IAAMA,mBAAAA,GAAwD;EACnEC,OAAAA,EAAS;IACPC,UAAAA,EAAY;AAAC,MAAA,MAAA;AAAQ,MAAA,KAAA;AAAO,MAAA,MAAA;AAAQ,MAAA,KAAA;AAAO,MAAA,MAAA;AAAQ,MAAA,MAAA;AAAQ,MAAA;;AAC7D,GAAA;EACAC,IAAAA,EAAM;IACJC,SAAAA,EAAW;AACb,GAAA;EACAC,QAAAA,EAAU,QAAA;EACVC,WAAAA,EAAa;AACf;AAQO,SAASC,kBAAkBC,OAAAA,EAAgB;AAChD,EAAA,OAAOC,IAAAA,CACL;IACER,OAAAA,EAAS;MACPS,KAAAA,EAAOF,OAAAA,CAAQG,GAAGC,YAAAA,CAAaC,IAAAA,GAAOC,MAAAA,CACpC,CAACC,KAAKC,EAAAA,KAAAA;AACJ,QAAA,MAAMC,IAAAA,GAAOT,OAAAA,CAAQG,EAAAA,CAAGC,YAAAA,CAAaM,IAAIF,EAAAA,CAAAA;AACzC,QAAA,IAAIC,IAAAA,EAAM;AACRF,UAAAA,GAAAA,CAAIC,EAAAA,CAAAA,GAAMC,IAAAA;AACZ,QAAA;AAEA,QAAA,OAAOF,GAAAA;AACT,MAAA,CAAA,EACA,EAAC;AAEL;GACF,EACAP,OAAAA,CAAQW,OAAOC,KAAAA,CAAMC,OAAAA,KAAY,SAASb,OAAAA,CAAQW,MAAAA,CAAOG,QAAAA,GAAW,EAAC,EACrE;IACEC,QAAAA,EAAUf,OAAAA,CAAQW,OAAOC,KAAAA,CAAMG,QAAAA;IAC/BC,UAAAA,EAAYhB,OAAAA,CAAQW,OAAOC,KAAAA,CAAMI,UAAAA;IACjCC,qBAAAA,EAAuBjB,OAAAA,CAAQW,OAAOC,KAAAA,CAAMK;GAC9C,EACA;AACEC,IAAAA,OAAAA,EAASlB,QAAQW,MAAAA,CAAOQ,UAAAA;IACxBC,QAAAA,EAAUpB,OAAAA,CAAQW,OAAOC,KAAAA,CAAMQ,QAAAA;AAC/BC,IAAAA,IAAAA,EACErB,OAAAA,CAAQW,MAAAA,CAAOU,IAAAA,KAAS,aAAA,GAAgB,aAAA,GAAgB,YAAA;IAC1DC,QAAAA,EAAUC,SAAAA,CAAUvB,OAAAA,CAAQwB,SAAAA,EAAW,MAAA,CAAA;IACvCZ,KAAAA,EAAO;MACLa,MAAAA,EAAQzB,OAAAA,CAAQW,OAAOe,MAAAA,CAAOC,UAAAA;AAC9BC,MAAAA,QAAAA,EAAU5B,QAAQ4B,QAAAA,CAASC,gBAAAA;AAC3BC,MAAAA,WAAAA,EAAa9B,QAAQ4B,QAAAA,CAASG;AAChC,KAAA;AACAC,IAAAA,OAAAA,EAASC,qBAAqBjC,OAAAA,CAAAA;IAC9BH,QAAAA,EAAUG,OAAAA,CAAQW,OAAOd,QAAAA,IAAYqC,MAAAA;AACrCC,IAAAA,MAAAA,EAAQnC,QAAQW,MAAAA,CAAOyB,WAAAA;AACvBpB,IAAAA,UAAAA,EAAYqB,MAAMC,IAAAA,CAAKtC,OAAAA,CAAQG,EAAAA,CAAGC,YAAAA,CAAaC,MAAI;GACrD,EACAL,OAAAA,CAAQW,OAAOC,KAAAA,CAAMC,OAAAA,KAAY,SAASb,OAAAA,CAAQW,MAAAA,CAAOC,KAAAA,GAAQ,EAAC,EAClE;IACEA,KAAAA,EAAO;MACL2B,MAAAA,EAAQvC,OAAAA,CAAQW,OAAOU,IAAAA,KAAS,aAAA;MAChCmB,QAAAA,EAAUxC,OAAAA,CAAQW,OAAOU,IAAAA,KAAS,aAAA;MAClCoB,SAAAA,EAAWzC,OAAAA,CAAQW,OAAOU,IAAAA,KAAS;AACrC;AACF,GAAA,EACA7B,mBAAAA,CAAAA;AAEJ;AAjDgBO,MAAAA,CAAAA,iBAAAA,EAAAA,mBAAAA,CAAAA","file":"chunk-QGJVGFY4.js","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport defu from \"defu\";\nimport { ESBuildOptions } from \"vite\";\nimport { ViteResolvedBuildConfig } from \"../../types/build\";\nimport { Context } from \"../../types/context\";\nimport { extractESBuildConfig } from \"./esbuild\";\n\nexport const DEFAULT_VITE_CONFIG: Partial<ViteResolvedBuildConfig> = {\n resolve: {\n extensions: [\".mjs\", \".js\", \".mts\", \".ts\", \".jsx\", \".tsx\", \".json\"]\n },\n json: {\n stringify: true\n },\n logLevel: \"silent\",\n clearScreen: true\n};\n\n/**\n * Resolves the options for [vite](https://vitejs.dev/).\n *\n * @param context - The build context.\n * @returns The resolved options.\n */\nexport function extractViteConfig(context: Context): ViteResolvedBuildConfig {\n return defu(\n {\n resolve: {\n alias: context.fs.builtinIdMap.keys().reduce(\n (ret, id) => {\n const path = context.fs.builtinIdMap.get(id);\n if (path) {\n ret[id] = path;\n }\n\n return ret;\n },\n {} as Record<string, string>\n )\n }\n },\n context.config.build.variant === \"vite\" ? context.config.override : {},\n {\n external: context.config.build.external,\n noExternal: context.config.build.noExternal,\n skipNodeModulesBundle: context.config.build.skipNodeModulesBundle\n },\n {\n rootDir: context.config.sourceRoot,\n platform: context.config.build.platform,\n mode:\n context.config.mode === \"development\" ? \"development\" : \"production\",\n cacheDir: joinPaths(context.cachePath, \"vite\"),\n build: {\n outDir: context.config.output.outputPath,\n tsconfig: context.tsconfig.tsconfigFilePath,\n tsconfigRaw: context.tsconfig.tsconfigJson\n },\n esbuild: extractESBuildConfig(context) as ESBuildOptions,\n logLevel: context.config.logLevel ?? undefined,\n envDir: context.config.projectRoot,\n noExternal: Array.from(context.fs.builtinIdMap.keys())\n },\n context.config.build.variant === \"vite\" ? context.config.build : {},\n {\n build: {\n minify: context.config.mode !== \"development\",\n metafile: context.config.mode === \"development\",\n sourcemap: context.config.mode === \"development\"\n }\n },\n DEFAULT_VITE_CONFIG\n ) as ViteResolvedBuildConfig;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/build/tsup.ts"],"names":["DEFAULT_TSUP_CONFIG","DEFAULT_BUILD_OPTIONS","platform","target","config","clean","minify","sourcemap","cjsInterop","bundle","dts","shims","silent","treeshake","keepNames","splitting","banner","resolveTsupEntry","context","entryPoints","resolveESBuildEntry","extractTsupConfig","defu","alias","fs","builtinIdMap","keys","reduce","ret","id","path","get","noExternal","Array","from","build","variant","override","name","assets","output","external","skipNodeModulesBundle","outputPath","projectRoot","tsconfig","tsconfigFilePath","tsconfigRaw","tsconfigJson","format","mode","treeShaking","undefined","metafile","projectType","logLevel","verbose"],"mappings":"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","file":"chunk-QSBORJCS.js","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { AssetGlob, Entry } from \"@storm-software/build-tools/types\";\nimport { DEFAULT_BUILD_OPTIONS } from \"@storm-software/tsup/constants\";\nimport defu from \"defu\";\nimport {\n ESBuildBuildConfig,\n TsupBuildConfig,\n TsupResolvedBuildConfig\n} from \"../../types/build\";\nimport { Context } from \"../../types/context\";\nimport { ResolvedEntryTypeDefinition } from \"../../types/resolved\";\nimport { resolveESBuildEntry } from \"./esbuild\";\n\nexport const DEFAULT_TSUP_CONFIG: Partial<TsupBuildConfig> = {\n ...DEFAULT_BUILD_OPTIONS,\n platform: \"neutral\",\n target: \"esnext\",\n config: false,\n clean: false,\n minify: true,\n sourcemap: false,\n cjsInterop: true,\n bundle: true,\n dts: true,\n shims: true,\n silent: true,\n treeshake: true,\n keepNames: true,\n splitting: true,\n banner: {}\n};\n\n/**\n * Resolves the entry options for [tsup](https://github.com/egoist/tsup).\n *\n * @param context - The build context.\n * @param entryPoints - The entry points to resolve.\n * @returns The resolved entry options.\n */\nexport function resolveTsupEntry(\n context: Context,\n entryPoints: ResolvedEntryTypeDefinition[] | string[]\n): Entry {\n return resolveESBuildEntry(context, entryPoints) as Entry;\n}\n\n/**\n * Resolves the options for [tsup](https://github.com/egoist/tsup).\n *\n * @param context - The build context.\n * @returns The resolved options.\n */\nexport function extractTsupConfig(context: Context): TsupResolvedBuildConfig {\n return defu(\n {\n alias: context.fs.builtinIdMap.keys().reduce(\n (ret, id) => {\n const path = context.fs.builtinIdMap.get(id);\n if (path) {\n ret[id] = path;\n }\n\n return ret;\n },\n {} as Record<string, string>\n ),\n noExternal: Array.from(context.fs.builtinIdMap.keys())\n },\n context.config.build.variant === \"tsup\" ? context.config.override : {},\n {\n name: context.config.name,\n assets: context.config.output.assets as (string | AssetGlob)[],\n external: context.config.build.external,\n noExternal: context.config.build.noExternal,\n skipNodeModulesBundle: context.config.build.skipNodeModulesBundle,\n outputPath: context.config.output.outputPath,\n projectRoot: context.config.projectRoot,\n tsconfig: context.tsconfig.tsconfigFilePath,\n tsconfigRaw: context.tsconfig.tsconfigJson,\n format: context.config.output.format,\n mode: context.config.mode,\n platform: context.config.build.platform,\n treeshake:\n context.config.build.variant === \"tsup\"\n ? (context.config.build as TsupBuildConfig)?.treeshake\n : context.config.build.variant === \"tsup\"\n ? (context.config.build as ESBuildBuildConfig)?.treeShaking\n : undefined\n },\n context.config.build.variant === \"tsup\" ? context.config.build : {},\n {\n minify: context.config.mode !== \"development\",\n metafile: context.config.mode === \"development\",\n sourcemap: context.config.mode === \"development\",\n dts: context.config.projectType !== \"application\",\n silent:\n context.config.logLevel === \"silent\" ||\n context.config.mode === \"production\",\n verbose:\n context.config.logLevel === \"all\" ||\n context.config.logLevel === \"trace\" ||\n context.config.mode === \"development\"\n },\n DEFAULT_TSUP_CONFIG\n );\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/utilities/worker.ts"],"names":["RESTARTED","Symbol","cleanupWorkers","worker","curWorker","_workerPool","_workers","_child","kill","Worker","workerPath","options","timeout","onRestart","name","context","farmOptions","createLog","restartPromise","resolveRestartPromise","activeTasks","undefined","process","on","close","createWorker","JestWorker","forkOptions","env","POWERLINES_LOCAL","maxRetries","Promise","resolve","enableWorkerThreads","code","signal","LogLevelLabel","ERROR","exit","data","type","onActivity","aborted","onActivityAbort","abortActivityStreamOnLog","Transform","transform","_chunk","_encoding","callback","getStdout","pipe","getStderr","stdout","stderr","onHanging","WARN","end","then","hangingTimer","clearTimeout","setTimeout","method","exposedMethods","startsWith","args","attempts","params","defu","length","result","race","bind","Error","numWorkers","findFileName","withExtension"],"mappings":"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","file":"chunk-RY67J24J.js","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { LogLevelLabel } from \"@storm-software/config-tools/types\";\nimport { findFileName } from \"@stryke/path/file-path-fns\";\nimport { defu } from \"defu\";\nimport { Worker as JestWorker } from \"jest-worker\";\nimport type { ChildProcess } from \"node:child_process\";\nimport { Transform } from \"node:stream\";\nimport { LogFn } from \"../../types/config\";\nimport { WorkerProcess } from \"../../types/context\";\nimport { createLog } from \"../logger\";\n\nexport type WorkerOptions = ConstructorParameters<typeof JestWorker>[1] & {\n name?: string;\n timeout?: number;\n onActivity?: () => void;\n onActivityAbort?: () => void;\n onRestart?: (method: string, args: any[], attempts: number) => void;\n exposedMethods: ReadonlyArray<string>;\n enableWorkerThreads?: boolean;\n context?: Record<string, any>;\n};\n\nconst RESTARTED = Symbol(\"restarted\");\n\nconst cleanupWorkers = (worker: JestWorker) => {\n for (const curWorker of ((worker as any)._workerPool?._workers || []) as {\n _child?: ChildProcess;\n }[]) {\n curWorker._child?.kill(\"SIGINT\");\n }\n};\n\nexport class Worker {\n #worker: JestWorker | undefined;\n\n #log: LogFn;\n\n public constructor(\n protected workerPath: string,\n protected options: WorkerOptions\n ) {\n const { timeout, onRestart, name, context, ...farmOptions } = this.options;\n\n this.#log = createLog(name || workerPath);\n\n let restartPromise: Promise<typeof RESTARTED>;\n let resolveRestartPromise: (arg: typeof RESTARTED) => void;\n let activeTasks = 0;\n\n this.#worker = undefined;\n\n // ensure we end workers if they weren't before exit\n process.on(\"exit\", () => {\n this.close();\n });\n\n const createWorker = () => {\n this.#worker = new JestWorker(workerPath, {\n ...farmOptions,\n forkOptions: {\n ...farmOptions.forkOptions,\n env: {\n ...((farmOptions.forkOptions?.env ?? {}) as any),\n ...process.env,\n POWERLINES_LOCAL: process.env.POWERLINES_LOCAL || \"0\"\n }\n },\n maxRetries: 0\n });\n restartPromise = new Promise(resolve => {\n resolveRestartPromise = resolve;\n });\n\n /**\n * Jest Worker has two worker types, ChildProcessWorker (uses child_process) and NodeThreadWorker (uses worker_threads)\n * Powerlines uses ChildProcessWorker by default, but it can be switched to NodeThreadWorker with an experimental flag\n *\n * We only want to handle ChildProcessWorker's orphan process issue, so we access the private property \"_child\":\n * https://github.com/facebook/jest/blob/b38d7d345a81d97d1dc3b68b8458b1837fbf19be/packages/jest-worker/src/workers/ChildProcessWorker.ts\n *\n * But this property is not available in NodeThreadWorker, so we need to check if we are using ChildProcessWorker\n */\n if (!farmOptions.enableWorkerThreads) {\n for (const worker of ((this.#worker as any)._workerPool?._workers ||\n []) as {\n _child?: ChildProcess;\n }[]) {\n worker._child?.on(\"exit\", (code, signal) => {\n if ((code || (signal && signal !== \"SIGINT\")) && this.#worker) {\n this.#log(\n LogLevelLabel.ERROR,\n `${this.options.name} worker exited with code: ${code} and signal: ${signal}`\n );\n\n // if a child process doesn't exit gracefully, we want to bubble up the exit code to the parent process\n process.exit(code ?? 1);\n }\n });\n\n // if a child process emits a particular message, we track that as activity\n // so the parent process can keep track of progress\n worker._child?.on(\"message\", ([, data]: [number, unknown]) => {\n if (\n data &&\n typeof data === \"object\" &&\n \"type\" in data &&\n data.type === \"activity\"\n ) {\n // eslint-disable-next-line ts/no-use-before-define\n onActivity();\n }\n });\n }\n }\n\n let aborted = false;\n const onActivityAbort = () => {\n if (!aborted) {\n this.options.onActivityAbort?.();\n aborted = true;\n }\n };\n\n // Listen to the worker's stdout and stderr, if there's any thing logged, abort the activity first\n const abortActivityStreamOnLog = new Transform({\n transform(_chunk, _encoding, callback) {\n onActivityAbort();\n callback();\n }\n });\n // Stop the activity if there's any output from the worker\n this.#worker.getStdout().pipe(abortActivityStreamOnLog);\n this.#worker.getStderr().pipe(abortActivityStreamOnLog);\n\n // Pipe the worker's stdout and stderr to the parent process\n this.#worker.getStdout().pipe(process.stdout);\n this.#worker.getStderr().pipe(process.stderr);\n };\n createWorker();\n\n const onHanging = () => {\n const worker = this.#worker;\n if (!worker) {\n return;\n }\n\n const resolve = resolveRestartPromise;\n createWorker();\n\n this.#log(\n LogLevelLabel.WARN,\n `Sending SIGTERM signal to static worker due to timeout${\n timeout ? ` of ${timeout / 1000} seconds` : \"\"\n }. Subsequent errors may be a result of the worker exiting.`\n );\n\n void worker.end().then(() => {\n resolve(RESTARTED);\n });\n };\n\n let hangingTimer: NodeJS.Timeout | false = false;\n\n const onActivity = () => {\n if (hangingTimer) {\n clearTimeout(hangingTimer);\n }\n if (this.options.onActivity) {\n this.options.onActivity();\n }\n\n hangingTimer = activeTasks > 0 && setTimeout(onHanging, timeout);\n };\n\n for (const method of farmOptions.exposedMethods) {\n if (method.startsWith(\"_\")) {\n continue;\n }\n\n (this as any)[method] = timeout\n ? async (...args: any[]) => {\n activeTasks++;\n try {\n let attempts = 0;\n for (;;) {\n onActivity();\n\n const params = defu(\n args.length > 0 && args[0] ? args[0] : {},\n context ?? {}\n );\n\n const result = await Promise.race([\n // eslint-disable-next-line ts/no-unsafe-call\n (this.#worker as any)[method](...params),\n restartPromise\n ]);\n if (result !== RESTARTED) {\n return result;\n }\n if (onRestart) {\n onRestart(method, args, ++attempts);\n }\n }\n } finally {\n activeTasks--;\n onActivity();\n }\n }\n : // eslint-disable-next-line ts/no-unsafe-call\n (this.#worker as any)[method].bind(this.#worker);\n }\n }\n\n public async end(): ReturnType<JestWorker[\"end\"]> {\n const worker = this.#worker;\n if (!worker) {\n throw new Error(\"Farm is ended, no more calls can be done to it\");\n }\n\n cleanupWorkers(worker);\n this.#worker = undefined;\n return worker.end();\n }\n\n /**\n * Quietly end the worker if it exists\n */\n public close(): void {\n if (this.#worker) {\n cleanupWorkers(this.#worker);\n void this.#worker.end();\n }\n }\n}\n\nexport function createWorker<\n TExposedMethods extends ReadonlyArray<string> = ReadonlyArray<string>\n>(\n workerPath: string,\n exposedMethods: TExposedMethods,\n numWorkers = 1\n): WorkerProcess<TExposedMethods> {\n return new Worker(workerPath, {\n name: findFileName(workerPath, {\n withExtension: false\n }),\n exposedMethods,\n numWorkers\n }) as WorkerProcess<TExposedMethods>;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/build/rspack.ts"],"names":["extractRspackConfig","context","defu","resolve","alias","fs","builtinIdMap","keys","reduce","ret","id","path","get","config","build","variant","override","external","noExternal","skipNodeModulesBundle","output","joinPaths","workspaceConfig","workspaceRoot","outputPath","name","node","platform","__dirname","__filename","global","mode","recordsInputPath","cachePath","recordsOutputPath","projectRoot","Array","from","cache","devtool","optimization","minimize"],"mappings":";;;;;;;;;;AAgCO,SAASA,oBAAoBC,OAAAA,EAAgB;AAClD,EAAA,OAAOC,qBAAAA,CACL;IACEC,OAAAA,EAAS;MACPC,KAAAA,EAAOH,OAAAA,CAAQI,GAAGC,YAAAA,CAAaC,IAAAA,GAAOC,MAAAA,CACpC,CAACC,KAAKC,EAAAA,KAAAA;AACJ,QAAA,MAAMC,IAAAA,GAAOV,OAAAA,CAAQI,EAAAA,CAAGC,YAAAA,CAAaM,IAAIF,EAAAA,CAAAA;AACzC,QAAA,IAAIC,IAAAA,EAAM;AACRF,UAAAA,GAAAA,CAAIC,EAAAA,CAAAA,GAAMC,IAAAA;AACZ,QAAA;AAEA,QAAA,OAAOF,GAAAA;AACT,MAAA,CAAA,EACA,EAAC;AAEL;GACF,EACAR,OAAAA,CAAQY,OAAOC,KAAAA,CAAMC,OAAAA,KAAY,WAAWd,OAAAA,CAAQY,MAAAA,CAAOG,QAAAA,GAAW,EAAC,EACvE;IACEC,QAAAA,EAAUhB,OAAAA,CAAQY,OAAOC,KAAAA,CAAMG,QAAAA;IAC/BC,UAAAA,EAAYjB,OAAAA,CAAQY,OAAOC,KAAAA,CAAMI,UAAAA;IACjCC,qBAAAA,EAAuBlB,OAAAA,CAAQY,OAAOC,KAAAA,CAAMK;GAC9C,EACA;IACEC,MAAAA,EAAQ;AACNT,MAAAA,IAAAA,EAAMU,oBACJpB,OAAAA,CAAQqB,eAAAA,CAAgBC,eACxBtB,OAAAA,CAAQY,MAAAA,CAAOO,OAAOI,UAAU;AAEpC,KAAA;AACAC,IAAAA,IAAAA,EAAMxB,QAAQY,MAAAA,CAAOY,IAAAA;AACrBC,IAAAA,IAAAA,EACEzB,OAAAA,CAAQY,MAAAA,CAAOC,KAAAA,CAAMa,QAAAA,KAAa,MAAA,GAC7B;MACCC,SAAAA,EAAW,IAAA;MACXC,UAAAA,EAAY,IAAA;MACZC,MAAAA,EAAQ;KACV,GACA,KAAA;AACNC,IAAAA,IAAAA,EACE9B,OAAAA,CAAQY,MAAAA,CAAOkB,IAAAA,KAAS,aAAA,GACnB,aAAA,GACA,YAAA;AACPC,IAAAA,gBAAAA,EAAkBX,mBAAAA,CAChBpB,OAAAA,CAAQgC,SAAAA,EACR,QAAA,EACA,sBAAA,CAAA;AAEFC,IAAAA,iBAAAA,EAAmBb,mBAAAA,CACjBpB,OAAAA,CAAQgC,SAAAA,EACR,QAAA,EACA,sBAAA,CAAA;AAEFhC,IAAAA,OAAAA,EAASoB,oBACPpB,OAAAA,CAAQqB,eAAAA,CAAgBC,aAAAA,EACxBtB,OAAAA,CAAQY,OAAOsB,WAAW,CAAA;AAE5BjB,IAAAA,UAAAA,EAAYkB,MAAMC,IAAAA,CAAKpC,OAAAA,CAAQI,EAAAA,CAAGC,YAAAA,CAAaC,MAAI;GACrD,EACAN,OAAAA,CAAQY,OAAOC,KAAAA,CAAMC,OAAAA,KAAY,WAAWd,OAAAA,CAAQY,MAAAA,CAAOC,KAAAA,GAAQ,EAAC,EACpE;IACEwB,KAAAA,EAAOrC,OAAAA,CAAQY,OAAOkB,IAAAA,KAAS,aAAA;AAC/BQ,IAAAA,OAAAA,EAAUtC,OAAAA,CAAQY,MAAAA,CAAOkB,IAAAA,KAAS,aAAA,GAC9B,KAAA,GACA,YAAA;IACJS,YAAAA,EAAc;MACZC,QAAAA,EAAUxC,OAAAA,CAAQY,OAAOkB,IAAAA,KAAS;AACpC;GACF,CAAA;AAEJ;AAtEgB/B,wBAAAA,CAAAA,mBAAAA,EAAAA,qBAAAA,CAAAA","file":"chunk-SB3NFYXT.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type {\n DevTool,\n Configuration as ExternalRspackOptions\n} from \"@rspack/core\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport defu from \"defu\";\nimport { Context } from \"../../types/context\";\n\n/**\n * Resolves the options for [rspack](https://rspack.rs/).\n *\n * @param context - The build context.\n * @returns The resolved options.\n */\nexport function extractRspackConfig(context: Context): ExternalRspackOptions {\n return defu(\n {\n resolve: {\n alias: context.fs.builtinIdMap.keys().reduce(\n (ret, id) => {\n const path = context.fs.builtinIdMap.get(id);\n if (path) {\n ret[id] = path;\n }\n\n return ret;\n },\n {} as Record<string, string>\n )\n }\n },\n context.config.build.variant === \"rspack\" ? context.config.override : {},\n {\n external: context.config.build.external,\n noExternal: context.config.build.noExternal,\n skipNodeModulesBundle: context.config.build.skipNodeModulesBundle\n },\n {\n output: {\n path: joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.output.outputPath\n )\n },\n name: context.config.name,\n node:\n context.config.build.platform === \"node\"\n ? ({\n __dirname: true,\n __filename: true,\n global: true\n } as ExternalRspackOptions[\"node\"])\n : false,\n mode:\n context.config.mode === \"development\"\n ? (\"development\" as const)\n : (\"production\" as const),\n recordsInputPath: joinPaths(\n context.cachePath,\n \"rspack\",\n \".rspack-records.json\"\n ),\n recordsOutputPath: joinPaths(\n context.cachePath,\n \"rspack\",\n \".rspack-records.json\"\n ),\n context: joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.projectRoot\n ),\n noExternal: Array.from(context.fs.builtinIdMap.keys())\n },\n context.config.build.variant === \"rspack\" ? context.config.build : {},\n {\n cache: context.config.mode === \"development\",\n devtool: (context.config.mode !== \"development\"\n ? false\n : \"source-map\") as DevTool | false,\n optimization: {\n minimize: context.config.mode !== \"development\"\n }\n }\n );\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/build/unbuild.ts"],"names":["DEFAULT_UNBUILD_CONFIG","dts","clean","includeSrc","treeShaking","splitting","stub","watchOptions","outputPath","generatePackageJson","banner","rollup","emitCJS","replace","resolve","json","esbuild","target","commonjs","alias","unbuildLoader","context","input","options","test","path","output","contents","getContents","declaration","srcPath","match","cm","extension","push","transformed","result","$$internal","callHook","sequential","order","getString","includes","transform","Object","fromEntries","entries","filter","key","loader","then","r","code","isCjs","format","resolver","source","retainLines","ext","startsWith","extractUnbuildConfig","defu","fs","builtinIdMap","keys","reduce","ret","id","get","config","build","variant","override","projectName","name","orgName","isObject","workspaceConfig","organization","sourceRoot","projectRoot","platform","external","loaders","jiti","interopDefault","fsCache","joinPaths","envPaths","cache","moduleCache","extractRollupConfig","debug","mode","minify","sourcemap"],"mappings":"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","file":"chunk-TJQEGHJA.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { Loader, LoaderResult } from \"@storm-software/unbuild/types\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport defu from \"defu\";\nimport { transform } from \"esbuild\";\nimport { TransformResult } from \"unplugin\";\nimport {\n UnbuildBuildConfig,\n UnbuildResolvedBuildConfig\n} from \"../../types/build\";\nimport { Context } from \"../../types/context\";\nimport { UNSAFE_PluginContext } from \"../../types/internal\";\nimport { getString } from \"../utilities/source-file\";\nimport { extractRollupConfig } from \"./rollup\";\n\nexport const DEFAULT_UNBUILD_CONFIG = {\n dts: true,\n clean: false,\n includeSrc: false,\n treeShaking: true,\n splitting: true,\n stub: false,\n watchOptions: {},\n outputPath: \"dist\",\n generatePackageJson: true,\n banner: \" \",\n rollup: {\n dts: {},\n emitCJS: true,\n replace: {},\n resolve: {},\n json: {},\n esbuild: { target: \"es2020\" },\n commonjs: {},\n alias: {}\n }\n} as Partial<UnbuildBuildConfig>;\n\nexport const unbuildLoader = (context: UNSAFE_PluginContext): Loader => {\n return async (input, { options }) => {\n if (\n !/\\.(?:c|m)?[jt]sx?$/.test(input.path) ||\n /\\.d\\.[cm]?ts$/.test(input.path)\n ) {\n return;\n }\n\n const output: LoaderResult = [];\n\n let contents = await input.getContents();\n\n // declaration\n if (options.declaration && !input.srcPath?.match(/\\.d\\.[cm]?ts$/)) {\n const cm = input.srcPath?.match(/(?<=\\.)(?:c|m)(?=[jt]s$)/)?.[0] || \"\";\n const extension = `.d.${cm}ts`;\n output.push({\n contents,\n srcPath: input.srcPath,\n path: input.path,\n extension,\n declaration: true\n });\n }\n\n let transformed: TransformResult | string = contents;\n\n let result = await context.$$internal.callHook(\n \"transform\",\n {\n sequential: true,\n order: \"pre\"\n },\n transformed,\n input.path\n );\n if (result) {\n transformed = result;\n }\n\n result = await context.$$internal.callHook(\n \"transform\",\n {\n sequential: true,\n order: \"normal\"\n },\n getString(transformed),\n input.path\n );\n if (result) {\n transformed = result;\n }\n\n result = await context.$$internal.callHook(\n \"transform\",\n {\n sequential: true,\n order: \"post\"\n },\n getString(transformed),\n input.path\n );\n if (result) {\n transformed = result;\n }\n\n // typescript => js\n if ([\".ts\", \".mts\", \".cts\"].includes(input.extension)) {\n contents = await transform(getString(transformed), {\n ...Object.fromEntries(\n Object.entries(options.esbuild ?? {}).filter(\n ([key]) => key !== \"absPaths\"\n )\n ),\n loader: \"ts\"\n }).then(r => r.code);\n } else if ([\".tsx\", \".jsx\"].includes(input.extension)) {\n contents = await transform(getString(transformed), {\n loader: input.extension === \".tsx\" ? \"tsx\" : \"jsx\",\n ...Object.fromEntries(\n Object.entries(options.esbuild ?? {}).filter(\n ([key]) => key !== \"absPaths\"\n )\n )\n }).then(r => r.code);\n }\n\n // esm => cjs\n const isCjs = options.format === \"cjs\";\n if (isCjs) {\n contents = context.resolver\n .transform({\n source: contents,\n retainLines: false\n })\n .replace(/^exports.default = /gm, \"module.exports = \")\n .replace(/^var _default = exports.default = /gm, \"module.exports = \")\n .replace(\"module.exports = void 0;\", \"\");\n }\n\n let extension = isCjs ? \".js\" : \".mjs\"; // TODO: Default to .cjs in next major version\n if (options.ext) {\n extension = options.ext.startsWith(\".\") ? options.ext : `.${options.ext}`;\n }\n\n output.push({\n contents,\n path: input.path,\n extension\n });\n\n return output;\n };\n};\n\n/**\n * Extracts the unbuild configuration from the context.\n *\n * @param context - The build context.\n * @returns The resolved unbuild configuration.\n */\nexport function extractUnbuildConfig(\n context: Context\n): UnbuildResolvedBuildConfig {\n return defu(\n {\n alias: context.fs.builtinIdMap.keys().reduce(\n (ret, id) => {\n const path = context.fs.builtinIdMap.get(id);\n if (path) {\n ret[id] = path;\n }\n\n return ret;\n },\n {} as Record<string, string>\n )\n },\n context.config.build.variant === \"unbuild\" ? context.config.override : {},\n {\n projectName: context.config.name,\n name: context.config.name,\n orgName: isObject(context.workspaceConfig.organization)\n ? context.workspaceConfig.organization.name\n : context.workspaceConfig.organization,\n sourceRoot: context.config.sourceRoot,\n projectRoot: context.config.projectRoot,\n outputPath: context.config.output.outputPath || \"dist\",\n platform: context.config.build.platform,\n external: context.fs.builtinIdMap.keys().reduce((ret, id) => {\n if (!ret.includes(id)) {\n ret.push(id);\n }\n\n return ret;\n }, context.config.build.external ?? []) as string[],\n\n loaders: [unbuildLoader(context as UNSAFE_PluginContext)],\n jiti: {\n interopDefault: true,\n fsCache: joinPaths(context.envPaths.cache, \"jiti\"),\n moduleCache: true\n },\n rollup: extractRollupConfig(context) as any\n },\n context.config.build.variant === \"unbuild\" ? context.config.build : {},\n {\n debug: context.config.mode === \"development\",\n minify: context.config.mode !== \"development\",\n sourcemap: context.config.mode === \"development\"\n },\n DEFAULT_UNBUILD_CONFIG\n );\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/utilities/source-map.ts"],"names":["dmp","Diff","generateSourceMap","code","id","transpiled","diff","diff_main","toString","diff_cleanupSemantic","offset","index","length","type","text","textLength","prependLeft","next","at","replaceText","firstNonWhitespaceIndexOfText","search","offsetStart","Math","max","update","remove","hasChanged","map","generateMap","source","file","includeContent"],"mappings":";;;AAsBA,IAAMA,GAAAA,GAAM,IAAIC,IAAAA,EAAAA;AAUT,SAASC,iBAAAA,CACdC,IAAAA,EACAC,EAAAA,EACAC,UAAAA,EAAmB;AAEnB,EAAA,IAAI,CAACA,UAAAA,EAAY;AACf,IAAA;AACF,EAAA;AAEA,EAAA,MAAMC,OAAON,GAAAA,CAAIO,SAAAA,CAAUJ,IAAAA,CAAKK,QAAAA,IAAYH,UAAAA,CAAAA;AAC5CL,EAAAA,GAAAA,CAAIS,qBAAqBH,IAAAA,CAAAA;AAEzB,EAAA,IAAII,MAAAA,GAAS,CAAA;AAEb,EAAA,KAAA,IAASC,KAAAA,GAAQ,CAAA,EAAGA,KAAAA,GAAQL,IAAAA,CAAKM,QAAQD,KAAAA,EAAAA,EAAS;AAChD,IAAA,IAAIL,IAAAA,CAAKK,KAAAA,CAAAA,EAAQ;AACf,MAAA,MAAM,CAACE,IAAAA,EAAMC,IAAAA,CAAAA,GAAQR,KAAKK,KAAAA,CAAAA;AAC1B,MAAA,MAAMI,aAAaD,IAAAA,CAAKF,MAAAA;AAExB,MAAA,QAAQC,IAAAA;AACN,QAAA,KAAK,CAAA,EAAG;AACNH,UAAAA,MAAAA,IAAUK,UAAAA;AACV,UAAA;AACF,QAAA;AACA,QAAA,KAAK,CAAA,EAAG;AACNZ,UAAAA,IAAAA,CAAKa,WAAAA,CAAYN,QAAQI,IAAAA,CAAAA;AACzB,UAAA;AACF,QAAA;AACA,QAAA,KAAK,EAAA,EAAI;AACP,UAAA,MAAMG,IAAAA,GAAOX,IAAAA,CAAKY,EAAAA,CAAGP,KAAAA,GAAQ,CAAA,CAAA;AAE7B,UAAA,IAAIM,IAAAA,IAAQA,IAAAA,CAAK,CAAA,CAAA,KAAO,CAAA,EAAG;AACzB,YAAA,MAAME,WAAAA,GAAcF,KAAK,CAAA,CAAA;AAEzB,YAAA,MAAMG,6BAAAA,GAAgCN,IAAAA,CAAKO,MAAAA,CAAO,IAAA,CAAA;AAClD,YAAA,MAAMC,WAAAA,GACJZ,MAAAA,GAASa,IAAAA,CAAKC,GAAAA,CAAIJ,+BAA+B,CAAA,CAAA;AAEnDjB,YAAAA,IAAAA,CAAKsB,MAAAA,CAAOH,WAAAA,EAAaZ,MAAAA,GAASK,UAAAA,EAAYI,WAAAA,CAAAA;AAC9CR,YAAAA,KAAAA,IAAS,CAAA;UACX,CAAA,MAAO;AACLR,YAAAA,IAAAA,CAAKuB,MAAAA,CAAOhB,MAAAA,EAAQA,MAAAA,GAASK,UAAAA,CAAAA;AAC/B,UAAA;AAEAL,UAAAA,MAAAA,IAAUK,UAAAA;AAEV,UAAA;AACF,QAAA;AACF;AACF,IAAA;AACF,EAAA;AAEA,EAAA,IAAI,CAACZ,IAAAA,CAAKwB,UAAAA,EAAU,EAAI;AACtB,IAAA;AACF,EAAA;AAEA,EAAA,OAAO;AACLxB,IAAAA,IAAAA,EAAMA,KAAKK,QAAAA,EAAQ;AACnBoB,IAAAA,GAAAA,EAAKzB,KAAK0B,WAAAA,CAAY;MACpBC,MAAAA,EAAQ1B,EAAAA;AACR2B,MAAAA,IAAAA,EAAM,GAAG3B,EAAAA,CAAAA,IAAAA,CAAAA;MACT4B,cAAAA,EAAgB;KAClB;AACF,GAAA;AACF;AAhEgB9B,MAAAA,CAAAA,iBAAAA,EAAAA,mBAAAA,CAAAA","file":"chunk-TNCZYSNV.js","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport Diff from \"diff-match-patch\";\nimport type MagicString from \"magic-string\";\nimport type { CompilerResult } from \"../../types/compiler\";\n\nconst dmp = new Diff();\n\n/**\n * Generate code with source map.\n *\n * @param code - The source code.\n * @param id - The file name.\n * @param transpiled - The transpiled code.\n * @returns The compiler result.\n */\nexport function generateSourceMap(\n code: MagicString,\n id: string,\n transpiled?: string\n): CompilerResult {\n if (!transpiled) {\n return;\n }\n\n const diff = dmp.diff_main(code.toString(), transpiled);\n dmp.diff_cleanupSemantic(diff);\n\n let offset = 0;\n\n for (let index = 0; index < diff.length; index++) {\n if (diff[index]) {\n const [type, text] = diff[index]!;\n const textLength = text.length;\n\n switch (type) {\n case 0: {\n offset += textLength;\n break;\n }\n case 1: {\n code.prependLeft(offset, text);\n break;\n }\n case -1: {\n const next = diff.at(index + 1);\n\n if (next && next[0] === 1) {\n const replaceText = next[1];\n\n const firstNonWhitespaceIndexOfText = text.search(/\\S/);\n const offsetStart =\n offset + Math.max(firstNonWhitespaceIndexOfText, 0);\n\n code.update(offsetStart, offset + textLength, replaceText);\n index += 1;\n } else {\n code.remove(offset, offset + textLength);\n }\n\n offset += textLength;\n\n break;\n }\n }\n }\n }\n\n if (!code.hasChanged()) {\n return;\n }\n\n return {\n code: code.toString(),\n map: code.generateMap({\n source: id,\n file: `${id}.map`,\n includeContent: true\n })\n };\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/utilities/write-file.ts"],"names":["writeFile","log","filepath","content","skipFormat","writeFileBase","config","resolveConfig","formatted","format","error","LogLevelLabel","ERROR","message"],"mappings":";;;;;;;AA+BA,eAAsBA,SAAAA,CACpBC,GAAAA,EACAC,QAAAA,EACAC,OAAAA,EACAC,aAAa,KAAA,EAAK;AAElB,EAAA,IAAI;AACF,IAAA,IAAIA,UAAAA,EAAY;AACd,MAAA,MAAMC,qBAAAA,CAAcH,UAAUC,OAAAA,CAAAA;IAChC,CAAA,MAAO;AACL,MAAA,MAAMG,MAAAA,GAAS,MAAMC,sBAAAA,CAAcL,QAAAA,CAAAA;AACnC,MAAA,MAAMM,SAAAA,GAAY,MAAMC,eAAAA,CAAON,OAAAA,EAAS;AACtC,QAAA,GAAIG,UAAU,EAAC;AACfJ,QAAAA;OACF,CAAA;AAEA,MAAA,MAAMG,qBAAAA,CAAcH,QAAAA,EAAUM,SAAAA,IAAa,EAAA,CAAA;AAC7C,IAAA;AACF,EAAA,CAAA,CAAA,OAASE,KAAAA,EAAO;AACdT,IAAAA,GAAAA,CACEU,mBAAAA,CAAcC,KAAAA,EACd,CAAA,qBAAA,EAAwBV,QAAAA,CAAAA;AAAuBQ,EAAAA,KAAAA,EAAiBG,OAAAA,GAAWH,KAAAA,CAAgBG,OAAAA,GAAU,EAAA,CAAA,CAAI,CAAA;AAE7G,EAAA;AACF;AAxBsBb,wBAAAA,CAAAA,SAAAA,EAAAA,WAAAA,CAAAA","file":"chunk-TZFBE35T.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { LogLevelLabel } from \"@storm-software/config-tools/types\";\nimport { writeFile as writeFileBase } from \"@stryke/fs/write-file\";\nimport { format, resolveConfig } from \"prettier\";\nimport type { LogFn } from \"../../types/config\";\n\n/**\n * Writes and formats a file to the file system\n *\n * @param log - The logging function to use for logging errors\n * @param filepath - The file path to write the file\n * @param content - The content to write to the file\n * @param skipFormat - Should the plugin skip formatting the `content` string with Prettier\n */\nexport async function writeFile(\n log: LogFn,\n filepath: string,\n content: string,\n skipFormat = false\n) {\n try {\n if (skipFormat) {\n await writeFileBase(filepath, content);\n } else {\n const config = await resolveConfig(filepath);\n const formatted = await format(content, {\n ...(config ?? {}),\n filepath\n });\n\n await writeFileBase(filepath, formatted || \"\");\n }\n } catch (error) {\n log(\n LogLevelLabel.ERROR,\n `Failed to write file ${filepath} to disk \\n${(error as Error)?.message ? (error as Error).message : \"\"}`\n );\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/build/vite.ts"],"names":["DEFAULT_VITE_CONFIG","resolve","extensions","json","stringify","logLevel","clearScreen","extractViteConfig","context","defu","alias","fs","builtinIdMap","keys","reduce","ret","id","path","get","config","build","variant","override","external","noExternal","skipNodeModulesBundle","rootDir","sourceRoot","platform","mode","cacheDir","joinPaths","cachePath","outDir","output","outputPath","tsconfig","tsconfigFilePath","tsconfigRaw","tsconfigJson","esbuild","extractESBuildConfig","undefined","envDir","projectRoot","Array","from","minify","metafile","sourcemap"],"mappings":";;;;;;;;;;;AAyBO,IAAMA,mBAAAA,GAAwD;EACnEC,OAAAA,EAAS;IACPC,UAAAA,EAAY;AAAC,MAAA,MAAA;AAAQ,MAAA,KAAA;AAAO,MAAA,MAAA;AAAQ,MAAA,KAAA;AAAO,MAAA,MAAA;AAAQ,MAAA,MAAA;AAAQ,MAAA;;AAC7D,GAAA;EACAC,IAAAA,EAAM;IACJC,SAAAA,EAAW;AACb,GAAA;EACAC,QAAAA,EAAU,QAAA;EACVC,WAAAA,EAAa;AACf;AAQO,SAASC,kBAAkBC,OAAAA,EAAgB;AAChD,EAAA,OAAOC,qBAAAA,CACL;IACER,OAAAA,EAAS;MACPS,KAAAA,EAAOF,OAAAA,CAAQG,GAAGC,YAAAA,CAAaC,IAAAA,GAAOC,MAAAA,CACpC,CAACC,KAAKC,EAAAA,KAAAA;AACJ,QAAA,MAAMC,IAAAA,GAAOT,OAAAA,CAAQG,EAAAA,CAAGC,YAAAA,CAAaM,IAAIF,EAAAA,CAAAA;AACzC,QAAA,IAAIC,IAAAA,EAAM;AACRF,UAAAA,GAAAA,CAAIC,EAAAA,CAAAA,GAAMC,IAAAA;AACZ,QAAA;AAEA,QAAA,OAAOF,GAAAA;AACT,MAAA,CAAA,EACA,EAAC;AAEL;GACF,EACAP,OAAAA,CAAQW,OAAOC,KAAAA,CAAMC,OAAAA,KAAY,SAASb,OAAAA,CAAQW,MAAAA,CAAOG,QAAAA,GAAW,EAAC,EACrE;IACEC,QAAAA,EAAUf,OAAAA,CAAQW,OAAOC,KAAAA,CAAMG,QAAAA;IAC/BC,UAAAA,EAAYhB,OAAAA,CAAQW,OAAOC,KAAAA,CAAMI,UAAAA;IACjCC,qBAAAA,EAAuBjB,OAAAA,CAAQW,OAAOC,KAAAA,CAAMK;GAC9C,EACA;AACEC,IAAAA,OAAAA,EAASlB,QAAQW,MAAAA,CAAOQ,UAAAA;IACxBC,QAAAA,EAAUpB,OAAAA,CAAQW,OAAOC,KAAAA,CAAMQ,QAAAA;AAC/BC,IAAAA,IAAAA,EACErB,OAAAA,CAAQW,MAAAA,CAAOU,IAAAA,KAAS,aAAA,GAAgB,aAAA,GAAgB,YAAA;IAC1DC,QAAAA,EAAUC,mBAAAA,CAAUvB,OAAAA,CAAQwB,SAAAA,EAAW,MAAA,CAAA;IACvCZ,KAAAA,EAAO;MACLa,MAAAA,EAAQzB,OAAAA,CAAQW,OAAOe,MAAAA,CAAOC,UAAAA;AAC9BC,MAAAA,QAAAA,EAAU5B,QAAQ4B,QAAAA,CAASC,gBAAAA;AAC3BC,MAAAA,WAAAA,EAAa9B,QAAQ4B,QAAAA,CAASG;AAChC,KAAA;AACAC,IAAAA,OAAAA,EAASC,uCAAqBjC,OAAAA,CAAAA;IAC9BH,QAAAA,EAAUG,OAAAA,CAAQW,OAAOd,QAAAA,IAAYqC,MAAAA;AACrCC,IAAAA,MAAAA,EAAQnC,QAAQW,MAAAA,CAAOyB,WAAAA;AACvBpB,IAAAA,UAAAA,EAAYqB,MAAMC,IAAAA,CAAKtC,OAAAA,CAAQG,EAAAA,CAAGC,YAAAA,CAAaC,MAAI;GACrD,EACAL,OAAAA,CAAQW,OAAOC,KAAAA,CAAMC,OAAAA,KAAY,SAASb,OAAAA,CAAQW,MAAAA,CAAOC,KAAAA,GAAQ,EAAC,EAClE;IACEA,KAAAA,EAAO;MACL2B,MAAAA,EAAQvC,OAAAA,CAAQW,OAAOU,IAAAA,KAAS,aAAA;MAChCmB,QAAAA,EAAUxC,OAAAA,CAAQW,OAAOU,IAAAA,KAAS,aAAA;MAClCoB,SAAAA,EAAWzC,OAAAA,CAAQW,OAAOU,IAAAA,KAAS;AACrC;AACF,GAAA,EACA7B,mBAAAA,CAAAA;AAEJ;AAjDgBO,wBAAAA,CAAAA,iBAAAA,EAAAA,mBAAAA,CAAAA","file":"chunk-VANFTXBT.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport defu from \"defu\";\nimport { ESBuildOptions } from \"vite\";\nimport { ViteResolvedBuildConfig } from \"../../types/build\";\nimport { Context } from \"../../types/context\";\nimport { extractESBuildConfig } from \"./esbuild\";\n\nexport const DEFAULT_VITE_CONFIG: Partial<ViteResolvedBuildConfig> = {\n resolve: {\n extensions: [\".mjs\", \".js\", \".mts\", \".ts\", \".jsx\", \".tsx\", \".json\"]\n },\n json: {\n stringify: true\n },\n logLevel: \"silent\",\n clearScreen: true\n};\n\n/**\n * Resolves the options for [vite](https://vitejs.dev/).\n *\n * @param context - The build context.\n * @returns The resolved options.\n */\nexport function extractViteConfig(context: Context): ViteResolvedBuildConfig {\n return defu(\n {\n resolve: {\n alias: context.fs.builtinIdMap.keys().reduce(\n (ret, id) => {\n const path = context.fs.builtinIdMap.get(id);\n if (path) {\n ret[id] = path;\n }\n\n return ret;\n },\n {} as Record<string, string>\n )\n }\n },\n context.config.build.variant === \"vite\" ? context.config.override : {},\n {\n external: context.config.build.external,\n noExternal: context.config.build.noExternal,\n skipNodeModulesBundle: context.config.build.skipNodeModulesBundle\n },\n {\n rootDir: context.config.sourceRoot,\n platform: context.config.build.platform,\n mode:\n context.config.mode === \"development\" ? \"development\" : \"production\",\n cacheDir: joinPaths(context.cachePath, \"vite\"),\n build: {\n outDir: context.config.output.outputPath,\n tsconfig: context.tsconfig.tsconfigFilePath,\n tsconfigRaw: context.tsconfig.tsconfigJson\n },\n esbuild: extractESBuildConfig(context) as ESBuildOptions,\n logLevel: context.config.logLevel ?? undefined,\n envDir: context.config.projectRoot,\n noExternal: Array.from(context.fs.builtinIdMap.keys())\n },\n context.config.build.variant === \"vite\" ? context.config.build : {},\n {\n build: {\n minify: context.config.mode !== \"development\",\n metafile: context.config.mode === \"development\",\n sourcemap: context.config.mode === \"development\"\n }\n },\n DEFAULT_VITE_CONFIG\n ) as ViteResolvedBuildConfig;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/unplugin/resolve-id.ts"],"names":["NON_NODE_MODULE_REGEX","handleResolveId","context","args","options","id","fs","isVirtualFile","importer","paths","resolvedPath","resolvePath","external","config","projectType","isTsconfigPath","tsconfigPath","resolveTsconfigPath","tsconfigPathPackage","resolveTsconfigPathPackage","Boolean","noExternal","includes","skipResolve","undefined","skipNodeModulesBundle","match","resolvePatterns","startsWith","test","isBuiltinFile"],"mappings":"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","file":"chunk-VRNWPH35.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { match } from \"bundle-require\";\nimport type { ExternalIdResult } from \"unplugin\";\nimport type { Context } from \"../../types/context\";\n\n// Must not start with \"/\" or \"./\" or \"../\" or \"C:\\\" or be the exact strings \"..\" or \".\"\nconst NON_NODE_MODULE_REGEX = /^[A-Z]:[/\\\\]|^\\.{0,2}\\/|^\\.{1,2}$/;\n\nexport interface ResolveIdArgs {\n id: string;\n importer: string | undefined;\n options: {\n isEntry: boolean;\n };\n}\n\nexport interface ResolveIdOptions {\n skipResolve?: boolean;\n skipNodeModulesBundle?: boolean;\n external: (string | RegExp)[];\n noExternal: (string | RegExp)[];\n resolvePatterns: (string | RegExp)[];\n}\n\n/**\n * Handle the resolveId hook for the unplugin.\n *\n * @param context - The plugin context.\n * @param args - The arguments for the hook.\n * @param options - The options for the hook.\n * @returns The resolved id or null if not found.\n */\nexport async function handleResolveId(\n context: Context,\n args: ResolveIdArgs,\n options: Partial<ResolveIdOptions> = {}\n): Promise<ExternalIdResult | null | undefined> {\n if (args.id) {\n if (\n context.fs.isVirtualFile(args.id) ||\n (args.importer &&\n context.fs.isVirtualFile(args.id, {\n paths: [args.importer]\n }))\n ) {\n const resolvedPath = args.importer\n ? context.fs.resolvePath(args.id, {\n paths: [args.importer]\n })\n : context.fs.resolvePath(args.id);\n if (resolvedPath) {\n return {\n id: resolvedPath,\n external: context.config.projectType !== \"application\"\n };\n }\n }\n\n if (context.fs.isTsconfigPath(args.id)) {\n const tsconfigPath = context.fs.resolveTsconfigPath(args.id);\n const tsconfigPathPackage = context.fs.resolveTsconfigPathPackage(\n args.id\n );\n if (tsconfigPath && tsconfigPathPackage) {\n return {\n id: tsconfigPath,\n external: Boolean(\n !options.noExternal?.includes(tsconfigPathPackage) &&\n (options.external?.includes(tsconfigPathPackage) ??\n context.config.projectType !== \"application\")\n )\n };\n }\n }\n\n if (options.skipResolve) {\n return undefined;\n }\n\n if (options.skipNodeModulesBundle) {\n if (\n match(args.id, options.resolvePatterns) ||\n match(args.id, options.noExternal) ||\n args.id.startsWith(\"internal:\") ||\n args.id.startsWith(\"virtual:\")\n ) {\n return undefined;\n }\n\n if (match(args.id, options.external) || args.id.startsWith(\"node:\")) {\n return { id: args.id, external: true };\n }\n\n // Exclude any other import that looks like a Node module\n if (!NON_NODE_MODULE_REGEX.test(args.id)) {\n return {\n id: args.id,\n external: true\n };\n }\n } else {\n if (\n match(args.id, options.noExternal) ||\n context.fs.isBuiltinFile(args.id) ||\n (args.importer &&\n context.fs.isBuiltinFile(args.id, {\n paths: [args.importer]\n }))\n ) {\n return undefined;\n }\n\n if (match(args.id, options.external) || args.id.startsWith(\"node:\")) {\n return { id: args.id, external: true };\n }\n }\n }\n\n return undefined;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/types/vfs.ts","../../src/lib/utilities/meta.ts"],"names":["__VFS_INIT__","__VFS_REVERT__","__VFS_CACHE__","__VFS_RESOLVER__","__VFS_VIRTUAL__","__VFS_UNIFIED__","PROJECT_ROOT_HASH_LENGTH","CACHE_HASH_LENGTH","getPrefixedProjectRootHash","name","projectRootHash","combined","kebabCase","length","slice","discoverTemplatePath","path","Promise","all","resolve","test","includes","hasFileExtension","joinPaths","listFiles","flat","filter","Boolean","discoverTemplates","context","paths","getUnique","map","config","sourceRoot","envPaths","projectRoot","reduce","ret","existsSync","push","getChecksum","hashDirectory","ignore","getPersistedMeta","metaFilePath","dataPath","readJsonFile","log","LogLevelLabel","WARN","removeFile","persistedMeta","undefined","writeMetaFile","DEBUG","fs","writeFileToDisk","JSON","stringify","meta","builtinIdMap","Object","fromEntries","entries","virtualFiles","toJSON","artifactsPath"],"mappings":"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","file":"chunk-XFIGAAKN.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { Volume } from \"memfs\";\nimport type {\n MakeDirectoryOptions as FsMakeDirectoryOptions,\n WriteFileOptions as FsWriteFileOptions,\n Mode,\n PathLike,\n PathOrFileDescriptor,\n RmDirOptions,\n RmOptions,\n Stats,\n StatSyncOptions\n} from \"node:fs\";\nimport type { IUnionFs } from \"unionfs\";\n\nexport type VirtualFileExtension = \"js\" | \"ts\" | \"jsx\" | \"tsx\";\n\n// eslint-disable-next-line ts/naming-convention\nexport const __VFS_INIT__ = \"__VFS_INIT__\";\n\n// eslint-disable-next-line ts/naming-convention\nexport const __VFS_REVERT__ = \"__VFS_REVERT__\";\n\n// eslint-disable-next-line ts/naming-convention\nexport const __VFS_CACHE__ = \"__VFS_CACHE__\";\n\n// eslint-disable-next-line ts/naming-convention\nexport const __VFS_RESOLVER__ = \"__VFS_RESOLVER__\";\n\n// eslint-disable-next-line ts/naming-convention\nexport const __VFS_VIRTUAL__ = \"__VFS_VIRTUAL__\";\n\n// eslint-disable-next-line ts/naming-convention\nexport const __VFS_UNIFIED__ = \"__VFS_UNIFIED__\";\n\nexport interface VirtualFile {\n /**\n * A virtual path to the file in the virtual file system.\n */\n path: string;\n\n /**\n * The contents of the virtual file.\n */\n contents: string;\n}\n\nexport interface VirtualBuiltinFile extends VirtualFile {\n /**\n * The unique identifier for the virtual file.\n *\n * @remarks\n * This property is read-only and is set when the file is created.\n */\n id: string;\n}\n\nexport type OutputModeType = \"fs\" | \"virtual\";\n\nexport interface ResolveFSOptions {\n mode?: OutputModeType;\n}\n\nexport type MakeDirectoryOptions = (Mode | FsMakeDirectoryOptions) &\n ResolveFSOptions;\n\nexport interface ResolvePathOptions extends ResolveFSOptions {\n /**\n * Should the resolved path include the file extension?\n *\n * @defaultValue true\n */\n withExtension?: boolean;\n\n /**\n * The paths to search for the file.\n */\n paths?: string[];\n\n /**\n * The type of the path to resolve.\n */\n type?: \"file\" | \"directory\";\n}\n\nexport type WriteFileOptions = FsWriteFileOptions & ResolveFSOptions;\n\nexport interface WriteBuiltinFileOptions extends ResolveFSOptions {\n skipFormat?: boolean;\n}\n\nexport interface VirtualFileSystemInterface {\n [__VFS_INIT__]: () => void;\n [__VFS_REVERT__]: () => void;\n\n /**\n * The underlying builtin module Ids.\n */\n builtinIdMap: Map<string, string>;\n\n /**\n * Checks if a path or ID corresponds to a builtin file.\n *\n * @param id - The id of the builtin file to check against.\n * @param pathOrId - The path or id of the file to check.\n * @returns Whether the path or ID corresponds to a builtin file.\n */\n isMatchingBuiltinId: (id: string, pathOrId: string) => boolean;\n\n /**\n * Checks if a provided string is a valid builtin ID (does not need to already be created in the file system).\n *\n * @param id - The ID to check.\n * @returns Whether the ID is a valid builtin ID.\n */\n isValidBuiltinId: (id: string) => boolean;\n\n /**\n * Check if a path or ID corresponds to a virtual file.\n *\n * @param pathOrId - The path or ID to check.\n * @param options - Optional parameters for resolving the path.\n * @returns Whether the path or ID corresponds to a virtual file.\n */\n isVirtualFile: (pathOrId: string, options?: ResolvePathOptions) => boolean;\n\n /**\n * Check if a path exists within one of the directories specified in the tsconfig.json's `path` field.\n *\n * @see https://www.typescriptlang.org/tsconfig#paths\n *\n * @param pathOrId - The path or ID to check.\n * @returns Whether the path or ID corresponds to a virtual file.\n */\n isTsconfigPath: (pathOrId: string) => boolean;\n\n /**\n * Checks if a given path or ID corresponds to a builtin module file.\n */\n isBuiltinFile: (pathOrID: string, options?: ResolvePathOptions) => boolean;\n\n /**\n * Returns a list of builtin module files in the virtual file system.\n */\n listBuiltinFiles: () => Promise<VirtualBuiltinFile[]>;\n\n /**\n * Checks if a file exists in the virtual file system (VFS).\n */\n existsSync: (pathOrId: string) => boolean;\n\n /**\n * Checks if a file exists in the virtual file system (VFS).\n *\n * @param path - The path of the file to check.\n * @returns `true` if the file exists, otherwise `false`.\n */\n fileExistsSync: (path: string) => boolean;\n\n /**\n * Checks if a directory exists in the virtual file system (VFS).\n *\n * @param path - The path of the directory to check.\n * @returns `true` if the directory exists, otherwise `false`.\n */\n directoryExistsSync: (path: string) => boolean;\n\n /**\n * Checks if a path exists in the virtual file system (VFS).\n *\n * @param path - The path to check.\n * @returns `true` if the path exists, otherwise `false`.\n */\n pathExistsSync: (path: string) => boolean;\n\n /**\n * Gets the stats of a file in the virtual file system (VFS).\n *\n * @param pathOrId - The path or id of the file.\n * @param options - Optional parameters for getting the stats.\n * @returns The stats of the file if it exists, otherwise undefined.\n */\n lstat: (\n pathOrId: string,\n options?: StatSyncOptions & {\n bigint?: false | undefined;\n throwIfNoEntry: false;\n }\n ) => Promise<Stats>;\n\n /**\n * Gets the stats of a file in the virtual file system (VFS).\n *\n * @param pathOrId - The path or id of the file.\n * @param options - Optional parameters for getting the stats.\n * @returns The stats of the file if it exists, otherwise undefined.\n */\n lstatSync: (\n pathOrId: string,\n options?: StatSyncOptions & {\n bigint?: false | undefined;\n throwIfNoEntry: false;\n }\n ) => Stats | undefined;\n\n /**\n * Gets the stats of a file in the virtual file system (VFS).\n *\n * @param pathOrId - The path or id of the file.\n * @returns The stats of the file if it exists, otherwise false.\n */\n stat: (\n pathOrId: string,\n options?: StatSyncOptions & {\n bigint?: false | undefined;\n throwIfNoEntry: false;\n }\n ) => Promise<Stats>;\n\n /**\n * Gets the stats of a file in the virtual file system (VFS).\n *\n * @param pathOrId - The path or id of the file.\n * @returns The stats of the file if it exists, otherwise false.\n */\n statSync: (\n pathOrId: string,\n options?: StatSyncOptions & {\n bigint?: false | undefined;\n throwIfNoEntry: false;\n }\n ) => Stats | undefined;\n\n /**\n * Lists files in a given path.\n *\n * @param path - The path to list files from.\n * @param options - Options for listing files, such as encoding and recursion.\n * @returns An array of file names in the specified path.\n */\n readdirSync: (\n path: string,\n options?:\n | {\n encoding: BufferEncoding | null;\n withFileTypes?: false | undefined;\n recursive?: boolean | undefined;\n }\n | BufferEncoding\n ) => string[];\n\n /**\n * Lists files in a given path.\n *\n * @param path - The path to list files from.\n * @param options - Options for listing files, such as encoding and recursion.\n * @returns An array of file names in the specified path.\n */\n readdir: (\n path: string,\n options?:\n | {\n encoding: BufferEncoding | null;\n withFileTypes?: false | undefined;\n recursive?: boolean | undefined;\n }\n | BufferEncoding\n ) => Promise<string[]>;\n\n /**\n * Removes a file or symbolic link in the virtual file system (VFS).\n *\n * @param path - The path to the file to remove.\n * @returns A promise that resolves when the file is removed.\n */\n unlinkSync: (path: PathLike, options?: ResolveFSOptions) => void;\n\n /**\n * Asynchronously removes a file or symbolic link in the virtual file system (VFS).\n *\n * @param path - The path to the file to remove.\n * @returns A promise that resolves when the file is removed.\n */\n unlink: (path: string, options?: ResolveFSOptions) => Promise<void>;\n\n /**\n * Removes a directory in the virtual file system (VFS).\n *\n * @param path - The path to create the directory at.\n * @param options - Options for creating the directory.\n */\n rmdirSync: (path: PathLike, options?: RmDirOptions & ResolveFSOptions) => any;\n\n /**\n * Removes a directory in the virtual file system (VFS).\n *\n * @param path - The path to create the directory at.\n * @param options - Options for creating the directory.\n * @returns A promise that resolves to the path of the created directory, or undefined if the directory could not be created.\n */\n rmdir: (\n path: PathLike,\n options?: RmDirOptions & ResolveFSOptions\n ) => Promise<void>;\n\n /**\n * Removes a file in the virtual file system (VFS).\n *\n * @param path - The path to the file to remove.\n * @param options - Options for removing the file.\n * @returns A promise that resolves when the file is removed.\n */\n rm: (path: PathLike, options?: RmOptions & ResolveFSOptions) => Promise<void>;\n\n /**\n * Creates a directory in the virtual file system (VFS).\n *\n * @param path - The path to create the directory at.\n * @param options - Options for creating the directory.\n * @returns A promise that resolves to the path of the created directory, or undefined if the directory could not be created.\n */\n mkdirSync: (\n path: PathLike,\n options?: MakeDirectoryOptions\n ) => string | undefined;\n\n /**\n * Creates a directory in the virtual file system (VFS).\n *\n * @param path - The path to create the directory at.\n * @param options - Options for creating the directory.\n * @returns A promise that resolves to the path of the created directory, or undefined if the directory could not be created.\n */\n mkdir: (\n path: PathLike,\n options?: MakeDirectoryOptions\n ) => Promise<string | undefined>;\n\n /**\n * Reads a file from the virtual file system (VFS).\n *\n * @param pathOrId - The path or id of the file.\n * @returns The contents of the file if it exists, otherwise undefined.\n */\n readFile: (pathOrId: string) => Promise<string | undefined>;\n\n /**\n * Reads a file from the virtual file system (VFS).\n *\n * @param pathOrId - The path or id of the file.\n */\n readFileSync: (pathOrId: string) => string | undefined;\n\n /**\n * Writes a file to the virtual file system (VFS).\n *\n * @param file - The path to the file.\n * @param data - The contents of the file.\n * @param options - Optional parameters for writing the file.\n * @returns A promise that resolves when the file is written.\n */\n writeFile: (\n file: PathOrFileDescriptor,\n data: string | NodeJS.ArrayBufferView,\n options?: WriteFileOptions\n ) => Promise<void>;\n\n /**\n * Writes a file to the virtual file system (VFS).\n *\n * @param file - The path to the file.\n * @param data - The contents of the file.\n * @param options - Optional parameters for writing the file.\n */\n writeFileSync: (\n file: PathOrFileDescriptor,\n data: string | NodeJS.ArrayBufferView,\n options?: WriteFileOptions\n ) => void;\n\n /**\n * Adds a builtin module file to the virtual file system.\n *\n * @param id - The unique identifier for the builtin module file.\n * @param path - The path to the builtin module file.\n * @param contents - The contents of the builtin module file.\n * @param options - Optional parameters for writing the builtin module file.\n */\n writeBuiltinFile: (\n id: string,\n path: string,\n contents: string,\n options?: WriteBuiltinFileOptions\n ) => Promise<void>;\n\n /**\n * Adds an entry file to the virtual file system.\n *\n * @param name - The unique identifier for the entry file.\n * @param contents - The contents of the entry file.\n * @param options - Optional parameters for writing the entry file.\n */\n writeEntryFile: (\n name: string,\n contents: string,\n options?: WriteBuiltinFileOptions\n ) => Promise<void>;\n\n /**\n * Writes a file to disk from the physical file system (on disk).\n *\n * @param path - The path to the file to write.\n * @param contents - The contents of the file to write.\n * @param options - Optional parameters for writing the file.\n * @returns A promise that resolves when the file is written.\n */\n writeFileToDisk: (\n path: string,\n contents: string,\n options?: { skipFormat?: boolean }\n ) => Promise<void>;\n\n /**\n * Resolves a path or ID to a file path in the virtual file system.\n *\n * @param pathOrId - The path or id of the file to resolve.\n * @param options - Optional parameters for resolving the path.\n * @returns The resolved path of the file if it exists, otherwise false.\n */\n resolvePath: (\n pathOrId: string,\n options?: ResolvePathOptions\n ) => string | false;\n\n /**\n * Resolves a path or ID to a file path in the virtual file system.\n *\n * @param pathOrId - The path or id of the file to resolve.\n * @returns The resolved path of the file if it exists, otherwise false.\n */\n realpathSync: (pathOrId: string) => string;\n\n /**\n * Resolves a path or ID to a builtin module file id in the virtual file system.\n *\n * @param pathOrId - The path or id of the file to resolve.\n * @param paths - Optional array of paths to search for the file.\n * @returns The resolved id of the builtin module file if it exists, otherwise false.\n */\n resolveId: (pathOrId: string) => string | false;\n\n /**\n * Resolves a path based on TypeScript's `tsconfig.json` paths.\n *\n * @see https://www.typescriptlang.org/tsconfig#paths\n *\n * @param path - The path to check.\n * @returns The resolved file path if it exists, otherwise undefined.\n */\n resolveTsconfigPath: (path: string) => string | false;\n\n /**\n * Resolves a package name based on TypeScript's `tsconfig.json` paths.\n *\n * @see https://www.typescriptlang.org/tsconfig#paths\n *\n * @param path - The path to check.\n * @returns The resolved package name if it exists, otherwise undefined.\n */\n resolveTsconfigPathPackage: (path: string) => string | false;\n\n /**\n * A map of cached file paths to their underlying file content.\n */\n [__VFS_CACHE__]: Map<string, string>;\n\n /**\n * A reference to the underlying virtual file system.\n */\n [__VFS_VIRTUAL__]: Volume;\n\n /**\n * A reference to the underlying unified file system.\n */\n [__VFS_UNIFIED__]: IUnionFs;\n}\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { LogLevelLabel } from \"@storm-software/config-tools/types\";\nimport { existsSync } from \"@stryke/fs/exists\";\nimport { readJsonFile } from \"@stryke/fs/json\";\nimport { listFiles } from \"@stryke/fs/list-files\";\nimport { removeFile } from \"@stryke/fs/remove-file\";\nimport { hashDirectory } from \"@stryke/hash/hash-files\";\nimport { getUnique } from \"@stryke/helpers/get-unique\";\nimport { hasFileExtension } from \"@stryke/path/file-path-fns\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { kebabCase } from \"@stryke/string-format/kebab-case\";\nimport { Context, MetaInfo } from \"../../types/context\";\nimport { __VFS_VIRTUAL__ } from \"../../types/vfs\";\n\nexport interface CreateContextOptions {\n name?: string;\n}\n\nexport const PROJECT_ROOT_HASH_LENGTH = 45;\nexport const CACHE_HASH_LENGTH = 62;\n\n/**\n * Generates a prefixed project root hash object.\n *\n * @remarks\n * This function returns a string where the project root hash is prefixed with the project name plus a hyphen. If the total length of this string combination exceeds 45 characters, it will truncate the hash.\n *\n * @param name - The name of the project.\n * @param projectRootHash - The hash of the project root.\n * @returns An object containing the name and project root hash.\n */\nexport function getPrefixedProjectRootHash(\n name: string,\n projectRootHash: string\n): string {\n const combined = `${kebabCase(name)}_${projectRootHash}`;\n\n return combined.length > PROJECT_ROOT_HASH_LENGTH\n ? combined.slice(0, PROJECT_ROOT_HASH_LENGTH)\n : combined;\n}\n\nasync function discoverTemplatePath(path: string): Promise<string[]> {\n return (\n await Promise.all([\n Promise.resolve(/.tsx?$/.test(path) && !path.includes(\"*\") && path),\n Promise.resolve(!hasFileExtension(path) && joinPaths(path, \".ts\")),\n Promise.resolve(!hasFileExtension(path) && joinPaths(path, \".tsx\")),\n Promise.resolve(\n !hasFileExtension(path) && listFiles(joinPaths(path, \"**/*.ts\"))\n ),\n Promise.resolve(\n !hasFileExtension(path) && listFiles(joinPaths(path, \"**/*.tsx\"))\n )\n ])\n )\n .flat()\n .filter(Boolean) as string[];\n}\n\nexport async function discoverTemplates(\n context: Context,\n paths: string[] = []\n): Promise<string[]> {\n return getUnique(\n (\n await Promise.all([\n ...paths.map(discoverTemplatePath),\n discoverTemplatePath(joinPaths(context.config.sourceRoot, \"plugin\")),\n discoverTemplatePath(joinPaths(context.envPaths.config, \"templates\")),\n discoverTemplatePath(joinPaths(context.config.projectRoot, \"templates\"))\n ])\n )\n .flat()\n .reduce((ret, path) => {\n if (existsSync(path)) {\n ret.push(path);\n }\n\n return ret;\n }, [] as string[])\n );\n}\n\nexport async function getChecksum(path: string): Promise<string> {\n return hashDirectory(path, {\n ignore: [\"node_modules\", \".git\", \".nx\", \".cache\", \".storm\", \"tmp\", \"dist\"]\n });\n}\n\n/**\n * Retrieves the persisted meta information from the context's data path.\n *\n * @param context - The build context.\n * @returns A promise that resolves to the persisted meta information, or undefined if not found.\n */\nexport async function getPersistedMeta(\n context: Context\n): Promise<MetaInfo | undefined> {\n const metaFilePath = joinPaths(context.dataPath, \"meta.json\");\n if (existsSync(metaFilePath)) {\n try {\n return await readJsonFile<MetaInfo>(metaFilePath);\n } catch {\n context.log(\n LogLevelLabel.WARN,\n `Failed to read meta file at ${metaFilePath}. It may be corrupted.`\n );\n await removeFile(metaFilePath);\n\n context.persistedMeta = undefined;\n }\n }\n\n return undefined;\n}\n\n/**\n * Writes the meta file for the context.\n *\n * @param context - The context to write the meta file for.\n * @returns A promise that resolves when the meta file has been written.\n */\nexport async function writeMetaFile(context: Context): Promise<void> {\n const metaFilePath = joinPaths(context.dataPath, \"meta.json\");\n\n context.log(\n LogLevelLabel.DEBUG,\n `Writing runtime metadata to ${metaFilePath}`\n );\n\n await context.fs.writeFileToDisk(\n metaFilePath,\n JSON.stringify(\n {\n ...context.meta,\n builtinIdMap: Object.fromEntries(context.fs.builtinIdMap.entries()),\n virtualFiles: context.fs[__VFS_VIRTUAL__].toJSON(context.artifactsPath)\n },\n null,\n 2\n )\n );\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/build/webpack.ts"],"names":["extractWebpackConfig","context","defu","resolve","alias","fs","builtinIdMap","keys","reduce","ret","id","path","get","config","build","variant","override","external","noExternal","skipNodeModulesBundle","output","joinPaths","workspaceConfig","workspaceRoot","outputPath","name","node","platform","__dirname","__filename","global","mode","cache","type","cacheDirectory","cachePath","recordsInputPath","recordsOutputPath","projectRoot","Array","from","devtool","optimization","minimize"],"mappings":";;;;;;;;;;AA6BO,SAASA,qBAAqBC,OAAAA,EAAgB;AACnD,EAAA,OAAOC,qBAAAA,CACL;IACEC,OAAAA,EAAS;MACPC,KAAAA,EAAOH,OAAAA,CAAQI,GAAGC,YAAAA,CAAaC,IAAAA,GAAOC,MAAAA,CACpC,CAACC,KAAKC,EAAAA,KAAAA;AACJ,QAAA,MAAMC,IAAAA,GAAOV,OAAAA,CAAQI,EAAAA,CAAGC,YAAAA,CAAaM,IAAIF,EAAAA,CAAAA;AACzC,QAAA,IAAIC,IAAAA,EAAM;AACRF,UAAAA,GAAAA,CAAIC,EAAAA,CAAAA,GAAMC,IAAAA;AACZ,QAAA;AAEA,QAAA,OAAOF,GAAAA;AACT,MAAA,CAAA,EACA,EAAC;AAEL;GACF,EACAR,OAAAA,CAAQY,OAAOC,KAAAA,CAAMC,OAAAA,KAAY,YAAYd,OAAAA,CAAQY,MAAAA,CAAOG,QAAAA,GAAW,EAAC,EACxE;IACEC,QAAAA,EAAUhB,OAAAA,CAAQY,OAAOC,KAAAA,CAAMG,QAAAA;IAC/BC,UAAAA,EAAYjB,OAAAA,CAAQY,OAAOC,KAAAA,CAAMI,UAAAA;IACjCC,qBAAAA,EAAuBlB,OAAAA,CAAQY,OAAOC,KAAAA,CAAMK;GAC9C,EACA;IACEC,MAAAA,EAAQ;AACNT,MAAAA,IAAAA,EAAMU,oBACJpB,OAAAA,CAAQqB,eAAAA,CAAgBC,eACxBtB,OAAAA,CAAQY,MAAAA,CAAOO,OAAOI,UAAU;AAEpC,KAAA;AACAC,IAAAA,IAAAA,EAAMxB,QAAQY,MAAAA,CAAOY,IAAAA;AACrBC,IAAAA,IAAAA,EACEzB,OAAAA,CAAQY,MAAAA,CAAOC,KAAAA,CAAMa,QAAAA,KAAa,MAAA,GAC7B;MACCC,SAAAA,EAAW,IAAA;MACXC,UAAAA,EAAY,IAAA;MACZC,MAAAA,EAAQ;KACV,GACA,KAAA;AACNC,IAAAA,IAAAA,EACE9B,OAAAA,CAAQY,MAAAA,CAAOkB,IAAAA,KAAS,aAAA,GACnB,aAAA,GACA,YAAA;IACPC,KAAAA,EAAO;MACLC,IAAAA,EAAM,YAAA;AACNC,MAAAA,cAAAA,EAAgBb,mBAAAA,CAAUpB,OAAAA,CAAQkC,SAAAA,EAAW,SAAA,EAAW,OAAA;AAC1D,KAAA;AACAC,IAAAA,gBAAAA,EAAkBf,mBAAAA,CAChBpB,OAAAA,CAAQkC,SAAAA,EACR,SAAA,EACA,uBAAA,CAAA;AAEFE,IAAAA,iBAAAA,EAAmBhB,mBAAAA,CACjBpB,OAAAA,CAAQkC,SAAAA,EACR,SAAA,EACA,uBAAA,CAAA;AAEFlC,IAAAA,OAAAA,EAASoB,oBACPpB,OAAAA,CAAQqB,eAAAA,CAAgBC,aAAAA,EACxBtB,OAAAA,CAAQY,OAAOyB,WAAW,CAAA;AAE5BpB,IAAAA,UAAAA,EAAYqB,MAAMC,IAAAA,CAAKvC,OAAAA,CAAQI,EAAAA,CAAGC,YAAAA,CAAaC,MAAI;GACrD,EACAN,OAAAA,CAAQY,OAAOC,KAAAA,CAAMC,OAAAA,KAAY,YAAYd,OAAAA,CAAQY,MAAAA,CAAOC,KAAAA,GAAQ,EAAC,EACrE;AACE2B,IAAAA,OAAAA,EAAUxC,OAAAA,CAAQY,MAAAA,CAAOkB,IAAAA,KAAS,aAAA,GAC9B,KAAA,GACA,YAAA;IACJW,YAAAA,EAAc;MACZC,QAAAA,EAAU1C,OAAAA,CAAQY,OAAOkB,IAAAA,KAAS;AACpC;GACF,CAAA;AAEJ;AAzEgB/B,wBAAAA,CAAAA,oBAAAA,EAAAA,sBAAAA,CAAAA","file":"chunk-XHCRXNQ3.cjs","sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport defu from \"defu\";\nimport type { Configuration as ExternalWebpackOptions } from \"webpack\";\nimport { Context } from \"../../types/context\";\n\n/**\n * Resolves the options for [webpack](https://webpack.js.org/).\n *\n * @param context - The build context.\n * @returns The resolved options.\n */\nexport function extractWebpackConfig(context: Context): ExternalWebpackOptions {\n return defu(\n {\n resolve: {\n alias: context.fs.builtinIdMap.keys().reduce(\n (ret, id) => {\n const path = context.fs.builtinIdMap.get(id);\n if (path) {\n ret[id] = path;\n }\n\n return ret;\n },\n {} as Record<string, string>\n )\n }\n },\n context.config.build.variant === \"webpack\" ? context.config.override : {},\n {\n external: context.config.build.external,\n noExternal: context.config.build.noExternal,\n skipNodeModulesBundle: context.config.build.skipNodeModulesBundle\n },\n {\n output: {\n path: joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.output.outputPath\n )\n },\n name: context.config.name,\n node:\n context.config.build.platform === \"node\"\n ? ({\n __dirname: true,\n __filename: true,\n global: true\n } as ExternalWebpackOptions[\"node\"])\n : false,\n mode:\n context.config.mode === \"development\"\n ? (\"development\" as const)\n : (\"production\" as const),\n cache: {\n type: \"filesystem\" as const,\n cacheDirectory: joinPaths(context.cachePath, \"webpack\", \"cache\")\n },\n recordsInputPath: joinPaths(\n context.cachePath,\n \"webpack\",\n \".webpack-records.json\"\n ),\n recordsOutputPath: joinPaths(\n context.cachePath,\n \"webpack\",\n \".webpack-records.json\"\n ),\n context: joinPaths(\n context.workspaceConfig.workspaceRoot,\n context.config.projectRoot\n ),\n noExternal: Array.from(context.fs.builtinIdMap.keys())\n },\n context.config.build.variant === \"webpack\" ? context.config.build : {},\n {\n devtool: (context.config.mode !== \"development\"\n ? false\n : \"source-map\") as string | false,\n optimization: {\n minimize: context.config.mode !== \"development\"\n }\n }\n );\n}\n"]}