@powerlines/core 0.47.4 → 0.48.2

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 (437) hide show
  1. package/dist/constants/api.cjs +5 -5
  2. package/dist/constants/api.d.cts +3 -3
  3. package/dist/constants/api.d.cts.map +1 -1
  4. package/dist/constants/api.d.mts +3 -3
  5. package/dist/constants/api.d.mts.map +1 -1
  6. package/dist/constants/api.mjs +4 -4
  7. package/dist/constants/api.mjs.map +1 -1
  8. package/dist/constants/commands.cjs +1 -1
  9. package/dist/constants/commands.d.cts +1 -1
  10. package/dist/constants/commands.d.mts +1 -1
  11. package/dist/constants/commands.mjs +2 -2
  12. package/dist/constants/commands.mjs.map +1 -1
  13. package/dist/constants/devtools.cjs +23 -0
  14. package/dist/constants/devtools.d.cts +13 -0
  15. package/dist/constants/devtools.d.cts.map +1 -0
  16. package/dist/constants/devtools.d.mts +13 -0
  17. package/dist/constants/devtools.d.mts.map +1 -0
  18. package/dist/constants/devtools.mjs +14 -0
  19. package/dist/constants/devtools.mjs.map +1 -0
  20. package/dist/constants/extensions.cjs +21 -0
  21. package/dist/constants/extensions.d.cts +5 -0
  22. package/dist/constants/extensions.d.cts.map +1 -0
  23. package/dist/constants/extensions.d.mts +5 -0
  24. package/dist/constants/extensions.d.mts.map +1 -0
  25. package/dist/constants/extensions.mjs +20 -0
  26. package/dist/constants/extensions.mjs.map +1 -0
  27. package/dist/constants/fs.mjs.map +1 -1
  28. package/dist/constants/hooks.mjs.map +1 -1
  29. package/dist/constants/index.cjs +16 -4
  30. package/dist/constants/index.d.cts +4 -2
  31. package/dist/constants/index.d.mts +4 -2
  32. package/dist/constants/index.mjs +6 -4
  33. package/dist/constants/log-level.cjs +10 -10
  34. package/dist/constants/log-level.d.cts +10 -10
  35. package/dist/constants/log-level.d.mts +10 -10
  36. package/dist/constants/log-level.mjs +10 -10
  37. package/dist/constants/log-level.mjs.map +1 -1
  38. package/dist/constants/plugin.d.cts +2 -2
  39. package/dist/constants/plugin.d.mts +2 -2
  40. package/dist/constants/plugin.mjs.map +1 -1
  41. package/dist/context/base-context.cjs +121 -0
  42. package/dist/context/base-context.d.cts +81 -0
  43. package/dist/context/base-context.d.cts.map +1 -0
  44. package/dist/context/base-context.d.mts +81 -0
  45. package/dist/context/base-context.d.mts.map +1 -0
  46. package/dist/context/base-context.mjs +119 -0
  47. package/dist/context/base-context.mjs.map +1 -0
  48. package/dist/context/context.cjs +935 -0
  49. package/dist/context/context.d.cts +369 -0
  50. package/dist/context/context.d.cts.map +1 -0
  51. package/dist/context/context.d.mts +369 -0
  52. package/dist/context/context.d.mts.map +1 -0
  53. package/dist/context/context.mjs +933 -0
  54. package/dist/context/context.mjs.map +1 -0
  55. package/dist/context/environment-context.cjs +218 -0
  56. package/dist/context/environment-context.d.cts +100 -0
  57. package/dist/context/environment-context.d.cts.map +1 -0
  58. package/dist/context/environment-context.d.mts +100 -0
  59. package/dist/context/environment-context.d.mts.map +1 -0
  60. package/dist/context/environment-context.mjs +218 -0
  61. package/dist/context/environment-context.mjs.map +1 -0
  62. package/dist/context/execution-context.cjs +236 -0
  63. package/dist/context/execution-context.d.cts +106 -0
  64. package/dist/context/execution-context.d.cts.map +1 -0
  65. package/dist/context/execution-context.d.mts +106 -0
  66. package/dist/context/execution-context.d.mts.map +1 -0
  67. package/dist/context/execution-context.mjs +234 -0
  68. package/dist/context/execution-context.mjs.map +1 -0
  69. package/dist/context/index.cjs +12 -0
  70. package/dist/context/index.d.cts +6 -0
  71. package/dist/context/index.d.mts +6 -0
  72. package/dist/context/index.mjs +7 -0
  73. package/dist/context/plugin-context.cjs +82 -0
  74. package/dist/context/plugin-context.d.cts +18 -0
  75. package/dist/context/plugin-context.d.cts.map +1 -0
  76. package/dist/context/plugin-context.d.mts +18 -0
  77. package/dist/context/plugin-context.d.mts.map +1 -0
  78. package/dist/context/plugin-context.mjs +82 -0
  79. package/dist/context/plugin-context.mjs.map +1 -0
  80. package/dist/index.cjs +62 -3
  81. package/dist/index.d.cts +27 -16
  82. package/dist/index.d.mts +27 -16
  83. package/dist/index.mjs +17 -4
  84. package/dist/lib/config.cjs +160 -21
  85. package/dist/lib/config.d.cts +116 -12
  86. package/dist/lib/config.d.cts.map +1 -1
  87. package/dist/lib/config.d.mts +116 -12
  88. package/dist/lib/config.d.mts.map +1 -1
  89. package/dist/lib/config.mjs +154 -22
  90. package/dist/lib/config.mjs.map +1 -1
  91. package/dist/lib/context-helpers.cjs +42 -0
  92. package/dist/lib/context-helpers.d.cts +16 -0
  93. package/dist/lib/context-helpers.d.cts.map +1 -0
  94. package/dist/lib/context-helpers.d.mts +16 -0
  95. package/dist/lib/context-helpers.d.mts.map +1 -0
  96. package/dist/lib/context-helpers.mjs +41 -0
  97. package/dist/lib/context-helpers.mjs.map +1 -0
  98. package/dist/lib/entry.cjs +5 -6
  99. package/dist/lib/entry.d.cts +5 -5
  100. package/dist/lib/entry.d.cts.map +1 -1
  101. package/dist/lib/entry.d.mts +5 -5
  102. package/dist/lib/entry.d.mts.map +1 -1
  103. package/dist/lib/entry.mjs +5 -5
  104. package/dist/lib/entry.mjs.map +1 -1
  105. package/dist/lib/environment.cjs +72 -0
  106. package/dist/lib/environment.d.cts +12 -0
  107. package/dist/lib/environment.d.cts.map +1 -0
  108. package/dist/lib/environment.d.mts +12 -0
  109. package/dist/lib/environment.d.mts.map +1 -0
  110. package/dist/lib/environment.mjs +67 -0
  111. package/dist/lib/environment.mjs.map +1 -0
  112. package/dist/lib/events.cjs +43 -0
  113. package/dist/lib/events.d.cts +10 -0
  114. package/dist/lib/events.d.cts.map +1 -0
  115. package/dist/lib/events.d.mts +10 -0
  116. package/dist/lib/events.d.mts.map +1 -0
  117. package/dist/lib/events.mjs +42 -0
  118. package/dist/lib/events.mjs.map +1 -0
  119. package/dist/lib/generate-types.cjs +370 -0
  120. package/dist/lib/generate-types.d.cts +66 -0
  121. package/dist/lib/generate-types.d.cts.map +1 -0
  122. package/dist/lib/generate-types.d.mts +66 -0
  123. package/dist/lib/generate-types.d.mts.map +1 -0
  124. package/dist/lib/generate-types.mjs +368 -0
  125. package/dist/lib/generate-types.mjs.map +1 -0
  126. package/dist/lib/hooks.cjs +152 -0
  127. package/dist/lib/hooks.d.cts +28 -0
  128. package/dist/lib/hooks.d.cts.map +1 -0
  129. package/dist/lib/hooks.d.mts +28 -0
  130. package/dist/lib/hooks.d.mts.map +1 -0
  131. package/dist/lib/hooks.mjs +147 -0
  132. package/dist/lib/hooks.mjs.map +1 -0
  133. package/dist/lib/index.cjs +64 -3
  134. package/dist/lib/index.d.cts +18 -5
  135. package/dist/lib/index.d.mts +18 -5
  136. package/dist/lib/index.mjs +19 -4
  137. package/dist/lib/install-dependencies.cjs +24 -0
  138. package/dist/lib/install-dependencies.d.cts +12 -0
  139. package/dist/lib/install-dependencies.d.cts.map +1 -0
  140. package/dist/lib/install-dependencies.d.mts +12 -0
  141. package/dist/lib/install-dependencies.d.mts.map +1 -0
  142. package/dist/lib/install-dependencies.mjs +24 -0
  143. package/dist/lib/install-dependencies.mjs.map +1 -0
  144. package/dist/lib/meta.cjs +56 -0
  145. package/dist/lib/meta.d.cts +33 -0
  146. package/dist/lib/meta.d.cts.map +1 -0
  147. package/dist/lib/meta.d.mts +33 -0
  148. package/dist/lib/meta.d.mts.map +1 -0
  149. package/dist/lib/meta.mjs +54 -0
  150. package/dist/lib/meta.mjs.map +1 -0
  151. package/dist/lib/plugins.cjs +150 -0
  152. package/dist/lib/plugins.d.cts +39 -0
  153. package/dist/lib/plugins.d.cts.map +1 -0
  154. package/dist/lib/plugins.d.mts +39 -0
  155. package/dist/lib/plugins.d.mts.map +1 -0
  156. package/dist/lib/plugins.mjs +146 -0
  157. package/dist/lib/plugins.mjs.map +1 -0
  158. package/dist/lib/resolver.cjs +35 -0
  159. package/dist/lib/resolver.d.cts +20 -0
  160. package/dist/lib/resolver.d.cts.map +1 -0
  161. package/dist/lib/resolver.d.mts +20 -0
  162. package/dist/lib/resolver.d.mts.map +1 -0
  163. package/dist/lib/resolver.mjs +33 -0
  164. package/dist/lib/resolver.mjs.map +1 -0
  165. package/dist/lib/schemas.cjs +9 -0
  166. package/dist/lib/schemas.d.cts +2 -0
  167. package/dist/lib/schemas.d.mts +2 -0
  168. package/dist/lib/schemas.mjs +3 -0
  169. package/dist/lib/streaming-channel.cjs +259 -0
  170. package/dist/lib/streaming-channel.d.cts +126 -0
  171. package/dist/lib/streaming-channel.d.cts.map +1 -0
  172. package/dist/lib/streaming-channel.d.mts +126 -0
  173. package/dist/lib/streaming-channel.d.mts.map +1 -0
  174. package/dist/lib/streaming-channel.mjs +258 -0
  175. package/dist/lib/streaming-channel.mjs.map +1 -0
  176. package/dist/lib/typescript/index.cjs +16 -0
  177. package/dist/lib/typescript/index.d.cts +3 -0
  178. package/dist/lib/typescript/index.d.mts +3 -0
  179. package/dist/lib/typescript/index.mjs +4 -0
  180. package/dist/lib/typescript/ts-morph.cjs +105 -0
  181. package/dist/lib/typescript/ts-morph.d.cts +38 -0
  182. package/dist/lib/typescript/ts-morph.d.cts.map +1 -0
  183. package/dist/lib/typescript/ts-morph.d.mts +38 -0
  184. package/dist/lib/typescript/ts-morph.d.mts.map +1 -0
  185. package/dist/lib/typescript/ts-morph.mjs +102 -0
  186. package/dist/lib/typescript/ts-morph.mjs.map +1 -0
  187. package/dist/lib/typescript/tsconfig.cjs +253 -0
  188. package/dist/lib/typescript/tsconfig.d.cts +77 -0
  189. package/dist/lib/typescript/tsconfig.d.cts.map +1 -0
  190. package/dist/lib/typescript/tsconfig.d.mts +77 -0
  191. package/dist/lib/typescript/tsconfig.d.mts.map +1 -0
  192. package/dist/lib/typescript/tsconfig.mjs +240 -0
  193. package/dist/lib/typescript/tsconfig.mjs.map +1 -0
  194. package/dist/lib/unplugin/helpers.cjs +0 -1
  195. package/dist/lib/unplugin/helpers.d.cts.map +1 -1
  196. package/dist/lib/unplugin/helpers.d.mts.map +1 -1
  197. package/dist/lib/unplugin/helpers.mjs.map +1 -1
  198. package/dist/lib/unplugin/index.d.cts +3 -3
  199. package/dist/lib/unplugin/index.d.mts +3 -3
  200. package/dist/lib/unplugin/module-resolution.cjs +8 -9
  201. package/dist/lib/unplugin/module-resolution.d.cts +3 -4
  202. package/dist/lib/unplugin/module-resolution.d.cts.map +1 -1
  203. package/dist/lib/unplugin/module-resolution.d.mts +3 -4
  204. package/dist/lib/unplugin/module-resolution.d.mts.map +1 -1
  205. package/dist/lib/unplugin/module-resolution.mjs +8 -9
  206. package/dist/lib/unplugin/module-resolution.mjs.map +1 -1
  207. package/dist/lib/unplugin/plugin.cjs +54 -61
  208. package/dist/lib/unplugin/plugin.d.cts +5 -7
  209. package/dist/lib/unplugin/plugin.d.cts.map +1 -1
  210. package/dist/lib/unplugin/plugin.d.mts +5 -7
  211. package/dist/lib/unplugin/plugin.d.mts.map +1 -1
  212. package/dist/lib/unplugin/plugin.mjs +54 -60
  213. package/dist/lib/unplugin/plugin.mjs.map +1 -1
  214. package/dist/lib/utilities/file-header.cjs +2 -3
  215. package/dist/lib/utilities/file-header.d.cts +1 -2
  216. package/dist/lib/utilities/file-header.d.cts.map +1 -1
  217. package/dist/lib/utilities/file-header.d.mts +1 -2
  218. package/dist/lib/utilities/file-header.d.mts.map +1 -1
  219. package/dist/lib/utilities/file-header.mjs +2 -2
  220. package/dist/lib/utilities/file-header.mjs.map +1 -1
  221. package/dist/lib/utilities/format.cjs +1 -1
  222. package/dist/lib/utilities/format.d.cts.map +1 -1
  223. package/dist/lib/utilities/format.d.mts.map +1 -1
  224. package/dist/lib/utilities/format.mjs +1 -1
  225. package/dist/lib/utilities/format.mjs.map +1 -1
  226. package/dist/lib/utilities/index.cjs +1 -1
  227. package/dist/lib/utilities/index.d.cts +2 -2
  228. package/dist/lib/utilities/index.d.mts +2 -2
  229. package/dist/lib/utilities/index.mjs +1 -1
  230. package/dist/lib/utilities/source-file.d.cts.map +1 -1
  231. package/dist/lib/utilities/source-file.d.mts.map +1 -1
  232. package/dist/lib/utilities/source-file.mjs.map +1 -1
  233. package/dist/lib/utilities/source-map.d.cts.map +1 -1
  234. package/dist/lib/utilities/source-map.d.mts.map +1 -1
  235. package/dist/lib/utilities/source-map.mjs.map +1 -1
  236. package/dist/lib/utilities/write-file.cjs +0 -1
  237. package/dist/lib/utilities/write-file.mjs.map +1 -1
  238. package/dist/lib/vfs.cjs +1104 -0
  239. package/dist/lib/vfs.d.cts +321 -0
  240. package/dist/lib/vfs.d.cts.map +1 -0
  241. package/dist/lib/vfs.d.mts +321 -0
  242. package/dist/lib/vfs.d.mts.map +1 -0
  243. package/dist/lib/vfs.mjs +1102 -0
  244. package/dist/lib/vfs.mjs.map +1 -0
  245. package/dist/plugin-base.cjs +1 -2
  246. package/dist/plugin-base.d.cts +1 -5
  247. package/dist/plugin-base.d.cts.map +1 -1
  248. package/dist/plugin-base.d.mts +1 -5
  249. package/dist/plugin-base.d.mts.map +1 -1
  250. package/dist/plugin-base.mjs +1 -1
  251. package/dist/plugin-base.mjs.map +1 -1
  252. package/dist/plugin-utils/build-helpers.cjs +2 -3
  253. package/dist/plugin-utils/build-helpers.d.cts +3 -4
  254. package/dist/plugin-utils/build-helpers.d.cts.map +1 -1
  255. package/dist/plugin-utils/build-helpers.d.mts +3 -4
  256. package/dist/plugin-utils/build-helpers.d.mts.map +1 -1
  257. package/dist/plugin-utils/build-helpers.mjs +2 -2
  258. package/dist/plugin-utils/build-helpers.mjs.map +1 -1
  259. package/dist/plugin-utils/combine-plugins.cjs +0 -1
  260. package/dist/plugin-utils/combine-plugins.d.cts +7 -9
  261. package/dist/plugin-utils/combine-plugins.d.cts.map +1 -1
  262. package/dist/plugin-utils/combine-plugins.d.mts +7 -9
  263. package/dist/plugin-utils/combine-plugins.d.mts.map +1 -1
  264. package/dist/plugin-utils/combine-plugins.mjs.map +1 -1
  265. package/dist/plugin-utils/context-helpers.cjs +0 -1
  266. package/dist/plugin-utils/context-helpers.d.cts.map +1 -1
  267. package/dist/plugin-utils/context-helpers.d.mts.map +1 -1
  268. package/dist/plugin-utils/context-helpers.mjs.map +1 -1
  269. package/dist/plugin-utils/docs-helper.cjs +0 -1
  270. package/dist/plugin-utils/docs-helper.d.cts.map +1 -1
  271. package/dist/plugin-utils/docs-helper.d.mts.map +1 -1
  272. package/dist/plugin-utils/docs-helper.mjs.map +1 -1
  273. package/dist/plugin-utils/enable-plugin.cjs +33 -0
  274. package/dist/plugin-utils/enable-plugin.d.cts +29 -0
  275. package/dist/plugin-utils/enable-plugin.d.cts.map +1 -0
  276. package/dist/plugin-utils/enable-plugin.d.mts +29 -0
  277. package/dist/plugin-utils/enable-plugin.d.mts.map +1 -0
  278. package/dist/plugin-utils/enable-plugin.mjs +33 -0
  279. package/dist/plugin-utils/enable-plugin.mjs.map +1 -0
  280. package/dist/plugin-utils/extend.cjs +0 -1
  281. package/dist/plugin-utils/extend.mjs.map +1 -1
  282. package/dist/plugin-utils/filter.cjs +2 -2
  283. package/dist/plugin-utils/filter.d.cts.map +1 -1
  284. package/dist/plugin-utils/filter.d.mts.map +1 -1
  285. package/dist/plugin-utils/filter.mjs +2 -2
  286. package/dist/plugin-utils/filter.mjs.map +1 -1
  287. package/dist/plugin-utils/format-package-json.cjs +0 -1
  288. package/dist/plugin-utils/format-package-json.mjs.map +1 -1
  289. package/dist/plugin-utils/format.cjs +14 -7
  290. package/dist/plugin-utils/format.d.cts.map +1 -1
  291. package/dist/plugin-utils/format.d.mts.map +1 -1
  292. package/dist/plugin-utils/format.mjs +14 -6
  293. package/dist/plugin-utils/format.mjs.map +1 -1
  294. package/dist/plugin-utils/get-config-path.cjs +0 -1
  295. package/dist/plugin-utils/get-config-path.d.cts.map +1 -1
  296. package/dist/plugin-utils/get-config-path.d.mts.map +1 -1
  297. package/dist/plugin-utils/get-config-path.mjs.map +1 -1
  298. package/dist/plugin-utils/helpers.cjs +1 -2
  299. package/dist/plugin-utils/helpers.d.cts +18 -23
  300. package/dist/plugin-utils/helpers.d.cts.map +1 -1
  301. package/dist/plugin-utils/helpers.d.mts +18 -23
  302. package/dist/plugin-utils/helpers.d.mts.map +1 -1
  303. package/dist/plugin-utils/helpers.mjs +1 -1
  304. package/dist/plugin-utils/helpers.mjs.map +1 -1
  305. package/dist/plugin-utils/index.cjs +7 -2
  306. package/dist/plugin-utils/index.d.cts +8 -6
  307. package/dist/plugin-utils/index.d.mts +8 -6
  308. package/dist/plugin-utils/index.mjs +5 -3
  309. package/dist/plugin-utils/install.cjs +46 -0
  310. package/dist/plugin-utils/install.d.cts +23 -0
  311. package/dist/plugin-utils/install.d.cts.map +1 -0
  312. package/dist/plugin-utils/install.d.mts +23 -0
  313. package/dist/plugin-utils/install.d.mts.map +1 -0
  314. package/dist/plugin-utils/install.mjs +45 -0
  315. package/dist/plugin-utils/install.mjs.map +1 -0
  316. package/dist/plugin-utils/logging.cjs +50 -47
  317. package/dist/plugin-utils/logging.d.cts +3 -2
  318. package/dist/plugin-utils/logging.d.cts.map +1 -1
  319. package/dist/plugin-utils/logging.d.mts +3 -2
  320. package/dist/plugin-utils/logging.d.mts.map +1 -1
  321. package/dist/plugin-utils/logging.mjs +50 -47
  322. package/dist/plugin-utils/logging.mjs.map +1 -1
  323. package/dist/plugin-utils/merge.cjs +1 -1
  324. package/dist/plugin-utils/merge.d.cts +1 -2
  325. package/dist/plugin-utils/merge.d.cts.map +1 -1
  326. package/dist/plugin-utils/merge.d.mts +1 -2
  327. package/dist/plugin-utils/merge.d.mts.map +1 -1
  328. package/dist/plugin-utils/merge.mjs +1 -1
  329. package/dist/plugin-utils/merge.mjs.map +1 -1
  330. package/dist/plugin-utils/modules.cjs +1 -1
  331. package/dist/plugin-utils/modules.d.cts.map +1 -1
  332. package/dist/plugin-utils/modules.d.mts.map +1 -1
  333. package/dist/plugin-utils/modules.mjs +1 -1
  334. package/dist/plugin-utils/modules.mjs.map +1 -1
  335. package/dist/plugin-utils/paths.cjs +1 -2
  336. package/dist/plugin-utils/paths.d.cts.map +1 -1
  337. package/dist/plugin-utils/paths.d.mts.map +1 -1
  338. package/dist/plugin-utils/paths.mjs +1 -1
  339. package/dist/plugin-utils/paths.mjs.map +1 -1
  340. package/dist/plugin-utils/virtual.d.cts +1 -2
  341. package/dist/plugin-utils/virtual.d.cts.map +1 -1
  342. package/dist/plugin-utils/virtual.d.mts +1 -2
  343. package/dist/plugin-utils/virtual.d.mts.map +1 -1
  344. package/dist/plugin-utils/virtual.mjs.map +1 -1
  345. package/dist/schemas/fs.cjs +232 -0
  346. package/dist/schemas/fs.d.cts +127 -0
  347. package/dist/schemas/fs.d.cts.map +1 -0
  348. package/dist/schemas/fs.d.mts +127 -0
  349. package/dist/schemas/fs.d.mts.map +1 -0
  350. package/dist/schemas/fs.mjs +226 -0
  351. package/dist/schemas/fs.mjs.map +1 -0
  352. package/dist/storage/base.cjs +216 -0
  353. package/dist/storage/base.d.cts +200 -0
  354. package/dist/storage/base.d.cts.map +1 -0
  355. package/dist/storage/base.d.mts +200 -0
  356. package/dist/storage/base.d.mts.map +1 -0
  357. package/dist/storage/base.mjs +216 -0
  358. package/dist/storage/base.mjs.map +1 -0
  359. package/dist/storage/file-system.cjs +179 -0
  360. package/dist/storage/file-system.d.cts +127 -0
  361. package/dist/storage/file-system.d.cts.map +1 -0
  362. package/dist/storage/file-system.d.mts +127 -0
  363. package/dist/storage/file-system.d.mts.map +1 -0
  364. package/dist/storage/file-system.mjs +179 -0
  365. package/dist/storage/file-system.mjs.map +1 -0
  366. package/dist/storage/helpers.cjs +36 -0
  367. package/dist/storage/helpers.d.cts +25 -0
  368. package/dist/storage/helpers.d.cts.map +1 -0
  369. package/dist/storage/helpers.d.mts +25 -0
  370. package/dist/storage/helpers.d.mts.map +1 -0
  371. package/dist/storage/helpers.mjs +34 -0
  372. package/dist/storage/helpers.mjs.map +1 -0
  373. package/dist/storage/index.cjs +12 -0
  374. package/dist/storage/index.d.cts +5 -0
  375. package/dist/storage/index.d.mts +5 -0
  376. package/dist/storage/index.mjs +6 -0
  377. package/dist/storage/virtual.cjs +97 -0
  378. package/dist/storage/virtual.d.cts +80 -0
  379. package/dist/storage/virtual.d.cts.map +1 -0
  380. package/dist/storage/virtual.d.mts +80 -0
  381. package/dist/storage/virtual.d.mts.map +1 -0
  382. package/dist/storage/virtual.mjs +97 -0
  383. package/dist/storage/virtual.mjs.map +1 -0
  384. package/dist/types/api.d.cts +10 -162
  385. package/dist/types/api.d.cts.map +1 -1
  386. package/dist/types/api.d.mts +10 -162
  387. package/dist/types/api.d.mts.map +1 -1
  388. package/dist/types/config.d.cts +144 -181
  389. package/dist/types/config.d.cts.map +1 -1
  390. package/dist/types/config.d.mts +145 -182
  391. package/dist/types/config.d.mts.map +1 -1
  392. package/dist/types/context.d.cts +120 -184
  393. package/dist/types/context.d.cts.map +1 -1
  394. package/dist/types/context.d.mts +123 -187
  395. package/dist/types/context.d.mts.map +1 -1
  396. package/dist/types/fs.d.cts +1 -12
  397. package/dist/types/fs.d.cts.map +1 -1
  398. package/dist/types/fs.d.mts +2 -13
  399. package/dist/types/fs.d.mts.map +1 -1
  400. package/dist/types/hooks.d.cts +1 -12
  401. package/dist/types/hooks.d.cts.map +1 -1
  402. package/dist/types/hooks.d.mts +1 -12
  403. package/dist/types/hooks.d.mts.map +1 -1
  404. package/dist/types/index.d.cts +9 -11
  405. package/dist/types/index.d.mts +9 -11
  406. package/dist/types/logging.d.cts +5 -20
  407. package/dist/types/logging.d.cts.map +1 -1
  408. package/dist/types/logging.d.mts +5 -20
  409. package/dist/types/logging.d.mts.map +1 -1
  410. package/dist/types/plugin.d.cts +5 -15
  411. package/dist/types/plugin.d.cts.map +1 -1
  412. package/dist/types/plugin.d.mts +5 -15
  413. package/dist/types/plugin.d.mts.map +1 -1
  414. package/dist/types/tsconfig.d.cts +1 -8
  415. package/dist/types/tsconfig.d.cts.map +1 -1
  416. package/dist/types/tsconfig.d.mts +2 -9
  417. package/dist/types/tsconfig.d.mts.map +1 -1
  418. package/dist/types/unplugin.d.cts +6 -31
  419. package/dist/types/unplugin.d.cts.map +1 -1
  420. package/dist/types/unplugin.d.mts +6 -31
  421. package/dist/types/unplugin.d.mts.map +1 -1
  422. package/package.json +158 -25
  423. package/schemas/fs.capnp +42 -0
  424. package/dist/types/_internal.cjs +0 -0
  425. package/dist/types/_internal.d.cts +0 -91
  426. package/dist/types/_internal.d.cts.map +0 -1
  427. package/dist/types/_internal.d.mts +0 -91
  428. package/dist/types/_internal.d.mts.map +0 -1
  429. package/dist/types/_internal.mjs +0 -1
  430. package/dist/types/commands.d.cts +0 -16
  431. package/dist/types/commands.d.cts.map +0 -1
  432. package/dist/types/commands.d.mts +0 -16
  433. package/dist/types/commands.d.mts.map +0 -1
  434. package/dist/types/utils.d.cts +0 -9
  435. package/dist/types/utils.d.cts.map +0 -1
  436. package/dist/types/utils.d.mts +0 -9
  437. package/dist/types/utils.d.mts.map +0 -1
