@powerlines/engine 0.43.30 → 0.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/_internal/worker.cjs +195 -95
  2. package/dist/_internal/worker.mjs +198 -98
  3. package/dist/_internal/worker.mjs.map +1 -1
  4. package/dist/api.cjs +11 -8
  5. package/dist/api.d.cts.map +1 -1
  6. package/dist/api.d.mts.map +1 -1
  7. package/dist/api.mjs +11 -8
  8. package/dist/api.mjs.map +1 -1
  9. package/dist/{base-context-B9AROf66.cjs → base-context-5_AZZYFu.cjs} +27 -32
  10. package/dist/{base-context-D8a2XGIK.mjs → base-context-D_ZidDDm.mjs} +29 -34
  11. package/dist/base-context-D_ZidDDm.mjs.map +1 -0
  12. package/dist/context/index.cjs +3 -3
  13. package/dist/context/index.d.cts +67 -32
  14. package/dist/context/index.d.cts.map +1 -1
  15. package/dist/context/index.d.mts +67 -32
  16. package/dist/context/index.d.mts.map +1 -1
  17. package/dist/context/index.mjs +3 -3
  18. package/dist/{engine-context-DsA9XGVb.mjs → engine-context-PQ3BgcgR.mjs} +36 -11
  19. package/dist/engine-context-PQ3BgcgR.mjs.map +1 -0
  20. package/dist/{engine-context-qCVw66U_.cjs → engine-context-w4fts28j.cjs} +36 -10
  21. package/dist/{execution-context-CprxWvYn.cjs → execution-context-0GmpbWbs.cjs} +176 -71
  22. package/dist/{execution-context-CBJxP2B2.mjs → execution-context-zedP0h4Z.mjs} +179 -74
  23. package/dist/execution-context-zedP0h4Z.mjs.map +1 -0
  24. package/dist/index.cjs +140 -58
  25. package/dist/index.d.cts.map +1 -1
  26. package/dist/index.d.mts.map +1 -1
  27. package/dist/index.mjs +140 -58
  28. package/dist/index.mjs.map +1 -1
  29. package/dist/storage/index.cjs +1 -1
  30. package/dist/storage/index.d.mts +1 -1
  31. package/dist/storage/index.mjs +1 -1
  32. package/dist/typescript/index.d.mts +1 -1
  33. package/dist/{virtual-BNdKVkRw.cjs → virtual-1hYa9zCy.cjs} +1 -1
  34. package/dist/{virtual-gIlTc3Lj.mjs → virtual-CUgOdyIa.mjs} +2 -2
  35. package/dist/{virtual-gIlTc3Lj.mjs.map → virtual-CUgOdyIa.mjs.map} +1 -1
  36. package/package.json +3 -3
  37. package/dist/base-context-D8a2XGIK.mjs.map +0 -1
  38. package/dist/engine-context-DsA9XGVb.mjs.map +0 -1
  39. package/dist/execution-context-CBJxP2B2.mjs.map +0 -1
@@ -1,9 +1,8 @@
1
+ import { BaseContext, Context, EmitEntryOptions, EmitOptions, EngineContext, EngineOptions, EnvironmentContext, EnvironmentContextPlugin, EnvironmentResolvedConfig, ExecutionContext, ExecutionOptions, ExecutionState, FetchOptions, HooksList, InlineConfig, LogFn, LogFnConfig, LogLevelResolvedConfig, MetaInfo, ParseOptions, ParsedTypeScriptConfig, ParsedUserConfig, Plugin, PluginContext, PowerlinesMessage, ResolveOptions, ResolveResult, ResolvedConfig, ResolvedEngineOptions, ResolvedEntryTypeDefinition, ResolvedExecutionOptions, Resolver, SelectHookResult, SelectHooksOptions, TransformResult, VirtualFile, VirtualFileSystemInterface } from "@powerlines/core";
1
2
  import { EnvPaths } from "@stryke/env/get-env-paths";
2
3
  import { FlatCache } from "flat-cache";
3
4
  import { ParseResult } from "oxc-parser";
4
5
  import { RequestInfo, Response } from "undici";
