powerlines 0.23.2 → 0.23.4

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 (297) hide show
  1. package/dist/api--9pVSIbm.d.cts +168 -0
  2. package/dist/api-DxPACGY4.d.ts +168 -0
  3. package/dist/api.cjs +3 -3
  4. package/dist/api.d.cts +16 -7
  5. package/dist/api.d.ts +16 -7
  6. package/dist/api.js +2 -2
  7. package/dist/astro.cjs +8 -8
  8. package/dist/astro.d.cts +3 -5
  9. package/dist/astro.d.ts +3 -5
  10. package/dist/astro.js +5 -5
  11. package/dist/{chunk-ZFO3FUM4.cjs → chunk-2FLICTDF.cjs} +2 -2
  12. package/dist/{chunk-JAJ4CI2F.cjs → chunk-3OQXZ5MM.cjs} +2 -2
  13. package/dist/{chunk-KFRKOIP3.js → chunk-5B6P2VUG.js} +1 -1
  14. package/dist/{chunk-GNNF5SG6.cjs → chunk-6ACGI52O.cjs} +2 -2
  15. package/dist/{chunk-JZAQW55G.cjs → chunk-AF5VNWZD.cjs} +2 -2
  16. package/dist/{chunk-J7MZRPLN.cjs → chunk-AIC2EHPW.cjs} +5 -4
  17. package/dist/{chunk-3WDMXRK6.cjs → chunk-AYKZK666.cjs} +1 -1
  18. package/dist/chunk-CHNKTBUA.cjs +32 -0
  19. package/dist/{chunk-M4QJ2474.cjs → chunk-CTSSNO5L.cjs} +4 -4
  20. package/dist/{chunk-5A7FM72H.cjs → chunk-GP6XGAJ4.cjs} +2 -2
  21. package/dist/{chunk-DUYZ3TCT.js → chunk-HLQGKQZY.js} +1 -1
  22. package/dist/{chunk-LKN52AAX.js → chunk-HNJC47JM.js} +1 -1
  23. package/dist/{chunk-IGWSCIES.js → chunk-ISLX4Z3L.js} +3 -2
  24. package/dist/{chunk-J5LKLH5Z.js → chunk-KFSVTJMR.js} +1 -1
  25. package/dist/{chunk-RWVNX2CP.js → chunk-MI3U2GAT.js} +1 -1
  26. package/dist/{chunk-4ODWTALP.js → chunk-N3F54RFW.js} +2 -2
  27. package/dist/{chunk-Q7HBETZW.js → chunk-O2WB6QZ6.js} +1 -1
  28. package/dist/{chunk-DWV5QAGZ.cjs → chunk-OEKSQ22R.cjs} +2997 -2710
  29. package/dist/{chunk-WSLPUUGZ.js → chunk-PTZB4LWS.js} +1 -1
  30. package/dist/{chunk-CPRXGMH2.js → chunk-QSNFMINQ.js} +1 -1
  31. package/dist/{chunk-YQ76DZYD.cjs → chunk-QUZ4T5AX.cjs} +2 -2
  32. package/dist/chunk-UTAJPBVT.js +29 -0
  33. package/dist/{chunk-WG55ZHJL.cjs → chunk-UW3MXOWV.cjs} +2 -2
  34. package/dist/{chunk-F6BDL4HD.js → chunk-VDBKZJV6.js} +1 -1
  35. package/dist/{chunk-J3LN5HOC.cjs → chunk-VFLCP3SA.cjs} +2 -2
  36. package/dist/{chunk-FM4ABZQ2.js → chunk-VT7NVLLU.js} +1 -1
  37. package/dist/{chunk-WDBPA4RQ.cjs → chunk-VXAKPZ3A.cjs} +2 -2
  38. package/dist/{chunk-WXU3KLBP.cjs → chunk-XOI5CY62.cjs} +2 -2
  39. package/dist/{chunk-NH7U3PTV.js → chunk-ZQ7PDXYO.js} +1 -1
  40. package/dist/{chunk-TNYZH6EG.js → chunk-ZYCPZLIG.js} +2982 -2700
  41. package/dist/config.d.cts +3 -5
  42. package/dist/config.d.ts +3 -5
  43. package/dist/esbuild.cjs +7 -7
  44. package/dist/esbuild.d.cts +3 -5
  45. package/dist/esbuild.d.ts +3 -5
  46. package/dist/esbuild.js +4 -4
  47. package/dist/farm.cjs +4 -4
  48. package/dist/farm.d.cts +3 -5
  49. package/dist/farm.d.ts +3 -5
  50. package/dist/farm.js +3 -3
  51. package/dist/index.cjs +54 -33
  52. package/dist/index.d.cts +191 -39
  53. package/dist/index.d.ts +191 -39
  54. package/dist/index.js +18 -17
  55. package/dist/lib/api-B6hfFxVS.d.ts +167 -0
  56. package/dist/lib/api-CD2QlMig.d.cts +167 -0
  57. package/dist/lib/build/esbuild.d.cts +2 -4
  58. package/dist/lib/build/esbuild.d.ts +2 -4
  59. package/dist/lib/build/index.d.cts +4 -5
  60. package/dist/lib/build/index.d.ts +4 -5
  61. package/dist/lib/build/rolldown.d.cts +2 -4
  62. package/dist/lib/build/rolldown.d.ts +2 -4
  63. package/dist/lib/build/rollup.d.cts +2 -4
  64. package/dist/lib/build/rollup.d.ts +2 -4
  65. package/dist/lib/build/rspack.d.cts +2 -4
  66. package/dist/lib/build/rspack.d.ts +2 -4
  67. package/dist/lib/build/tsup.d.cts +2 -4
  68. package/dist/lib/build/tsup.d.ts +2 -4
  69. package/dist/lib/build/unbuild.d.cts +4 -23
  70. package/dist/lib/build/unbuild.d.ts +4 -23
  71. package/dist/lib/build/vite.d.cts +2 -4
  72. package/dist/lib/build/vite.d.ts +2 -4
  73. package/dist/lib/build/webpack.d.cts +2 -4
  74. package/dist/lib/build/webpack.d.ts +2 -4
  75. package/dist/lib/chunk-32Q2PG5D.js +9 -0
  76. package/dist/lib/chunk-35FGUJFD.cjs +2 -0
  77. package/dist/lib/{chunk-LIN4KAV3.js → chunk-52VDUP5J.js} +5 -7
  78. package/dist/lib/chunk-B3EE3VHZ.cjs +127 -0
  79. package/dist/lib/{chunk-UWHGJ4JS.js → chunk-BLNW3ZQA.js} +483 -1776
  80. package/dist/lib/chunk-DX2VAXZB.cjs +11 -0
  81. package/dist/lib/{chunk-VGSV2BEL.cjs → chunk-EFYMNU53.cjs} +6 -12
  82. package/dist/lib/chunk-FBQIPNRV.cjs +146 -0
  83. package/dist/lib/chunk-FFT4PWRM.js +1 -0
  84. package/dist/lib/{chunk-L4NEN725.js → chunk-G7S5PIAC.js} +1 -1
  85. package/dist/lib/chunk-KFJCWNVG.js +120 -0
  86. package/dist/lib/chunk-M2U6XIQ2.js +144 -0
  87. package/dist/lib/chunk-MVIKYHBX.cjs +2 -0
  88. package/dist/lib/chunk-NYNHNTHT.js +1 -0
  89. package/dist/lib/{chunk-A5SB72VO.cjs → chunk-PYQADZVV.cjs} +493 -1779
  90. package/dist/lib/chunk-QP6WX3Q3.js +1190 -0
  91. package/dist/lib/chunk-S7LLEDQM.cjs +1218 -0
  92. package/dist/lib/chunk-UHGGYHSK.cjs +175 -0
  93. package/dist/lib/chunk-YNKFRPUY.js +168 -0
  94. package/dist/lib/{chunk-ULJVBW4L.cjs → chunk-ZBDVQVUK.cjs} +1 -1
  95. package/dist/lib/{config-BoGlIhnH.d.cts → config-DTSdCZsw.d.cts} +650 -633
  96. package/dist/lib/{config-CTej7RMP.d.ts → config-DeUaQYc_.d.ts} +650 -633
  97. package/dist/lib/config-file.d.cts +4 -5
  98. package/dist/lib/config-file.d.ts +4 -5
  99. package/dist/lib/contexts/api-context.cjs +18 -0
  100. package/dist/lib/contexts/api-context.d.cts +69 -0
  101. package/dist/lib/contexts/api-context.d.ts +69 -0
  102. package/dist/lib/contexts/api-context.js +9 -0
  103. package/dist/lib/contexts/context.cjs +15 -0
  104. package/dist/lib/contexts/context.d.cts +255 -0
  105. package/dist/lib/contexts/context.d.ts +255 -0
  106. package/dist/lib/contexts/context.js +6 -0
  107. package/dist/lib/contexts/environment-context.cjs +17 -0
  108. package/dist/lib/contexts/environment-context.d.cts +65 -0
  109. package/dist/lib/contexts/environment-context.d.ts +65 -0
  110. package/dist/lib/contexts/environment-context.js +8 -0
  111. package/dist/lib/contexts/index.cjs +31 -0
  112. package/dist/lib/contexts/index.d.cts +35 -0
  113. package/dist/lib/contexts/index.d.ts +35 -0
  114. package/dist/lib/contexts/index.js +10 -0
  115. package/dist/lib/contexts/plugin-context.cjs +11 -0
  116. package/dist/lib/contexts/plugin-context.d.cts +42 -0
  117. package/dist/lib/contexts/plugin-context.d.ts +42 -0
  118. package/dist/lib/contexts/plugin-context.js +2 -0
  119. package/dist/lib/entry.d.cts +2 -4
  120. package/dist/lib/entry.d.ts +2 -4
  121. package/dist/lib/index.cjs +96 -74
  122. package/dist/lib/index.d.cts +26 -23
  123. package/dist/lib/index.d.ts +26 -23
  124. package/dist/lib/index.js +18 -12
  125. package/dist/lib/internal-CpVMJCaU.d.ts +39 -0
  126. package/dist/lib/internal-ypnrUNZy.d.cts +39 -0
  127. package/dist/lib/logger.d.cts +4 -5
  128. package/dist/lib/logger.d.ts +4 -5
  129. package/dist/lib/typescript/compiler-host.cjs +1 -1
  130. package/dist/lib/typescript/compiler-host.d.cts +5 -5
  131. package/dist/lib/typescript/compiler-host.d.ts +5 -5
  132. package/dist/lib/typescript/compiler-host.js +1 -1
  133. package/dist/lib/typescript/import-transformer.d.cts +2 -4
  134. package/dist/lib/typescript/import-transformer.d.ts +2 -4
  135. package/dist/lib/typescript/index.cjs +29 -24
  136. package/dist/lib/typescript/index.d.cts +6 -6
  137. package/dist/lib/typescript/index.d.ts +6 -6
  138. package/dist/lib/typescript/index.js +3 -2
  139. package/dist/lib/typescript/isolated-decl.d.cts +2 -1
  140. package/dist/lib/typescript/isolated-decl.d.ts +2 -1
  141. package/dist/lib/typescript/program.d.cts +5 -5
  142. package/dist/lib/typescript/program.d.ts +5 -5
  143. package/dist/lib/typescript/ts-morph.cjs +11 -0
  144. package/dist/lib/{create-program.d.ts → typescript/ts-morph.d.cts} +3 -5
  145. package/dist/lib/{create-program.d.cts → typescript/ts-morph.d.ts} +3 -5
  146. package/dist/lib/typescript/ts-morph.js +2 -0
  147. package/dist/lib/unplugin/factory.cjs +8 -4
  148. package/dist/lib/unplugin/factory.d.cts +27 -10
  149. package/dist/lib/unplugin/factory.d.ts +27 -10
  150. package/dist/lib/unplugin/factory.js +7 -3
  151. package/dist/lib/unplugin/helpers.cjs +11 -0
  152. package/dist/lib/unplugin/helpers.d.cts +128 -0
  153. package/dist/lib/unplugin/helpers.d.ts +128 -0
  154. package/dist/lib/unplugin/helpers.js +2 -0
  155. package/dist/lib/unplugin/index.cjs +12 -7
  156. package/dist/lib/unplugin/index.d.cts +6 -8
  157. package/dist/lib/unplugin/index.d.ts +6 -8
  158. package/dist/lib/unplugin/index.js +9 -4
  159. package/dist/lib/unplugin/plugin.cjs +4 -3
  160. package/dist/lib/unplugin/plugin.d.cts +4 -5
  161. package/dist/lib/unplugin/plugin.d.ts +4 -5
  162. package/dist/lib/unplugin/plugin.js +3 -2
  163. package/dist/lib/unplugin/resolve-id.cjs +2 -2
  164. package/dist/lib/unplugin/resolve-id.d.cts +5 -5
  165. package/dist/lib/unplugin/resolve-id.d.ts +5 -5
  166. package/dist/lib/unplugin/resolve-id.js +1 -1
  167. package/dist/lib/utilities/bundle.d.cts +2 -4
  168. package/dist/lib/utilities/bundle.d.ts +2 -4
  169. package/dist/lib/utilities/cache.d.cts +2 -4
  170. package/dist/lib/utilities/cache.d.ts +2 -4
  171. package/dist/lib/utilities/file-header.d.cts +4 -5
  172. package/dist/lib/utilities/file-header.d.ts +4 -5
  173. package/dist/lib/utilities/index.cjs +18 -18
  174. package/dist/lib/utilities/index.d.cts +5 -7
  175. package/dist/lib/utilities/index.d.ts +5 -7
  176. package/dist/lib/utilities/index.js +4 -4
  177. package/dist/lib/utilities/meta.d.cts +4 -5
  178. package/dist/lib/utilities/meta.d.ts +4 -5
  179. package/dist/lib/utilities/resolve-path.d.cts +2 -4
  180. package/dist/lib/utilities/resolve-path.d.ts +2 -4
  181. package/dist/lib/utilities/resolve.d.cts +2 -4
  182. package/dist/lib/utilities/resolve.d.ts +2 -4
  183. package/dist/lib/utilities/source-file.d.cts +2 -4
  184. package/dist/lib/utilities/source-file.d.ts +2 -4
  185. package/dist/lib/utilities/source-map.d.cts +2 -4
  186. package/dist/lib/utilities/source-map.d.ts +2 -4
  187. package/dist/lib/utilities/worker.d.cts +4 -5
  188. package/dist/lib/utilities/worker.d.ts +4 -5
  189. package/dist/lib/utilities/write-file.d.cts +2 -4
  190. package/dist/lib/utilities/write-file.d.ts +2 -4
  191. package/dist/next.cjs +8 -8
  192. package/dist/next.js +5 -5
  193. package/dist/nuxt.cjs +9 -9
  194. package/dist/nuxt.js +6 -6
  195. package/dist/plugin-utils/{context-D1I2JQgs.d.cts → context-DRFZE3XI.d.cts} +535 -518
  196. package/dist/plugin-utils/{context-D1I2JQgs.d.ts → context-DRFZE3XI.d.ts} +535 -518
  197. package/dist/plugin-utils/context-helpers.d.cts +2 -4
  198. package/dist/plugin-utils/context-helpers.d.ts +2 -4
  199. package/dist/plugin-utils/enforce.d.cts +2 -4
  200. package/dist/plugin-utils/enforce.d.ts +2 -4
  201. package/dist/plugin-utils/extend.d.cts +2 -4
  202. package/dist/plugin-utils/extend.d.ts +2 -4
  203. package/dist/plugin-utils/get-config-path.d.cts +2 -4
  204. package/dist/plugin-utils/get-config-path.d.ts +2 -4
  205. package/dist/plugin-utils/helpers.d.cts +2 -4
  206. package/dist/plugin-utils/helpers.d.ts +2 -4
  207. package/dist/plugin-utils/index.d.cts +3 -5
  208. package/dist/plugin-utils/index.d.ts +3 -5
  209. package/dist/plugin-utils/merge.d.cts +4 -5
  210. package/dist/plugin-utils/merge.d.ts +4 -5
  211. package/dist/plugin-utils/paths.d.cts +2 -4
  212. package/dist/plugin-utils/paths.d.ts +2 -4
  213. package/dist/{resolved-DYLxPDut.d.cts → resolved-C00CJgsk.d.cts} +128 -9
  214. package/dist/{resolved-D1ySEdUv.d.ts → resolved-DKFZ11S7.d.ts} +128 -9
  215. package/dist/rolldown.cjs +7 -7
  216. package/dist/rolldown.d.cts +3 -5
  217. package/dist/rolldown.d.ts +3 -5
  218. package/dist/rolldown.js +4 -4
  219. package/dist/rollup.cjs +7 -7
  220. package/dist/rollup.d.cts +3 -5
  221. package/dist/rollup.d.ts +3 -5
  222. package/dist/rollup.js +4 -4
  223. package/dist/rspack.cjs +7 -7
  224. package/dist/rspack.d.cts +3 -5
  225. package/dist/rspack.d.ts +3 -5
  226. package/dist/rspack.js +4 -4
  227. package/dist/tsup.cjs +8 -8
  228. package/dist/tsup.js +5 -5
  229. package/dist/types/api.cjs +4 -0
  230. package/dist/types/api.d.cts +36 -0
  231. package/dist/types/api.d.ts +36 -0
  232. package/dist/types/api.js +1 -0
  233. package/dist/types/babel.d.cts +3 -5
  234. package/dist/types/babel.d.ts +3 -5
  235. package/dist/types/build.d.cts +26 -1
  236. package/dist/types/build.d.ts +26 -1
  237. package/dist/types/commands.d.cts +3 -5
  238. package/dist/types/commands.d.ts +3 -5
  239. package/dist/types/config.d.cts +3 -5
  240. package/dist/types/config.d.ts +3 -5
  241. package/dist/types/context.d.cts +3 -5
  242. package/dist/types/context.d.ts +3 -5
  243. package/dist/types/{vfs.cjs → fs.cjs} +3 -3
  244. package/dist/types/{vfs.d.cts → fs.d.cts} +54 -35
  245. package/dist/types/{vfs.d.ts → fs.d.ts} +54 -35
  246. package/dist/types/fs.js +2 -0
  247. package/dist/types/hooks.d.cts +3 -5
  248. package/dist/types/hooks.d.ts +3 -5
  249. package/dist/types/index.cjs +9 -8
  250. package/dist/types/index.d.cts +8 -9
  251. package/dist/types/index.d.ts +8 -9
  252. package/dist/types/index.js +3 -2
  253. package/dist/types/internal.d.cts +46 -9
  254. package/dist/types/internal.d.ts +46 -9
  255. package/dist/types/plugin.d.cts +3 -5
  256. package/dist/types/plugin.d.ts +3 -5
  257. package/dist/types/resolved.d.cts +3 -5
  258. package/dist/types/resolved.d.ts +3 -5
  259. package/dist/types/tsconfig.d.cts +8 -1
  260. package/dist/types/tsconfig.d.ts +8 -1
  261. package/dist/types/typedoc.d.cts +3 -1
  262. package/dist/types/typedoc.d.ts +3 -1
  263. package/dist/types/unplugin.d.cts +22 -11
  264. package/dist/types/unplugin.d.ts +22 -11
  265. package/dist/unloader.cjs +7 -7
  266. package/dist/unloader.d.cts +12 -14
  267. package/dist/unloader.d.ts +12 -14
  268. package/dist/unloader.js +4 -4
  269. package/dist/unplugin.cjs +18 -18
  270. package/dist/unplugin.d.cts +6 -9
  271. package/dist/unplugin.d.ts +6 -9
  272. package/dist/unplugin.js +15 -15
  273. package/dist/vite.cjs +7 -7
  274. package/dist/vite.d.cts +3 -5
  275. package/dist/vite.d.ts +3 -5
  276. package/dist/vite.js +4 -4
  277. package/dist/webpack.cjs +7 -7
  278. package/dist/webpack.d.cts +3 -5
  279. package/dist/webpack.d.ts +3 -5
  280. package/dist/webpack.js +4 -4
  281. package/package.json +39 -11
  282. package/schemas/fs.capnp +73 -15
  283. package/dist/chunk-RODEAGIJ.cjs +0 -32
  284. package/dist/chunk-SKLSRHBU.js +0 -29
  285. package/dist/hooks-D2UGCryi.d.ts +0 -28
  286. package/dist/hooks-DJG3B-Hw.d.cts +0 -28
  287. package/dist/lib/create-program.cjs +0 -11
  288. package/dist/lib/create-program.js +0 -2
  289. package/dist/lib/hooks-CDLPWf7j.d.cts +0 -28
  290. package/dist/lib/hooks-Cn-IqwYp.d.ts +0 -28
  291. package/dist/types/vfs.js +0 -2
  292. /package/dist/{chunk-KIKTWMI3.cjs → chunk-2NCILNCH.cjs} +0 -0
  293. /package/dist/{chunk-XVLT2RQ2.js → chunk-BLNT5INX.js} +0 -0
  294. /package/dist/{lib/chunk-RJ4277VZ.cjs → chunk-GRU7B3QM.cjs} +0 -0
  295. /package/dist/{lib/chunk-ZBLDAREE.js → chunk-T2P533I5.js} +0 -0
  296. /package/dist/lib/{chunk-CGYAL3S2.cjs → chunk-4EIXDLFP.cjs} +0 -0
  297. /package/dist/lib/{chunk-CXRSMYEX.js → chunk-RD5AUWXN.js} +0 -0