@@ -1,15 +1,14 @@
1
- import { Plugin } from "./plugin.cjs";
2
- import { HooksList, HooksListItem } from "./hooks.cjs";
3
- import { API } from "./api.cjs";
4
1
  import { ResolveOptions, VirtualFile, VirtualFileSystemInterface, WriteOptions } from "./fs.cjs";
5
- import { LogFn, LogLevelResolvedConfig, LogMessage, Logger, LoggerOptions } from "./logging.cjs";
2
+ import { Plugin } from "./plugin.cjs";
3
+ import { CallHookOptions, HooksList, HooksListItem, InferHookParameters, InferHookReturnType } from "./hooks.cjs";
4
+ import { LogFn, LogMessage, Logger, LoggerOptions } from "./logging.cjs";
6
5
  import { ParsedTypeScriptConfig } from "./tsconfig.cjs";
7
- import { EngineOptions, EnvironmentResolvedConfig, ExecutionOptions, ParsedUserConfig, ResolvedConfig, ResolvedEntryTypeDefinition, UserConfig } from "./config.cjs";
8
- import { DeepPartial, DeepReadonly, RequiredKeys } from "@stryke/types/base";
9
- import { Jiti } from "jiti";
6
+ import { EnvironmentResolvedConfig, ExecutionOptions, Options, PluginConfig, ResolvedConfig, ResolvedEntryTypeDefinition, UserConfig } from "./config.cjs";
10
7
  import { EnvPaths } from "@stryke/env/get-env-paths";
