@powerlines/core 0.13.12 → 0.13.13

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 (93) hide show
  1. package/dist/constants/api.cjs +16 -0
  2. package/dist/constants/api.d.cts +5 -0
  3. package/dist/constants/api.d.cts.map +1 -0
  4. package/dist/constants/api.d.mts +5 -0
  5. package/dist/constants/api.d.mts.map +1 -0
  6. package/dist/constants/api.mjs +16 -0
  7. package/dist/constants/api.mjs.map +1 -0
  8. package/dist/constants/commands.cjs +2 -11
  9. package/dist/constants/commands.d.cts +1 -1
  10. package/dist/constants/commands.d.cts.map +1 -1
  11. package/dist/constants/commands.d.mts +1 -1
  12. package/dist/constants/commands.d.mts.map +1 -1
  13. package/dist/constants/commands.mjs +3 -11
  14. package/dist/constants/commands.mjs.map +1 -1
  15. package/dist/constants/index.cjs +2 -0
  16. package/dist/constants/index.d.cts +2 -1
  17. package/dist/constants/index.d.mts +2 -1
  18. package/dist/constants/index.mjs +2 -1
  19. package/dist/constants/plugin.d.cts +2 -2
  20. package/dist/constants/plugin.d.mts +2 -2
  21. package/dist/index.d.cts +5 -4
  22. package/dist/index.d.mts +5 -4
  23. package/dist/lib/config.cjs +17 -28
  24. package/dist/lib/config.d.cts +6 -11
  25. package/dist/lib/config.d.cts.map +1 -1
  26. package/dist/lib/config.d.mts +6 -11
  27. package/dist/lib/config.d.mts.map +1 -1
  28. package/dist/lib/config.mjs +17 -28
  29. package/dist/lib/config.mjs.map +1 -1
  30. package/dist/lib/entry.cjs +4 -4
  31. package/dist/lib/entry.d.cts.map +1 -1
  32. package/dist/lib/entry.d.mts.map +1 -1
  33. package/dist/lib/entry.mjs +4 -4
  34. package/dist/lib/entry.mjs.map +1 -1
  35. package/dist/lib/logger.cjs +1 -1
  36. package/dist/lib/logger.d.cts.map +1 -1
  37. package/dist/lib/logger.d.mts.map +1 -1
  38. package/dist/lib/logger.mjs +1 -1
  39. package/dist/lib/logger.mjs.map +1 -1
  40. package/dist/lib/unplugin/plugin.cjs +1 -1
  41. package/dist/lib/unplugin/plugin.mjs +1 -1
  42. package/dist/lib/unplugin/plugin.mjs.map +1 -1
  43. package/dist/lib/utilities/format.cjs +3 -3
  44. package/dist/lib/utilities/format.d.cts.map +1 -1
  45. package/dist/lib/utilities/format.d.mts.map +1 -1
  46. package/dist/lib/utilities/format.mjs +3 -3
  47. package/dist/lib/utilities/format.mjs.map +1 -1
  48. package/dist/plugin-base.cjs +2 -2
  49. package/dist/plugin-base.mjs +2 -2
  50. package/dist/plugin-base.mjs.map +1 -1
  51. package/dist/plugin-utils/context-helpers.cjs +8 -5
  52. package/dist/plugin-utils/context-helpers.d.cts +1 -1
  53. package/dist/plugin-utils/context-helpers.d.cts.map +1 -1
  54. package/dist/plugin-utils/context-helpers.d.mts +1 -1
  55. package/dist/plugin-utils/context-helpers.d.mts.map +1 -1
  56. package/dist/plugin-utils/context-helpers.mjs +8 -5
  57. package/dist/plugin-utils/context-helpers.mjs.map +1 -1
  58. package/dist/plugin-utils/format-package-json.cjs +1 -1
  59. package/dist/plugin-utils/format-package-json.mjs +1 -1
  60. package/dist/plugin-utils/format-package-json.mjs.map +1 -1
  61. package/dist/plugin-utils/get-config-path.cjs +32 -32
  62. package/dist/plugin-utils/get-config-path.mjs +32 -32
  63. package/dist/plugin-utils/get-config-path.mjs.map +1 -1
  64. package/dist/plugin-utils/helpers.d.cts +4 -4
  65. package/dist/plugin-utils/helpers.d.cts.map +1 -1
  66. package/dist/plugin-utils/helpers.d.mts +4 -4
  67. package/dist/plugin-utils/helpers.d.mts.map +1 -1
  68. package/dist/plugin-utils/paths.cjs +1 -1
  69. package/dist/plugin-utils/paths.mjs +1 -1
  70. package/dist/plugin-utils/paths.mjs.map +1 -1
  71. package/dist/types/_internal.d.cts +6 -6
  72. package/dist/types/_internal.d.cts.map +1 -1
  73. package/dist/types/_internal.d.mts +6 -6
  74. package/dist/types/_internal.d.mts.map +1 -1
  75. package/dist/types/api.d.cts +62 -9
  76. package/dist/types/api.d.cts.map +1 -1
  77. package/dist/types/api.d.mts +62 -9
  78. package/dist/types/api.d.mts.map +1 -1
  79. package/dist/types/config.d.cts +89 -56
  80. package/dist/types/config.d.cts.map +1 -1
  81. package/dist/types/config.d.mts +89 -56
  82. package/dist/types/config.d.mts.map +1 -1
  83. package/dist/types/context.d.cts +101 -62
  84. package/dist/types/context.d.cts.map +1 -1
  85. package/dist/types/context.d.mts +101 -62
  86. package/dist/types/context.d.mts.map +1 -1
  87. package/dist/types/index.d.cts +4 -3
  88. package/dist/types/index.d.mts +4 -3
  89. package/dist/types/utils.d.cts +9 -0
  90. package/dist/types/utils.d.cts.map +1 -0
  91. package/dist/types/utils.d.mts +9 -0
  92. package/dist/types/utils.d.mts.map +1 -0
  93. package/package.json +3 -3