@@ -0,0 +1,175 @@
1
+ 'use strict';
2
+
3
+ var chunkFBQIPNRV_cjs = require('./chunk-FBQIPNRV.cjs');
4
+ var chunkPYQADZVV_cjs = require('./chunk-PYQADZVV.cjs');
5
+ var chunkXW5TELHB_cjs = require('./chunk-XW5TELHB.cjs');
6
+ var chunkUSNT2KNT_cjs = require('./chunk-USNT2KNT.cjs');
7
+ var types = require('@storm-software/config-tools/types');
8
+ var toArray = require('@stryke/convert/to-array');
9
+ var resolve = require('@stryke/fs/resolve');
10
+ var isSetObject = require('@stryke/type-checks/is-set-object');
11
+ var chalk = require('chalk');
12
+ var titleCase = require('@stryke/string-format/title-case');
13
+ var defu = require('defu');
14
+
15
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
16
+
17
+ var chalk__default = /*#__PURE__*/_interopDefault(chalk);
18
+ var defu__default = /*#__PURE__*/_interopDefault(defu);
19
+
20
+ var DEFAULT_ENVIRONMENT = "default";
21
+ function createEnvironment(name, userConfig) {
22
+ return defu__default.default(userConfig.environments?.[name] ?? {}, {
23
+ name,
24
+ title: userConfig.title || titleCase.titleCase(userConfig.name),
25
+ ssr: false,
26
+ mainFields: userConfig.build?.platform === "browser" ? [
27
+ "browser",
28
+ "module",
29
+ "jsnext:main",
30
+ "jsnext"
31
+ ] : [
32
+ "module",
33
+ "jsnext:main",
34
+ "jsnext"
35
+ ],
36
+ extensions: [
37
+ ".mjs",
38
+ ".js",
39
+ ".mts",
40
+ ".ts",
41
+ ".jsx",
42
+ ".tsx",
43
+ ".json"
44
+ ],
45
+ consumer: userConfig.build?.platform === "browser" ? "client" : "server",
46
+ preview: userConfig.build?.platform === "browser" ? {
47
+ port: 5173,
48
+ open: true,
49
+ strictPort: false,
50
+ // https: false,
51
+ host: "localhost",
52
+ allowedHosts: [
53
+ "."
54
+ ],
55
+ cors: true,
56
+ headers: {}
57
+ } : void 0
58
+ }, userConfig);
59
+ }
60
+ chunkUSNT2KNT_cjs.__name(createEnvironment, "createEnvironment");
61
+ function createDefaultEnvironment(userConfig) {
62
+ return createEnvironment(DEFAULT_ENVIRONMENT, userConfig);
63
+ }
64
+ chunkUSNT2KNT_cjs.__name(createDefaultEnvironment, "createDefaultEnvironment");
65
+
66
+ // src/lib/contexts/api-context.ts
67
+ var PowerlinesAPIContext = class _PowerlinesAPIContext extends chunkPYQADZVV_cjs.PowerlinesContext {
68
+ static {
69
+ chunkUSNT2KNT_cjs.__name(this, "PowerlinesAPIContext");
70
+ }
71
+ #environments = {};
72
+ #plugins = [];
73
+ #log;
74
+ /**
75
+ * Create a new Storm context from the workspace root and user config.
76
+ *
77
+ * @param workspaceRoot - The root directory of the workspace.
78
+ * @param config - The user configuration options.
79
+ * @returns A promise that resolves to the new context.
80
+ */
81
+ static async from(workspaceRoot, config) {
82
+ const context = new _PowerlinesAPIContext(await chunkXW5TELHB_cjs.loadWorkspaceConfig(workspaceRoot, config.root));
83
+ await context.withUserConfig(config);
84
+ context.powerlinesPath = await resolve.resolvePackage("powerlines");
85
+ if (!context.powerlinesPath) {
86
+ throw new Error("Could not resolve `powerlines` package location.");
87
+ }
88
+ return context;
89
+ }
90
+ /**
91
+ * A record of all environments by name
92
+ */
93
+ get environments() {
94
+ return this.#environments;
95
+ }
96
+ get log() {
97
+ if (!this.#log) {
98
+ this.#log = this.createLog("engine");
99
+ }
100
+ return this.#log;
101
+ }
102
+ get plugins() {
103
+ return this.#plugins;
104
+ }
105
+ constructor(workspaceConfig) {
106
+ super(workspaceConfig);
107
+ }
108
+ /**
109
+ * Initialize the context with the provided configuration options
110
+ *
111
+ * @param config - The partial user configuration to use for initialization.
112
+ */
113
+ async init(config = {}) {
114
+ await super.init(config);
115
+ await Promise.all(toArray.toArray(this.config.userConfig.environments && Object.keys(this.config.userConfig.environments).length > 0 ? Object.keys(this.config.userConfig.environments).map((name) => createEnvironment(name, this.config.userConfig)) : createDefaultEnvironment(this.config.userConfig)).map(async (env) => {
116
+ this.#environments[env.name] = await this.in(env);
117
+ }));
118
+ }
119
+ /**
120
+ * A function to copy the context and update the fields for a specific environment
121
+ *
122
+ * @param environment - The environment configuration to use.
123
+ * @returns A new context instance with the updated environment.
124
+ */
125
+ async in(environment) {
126
+ let context;
127
+ if (this.environments[environment.name]) {
128
+ context = this.environments[environment.name];
129
+ } else {
130
+ context = await chunkFBQIPNRV_cjs.PowerlinesEnvironmentContext.fromConfig(this.workspaceConfig, this.config);
131
+ }
132
+ if (isSetObject.isSetObject(this.config.inlineConfig)) {
133
+ await context.withInlineConfig(this.config.inlineConfig);
134
+ }
135
+ context.environment = environment;
136
+ context.plugins = [];
137
+ for (const plugin of this.plugins) {
138
+ await context.addPlugin(plugin);
139
+ }
140
+ return context;
141
+ }
142
+ async addPlugin(plugin) {
143
+ this.plugins.push(plugin);
144
+ await Promise.all(Object.keys(this.environments).map(async (name) => {
145
+ await this.environments[name].addPlugin(plugin);
146
+ }));
147
+ }
148
+ async getEnvironment(name) {
149
+ let environment;
150
+ if (name) {
151
+ environment = this.environments[name];
152
+ }
153
+ if (Object.keys(this.environments).length === 1) {
154
+ environment = this.environments[Object.keys(this.environments)[0]];
155
+ this.log(types.LogLevelLabel.DEBUG, `Applying the only configured environment: ${chalk__default.default.bold.cyanBright(environment?.environment.name)}`);
156
+ }
157
+ if (!environment) {
158
+ if (name) {
159
+ throw new Error(`Environment "${name}" not found.`);
160
+ }
161
+ environment = await this.in(createDefaultEnvironment(this.config.userConfig));
162
+ this.log(types.LogLevelLabel.WARN, `No environment specified, and no default environment found. Using a temporary default environment: ${chalk__default.default.bold.cyanBright(environment?.environment.name)}`);
163
+ }
164
+ return environment;
165
+ }
166
+ async getEnvironmentSafe(name) {
167
+ try {
168
+ return await this.getEnvironment(name);
169
+ } catch {
170
+ return void 0;
171
+ }
172
+ }
173
+ };
174
+
175
+ exports.PowerlinesAPIContext = PowerlinesAPIContext;
@@ -0,0 +1,168 @@
1
+ import { PowerlinesEnvironmentContext } from './chunk-M2U6XIQ2.js';
2
+ import { PowerlinesContext } from './chunk-BLNW3ZQA.js';
3
+ import { loadWorkspaceConfig } from './chunk-ZPIKFR7Z.js';
4
+ import { __name } from './chunk-SHUYVCID.js';
5
+ import { LogLevelLabel } from '@storm-software/config-tools/types';
6
+ import { toArray } from '@stryke/convert/to-array';
7
+ import { resolvePackage } from '@stryke/fs/resolve';
8
+ import { isSetObject } from '@stryke/type-checks/is-set-object';
9
+ import chalk from 'chalk';
10
+ import { titleCase } from '@stryke/string-format/title-case';
11
+ import defu from 'defu';
12
+
13
+ var DEFAULT_ENVIRONMENT = "default";
14
+ function createEnvironment(name, userConfig) {
15
+ return defu(userConfig.environments?.[name] ?? {}, {
16
+ name,
17
+ title: userConfig.title || titleCase(userConfig.name),
18
+ ssr: false,
19
+ mainFields: userConfig.build?.platform === "browser" ? [
20
+ "browser",
21
+ "module",
22
+ "jsnext:main",
23
+ "jsnext"
24
+ ] : [
25
+ "module",
26
+ "jsnext:main",
27
+ "jsnext"
28
+ ],
29
+ extensions: [
30
+ ".mjs",
31
+ ".js",
32
+ ".mts",
33
+ ".ts",
34
+ ".jsx",
35
+ ".tsx",
36
+ ".json"
37
+ ],
38
+ consumer: userConfig.build?.platform === "browser" ? "client" : "server",
39
+ preview: userConfig.build?.platform === "browser" ? {
40
+ port: 5173,
41
+ open: true,
42
+ strictPort: false,
43
+ // https: false,
44
+ host: "localhost",
45
+ allowedHosts: [
46
+ "."
47
+ ],
48
+ cors: true,
49
+ headers: {}
50
+ } : void 0
51
+ }, userConfig);
52
+ }
53
+ __name(createEnvironment, "createEnvironment");
54
+ function createDefaultEnvironment(userConfig) {
55
+ return createEnvironment(DEFAULT_ENVIRONMENT, userConfig);
56
+ }
57
+ __name(createDefaultEnvironment, "createDefaultEnvironment");
58
+
59
+ // src/lib/contexts/api-context.ts
60
+ var PowerlinesAPIContext = class _PowerlinesAPIContext extends PowerlinesContext {
61
+ static {
62
+ __name(this, "PowerlinesAPIContext");
63
+ }
64
+ #environments = {};
65
+ #plugins = [];
66
+ #log;
67
+ /**
68
+ * Create a new Storm context from the workspace root and user config.
69
+ *
70
+ * @param workspaceRoot - The root directory of the workspace.
71
+ * @param config - The user configuration options.
72
+ * @returns A promise that resolves to the new context.
73
+ */
74
+ static async from(workspaceRoot, config) {
75
+ const context = new _PowerlinesAPIContext(await loadWorkspaceConfig(workspaceRoot, config.root));
76
+ await context.withUserConfig(config);
77
+ context.powerlinesPath = await resolvePackage("powerlines");
78
+ if (!context.powerlinesPath) {
79
+ throw new Error("Could not resolve `powerlines` package location.");
80
+ }
81
+ return context;
82
+ }
83
+ /**
84
+ * A record of all environments by name
85
+ */
86
+ get environments() {
87
+ return this.#environments;
88
+ }
89
+ get log() {
90
+ if (!this.#log) {
91
+ this.#log = this.createLog("engine");
92
+ }
93
+ return this.#log;
94
+ }
95
+ get plugins() {
96
+ return this.#plugins;
97
+ }
98
+ constructor(workspaceConfig) {
99
+ super(workspaceConfig);
100
+ }
101
+ /**
102
+ * Initialize the context with the provided configuration options
103
+ *
104
+ * @param config - The partial user configuration to use for initialization.
105
+ */
106
+ async init(config = {}) {
107
+ await super.init(config);
108
+ await Promise.all(toArray(this.config.userConfig.environments && Object.keys(this.config.userConfig.environments).length > 0 ? Object.keys(this.config.userConfig.environments).map((name) => createEnvironment(name, this.config.userConfig)) : createDefaultEnvironment(this.config.userConfig)).map(async (env) => {
109
+ this.#environments[env.name] = await this.in(env);
110
+ }));
111
+ }
112
+ /**
113
+ * A function to copy the context and update the fields for a specific environment
114
+ *
115
+ * @param environment - The environment configuration to use.
116
+ * @returns A new context instance with the updated environment.
117
+ */
118
+ async in(environment) {
119
+ let context;
120
+ if (this.environments[environment.name]) {
121
+ context = this.environments[environment.name];
122
+ } else {
123
+ context = await PowerlinesEnvironmentContext.fromConfig(this.workspaceConfig, this.config);
124
+ }
125
+ if (isSetObject(this.config.inlineConfig)) {
126
+ await context.withInlineConfig(this.config.inlineConfig);
127
+ }
128
+ context.environment = environment;
129
+ context.plugins = [];
130
+ for (const plugin of this.plugins) {
131
+ await context.addPlugin(plugin);
132
+ }
133
+ return context;
134
+ }
135
+ async addPlugin(plugin) {
136
+ this.plugins.push(plugin);
137
+ await Promise.all(Object.keys(this.environments).map(async (name) => {
138
+ await this.environments[name].addPlugin(plugin);
139
+ }));
140
+ }
141
+ async getEnvironment(name) {
142
+ let environment;
143
+ if (name) {
144
+ environment = this.environments[name];
145
+ }
146
+ if (Object.keys(this.environments).length === 1) {
147
+ environment = this.environments[Object.keys(this.environments)[0]];
148
+ this.log(LogLevelLabel.DEBUG, `Applying the only configured environment: ${chalk.bold.cyanBright(environment?.environment.name)}`);
149
+ }
150
+ if (!environment) {
151
+ if (name) {
152
+ throw new Error(`Environment "${name}" not found.`);
153
+ }
154
+ environment = await this.in(createDefaultEnvironment(this.config.userConfig));
155
+ this.log(LogLevelLabel.WARN, `No environment specified, and no default environment found. Using a temporary default environment: ${chalk.bold.cyanBright(environment?.environment.name)}`);
156
+ }
157
+ return environment;
158
+ }
159
+ async getEnvironmentSafe(name) {
160
+ try {
161
+ return await this.getEnvironment(name);
162
+ } catch {
163
+ return void 0;
164
+ }
165
+ }
166
+ };
167
+
168
+ export { PowerlinesAPIContext };
@@ -73,7 +73,7 @@ async function handleResolveId(context, args, options = {}) {
73
73
  args.importer
74
74
  ] : []
75
75
  });
76
- if (bundleRequire.match(args.id, options.noExternal) || resolvedPath && context.fs.metadata[resolvedPath]?.variant === "builtin") {
76
+ if (bundleRequire.match(args.id, options.noExternal) || resolvedPath && context.fs.metadata[resolvedPath]?.type === "builtin") {
77
77
  return void 0;
78
78
  }
79
79
  if (bundleRequire.match(args.id, options.external) || args.id.startsWith("node:")) {