8
+ import { DeepPartial } from "@stryke/types/base";
11
9
  import { FetchRequestOptions } from "@stryke/http/fetch";
12
10
  import { PackageJson } from "@stryke/types/package-json";
11
+ import { Jiti } from "jiti";
13
12
  import MagicString, { SourceMap } from "magic-string";
14
13
  import { ParseResult, ParserOptions } from "oxc-parser";
15
14
  import { Range } from "semver";
@@ -18,21 +17,21 @@ import { Unimport } from "unimport";
18
17
  import { ExternalIdResult, UnpluginBuildContext } from "unplugin";
19
18
 
20
19
  //#region src/types/context.d.ts
21
- interface MetaInfo {
20
+ type MetaInfo = Record<string, any> & {
22
21
  /**
23
22
  * The checksum generated from the resolved options
24
23
  */
25
24
  checksum: string;
26
25
  /**
27
- * The build id
26
+ * The execution id
28
27
  */
29
- buildId: string;
28
+ executionId: string;
30
29
  /**
31
30
  * The release id
32
31
  */
33
32
  releaseId: string;
34
33
  /**
35
- * The build timestamp
34
+ * The execution timestamp
36
35
  */
37
36
  timestamp: number;
38
37
  /**
@@ -43,7 +42,7 @@ interface MetaInfo {
43
42
  * A hash that represents the path to the configuration root directory
44
43
  */
45
44
  configHash: string;
46
- }
45
+ };
47
46
  interface Resolver extends Jiti {
48
47
  plugin: Jiti;
49
48
  }