5
- import { BaseContext, Context, EmitEntryOptions, EmitOptions, EngineContext, EngineOptions, EnvironmentContext, EnvironmentContextPlugin, EnvironmentResolvedConfig, ExecutionContext, ExecutionOptions, FetchOptions, HooksList, InlineConfig, LogFn, LogLevel, Logger, MetaInfo, ParseOptions, ParsedTypeScriptConfig, ParsedUserConfig, Plugin, PluginContext, ResolveOptions, ResolveResult, ResolvedConfig, ResolvedEngineOptions, ResolvedEntryTypeDefinition, ResolvedExecutionOptions, Resolver, SelectHookResult, SelectHooksOptions, TransformResult, VirtualFile, VirtualFileSystemInterface } from "@powerlines/core";
6
- import { UnpluginMessage } from "unplugin";
7
6
  import { Unstable_ContextInternal, Unstable_EnvironmentContext, Unstable_PluginContext } from "@powerlines/core/types/_internal";
8
7
  import { PackageJson } from "@stryke/types/package-json";
9
8
  import { Range } from "semver";
@@ -34,9 +33,8 @@ declare class PowerlinesBaseContext implements BaseContext {
34
33
  /**
35
34
  * A timestamp representing when the context was initialized
36
35
  */
37
- get timestamp(): Date;
38
- get logLevel(): LogLevel | null;
39
- set logLevel(level: LogLevel | null);
36
+ get timestamp(): number;
37
+ get logLevel(): LogLevelResolvedConfig;
40
38
  /**
41
39
  * The logger function
42
40
  */
@@ -59,37 +57,37 @@ declare class PowerlinesBaseContext implements BaseContext {
59
57
  *
60
58
  * @param message - The message to log.
61
59
  */
62
- fatal(message: string | UnpluginMessage): void;
60
+ fatal(message: string | PowerlinesMessage): void;
63
61
  /**
64
62
  * A logging function for error messages
65
63
  *
66
64
  * @param message - The message to log.
67
65
  */
68
- error(message: string | UnpluginMessage): void;
66
+ error(message: string | PowerlinesMessage): void;
69
67
  /**
70
68
  * A logging function for warning messages
71
69
  *
72
70
  * @param message - The message to log.
73
71
  */
74
- warn(message: string | UnpluginMessage): void;
72
+ warn(message: string | PowerlinesMessage): void;
75
73
  /**
76
74
  * A logging function for informational messages
77
75
  *
78
76
  * @param message - The message to log.
79
77
  */
80
- info(message: string | UnpluginMessage): void;
78
+ info(message: string | PowerlinesMessage): void;
81
79
  /**
82
80
  * A logging function for debug messages
83
81
  *
84
82
  * @param message - The message to log.
85
83
  */
86
- debug(message: string | UnpluginMessage): void;
84
+ debug(message: string | PowerlinesMessage): void;
87
85
  /**
88
86
  * A logging function for trace messages
89
87
  *
90
88
  * @param message - The message to log.
91
89
  */
92
- trace(message: string | UnpluginMessage): void;
90
+ trace(message: string | PowerlinesMessage): void;
93
91
  /**
94
92
  * A function to create a timer for measuring the duration of asynchronous operations
95
93
  *
@@ -107,17 +105,17 @@ declare class PowerlinesBaseContext implements BaseContext {
107
105
  /**
108
106
  * Create a new logger instance
109
107
  *
110
- * @param name - The name to use for the logger instance
108
+ * @param config - The configuration options to use for the logger instance, which can be used to customize the appearance and behavior of the log messages generated by the logger. This is typically the name of the plugin or module that is creating the logger instance.
111
109
  * @returns A logger function
112
110
  */
113
- createLog(name?: string | null): LogFn;
111
+ createLog(config?: LogFnConfig): LogFn;
114
112
  /**
115
- * Extend the current logger instance with a new name
113
+ * Extend the current logger instance with a new source
116
114
  *
117
- * @param name - The name to use for the extended logger instance
118
- * @returns A logger function
115
+ * @param config - The overlay metadata to use for the badge in the log output, which can be used to customize the appearance and behavior of the log messages generated by the extended logger. This typically includes the name of the plugin or module that is creating the logger instance, and can also include other metadata such as the command or environment.
116
+ * @returns A new logger function that includes the badge in its output.
119
117
  */
120
- extendLog(name: string): LogFn;
118
+ extendLog(config: LogFnConfig): LogFn;
121
119
  /**
122
120
  * A logger function specific to this context
123
121
  */
@@ -282,6 +280,20 @@ declare class PowerlinesContext<TResolvedConfig extends ResolvedConfig = Resolve
282
280
  * @param options - The options to use for creating the context, including the resolved configuration and workspace settings.
283
281
  */
284
282
  protected constructor(options: ResolvedExecutionOptions);
283
+ /**
284
+ * Create a new log function with the specified configuration, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the logger instance according to your needs.
285
+ *
286
+ * @param config - Optional configuration for the log function instance, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the logger instance according to your needs.
287
+ * @returns A log function that can be used to log messages with the specified configuration.
288
+ */
289
+ createLog(config?: LogFnConfig): LogFn;
290
+ /**
291
+ * Extend the current log function instance with a new name
292
+ *
293
+ * @param config - The configuration for the extended log function instance, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the log function instance according to your needs.
294
+ * @returns A log function
295
+ */
296
+ extendLog(config: LogFnConfig): LogFn;
285
297
  /**
286
298
  * Creates a clone of the current context with the same configuration and workspace settings. This can be useful for running multiple builds in parallel or for creating isolated contexts for different parts of the build process.
287
299
  *
@@ -291,13 +303,6 @@ declare class PowerlinesContext<TResolvedConfig extends ResolvedConfig = Resolve
291
303
  * @returns A promise that resolves to the cloned context.
292
304
  */
293
305
  clone(): Promise<Context<TResolvedConfig>>;
294
- /**
295
- * Create a new logger instance
296
- *
297
- * @param name - The name to use for the logger instance
298
- * @returns A logger function
299
- */
300
- createLog(name?: string | null): LogFn;
301
306
  /**
302
307
  * A function to perform HTTP fetch requests
303
308
  *
@@ -488,9 +493,9 @@ declare class PowerlinesEngineContext extends PowerlinesBaseContext implements E
488
493
  /**
489
494
  * A list of all command executions that will be run during the lifecycle of the engine
490
495
  *
491
- * @returns An array of ResolvedExecutionOptions representing each execution context for the engine.
496
+ * @returns An array of {@link ExecutionState} representing each execution context for the engine.
492
497
  */
493
- get executions(): ResolvedExecutionOptions[];
498
+ get executions(): ExecutionState[];
494
499
  }
495
500
  //#endregion
496
501
  //#region src/context/environment-context.d.ts
@@ -513,16 +518,27 @@ declare class PowerlinesEnvironmentContext<TResolvedConfig extends ResolvedConfi
513
518
  */
514
519
  plugins: EnvironmentContextPlugin<TResolvedConfig>[];
515
520
  /**
516
- * Create a new logger instance
517
- *
518
- * @param name - The name to use for the logger instance
519
- * @returns A logger function
521
+ * 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.
520
522
  */
521
- createLog(name?: string | null): LogFn;
523
+ get id(): string;
522
524
  /**
523
525
  * The hooks registered by plugins in this environment
524
526
  */
525
527
  get hooks(): Record<string, HooksList<PluginContext<TResolvedConfig>>>;
528
+ /**
529
+ * Create a new log function with the specified configuration, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the logger instance according to your needs.
530
+ *
531
+ * @param config - Optional configuration for the log function instance, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the logger instance according to your needs.
532
+ * @returns A log function that can be used to log messages with the specified configuration.
533
+ */
534
+ createLog(config?: LogFnConfig): LogFn;
535
+ /**
536
+ * Extend the current log function instance with a new name
537
+ *
538
+ * @param config - The configuration for the extended log function instance, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the log function instance according to your needs.
539
+ * @returns A log function
540
+ */
541
+ extendLog(config: LogFnConfig): LogFn;
526
542
  /**
527
543
  * Creates a clone of the current context with the same configuration and workspace settings. This can be useful for running multiple builds in parallel or for creating isolated contexts for different parts of the build process.
528
544
  *
@@ -588,6 +604,10 @@ declare class PowerlinesExecutionContext<TResolvedConfig extends ResolvedConfig
588
604
  * @internal
589
605
  */
590
606
  set $$internal(value: Unstable_ContextInternal<TResolvedConfig>);
607
+ /**
608
+ * 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.
609
+ */
610
+ get id(): string;
591
611
  /**
592
612
  * A record of all environments by name
593
613
  */
@@ -599,6 +619,20 @@ declare class PowerlinesExecutionContext<TResolvedConfig extends ResolvedConfig
599
619
  * @param options - The options to use for creating the context, including the resolved configuration and workspace settings.
600
620
  */
601
621
  protected constructor(options: ResolvedExecutionOptions);
622
+ /**
623
+ * Create a new log function with the specified configuration, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the logger instance according to your needs.
624
+ *
625
+ * @param config - Optional configuration for the log function instance, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the logger instance according to your needs.
626
+ * @returns A log function that can be used to log messages with the specified configuration.
627
+ */
628
+ createLog(config?: LogFnConfig): LogFn;
629
+ /**
630
+ * Extend the current log function instance with a new name
631
+ *
632
+ * @param config - The configuration for the extended log function instance, which can include properties such as log level, colors, and other metadata to be included with each log message. This allows you to customize the behavior and appearance of the log function instance according to your needs.
633
+ * @returns A log function
634
+ */
635
+ extendLog(config: LogFnConfig): LogFn;
602
636
  /**
603
637
  * Creates a clone of the current context with the same configuration and workspace settings. This can be useful for running multiple builds in parallel or for creating isolated contexts for different parts of the build process.
604
638
  *
@@ -654,11 +688,12 @@ declare class PowerlinesExecutionContext<TResolvedConfig extends ResolvedConfig
654
688
  /**
655
689
  * Create a Proxy-based PluginContext
656
690
  *
691
+ * @param pluginId - The unique identifier of the plugin
657
692
  * @param plugin - The plugin instance
658
693
  * @param environment - The environment context
659
694
  * @returns The proxied plugin context
660
695
  */
661
- declare function createPluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(plugin: Plugin<PluginContext<TResolvedConfig>>, environment: Unstable_EnvironmentContext<TResolvedConfig>): Unstable_PluginContext<TResolvedConfig>;
696
+ declare function createPluginContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(pluginId: string, plugin: Plugin<PluginContext<TResolvedConfig>>, environment: Unstable_EnvironmentContext<TResolvedConfig>): Unstable_PluginContext<TResolvedConfig>;
662
697
  //#endregion
663
698
  export { PowerlinesBaseContext, PowerlinesContext, PowerlinesEngineContext, PowerlinesEnvironmentContext, PowerlinesExecutionContext, createPluginContext };
664
699
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/context/base-context.ts","../../src/context/context.ts","../../src/context/engine-context.ts","../../src/context/environment-context.ts","../../src/context/execution-context.ts","../../src/context/plugin-context.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/context/base-context.ts","../../src/context/context.ts","../../src/context/engine-context.ts","../../src/context/environment-context.ts","../../src/context/execution-context.ts","../../src/context/plugin-context.ts"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { t as PowerlinesBaseContext } from "../base-context-D8a2XGIK.mjs";
2
- import { t as PowerlinesEngineContext } from "../engine-context-DsA9XGVb.mjs";
3
- import { n as PowerlinesEnvironmentContext, o as PowerlinesContext, r as createPluginContext, t as PowerlinesExecutionContext } from "../execution-context-CBJxP2B2.mjs";
1
+ import { t as PowerlinesBaseContext } from "../base-context-D_ZidDDm.mjs";
2
+ import { t as PowerlinesEngineContext } from "../engine-context-PQ3BgcgR.mjs";
3
+ import { n as PowerlinesEnvironmentContext, o as PowerlinesContext, r as createPluginContext, t as PowerlinesExecutionContext } from "../execution-context-zedP0h4Z.mjs";
4
4
 
5
5
  export { PowerlinesBaseContext, PowerlinesContext, PowerlinesEngineContext, PowerlinesEnvironmentContext, PowerlinesExecutionContext, createPluginContext };
@@ -1,4 +1,5 @@
1
- import { t as PowerlinesBaseContext } from "./base-context-D8a2XGIK.mjs";
1
+ import { t as PowerlinesBaseContext } from "./base-context-D_ZidDDm.mjs";
2
+ import { uuid } from "@stryke/unique-id/uuid";
2
3
 
3
4
  //#region src/context/engine-context.ts
4
5
  var PowerlinesEngineContext = class PowerlinesEngineContext extends PowerlinesBaseContext {
@@ -16,20 +17,44 @@ var PowerlinesEngineContext = class PowerlinesEngineContext extends PowerlinesBa
16
17
  context.fatal("No configuration file found. Please ensure you have a valid configuration file in your project.");
17
18
  throw new Error("No configuration file found");
18
19
  }
19
- if (Array.isArray(context.configFile.config)) context.#executions = await Promise.all(context.configFile.config.map(async (_, configIndex) => ({
20
- ...context.options,
21
- configIndex
22
- })));
23
- else context.#executions = [{
24
- ...context.options,
25
- configIndex: 0
26
- }];
20
+ if (Array.isArray(context.configFile.config)) context.#executions = await Promise.all(context.configFile.config.map(async (_, executionIndex) => {
21
+ const executionId = uuid();
22
+ return {
23
+ executionId,
24
+ options: {
25
+ ...context.options,
26
+ executionId,
27
+ executionIndex
28
+ },
29
+ active: {
30
+ command: null,
31
+ hook: null,
32
+ plugin: null
33
+ }
34
+ };
35
+ }));
36
+ else {
37
+ const executionId = uuid();
38
+ context.#executions = [{
39
+ executionId,
40
+ options: {
41
+ ...context.options,
42
+ executionId,
43
+ executionIndex: 0
44
+ },
45
+ active: {
46
+ command: null,
47
+ hook: null,
48
+ plugin: null
49
+ }
50
+ }];
51
+ }
27
52
  return context;