@@ -2,12 +2,11 @@ import { ResolveOptions, VirtualFile, VirtualFileSystemInterface, WriteOptions }
2
2
  import { Plugin } from "./plugin.cjs";
3
3
  import { HooksList, HooksListItem } from "./hooks.cjs";
4
4
  import { ParsedTypeScriptConfig } from "./tsconfig.cjs";
5
- import { EnvironmentResolvedConfig, InlineConfig, LogFn, ResolvedConfig, ResolvedEntryTypeDefinition, UserConfig, WorkspaceConfig } from "./config.cjs";
5
+ import { EnvironmentResolvedConfig, InlineConfig, LogFn, LogLevel, ParsedUserConfig, ResolvedConfig, ResolvedEngineOptions, ResolvedEntryTypeDefinition, ResolvedExecutionOptions, UserConfig } from "./config.cjs";
6
6
  import { Jiti } from "jiti";
7
7
  import { EnvPaths } from "@stryke/env/get-env-paths";
8
8
  import { FetchRequestOptions } from "@stryke/http/fetch";
9
9
  import { PackageJson } from "@stryke/types/package-json";
10
- import { Worker } from "jest-worker";
11
10
  import MagicString, { SourceMap } from "magic-string";
12
11
  import { ParseResult, ParserOptions } from "oxc-parser";
13
12
  import { Range } from "semver";
@@ -16,10 +15,6 @@ import { Unimport } from "unimport";
16
15
  import { ExternalIdResult, UnpluginBuildContext, UnpluginContext, UnpluginMessage } from "unplugin";
17
16
 
18
17
  //#region src/types/context.d.ts