@@ -137,7 +136,11 @@ interface ResolveResult extends ExternalIdResult {
137
136
  * @remarks
138
137
  * This context provides the foundational structure for interacting with the Powerlines engine.
139
138
  */
140
- interface BaseContext {
139
+ interface BaseContext<TSystemContext = any> extends Pick<Required<Options>, "cwd"> {
140
+ /**
141
+ * The system instance associated with the context, which can be used to interact with the Powerlines engine and perform various operations during the build process. The specific type of the system may vary depending on the environment and use case, but it typically provides methods for logging, file system operations, and other interactions with the Powerlines engine.
142
+ */
143
+ system: TSystemContext;
141
144
  /**
142
145
  * The timestamp when the context was initialized
143
146
  */
@@ -151,17 +154,9 @@ interface BaseContext {
151
154
  */
152
155
  powerlinesPath: string;
153
156
  /**
154
- * The parsed user configuration file provided to the Powerlines process before any resolution or merging
155
- */
156
- configFile: ParsedUserConfig;
157
- /**
158
- * The options provided to the Powerlines process, resolved with default values and merged with any configuration provided by plugins or other sources. This is typically the final configuration used during the build process, but may also include additional options that are relevant to the context and its interactions with the Powerlines engine.
159
- */
160
- options: RequiredKeys<EngineOptions, "mode" | "cwd" | "root" | "framework">;
161
- /**
162
- * The log level to use for the Powerlines processes.
157
+ * The options provided to the Powerlines process.
163
158
  */
164
- logLevel: LogLevelResolvedConfig;
159
+ options: Options;
165
160
  /**
166
161
  * An instance of the Powerlines logger client that can be used to generate log messages with consistent formatting and metadata.
167
162
  */
@@ -169,11 +164,11 @@ interface BaseContext {
169
164
  /**
170
165
  * A logging function for fatal messages
171
166
  */
172
- fatal: (message: string | LogMessage) => void;
167
+ fatal: (message: string | LogMessage | Error) => void;
173
168
  /**
174
169
  * A logging function for error messages
175
170
  */
176
- error: (message: string | LogMessage) => void;
171
+ error: (message: string | LogMessage | Error) => void;
177
172
  /**
178
173
  * A logging function for warning messages
179
174
  */
@@ -219,108 +214,23 @@ interface BaseContext {
219
214
  */
220
215
  extendLogger: (options: LoggerOptions, logFn?: LogFn) => Logger;
221
216
  }
222
- interface ExecutionStateItem {
223
- /**
224
- * The timestamp when the command, hook, or plugin execution started
225
- */
226
- timestamp: number;
227
- /**
228
- * The name of the command, hook, or plugin being executed
229
- */
230
- name: string;
231
- }
232
- interface HookExecutionStateItem extends ExecutionStateItem {
233
- /**
234
- * The order of the hook being executed, which can be "pre", "post", or "normal". This indicates whether the hook is being executed
235
- */
236
- order: "pre" | "post" | "normal";
237
- }
238
- interface ExecutionState {
239
- /**
240
- * A unique identifier for the current execution instance, which can be used for logging and other purposes to distinguish between different executions in the same process.
241
- */
242
- executionId: string;
243
- /**
244
- * The options provided to the Powerlines process for this execution
245
- */
246
- options: ExecutionOptions;
247
- /**
248
- * An object representing the currently active command, hook, and plugin executions for this execution context
249
- */
250
- active: {
251
- /**
252
- * The currently active command execution for this execution context
253
- */
254
- command: ExecutionStateItem | null;
255
- /**
256
- * The currently active hook execution for this execution context, if any
257
- */
258
- hook: HookExecutionStateItem | null;
259
- /**
260
- * The currently active plugin execution for this execution context, if any
261
- */
262
- plugin: ExecutionStateItem | null;
263
- };
264
- }
265
- /**
266
- * The Powerlines engine context.
267
- *
268
- * @remarks
269
- * This context is used during the execution of the Powerlines engine, providing access to the input user configurations.
270
- */
271
- interface EngineContext extends BaseContext {
272
- /**
273
- * The initial options provided to the Powerlines process before any resolution or merging. This is typically the user configuration provided in the Powerlines configuration file, but may also include additional configuration options provided by plugins or other sources.
274
- */
275
- readonly initialOptions: EngineOptions;
276
- /**
277
- * The options provided to the Powerlines process
278
- */
279
- options: RequiredKeys<Omit<EngineOptions, "logLevel">, "name" | "root" | "cwd" | "mode" | "framework"> & {
280
- /**
281
- * The log level to use for logging messages during the build process. This can be a string indicating the log level or a more detailed configuration object that allows for specifying different log levels for different categories of logs.
282
- */
283
- logLevel: LogLevelResolvedConfig;
284
- };
285
- /**
286
- * The initial user configuration provided to the Powerlines process before any resolution or merging. This is typically the user configuration provided in the Powerlines configuration file, but may also include additional configuration options provided by plugins or other sources.
287
- */
288
- readonly initialConfig: DeepPartial<UserConfig>;
289
- /**
290
- * A list of all command executions that will be run during the lifecycle of the engine
291
- */
292
- executions: ExecutionState[];
293
- }
294
217
  /**
295
218
  * The unresolved Powerlines context.
296
219
  *
297
220
  * @remarks
298
221
  * This context is used before the user configuration has been fully resolved after the `config`.
299
222
  */
300
- interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends BaseContext {
223
+ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = any> extends BaseContext<TSystemContext> {
301
224
  /**
302
225
  * The options provided to the Powerlines process, resolved with default values and merged with any configuration provided by plugins or other sources. This is typically the final configuration used during the build process, but may also include additional options that are relevant to the context and its interactions with the Powerlines engine.
303
226
  */
304
- options: RequiredKeys<ExecutionOptions, "mode" | "cwd" | "root" | "framework" | "logLevel">;
227
+ options: ExecutionOptions;
305
228
  /**
306
229
  * An object containing the options provided to Powerlines
307
230
  */
308
- config: Omit<TResolvedConfig["userConfig"], "output"> & Required<Pick<TResolvedConfig["userConfig"], "output">> & Pick<TResolvedConfig, "cwd" | "root" | "mode" | "framework" | "configFile" | "name"> & {
309
- /**
310
- * The output configuration options for the Powerlines process, which may include settings related to the output directory, file naming conventions, and other options that affect how the compiled output is generated and structured. This is typically derived from the user configuration but may also include additional options provided by plugins or other sources.
311
- */
312
- output: TResolvedConfig["output"];
313
- /**
314
- * The original configuration options that were provided by the user to the Powerlines process, which may be used during the configuration resolution process to ensure that the final configuration is properly merged and applied to the context. This is typically the user configuration provided in the Powerlines configuration file, but may also include additional configuration options provided by plugins or other sources.
315
- */
316
- readonly initialConfig: DeepReadonly<TResolvedConfig["initialConfig"]>;
317
- /**
318
- * The configuration options that were provided inline to the Powerlines CLI.
319
- */
320
- readonly inlineConfig: DeepReadonly<TResolvedConfig["inlineConfig"]>;
321
- };
231
+ config: Omit<TResolvedConfig, "pluginConfig">;
322
232
  /**
323
- * The metadata information
233
+ * A place to store metadata information on the context for access in plugins and other parts of the system. This can be used to store information about the current execution, such as a unique identifier for the execution, timestamps, or any other relevant data that may be useful for plugins or other parts of the system to access during the build process.
324
234
  */
325
235
  meta: MetaInfo;
326
236
  /**
@@ -355,6 +265,24 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
355
265
  * The path to the Powerlines TypeScript declaration files directory
356
266
  */
357
267
  readonly typesPath: string;
268
+ /**
269
+ * Invokes the configured plugin hooks
270
+ *
271
+ * @remarks
272
+ * By default, it will call the `"pre"`, `"normal"`, and `"post"` ordered hooks in sequence
273
+ *
274
+ * @param hook - The hook to call
275
+ * @param options - The options to provide to the hook
276
+ * @param args - The arguments to pass to the hook
277
+ * @returns The result of the hook call
278
+ */
279
+ callHook: <TKey extends string>(hook: TKey, options: CallHookOptions & {
280
+ environment?: string | EnvironmentContext<TResolvedConfig>;
281
+ }, ...args: InferHookParameters<PluginContext<TResolvedConfig>, TKey>) => Promise<InferHookReturnType<PluginContext<TResolvedConfig>, TKey> | undefined>;
282
+ /**
283
+ * The virtual file system interface for managing files during the build process
284
+ */
285
+ fs: VirtualFileSystemInterface;
358
286
  /**
359
287
  * The project's `package.json` file content
360
288
  */
@@ -379,10 +307,6 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
379
307
  * The entry points of the source code
380
308
  */
381
309
  entry: ResolvedEntryTypeDefinition[];
382
- /**
383
- * The virtual file system manager used during the build process to reference generated runtime files
384
- */
385
- fs: VirtualFileSystemInterface;
386
310
  /**
387
311
  * The Jiti module resolver
388
312
  */
@@ -557,13 +481,34 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
557
481
  * @remarks
558
482
  * This context is used after the user configuration has been fully resolved and merged with default values, providing access to the final configuration options and utility functions for interacting with the Powerlines engine.
559
483
  */
560
- type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = Omit<UnresolvedContext<TResolvedConfig>, "config"> & {
484
+ type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = any> = Omit<UnresolvedContext<TResolvedConfig, TSystemContext>, "config" | "callHook"> & {
561
485
  /**
562
486
  * The fully resolved Powerlines configuration
563
487
  */
564
488
  config: TResolvedConfig;
489
+ /**
490
+ * A setter function to populate the plugin config values provided during execution of the command, such as CLI flags or other parameters that may be relevant to the command being executed. This function can be used to update the context with the plugin configuration values, which may be used during the configuration resolution process to ensure that the final configuration reflects both the user configuration and any plugin configuration provided during execution.
491
+ *
492
+ * @param config - The plugin configuration values to set.
493
+ * @returns A promise that resolves when the plugin configuration values have been set.
494
+ */
495
+ setPluginConfig: (config: DeepPartial<UserConfig>) => Promise<void>;
496
+ /**
497
+ * Invokes the configured plugin hooks
498
+ *
499
+ * @remarks
500
+ * By default, it will call the `"pre"`, `"normal"`, and `"post"` ordered hooks in sequence
501
+ *
502
+ * @param hook - The hook to call
503
+ * @param options - The options to provide to the hook
504
+ * @param args - The arguments to pass to the hook
505
+ * @returns The result of the hook call
506
+ */
507
+ callHook: <TKey extends string>(hook: TKey, options: CallHookOptions & {
508
+ environment?: string | EnvironmentContext<any, any>;
509
+ }, ...args: InferHookParameters<PluginContext<any, any>, TKey>) => Promise<InferHookReturnType<PluginContext<any, any>, TKey> | undefined>;
565
510
  };
566
- interface ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends Context<TResolvedConfig> {
511
+ interface ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = any> extends Context<TResolvedConfig, TSystemContext> {
567
512
  /**
568
513
  * The unique identifier of the execution context, which can be used for logging and other purposes to distinguish between different executions in the same process.
569
514
  */
@@ -574,15 +519,11 @@ interface ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConf
574
519
  * @remarks
575
520
  * This is a record of plugin identifiers to their respective options. This field is populated by the Powerlines engine during both plugin initialization and the `init` command.
576
521
  */
577
- plugins: Plugin<PluginContext<TResolvedConfig>>[];
522
+ plugins: Plugin<PluginContext<TResolvedConfig, TSystemContext>>[];
578
523
  /**
579
524
  * A table for storing the current context for each configured environment
580
525
  */
581
- environments: Record<string, EnvironmentContext<TResolvedConfig>>;
582
- /**
583
- * A function to add a plugin to the context and update the configuration options
584
- */
585
- addPlugin: (plugin: Plugin<PluginContext<TResolvedConfig>>) => Promise<void>;
526
+ environments: Record<string, EnvironmentContext<TResolvedConfig, TSystemContext>>;
586
527
  /**
587
528
  * Retrieves the context for a specific environment by name
588
529
  *
@@ -597,7 +538,7 @@ interface ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConf
597
538
  * const defaultEnv = await apiContext.getEnvironment();
598
539
  * ```
599
540
  */
600
- getEnvironment: (name?: string) => Promise<EnvironmentContext<TResolvedConfig>>;
541
+ getEnvironment: (name?: string) => Promise<EnvironmentContext<TResolvedConfig, TSystemContext>>;
601
542
  /**
602
543
  * Safely retrieves the context for a specific environment by name
603
544
  *
@@ -625,43 +566,58 @@ interface ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConf
625
566
  *
626
567
  * Using this method helps avoid unhandled exceptions in cases where an environment might not be defined.
627
568
  */
628
- getEnvironmentSafe: (name?: string) => Promise<EnvironmentContext<TResolvedConfig> | undefined>;
569
+ getEnvironmentSafe: (name?: string) => Promise<EnvironmentContext<TResolvedConfig, TSystemContext> | undefined>;
629
570
  /**
630
571
  * A function to copy the context and update the fields for a specific environment
631
572
  *
632
573
  * @param environment - The environment configuration to use.
633
574
  * @returns A new context instance with the updated environment.
634
575
  */
635
- createEnvironment: (environment: EnvironmentResolvedConfig<TResolvedConfig>["environment"]) => Promise<EnvironmentContext<TResolvedConfig>>;
576
+ createEnvironment: (environment: EnvironmentResolvedConfig<TResolvedConfig>["environment"]) => Promise<EnvironmentContext<TResolvedConfig, TSystemContext>>;
636
577
  /**
637
578
  * A function to merge all configured environments into a single context
638
579
  *
639
580
  * @returns A promise that resolves to the merged environment context.
640
581
  */
641
- toEnvironment: () => Promise<EnvironmentContext<TResolvedConfig>>;
642
- }
643
- interface EnvironmentContextPlugin<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
644
- /**
645
- * The unique identifier of the plugin, which can be used for logging and other purposes to distinguish between different plugins in the same process.
646
- */
647
- readonly id: string;
582
+ toEnvironment: () => Promise<EnvironmentContext<TResolvedConfig, TSystemContext>>;
648
583
  /**
649
- * The plugin instance associated with this context, which can be used to access the plugin's options and other properties.
584
+ * A function used internally to add a plugin to the context and update the configuration options
585
+ *
586
+ * @danger
587
+ * This field is for internal use only and should not be accessed or modified directly. It is unstable and can be changed at anytime.
588
+ *
589
+ * @internal
650
590
  */
651
- plugin: Plugin<PluginContext<TResolvedConfig>>;
591
+ unstable_addPlugin: (plugin: PluginConfig<PluginContext<TResolvedConfig, TSystemContext>>) => Promise<void>;
592
+ }
593
+ interface EnvironmentPlugin<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = any> extends Plugin<PluginContext<TResolvedConfig, TSystemContext>> {
652
594
  /**
653
- * The context for the plugin, which provides access to the Powerlines engine and other utilities for interacting with the build process.
595
+ * A internal field to store the plugin configuration and context for the environment context
654
596
  *
655
- * @remarks
656
- * This context is specific to the plugin and environment, allowing for environment-specific modifications without affecting the global context.
597
+ * @danger
598
+ * This field is for internal use only and should not be accessed or modified directly. It is unstable and can be changed at anytime.
599
+ *
600
+ * @internal
657
601
  */
658
- context: PluginContext<TResolvedConfig>;
602
+ "~internal": {
603
+ /**
604
+ * The unique identifier of the plugin, which can be used for logging and other purposes to distinguish between different plugins in the same process.
605
+ */
606
+ readonly id: string;
607
+ /**
608
+ * The context for the plugin, which provides access to the Powerlines engine and other utilities for interacting with the build process.
609
+ *
610
+ * @remarks
611
+ * This context is specific to the plugin and environment, allowing for environment-specific modifications without affecting the global context.
612
+ */
613
+ readonly context: PluginContext<TResolvedConfig, TSystemContext>;
614
+ };
659
615
  }
660
616
  type SelectHookResultItem<TContext extends PluginContext, TKey extends string> = HooksListItem<TContext, TKey> & {
661
617
  context: TContext;
662
618
  };
663
619
  type SelectHookResult<TContext extends PluginContext, TKey extends string> = SelectHookResultItem<TContext, TKey>[];
664
- interface EnvironmentContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends Context<EnvironmentResolvedConfig<TResolvedConfig>> {
620
+ interface EnvironmentContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = any> extends Context<EnvironmentResolvedConfig<TResolvedConfig>, TSystemContext> {
665
621
  /**
666
622
  * The unique identifier of the environment associated with this context, which can be used for logging and other purposes to distinguish between different environments in the same process.
667
623
  */
@@ -672,32 +628,39 @@ interface EnvironmentContext<TResolvedConfig extends ResolvedConfig = ResolvedCo
672
628
  * @remarks
673
629
  * This is a record of plugin identifiers to their respective options. This field is populated by the Powerlines engine during both plugin initialization and the `init` command.
674
630
  */
675
- plugins: EnvironmentContextPlugin<TResolvedConfig>[];
631
+ plugins: EnvironmentPlugin<TResolvedConfig, TSystemContext>[];
676
632
  /**
677
633
  * A table holding references to hook functions registered by plugins
678
634
  */
679
- hooks: HooksList<PluginContext<TResolvedConfig>>;
635
+ hooks: HooksList<PluginContext<TResolvedConfig, TSystemContext>>;
680
636
  /**
681
- * A function to add a plugin to the context and update the configuration options
637
+ * The execution context associated with this environment, which provides access to the project configuration, environment, and utility functions for performing the build. The execution context is used to manage the state and behavior of the build process across multiple environments, allowing for hooks to be called at different stages of the build and for environment-specific configurations to be applied.
638
+ *
639
+ * @danger
640
+ * This field is for internal use only and should not be accessed or modified directly. It is unstable and can be changed at anytime.
641
+ *
642
+ * @internal
682
643
  */
683
- addPlugin: (plugin: Plugin<PluginContext<TResolvedConfig>>) => Promise<void>;
644
+ unstable_execution: ExecutionContext<TResolvedConfig, TSystemContext>;
684
645
  /**
685
646
  * Retrieves the hook handlers for a specific hook name
686
647
  */
687
- selectHooks: <TKey extends string>(key: TKey, options?: SelectHooksOptions) => SelectHookResult<PluginContext<TResolvedConfig>, TKey>;
648
+ selectHooks: <TKey extends string>(key: TKey, options?: SelectHooksOptions) => SelectHookResult<PluginContext<TResolvedConfig, TSystemContext>, TKey>;
649
+ /**
650
+ * A function used internally to add a plugin to the context and update the configuration options
651
+ *
652
+ * @danger
653
+ * This field is for internal use only and should not be accessed or modified directly. It is unstable and can be changed at anytime.
654
+ *
655
+ * @internal
656
+ */
657
+ unstable_addPlugin: (plugin: PluginConfig<PluginContext<TResolvedConfig, TSystemContext>>) => Promise<void>;
688
658
  }
689
- interface PluginContext<out TResolvedConfig extends ResolvedConfig = ResolvedConfig, TApi extends API<any> = API<any>> extends Context<EnvironmentResolvedConfig<TResolvedConfig>> {
659
+ interface PluginContext<out TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = any> extends Context<EnvironmentResolvedConfig<TResolvedConfig>, TSystemContext> {
690
660
  /**
691
661
  * The unique identifier of the plugin associated with this context, which can be used for logging and other purposes to distinguish between different plugins in the same process.
692
662
  */
693
663
  readonly id: string;
694
- /**
695
- * The API instance available to the plugin during execution, which provides access to the shared context and the ability to call plugin hooks. This API is specific to the plugin and environment, allowing for environment-specific interactions with the Powerlines engine.
696
- *
697
- * @remarks
698
- * The API instance provided in the plugin context may include additional functionality specific to command execution, and it extends the base API with any additional methods or properties that are relevant to the plugin's interactions with the Powerlines engine.
699
- */
700
- readonly api: TApi;
701
664
  /**
702
665
  * The context for the environment associated with this plugin context, which provides access to the Powerlines engine and other utilities for interacting with the build process. This context is specific to the plugin and environment, allowing for environment-specific modifications without affecting the global context.
703
666
  */
@@ -705,33 +668,6 @@ interface PluginContext<out TResolvedConfig extends ResolvedConfig = ResolvedCon
705
668
  }
706
669
  type BuildPluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = UnpluginBuildContext & PluginContext<TResolvedConfig>;
707
670
  type WithUnpluginBuildContext<TContext extends PluginContext> = UnpluginBuildContext & TContext;
708
- declare type __ΩMetaInfo = any[];
709
- declare type __ΩResolver = any[];
710
- declare type __ΩTransformResult = any[];
711
- declare type __ΩSourceFile = any[];
712
- declare type __ΩUnimportContext = any[];
713
- declare type __ΩSelectHooksOptions = any[];
714
- declare type __ΩInitContextOptions = any[];
715
- declare type __ΩFetchOptions = any[];
716
- declare type __ΩParseOptions = any[];
717
- declare type __ΩEmitOptions = any[];
718
- declare type __ΩEmitEntryOptions = any[];
719
- declare type __ΩResolveResult = any[];
720
- declare type __ΩBaseContext = any[];
721
- declare type __ΩExecutionStateItem = any[];
722
- declare type __ΩHookExecutionStateItem = any[];
723
- declare type __ΩExecutionState = any[];
724
- declare type __ΩEngineContext = any[];
725
- declare type __ΩUnresolvedContext = any[];
726
- declare type __ΩContext = any[];
727
- declare type __ΩExecutionContext = any[];
728
- declare type __ΩEnvironmentContextPlugin = any[];
729
- declare type __ΩSelectHookResultItem = any[];
730
- declare type __ΩSelectHookResult = any[];
731
- declare type __ΩEnvironmentContext = any[];
732
- declare type __ΩPluginContext = any[];
733
- declare type __ΩBuildPluginContext = any[];
734
- declare type __ΩWithUnpluginBuildContext = any[];
735
671
  //#endregion
736
- export { BaseContext, BuildPluginContext, Context, EmitEntryOptions, EmitOptions, EngineContext, EnvironmentContext, EnvironmentContextPlugin, ExecutionContext, ExecutionState, ExecutionStateItem, FetchOptions, HookExecutionStateItem, InitContextOptions, MetaInfo, ParseOptions, PluginContext, ResolveResult, Resolver, SelectHookResult, SelectHookResultItem, SelectHooksOptions, SourceFile, TransformResult$1 as TransformResult, UnimportContext, UnresolvedContext, WithUnpluginBuildContext, __ΩBaseContext, __ΩBuildPluginContext, __ΩContext, __ΩEmitEntryOptions, __ΩEmitOptions, __ΩEngineContext, __ΩEnvironmentContext, __ΩEnvironmentContextPlugin, __ΩExecutionContext, __ΩExecutionState, __ΩExecutionStateItem, __ΩFetchOptions, __ΩHookExecutionStateItem, __ΩInitContextOptions, __ΩMetaInfo, __ΩParseOptions, __ΩPluginContext, __ΩResolveResult, __ΩResolver, __ΩSelectHookResult, __ΩSelectHookResultItem, __ΩSelectHooksOptions, __ΩSourceFile, __ΩTransformResult, __ΩUnimportContext, __ΩUnresolvedContext, __ΩWithUnpluginBuildContext };
672
+ export { BaseContext, BuildPluginContext, Context, EmitEntryOptions, EmitOptions, EnvironmentContext, EnvironmentPlugin, ExecutionContext, FetchOptions, InitContextOptions, MetaInfo, ParseOptions, PluginContext, ResolveResult, Resolver, SelectHookResult, SelectHookResultItem, SelectHooksOptions, SourceFile, TransformResult$1 as TransformResult, UnimportContext, UnresolvedContext, WithUnpluginBuildContext };
737
673
  //# sourceMappingURL=context.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.cts","names":[],"sources":["../../src/types/context.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;UAyDiB,QAAA;EAAA;;;EAIf,QAAA;EAAA;;;EAKA,OAAA;EAeA;;;EAVA,SAAA;EAkBe;;;EAbf,SAAA;EAagC;;;EARhC,QAAA;EASY;AAGd;;EAPE,UAAA;AAAA;AAAA,UAGe,QAAA,SAAiB,IAAA;EAChC,MAAA,EAAQ,IAAA;AAAA;AAAA,UAGO,iBAAA;EACf,IAAA;EACA,GAAA,EAAK,SAAA;AAAA;;;;UAMU,UAAA;EAST;;;EALN,EAAA;EAewB;;AAG1B;EAbE,IAAA,EAAM,WAAA;;;;EAKN,GAAA;EAUwB;;;EALxB,MAAA,GAAS,iBAAA;AAAA;AAAA,KAGC,eAAA,GAAkB,IAAA,CAAK,QAAA;EACjC,WAAA,QAAmB,OAAA;EACnB,aAAA,GAAgB,MAAA,EAAQ,UAAA,KAAe,OAAA,CAAQ,UAAA;EAC/C,qBAAA,QAA6B,OAAA;AAAA;AAAA,UAGd,kBAAA;EACf,KAAA;AAAA;;;;UAMe,kBAAA;EAVqB;;AAGtC;;;EAaE,cAAA;AAAA;AANF;;;AAAA,UAYiB,YAAA,SAAqB,mBAAA;EANtB;AAMhB;;EAIE,SAAA;AAAA;;AAMF;;UAAiB,YAAA,SAAqB,aAAA;EAAA;;AAOtC;EAHE,0BAAA;AAAA;AAAA,UAGe,WAAA,SAAoB,YAAA;EAWd;;;EAPrB,SAAA;EAJ+C;;;EAS/C,eAAA;EAEA,kBAAA,GAAqB,UAAA,CACnB,oBAAA;EAGF,gBAAA,GAAmB,UAAA,CACjB,oBAAA;AAAA;;;;KAOQ,gBAAA,GAAmB,WAAA,GAC7B,IAAA,CAAK,2BAAA;AAAA,UAEU,aAAA,SAAsB,gBAAA;EAVf;AAOxB;;EAOE,OAAA;AAAA;;;;;;;UASe,WAAA;EAfiB;;AAElC;EAiBE,SAAA;;;;EAKA,QAAA,EAAU,QAAA;EATgB;;;EAc1B,cAAA;EAUsB;;;EALtB,UAAA,EAAY,gBAAA;EAoBc;;;EAf1B,OAAA,EAAS,YAAA,CAAa,aAAA;EAmCI;;;EA9B1B,QAAA,EAAU,sBAAA;EA0D+C;;;EArDzD,MAAA,EAAQ,MAAA;EA6DuD;;;EAxD/D,KAAA,GAAQ,OAAA,WAAkB,UAAA;EA9BhB;;;EAmCV,KAAA,GAAQ,OAAA,WAAkB,UAAA;EApB1B;;;EAyBA,IAAA,GAAO,OAAA,WAAkB,UAAA;EApBf;;;EAyBV,IAAA,GAAO,OAAA,WAAkB,UAAA;EAfC;;;EAoB1B,KAAA,GAAQ,OAAA,WAAkB,UAAA;EAflB;;;EAoBR,KAAA,GAAQ,OAAA,WAAkB,UAAA;EAV1B;;;;;;;;;;;;;EAyBA,KAAA,GAAQ,IAAA;EAQuC;;;;;;EAA/C,YAAA,GAAe,OAAA,EAAS,aAAA,EAAe,KAAA,GAAQ,KAAA,KAAU,MAAA;EAQlB;;;;AAGzC;;EAHE,YAAA,GAAe,OAAA,EAAS,aAAA,EAAe,KAAA,GAAQ,KAAA,KAAU,MAAA;AAAA;AAAA,UAG1C,kBAAA;EAYA;;;EARf,SAAA;EAYK;AAGP;;EAVE,IAAA;AAAA;AAAA,UAGe,sBAAA,SAA+B,kBAAA;EA8BtC;;;EA1BR,KAAA;AAAA;AAAA,UAGe,cAAA;EASN;;;EALT,WAAA;EAmBE;;;EAdF,OAAA,EAAS,gBAAA;EAmBmB;;AAU9B;EAxBE,MAAA;IAwB6B;;;IApB3B,OAAA,EAAS,kBAAA;IA6BF;;;IAxBP,IAAA,EAAM,sBAAA;IA0CI;;;IArCV,MAAA,EAAQ,kBAAA;EAAA;AAAA;;;;;;;UAUK,aAAA,SAAsB,WAAA;EAsB5B;;;EAAA,SAlBA,cAAA,EAAgB,aAAA;EAuBb;;;EAlBZ,OAAA,EAAS,YAAA,CACP,IAAA,CAAK,aAAA;IA0ByB;;;IApB9B,QAAA,EAAU,sBAAA;EAAA;EA0BH;;;EAAA,SApBA,aAAA,EAAe,WAAA,CAAY,UAAA;EA6BzB;;;EAxBX,UAAA,EAAY,cAAA;AAAA;;;;;;;UASG,iBAAA,yBACS,cAAA,GAAiB,cAAA,UACjC,WAAA;EAkFmB;;;EA9E3B,OAAA,EAAS,YAAA,CACP,gBAAA;EA4FuC;;;EArFzC,MAAA,EAAQ,IAAA,CAAK,eAAA,4BACX,QAAA,CAAS,IAAA,CAAK,eAAA,6BACd,IAAA,CACE,eAAA;IAiGA;;;IA3FA,MAAA,EAAQ,eAAA;IAuHI;;;IAAA,SAlHH,aAAA,EAAe,YAAA,CAAa,eAAA;IAsIc;;;IAAA,SAjI1C,YAAA,EAAc,YAAA,CAAa,eAAA;EAAA;EA2K3B;;;EArKb,IAAA,EAAM,QAAA;EA0LqB;;;EArL3B,aAAA,GAAgB,QAAA;EAuMiC;;;EAAA,SAlMxC,QAAA;EAoOG;;;EAAA,SA/NH,SAAA;EA0PJ;;;EAAA,SArPI,aAAA;EAzDU;;;EAAA,SA8DV,YAAA;EA/DgC;;;EAAA,SAoEhC,SAAA;EA9DP;;;EAAA,SAmEO,kBAAA;EA3DP;;;EAAA,SAgEO,SAAA;EA9DL;;;EAmEJ,WAAA,EAAa,WAAA,GAAc,MAAA;EAxDC;;;EA6D5B,WAAA,GAAc,MAAA;EAxD0B;;;EA6DxC,YAAA,EAAc,MAAA,kBAAwB,KAAA;EAlDtB;;;EAuDhB,eAAA,EAAiB,MAAA,kBAAwB,KAAA;EAnChC;;;EAwCT,QAAA,EAAU,sBAAA;EApBV;;;EAyBA,KAAA,EAAO,2BAAA;EApBO;;;EAyBd,EAAA,EAAI,0BAAA;EAfJ;;;EAoBA,QAAA,EAAU,QAAA;EAfA;;;EAoBV,QAAA;EAVI;;;;;;EAkBJ,KAAA,EAAO,MAAA;EAKU;;;EAAjB,eAAA,EAAiB,MAAA;EAyBF;;;EApBf,cAAA,EAAgB,MAAA;EAoBuC;;;;;;;;;;;;;;;;;;EAAvD,KAAA,GAAQ,KAAA,EAAO,WAAA,EAAa,OAAA,GAAU,YAAA,KAAiB,OAAA,CAAQ,QAAA;EA+D/D;;;;;;;;;;;;;;;;;;EA3CA,KAAA,GAAQ,IAAA,UAAc,OAAA,GAAU,YAAA,KAAiB,OAAA,CAAQ,WAAA;EA0EpD;;;;;;;;;;;;;;;;EAxDL,OAAA,GACE,EAAA,UACA,QAAA,WACA,OAAA,GAAU,cAAA,KACP,OAAA,CAAQ,aAAA;EAgGb;;;;;;;;;;;;;;EAhFA,IAAA,GAAO,EAAA,aAAe,OAAA,CAAQ,iBAAA;EAiHpB;;;EA5GV,WAAA,QAAmB,OAAA,CAAQ,WAAA;EA4GgC;;;;;;;EAnG3D,IAAA,GAAO,IAAA,UAAc,IAAA,UAAc,OAAA,GAAU,WAAA,KAAgB,OAAA;EAmGnB;;;;;;;EA1F1C,QAAA,GAAW,IAAA,UAAc,IAAA,UAAc,OAAA,GAAU,WAAA;EA+FxB;AAG3B;;;;;;EAzFE,WAAA,GACE,IAAA,UACA,EAAA,UACA,OAAA,GAAU,WAAA,KACP,OAAA;EAmGW;;;;;;;EA1FhB,eAAA,GAAkB,IAAA,UAAc,EAAA,UAAY,OAAA,GAAU,WAAA;EAoGS;;;;;;;EA3F/D,SAAA,GACE,IAAA,UACA,IAAA,UACA,OAAA,GAAU,gBAAA,KACP,OAAA;EAiJU;;;;;;;EAxIf,aAAA,GACE,IAAA,UACA,IAAA,UACA,OAAA,GAAU,gBAAA;EAqDG;;;;;;;EA3Cf,kBAAA,GACE,IAAA,UACA,EAAA,UACA,OAAA,GAAU,WAAA,KACP,OAAA;EAmDL;;;;;;;EA1CA,sBAAA,GACE,IAAA,UACA,EAAA,UACA,OAAA,GAAU,WAAA;EAiDZ;;;;;EAzCA,gBAAA,QAAwB,OAAA;AAAA;;;;;;;KASd,OAAA,yBAAgC,cAAA,GAAiB,cAAA,IAC3D,IAAA,CAAK,iBAAA,CAAkB,eAAA;EAgFV;;;EA5EX,MAAA,EAAQ,eAAA;AAAA;AAAA,UAGK,gBAAA,yBACS,cAAA,GAAiB,cAAA,UACjC,OAAA,CAAQ,eAAA;EAiFX;;;EAAA,SA7EI,EAAA;EAoFY;;;;;AAGvB;EA/EE,OAAA,EAAS,MAAA,CAAO,aAAA,CAAc,eAAA;EA+ES;;;EA1EvC,YAAA,EAAc,MAAA,SAAe,kBAAA,CAAmB,eAAA;EAqFjC;;;EAhFf,SAAA,GAAY,MAAA,EAAQ,MAAA,CAAO,aAAA,CAAc,eAAA,OAAsB,OAAA;EAwFzC;;;;;;;;;;;;;;EAxEtB,cAAA,GACE,IAAA,cACG,OAAA,CAAQ,kBAAA,CAAmB,eAAA;EAyEtB;;;;;;;;;;;;;;;;;;;;AAOZ;;;;;;;EAnDE,kBAAA,GACE,IAAA,cACG,OAAA,CAAQ,kBAAA,CAAmB,eAAA;EAoDV;;;;;;EA5CtB,iBAAA,GACE,WAAA,EAAa,yBAAA,CAA0B,eAAA,qBACpC,OAAA,CAAQ,kBAAA,CAAmB,eAAA;EA0CK;;AAEvC;;;EArCE,aAAA,QAAqB,OAAA,CAAQ,kBAAA,CAAmB,eAAA;AAAA;AAAA,UAGjC,wBAAA,yBACS,cAAA,GAAiB,cAAA;EAmCzB;;;EAAA,SA9BP,EAAA;EA+CQ;;;EA1CjB,MAAA,EAAQ,MAAA,CAAO,aAAA,CAAc,eAAA;EA+CT;;;;;;EAvCpB,OAAA,EAAS,aAAA,CAAc,eAAA;AAAA;AAAA,KAGb,oBAAA,kBACO,aAAA,yBAEf,aAAA,CAAc,QAAA,EAAU,IAAA;EAC1B,OAAA,EAAS,QAAA;AAAA;AAAA,KAGC,gBAAA,kBACO,aAAA,yBAEf,oBAAA,CAAqB,QAAA,EAAU,IAAA;AAAA,UAElB,kBAAA,yBACS,cAAA,GAAiB,cAAA,UACjC,OAAA,CAAQ,yBAAA,CAA0B,eAAA;EADD;;;EAAA,SAKhC,EAAA;EAAA;;;;;;EAQT,OAAA,EAAS,wBAAA,CAAyB,eAAA;EAKH;;;EAA/B,KAAA,EAAO,SAAA,CAAU,aAAA,CAAc,eAAA;EAKU;;;EAAzC,SAAA,GAAY,MAAA,EAAQ,MAAA,CAAO,aAAA,CAAc,eAAA,OAAsB,OAAA;EAKjD;;;EAAd,WAAA,wBACE,GAAA,EAAK,IAAA,EACL,OAAA,GAAU,kBAAA,KACP,gBAAA,CAAiB,aAAA,CAAc,eAAA,GAAkB,IAAA;AAAA;AAAA,UAGvC,aAAA,6BACa,cAAA,GAAiB,cAAA,eAChC,GAAA,QAAW,GAAA,eAChB,OAAA,CAAQ,yBAAA,CAA0B,eAAA;EANpB;;;EAAA,SAUb,EAAA;EAViD;AAG5D;;;;;EAH4D,SAkBjD,GAAA,EAAK,IAAA;EAbU;;;EAAA,SAkBf,WAAA,EAAa,kBAAA;AAAA;AAAA,KAGZ,kBAAA,yBACc,cAAA,GAAiB,cAAA,IACvC,oBAAA,GAAuB,aAAA,CAAc,eAAA;AAAA,KAE7B,wBAAA,kBAA0C,aAAA,IACpD,oBAAA,GAAuB,QAAA;AAAA"}
1
+ {"version":3,"file":"context.d.cts","names":[],"sources":["../../src/types/context.ts"],"mappings":"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"}