28
53
  }
29
54
  /**
30
55
  * A list of all command executions that will be run during the lifecycle of the engine
31
56
  *
32
- * @returns An array of ResolvedExecutionOptions representing each execution context for the engine.
57
+ * @returns An array of {@link ExecutionState} representing each execution context for the engine.
33
58
  */
34
59
  get executions() {
35
60
  return this.#executions;
@@ -38,4 +63,4 @@ var PowerlinesEngineContext = class PowerlinesEngineContext extends PowerlinesBa
38
63
 
39
64
  //#endregion
40
65
  export { PowerlinesEngineContext as t };
41
- //# sourceMappingURL=engine-context-DsA9XGVb.mjs.map
66
+ //# sourceMappingURL=engine-context-PQ3BgcgR.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine-context-PQ3BgcgR.mjs","names":["#executions"],"sources":["../src/context/engine-context.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type {\n EngineContext,\n EngineOptions,\n ExecutionState\n} from \"@powerlines/core\";\nimport { uuid } from \"@stryke/unique-id/uuid\";\nimport { PowerlinesBaseContext } from \"./base-context\";\n\nexport class PowerlinesEngineContext\n extends PowerlinesBaseContext\n implements EngineContext\n{\n #executions: ExecutionState[] = [];\n\n /**\n * Creates a new instance of the PowerlinesEngineContext class.\n *\n * @param options - The options to initialize the context with.\n * @returns A promise that resolves to an instance of the PowerlinesEngineContext class.\n */\n public static async fromOptions(\n options: EngineOptions\n ): Promise<PowerlinesEngineContext> {\n const context = new PowerlinesEngineContext();\n await context.init(options);\n\n if (!context.configFile?.config) {\n context.fatal(\n \"No configuration file found. Please ensure you have a valid configuration file in your project.\"\n );\n throw new Error(\"No configuration file found\");\n }\n\n if (Array.isArray(context.configFile.config)) {\n context.#executions = await Promise.all(\n context.configFile.config.map(async (_, executionIndex) => {\n const executionId = uuid();\n\n return {\n executionId,\n options: { ...context.options, executionId, executionIndex },\n active: {\n command: null,\n hook: null,\n plugin: null\n }\n };\n })\n );\n } else {\n const executionId = uuid();\n context.#executions = [\n {\n executionId,\n options: { ...context.options, executionId, executionIndex: 0 },\n active: {\n command: null,\n hook: null,\n plugin: null\n }\n }\n ];\n }\n\n return context;\n }\n\n /**\n * A list of all command executions that will be run during the lifecycle of the engine\n *\n * @returns An array of {@link ExecutionState} representing each execution context for the engine.\n */\n public get executions(): ExecutionState[] {\n return this.#executions;\n }\n}\n"],"mappings":";;;;AA0BA,IAAa,0BAAb,MAAa,gCACH,sBAEV;CACE,cAAgC,EAAE;;;;;;;CAQlC,aAAoB,YAClB,SACkC;EAClC,MAAM,UAAU,IAAI,yBAAyB;AAC7C,QAAM,QAAQ,KAAK,QAAQ;AAE3B,MAAI,CAAC,QAAQ,YAAY,QAAQ;AAC/B,WAAQ,MACN,kGACD;AACD,SAAM,IAAI,MAAM,8BAA8B;;AAGhD,MAAI,MAAM,QAAQ,QAAQ,WAAW,OAAO,CAC1C,UAAQA,aAAc,MAAM,QAAQ,IAClC,QAAQ,WAAW,OAAO,IAAI,OAAO,GAAG,mBAAmB;GACzD,MAAM,cAAc,MAAM;AAE1B,UAAO;IACL;IACA,SAAS;KAAE,GAAG,QAAQ;KAAS;KAAa;KAAgB;IAC5D,QAAQ;KACN,SAAS;KACT,MAAM;KACN,QAAQ;KACT;IACF;IACD,CACH;OACI;GACL,MAAM,cAAc,MAAM;AAC1B,YAAQA,aAAc,CACpB;IACE;IACA,SAAS;KAAE,GAAG,QAAQ;KAAS;KAAa,gBAAgB;KAAG;IAC/D,QAAQ;KACN,SAAS;KACT,MAAM;KACN,QAAQ;KACT;IACF,CACF;;AAGH,SAAO;;;;;;;CAQT,IAAW,aAA+B;AACxC,SAAO,MAAKA"}
@@ -1,4 +1,6 @@
1
- const require_base_context = require('./base-context-B9AROf66.cjs');
1
+ const require_chunk = require('./chunk-C0xms8kb.cjs');
2
+ const require_base_context = require('./base-context-5_AZZYFu.cjs');
3
+ let _stryke_unique_id_uuid = require("@stryke/unique-id/uuid");
2
4
 
3
5
  //#region src/context/engine-context.ts
4
6
  var PowerlinesEngineContext = class PowerlinesEngineContext extends require_base_context.PowerlinesBaseContext {
@@ -16,20 +18,44 @@ var PowerlinesEngineContext = class PowerlinesEngineContext extends require_base
16
18
  context.fatal("No configuration file found. Please ensure you have a valid configuration file in your project.");
17
19
  throw new Error("No configuration file found");
18
20
  }
19
- if (Array.isArray(context.configFile.config)) context.#executions = await Promise.all(context.configFile.config.map(async (_, configIndex) => ({
20
- ...context.options,
21
- configIndex
22
- })));
23
- else context.#executions = [{
24
- ...context.options,
25
- configIndex: 0
26
- }];
21
+ if (Array.isArray(context.configFile.config)) context.#executions = await Promise.all(context.configFile.config.map(async (_, executionIndex) => {
22
+ const executionId = (0, _stryke_unique_id_uuid.uuid)();
23
+ return {
24
+ executionId,
25
+ options: {
26
+ ...context.options,
27
+ executionId,
28
+ executionIndex
29
+ },
30
+ active: {
31
+ command: null,
32
+ hook: null,
33
+ plugin: null
34
+ }
35
+ };
36
+ }));
37
+ else {
38
+ const executionId = (0, _stryke_unique_id_uuid.uuid)();
39
+ context.#executions = [{
40
+ executionId,
41
+ options: {
42
+ ...context.options,
43
+ executionId,
44
+ executionIndex: 0
45
+ },
46
+ active: {
47
+ command: null,
48
+ hook: null,
49
+ plugin: null
50
+ }
51
+ }];
52
+ }
27
53
  return context;
28
54
  }
29
55
  /**
30
56
  * A list of all command executions that will be run during the lifecycle of the engine
31
57
  *
32
- * @returns An array of ResolvedExecutionOptions representing each execution context for the engine.
58
+ * @returns An array of {@link ExecutionState} representing each execution context for the engine.
33
59
  */
34
60
  get executions() {
35
61
  return this.#executions;