19
- type WorkerProcess<TExposedMethods extends ReadonlyArray<string>> = { [K in TExposedMethods[number]]: (data: any) => Promise<any> } & {
20
- close: () => void;
21
- end: () => ReturnType<Worker["end"]>;
22
- };
23
18
  interface MetaInfo {
24
19
  /**
25
20
  * The checksum generated from the resolved options
@@ -134,22 +129,36 @@ interface ResolveResult extends ExternalIdResult {
134
129
  virtual?: boolean;
135
130
  }
136
131
  /**
137
- * The unresolved Powerlines context.
132
+ * The base Powerlines context.
138
133
  *
139
134
  * @remarks
140
- * This context is used before the user configuration has been fully resolved after the `config`.
135
+ * This context provides the foundational structure for interacting with the Powerlines engine.
141
136
  */
142
- interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
137
+ interface BaseContext {
143
138
  /**
144
- * The Storm workspace configuration
139
+ * The options provided to the Powerlines process
145
140
  */
146
- workspaceConfig: WorkspaceConfig;
141
+ options: ResolvedEngineOptions;
147
142
  /**
148
- * An object containing the options provided to Powerlines
143
+ * The timestamp when the context was initialized
149
144
  */
150
- config: Omit<TResolvedConfig["userConfig"], "output"> & Required<Pick<TResolvedConfig["userConfig"], "output">> & {
151
- output: TResolvedConfig["output"];
152
- };
145
+ timestamp: Date;
146
+ /**
147
+ * The Powerlines environment paths
148
+ */
149
+ envPaths: EnvPaths;
150
+ /**
151
+ * The file system path to the Powerlines package installation
152
+ */
153
+ powerlinesPath: string;
154
+ /**
155
+ * The parsed user configuration file provided to the Powerlines process before any resolution or merging
156
+ */
157
+ configFile: ParsedUserConfig;
158
+ /**
159
+ * The log level to use for the Powerlines processes.
160
+ */
161
+ logLevel: LogLevel | null;
153
162
  /**
154
163
  * A logging function for the Powerlines engine
155
164
  */
@@ -193,33 +202,64 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
193
202
  */
194
203
  timer: (name: string) => () => void;
195
204
  /**
196
- * The metadata information
205
+ * Create a new logger instance
206
+ *
207
+ * @param name - The name to use for the logger instance
208
+ * @returns A logger function
197
209
  */
198
- meta: MetaInfo;
210
+ createLog: (name: string | null) => LogFn;
199
211
  /**
200
- * The metadata information currently written to disk
212
+ * Extend the current logger instance with a new name
213
+ *
214
+ * @param name - The name to use for the extended logger instance
215
+ * @returns A logger function
201
216
  */
202
- persistedMeta?: MetaInfo;
217
+ extendLog: (name: string) => LogFn;
203
218
  /**
204
- * The Powerlines artifacts directory
219
+ * A function to create a deep clone of the context
220
+ *
221
+ * @remarks
222
+ * This function is used to create a copy of the context for a specific environment, allowing for environment-specific modifications without affecting the global context.
205
223
  */
206
- artifactsPath: string;
224
+ clone: () => Promise<BaseContext>;
225
+ }
226
+ /**
227
+ * The Powerlines engine context.
228
+ *
229
+ * @remarks
230
+ * This context is used during the execution of the Powerlines engine, providing access to the input user configurations.
231
+ */
232
+ interface EngineContext extends BaseContext {
207
233
  /**
208
- * The path to the Powerlines builtin runtime modules directory
234
+ * A list of API contexts for each configured run instance
209
235
  */
210
- builtinsPath: string;
236
+ executions: ResolvedExecutionOptions[];
237
+ }
238
+ /**
239
+ * The unresolved Powerlines context.
240
+ *
241
+ * @remarks
242
+ * This context is used before the user configuration has been fully resolved after the `config`.
243
+ */
244
+ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends BaseContext {
211
245
  /**
212
- * The path to the Powerlines entry modules directory
246
+ * The options provided to the Powerlines process
213
247
  */
214
- entryPath: string;
248
+ options: ResolvedExecutionOptions;
215
249
  /**
216
- * The path to the Powerlines infrastructure modules directory
250
+ * An object containing the options provided to Powerlines
217
251
  */
218
- infrastructurePath: string;
252
+ config: Omit<TResolvedConfig["userConfig"], "output"> & Required<Pick<TResolvedConfig["userConfig"], "output">> & {
253
+ output: TResolvedConfig["output"];
254
+ };
219
255
  /**
220
- * The path to the Powerlines TypeScript declaration files directory
256
+ * The metadata information
221
257
  */
222
- typesPath: string;
258
+ meta: MetaInfo;
259
+ /**
260
+ * The metadata information currently written to disk
261
+ */
262
+ persistedMeta?: MetaInfo;
223
263
  /**
224
264
  * The path to a directory where the reflection data buffers (used by the build processes) are stored
225
265
  */
@@ -229,17 +269,25 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
229
269
  */
230
270
  cachePath: string;
231
271
  /**
232
- * The Powerlines environment paths
272
+ * The Powerlines artifacts directory
233
273
  */
234
- envPaths: EnvPaths;
274
+ artifactsPath: string;
235
275
  /**
236
- * The file system path to the Powerlines package installation
276
+ * The path to the Powerlines builtin runtime modules directory
237
277
  */
238
- powerlinesPath: string;
278
+ builtinsPath: string;
279
+ /**
280
+ * The path to the Powerlines entry modules directory
281
+ */
282
+ entryPath: string;
283
+ /**
284
+ * The path to the Powerlines infrastructure modules directory
285
+ */
286
+ infrastructurePath: string;
239
287
  /**
240
- * The relative path to the Powerlines workspace root directory
288
+ * The path to the Powerlines TypeScript declaration files directory
241
289
  */
242
- relativeToWorkspaceRoot: string;
290
+ typesPath: string;
243
291
  /**
244
292
  * The project's `package.json` file content
245
293
  */
@@ -425,28 +473,6 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
425
473
  * @param options - Additional options for writing the infrastructure file
426
474
  */
427
475
  emitInfrastructureSync: (code: string, id: string, options?: EmitOptions) => void;
428
- /**
429
- * A function to update the context fields using a new user configuration options
430
- */
431
- withUserConfig: (userConfig: UserConfig, options?: InitContextOptions) => Promise<void>;
432
- /**
433
- * A function to update the context fields using inline configuration options
434
- */
435
- withInlineConfig: (inlineConfig: InlineConfig, options?: InitContextOptions) => Promise<void>;
436
- /**
437
- * Create a new logger instance
438
- *
439
- * @param name - The name to use for the logger instance
440
- * @returns A logger function
441
- */
442
- createLog: (name: string | null) => LogFn;
443
- /**
444
- * Extend the current logger instance with a new name
445
- *
446
- * @param name - The name to use for the extended logger instance
447
- * @returns A logger function
448
- */
449
- extendLog: (name: string) => LogFn;
450
476
  /**
451
477
  * Generates a checksum representing the current context state
452
478
  *
@@ -454,11 +480,23 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
454
480
  */
455
481
  generateChecksum: () => Promise<string>;
456
482
  }
483
+ /**
484
+ * The resolved Powerlines context.
485
+ *
486
+ * @remarks
487
+ * 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.
488
+ */
457
489
  type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = Omit<UnresolvedContext<TResolvedConfig>, "config"> & {
458
490
  /**
459
491
  * The fully resolved Powerlines configuration
460
492
  */
461
493
  config: TResolvedConfig;
494
+ /**
495
+ * Initialize the context with the provided configuration options
496
+ *
497
+ * @param config - The partial configuration to use for initialization.
498
+ */
499
+ setup: (config: UserConfig | InlineConfig) => Promise<void>;
462
500
  /**
463
501
  * A function to create a deep clone of the context
464
502
  *
@@ -467,7 +505,7 @@ type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = Omit<Unr
467
505
  */
468
506
  clone: () => Promise<Context<TResolvedConfig>>;
469
507
  };
470
- interface APIContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends Context<TResolvedConfig> {
508
+ interface ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends Context<TResolvedConfig> {
471
509
  /**
472
510
  * The expected plugins options for the Powerlines project.
473
511
  *
@@ -545,7 +583,7 @@ interface APIContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> ex
545
583
  * @remarks
546
584
  * This function is used to create a copy of the context for a specific environment, allowing for environment-specific modifications without affecting the global context.
547
585
  */
548
- clone: () => Promise<APIContext<TResolvedConfig>>;
586
+ clone: () => Promise<ExecutionContext<TResolvedConfig>>;
549
587
  }
550
588
  interface EnvironmentContextPlugin<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
551
589
  plugin: Plugin<PluginContext<TResolvedConfig>>;
@@ -609,7 +647,6 @@ interface PluginContext<out TResolvedConfig extends ResolvedConfig = ResolvedCon
609
647
  }
610
648
  type BuildPluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = UnpluginBuildContext & PluginContext<TResolvedConfig>;
611
649
  type WithUnpluginBuildContext<TContext extends PluginContext> = UnpluginBuildContext & TContext;
612
- declare type __ΩWorkerProcess = any[];
613
650
  declare type __ΩMetaInfo = any[];
614
651
  declare type __ΩResolver = any[];
615
652
  declare type __ΩTransformResult = any[];
@@ -622,9 +659,11 @@ declare type __ΩParseOptions = any[];
622
659
  declare type __ΩEmitOptions = any[];
623
660
  declare type __ΩEmitEntryOptions = any[];
624
661
  declare type __ΩResolveResult = any[];
662
+ declare type __ΩBaseContext = any[];
663
+ declare type __ΩEngineContext = any[];
625
664
  declare type __ΩUnresolvedContext = any[];
626
665
  declare type __ΩContext = any[];
627
- declare type __ΩAPIContext = any[];
666
+ declare type __ΩExecutionContext = any[];
628
667
  declare type __ΩEnvironmentContextPlugin = any[];
629
668
  declare type __ΩSelectHookResultItem = any[];
630
669
  declare type __ΩSelectHookResult = any[];
@@ -633,5 +672,5 @@ declare type __ΩPluginContext = any[];
633
672
  declare type __ΩBuildPluginContext = any[];
634
673
  declare type __ΩWithUnpluginBuildContext = any[];
635
674
  //#endregion
636
- export { APIContext, BuildPluginContext, Context, EmitEntryOptions, EmitOptions, EnvironmentContext, EnvironmentContextPlugin, FetchOptions, InitContextOptions, MetaInfo, ParseOptions, PluginContext, ResolveResult, Resolver, SelectHookResult, SelectHookResultItem, SelectHooksOptions, SourceFile, TransformResult$1 as TransformResult, UnimportContext, UnresolvedContext, WithUnpluginBuildContext, WorkerProcess, __ΩAPIContext, __ΩBuildPluginContext, __ΩContext, __ΩEmitEntryOptions, __ΩEmitOptions, __ΩEnvironmentContext, __ΩEnvironmentContextPlugin, __ΩFetchOptions, __ΩInitContextOptions, __ΩMetaInfo, __ΩParseOptions, __ΩPluginContext, __ΩResolveResult, __ΩResolver, __ΩSelectHookResult, __ΩSelectHookResultItem, __ΩSelectHooksOptions, __ΩSourceFile, __ΩTransformResult, __ΩUnimportContext, __ΩUnresolvedContext, __ΩWithUnpluginBuildContext, __ΩWorkerProcess };
675
+ export { BaseContext, BuildPluginContext, Context, EmitEntryOptions, EmitOptions, EngineContext, EnvironmentContext, EnvironmentContextPlugin, ExecutionContext, FetchOptions, 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, __ΩFetchOptions, __ΩInitContextOptions, __ΩMetaInfo, __ΩParseOptions, __ΩPluginContext, __ΩResolveResult, __ΩResolver, __ΩSelectHookResult, __ΩSelectHookResultItem, __ΩSelectHooksOptions, __ΩSourceFile, __ΩTransformResult, __ΩUnimportContext, __ΩUnresolvedContext, __ΩWithUnpluginBuildContext };
637
676
  //# sourceMappingURL=context.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.cts","names":[],"sources":["../../src/types/context.ts"],"mappings":"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"}
1
+ {"version":3,"file":"context.d.cts","names":[],"sources":["../../src/types/context.ts"],"mappings":"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"}
@@ -2,24 +2,19 @@ import { ResolveOptions, VirtualFile, VirtualFileSystemInterface, WriteOptions }
2
2
  import { Plugin } from "./plugin.mjs";
3
3
  import { HooksList, HooksListItem } from "./hooks.mjs";
4
4
  import { ParsedTypeScriptConfig } from "./tsconfig.mjs";
5
- import { EnvironmentResolvedConfig, InlineConfig, LogFn, ResolvedConfig, ResolvedEntryTypeDefinition, UserConfig, WorkspaceConfig } from "./config.mjs";
5
+ import { EnvironmentResolvedConfig, InlineConfig, LogFn, LogLevel, ParsedUserConfig, ResolvedConfig, ResolvedEngineOptions, ResolvedEntryTypeDefinition, ResolvedExecutionOptions, UserConfig } from "./config.mjs";
6
6
  import { ExternalIdResult, UnpluginBuildContext, UnpluginContext, UnpluginMessage } from "unplugin";
7
7
  import MagicString, { SourceMap } from "magic-string";
8
8
  import { Jiti } from "jiti";
9
9
  import { EnvPaths } from "@stryke/env/get-env-paths";
10
10
  import { FetchRequestOptions } from "@stryke/http/fetch";
11
11
  import { PackageJson } from "@stryke/types/package-json";
12
- import { Worker } from "jest-worker";
13
12
  import { ParseResult, ParserOptions } from "oxc-parser";
14
13
  import { Range } from "semver";
15
14
  import { RequestInfo, Response } from "undici";
16
15
  import { Unimport } from "unimport";
17
16
 
18
17
  //#region src/types/context.d.ts
19
- type WorkerProcess<TExposedMethods extends ReadonlyArray<string>> = { [K in TExposedMethods[number]]: (data: any) => Promise<any> } & {
20
- close: () => void;
21
- end: () => ReturnType<Worker["end"]>;
22
- };
23
18
  interface MetaInfo {
24
19
  /**
25
20
  * The checksum generated from the resolved options
@@ -134,22 +129,36 @@ interface ResolveResult extends ExternalIdResult {
134
129
  virtual?: boolean;
135
130
  }
136
131
  /**
137
- * The unresolved Powerlines context.
132
+ * The base Powerlines context.
138
133
  *
139
134
  * @remarks
140
- * This context is used before the user configuration has been fully resolved after the `config`.
135
+ * This context provides the foundational structure for interacting with the Powerlines engine.
141
136
  */
142
- interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
137
+ interface BaseContext {
143
138
  /**
144
- * The Storm workspace configuration
139
+ * The options provided to the Powerlines process
145
140
  */
146
- workspaceConfig: WorkspaceConfig;
141
+ options: ResolvedEngineOptions;
147
142
  /**
148
- * An object containing the options provided to Powerlines
143
+ * The timestamp when the context was initialized
149
144
  */
150
- config: Omit<TResolvedConfig["userConfig"], "output"> & Required<Pick<TResolvedConfig["userConfig"], "output">> & {
151
- output: TResolvedConfig["output"];
152
- };
145
+ timestamp: Date;
146
+ /**
147
+ * The Powerlines environment paths
148
+ */
149
+ envPaths: EnvPaths;
150
+ /**
151
+ * The file system path to the Powerlines package installation
152
+ */
153
+ powerlinesPath: string;
154
+ /**
155
+ * The parsed user configuration file provided to the Powerlines process before any resolution or merging
156
+ */
157
+ configFile: ParsedUserConfig;
158
+ /**
159
+ * The log level to use for the Powerlines processes.
160
+ */
161
+ logLevel: LogLevel | null;
153
162
  /**
154
163
  * A logging function for the Powerlines engine
155
164
  */
@@ -193,33 +202,64 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
193
202
  */
194
203
  timer: (name: string) => () => void;
195
204
  /**
196
- * The metadata information
205
+ * Create a new logger instance
206
+ *
207
+ * @param name - The name to use for the logger instance
208
+ * @returns A logger function
197
209
  */
198
- meta: MetaInfo;
210
+ createLog: (name: string | null) => LogFn;
199
211
  /**
200
- * The metadata information currently written to disk
212
+ * Extend the current logger instance with a new name
213
+ *
214
+ * @param name - The name to use for the extended logger instance
215
+ * @returns A logger function
201
216
  */
202
- persistedMeta?: MetaInfo;
217
+ extendLog: (name: string) => LogFn;
203
218
  /**
204
- * The Powerlines artifacts directory
219
+ * A function to create a deep clone of the context
220
+ *
221
+ * @remarks
222
+ * This function is used to create a copy of the context for a specific environment, allowing for environment-specific modifications without affecting the global context.
205
223
  */
206
- artifactsPath: string;
224
+ clone: () => Promise<BaseContext>;
225
+ }
226
+ /**
227
+ * The Powerlines engine context.
228
+ *
229
+ * @remarks
230
+ * This context is used during the execution of the Powerlines engine, providing access to the input user configurations.
231
+ */
232
+ interface EngineContext extends BaseContext {
207
233
  /**
208
- * The path to the Powerlines builtin runtime modules directory
234
+ * A list of API contexts for each configured run instance
209
235
  */
210
- builtinsPath: string;
236
+ executions: ResolvedExecutionOptions[];
237
+ }
238
+ /**
239
+ * The unresolved Powerlines context.
240
+ *
241
+ * @remarks
242
+ * This context is used before the user configuration has been fully resolved after the `config`.
243
+ */
244
+ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends BaseContext {
211
245
  /**
212
- * The path to the Powerlines entry modules directory
246
+ * The options provided to the Powerlines process
213
247
  */
214
- entryPath: string;
248
+ options: ResolvedExecutionOptions;
215
249
  /**
216
- * The path to the Powerlines infrastructure modules directory
250
+ * An object containing the options provided to Powerlines
217
251
  */
218
- infrastructurePath: string;
252
+ config: Omit<TResolvedConfig["userConfig"], "output"> & Required<Pick<TResolvedConfig["userConfig"], "output">> & {
253
+ output: TResolvedConfig["output"];
254
+ };
219
255
  /**
220
- * The path to the Powerlines TypeScript declaration files directory
256
+ * The metadata information
221
257
  */
222
- typesPath: string;
258
+ meta: MetaInfo;
259
+ /**
260
+ * The metadata information currently written to disk
261
+ */
262
+ persistedMeta?: MetaInfo;
223
263
  /**
224
264
  * The path to a directory where the reflection data buffers (used by the build processes) are stored
225
265
  */
@@ -229,17 +269,25 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
229
269
  */
230
270
  cachePath: string;
231
271
  /**
232
- * The Powerlines environment paths
272
+ * The Powerlines artifacts directory
233
273
  */
234
- envPaths: EnvPaths;
274
+ artifactsPath: string;
235
275
  /**
236
- * The file system path to the Powerlines package installation
276
+ * The path to the Powerlines builtin runtime modules directory
237
277
  */
238
- powerlinesPath: string;
278
+ builtinsPath: string;
279
+ /**
280
+ * The path to the Powerlines entry modules directory
281
+ */
282
+ entryPath: string;
283
+ /**
284
+ * The path to the Powerlines infrastructure modules directory
285
+ */
286
+ infrastructurePath: string;
239
287
  /**
240
- * The relative path to the Powerlines workspace root directory
288
+ * The path to the Powerlines TypeScript declaration files directory
241
289
  */
242
- relativeToWorkspaceRoot: string;
290
+ typesPath: string;
243
291
  /**
244
292
  * The project's `package.json` file content
245
293
  */
@@ -425,28 +473,6 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
425
473
  * @param options - Additional options for writing the infrastructure file
426
474
  */
427
475
  emitInfrastructureSync: (code: string, id: string, options?: EmitOptions) => void;
428
- /**
429
- * A function to update the context fields using a new user configuration options
430
- */
431
- withUserConfig: (userConfig: UserConfig, options?: InitContextOptions) => Promise<void>;
432
- /**
433
- * A function to update the context fields using inline configuration options
434
- */
435
- withInlineConfig: (inlineConfig: InlineConfig, options?: InitContextOptions) => Promise<void>;
436
- /**
437
- * Create a new logger instance
438
- *
439
- * @param name - The name to use for the logger instance
440
- * @returns A logger function
441
- */
442
- createLog: (name: string | null) => LogFn;
443
- /**
444
- * Extend the current logger instance with a new name
445
- *
446
- * @param name - The name to use for the extended logger instance
447
- * @returns A logger function
448
- */
449
- extendLog: (name: string) => LogFn;
450
476
  /**
451
477
  * Generates a checksum representing the current context state
452
478
  *
@@ -454,11 +480,23 @@ interface UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedCon
454
480
  */
455
481
  generateChecksum: () => Promise<string>;
456
482
  }
483
+ /**
484
+ * The resolved Powerlines context.
485
+ *
486
+ * @remarks
487
+ * 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.
488
+ */
457
489
  type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = Omit<UnresolvedContext<TResolvedConfig>, "config"> & {
458
490
  /**
459
491
  * The fully resolved Powerlines configuration
460
492
  */
461
493
  config: TResolvedConfig;
494
+ /**
495
+ * Initialize the context with the provided configuration options
496
+ *
497
+ * @param config - The partial configuration to use for initialization.
498
+ */
499
+ setup: (config: UserConfig | InlineConfig) => Promise<void>;
462
500
  /**
463
501
  * A function to create a deep clone of the context
464
502
  *
@@ -467,7 +505,7 @@ type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = Omit<Unr
467
505
  */
468
506
  clone: () => Promise<Context<TResolvedConfig>>;
469
507
  };
470
- interface APIContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends Context<TResolvedConfig> {
508
+ interface ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> extends Context<TResolvedConfig> {
471
509
  /**
472
510
  * The expected plugins options for the Powerlines project.
473
511
  *
@@ -545,7 +583,7 @@ interface APIContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> ex
545
583
  * @remarks
546
584
  * This function is used to create a copy of the context for a specific environment, allowing for environment-specific modifications without affecting the global context.
547
585
  */
548
- clone: () => Promise<APIContext<TResolvedConfig>>;
586
+ clone: () => Promise<ExecutionContext<TResolvedConfig>>;
549
587
  }
550
588
  interface EnvironmentContextPlugin<TResolvedConfig extends ResolvedConfig = ResolvedConfig> {
551
589
  plugin: Plugin<PluginContext<TResolvedConfig>>;
@@ -609,7 +647,6 @@ interface PluginContext<out TResolvedConfig extends ResolvedConfig = ResolvedCon
609
647
  }
610
648
  type BuildPluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = UnpluginBuildContext & PluginContext<TResolvedConfig>;
611
649
  type WithUnpluginBuildContext<TContext extends PluginContext> = UnpluginBuildContext & TContext;
612
- declare type __ΩWorkerProcess = any[];
613
650
  declare type __ΩMetaInfo = any[];
614
651
  declare type __ΩResolver = any[];
615
652
  declare type __ΩTransformResult = any[];
@@ -622,9 +659,11 @@ declare type __ΩParseOptions = any[];
622
659
  declare type __ΩEmitOptions = any[];
623
660
  declare type __ΩEmitEntryOptions = any[];
624
661
  declare type __ΩResolveResult = any[];
662
+ declare type __ΩBaseContext = any[];
663
+ declare type __ΩEngineContext = any[];
625
664
  declare type __ΩUnresolvedContext = any[];
626
665
  declare type __ΩContext = any[];
627
- declare type __ΩAPIContext = any[];
666
+ declare type __ΩExecutionContext = any[];
628
667
  declare type __ΩEnvironmentContextPlugin = any[];
629
668
  declare type __ΩSelectHookResultItem = any[];
630
669
  declare type __ΩSelectHookResult = any[];
@@ -633,5 +672,5 @@ declare type __ΩPluginContext = any[];
633
672
  declare type __ΩBuildPluginContext = any[];
634
673
  declare type __ΩWithUnpluginBuildContext = any[];
635
674
  //#endregion
636
- export { APIContext, BuildPluginContext, Context, EmitEntryOptions, EmitOptions, EnvironmentContext, EnvironmentContextPlugin, FetchOptions, InitContextOptions, MetaInfo, ParseOptions, PluginContext, ResolveResult, Resolver, SelectHookResult, SelectHookResultItem, SelectHooksOptions, SourceFile, TransformResult$1 as TransformResult, UnimportContext, UnresolvedContext, WithUnpluginBuildContext, WorkerProcess, __ΩAPIContext, __ΩBuildPluginContext, __ΩContext, __ΩEmitEntryOptions, __ΩEmitOptions, __ΩEnvironmentContext, __ΩEnvironmentContextPlugin, __ΩFetchOptions, __ΩInitContextOptions, __ΩMetaInfo, __ΩParseOptions, __ΩPluginContext, __ΩResolveResult, __ΩResolver, __ΩSelectHookResult, __ΩSelectHookResultItem, __ΩSelectHooksOptions, __ΩSourceFile, __ΩTransformResult, __ΩUnimportContext, __ΩUnresolvedContext, __ΩWithUnpluginBuildContext, __ΩWorkerProcess };
675
+ export { BaseContext, BuildPluginContext, Context, EmitEntryOptions, EmitOptions, EngineContext, EnvironmentContext, EnvironmentContextPlugin, ExecutionContext, FetchOptions, 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, __ΩFetchOptions, __ΩInitContextOptions, __ΩMetaInfo, __ΩParseOptions, __ΩPluginContext, __ΩResolveResult, __ΩResolver, __ΩSelectHookResult, __ΩSelectHookResultItem, __ΩSelectHooksOptions, __ΩSourceFile, __ΩTransformResult, __ΩUnimportContext, __ΩUnresolvedContext, __ΩWithUnpluginBuildContext };
637
676
  //# sourceMappingURL=context.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.mts","names":[],"sources":["../../src/types/context.ts"],"mappings":"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"}
1
+ {"version":3,"file":"context.d.mts","names":[],"sources":["../../src/types/context.ts"],"mappings":"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"}