@powerlines/engine 0.45.3 → 0.46.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/_internal/worker.cjs +886 -803
  2. package/dist/_internal/worker.mjs +889 -806
  3. package/dist/_internal/worker.mjs.map +1 -1
  4. package/dist/api.cjs +292 -323
  5. package/dist/api.d.cts +44 -11
  6. package/dist/api.d.cts.map +1 -1
  7. package/dist/api.d.mts +44 -11
  8. package/dist/api.d.mts.map +1 -1
  9. package/dist/api.mjs +292 -323
  10. package/dist/api.mjs.map +1 -1
  11. package/dist/{base-context-Byizvf4F.cjs → base-context-D7G_24-i.cjs} +82 -76
  12. package/dist/{base-context-BSAC5sO9.mjs → base-context-DU0NRHDt.mjs} +85 -79
  13. package/dist/base-context-DU0NRHDt.mjs.map +1 -0
  14. package/dist/context/index.cjs +3 -3
  15. package/dist/context/index.d.cts +44 -617
  16. package/dist/context/index.d.cts.map +1 -1
  17. package/dist/context/index.d.mts +44 -617
  18. package/dist/context/index.d.mts.map +1 -1
  19. package/dist/context/index.mjs +3 -3
  20. package/dist/engine-context-BuJQY312.cjs +91 -0
  21. package/dist/engine-context-BvDfqfY7.mjs +86 -0
  22. package/dist/engine-context-BvDfqfY7.mjs.map +1 -0
  23. package/dist/execution-context-BpRfsnkE.d.mts +644 -0
  24. package/dist/execution-context-BpRfsnkE.d.mts.map +1 -0
  25. package/dist/{execution-context-BYGFYty0.cjs → execution-context-BrX9i_L8.cjs} +449 -364
  26. package/dist/{execution-context-Bkxp1fML.mjs → execution-context-CgDuoi8o.mjs} +451 -366
  27. package/dist/execution-context-CgDuoi8o.mjs.map +1 -0
  28. package/dist/execution-context-CodQucFX.d.cts +644 -0
  29. package/dist/execution-context-CodQucFX.d.cts.map +1 -0
  30. package/dist/index.cjs +15 -16
  31. package/dist/index.d.cts +3 -3
  32. package/dist/index.d.cts.map +1 -1
  33. package/dist/index.d.mts +3 -3
  34. package/dist/index.d.mts.map +1 -1
  35. package/dist/index.mjs +15 -16
  36. package/dist/index.mjs.map +1 -1
  37. package/dist/{tsconfig-QMSxSwBD.cjs → tsconfig-BUDqmOaT.cjs} +13 -13
  38. package/dist/{tsconfig-CI6bla4E.mjs → tsconfig-MeFEs21S.mjs} +14 -14
  39. package/dist/tsconfig-MeFEs21S.mjs.map +1 -0
  40. package/dist/typescript/index.cjs +1 -1
  41. package/dist/typescript/index.d.cts +6 -6
  42. package/dist/typescript/index.d.cts.map +1 -1
  43. package/dist/typescript/index.d.mts +6 -6
  44. package/dist/typescript/index.d.mts.map +1 -1
  45. package/dist/typescript/index.mjs +1 -1
  46. package/package.json +17 -17
  47. package/dist/base-context-BSAC5sO9.mjs.map +0 -1
  48. package/dist/engine-context-CI_0NWIk.cjs +0 -73
  49. package/dist/engine-context-_RMFwG4J.mjs +0 -68
  50. package/dist/engine-context-_RMFwG4J.mjs.map +0 -1
  51. package/dist/execution-context-Bkxp1fML.mjs.map +0 -1
  52. package/dist/tsconfig-CI6bla4E.mjs.map +0 -1
package/dist/api.d.cts CHANGED
@@ -1,5 +1,6 @@
1
+ import { t as PowerlinesExecutionContext } from "./execution-context-CodQucFX.cjs";
1
2
  import * as _$_powerlines_core0 from "@powerlines/core";
2
- import { API, BuildInlineConfig, CallHookOptions, CleanInlineConfig, DeployInlineConfig, DocsInlineConfig, EnvironmentContext, Execution, ExecutionContext, ExecutionOptions, InferHookParameters, InitialConfig, LintInlineConfig, NewInlineConfig, PluginConfig, PluginContext, PrepareInlineConfig, ResolvedConfig, TestInlineConfig, TypesInlineConfig } from "@powerlines/core";
3
+ import { API, BuildInlineConfig, CallHookOptions, CleanInlineConfig, DeployInlineConfig, DocsInlineConfig, EnvironmentContext, Execution, ExecutionOptions, InferHookParameters, LintInlineConfig, NewInlineConfig, PluginConfig, PluginContext, PrepareInlineConfig, ResolvedConfig, TestInlineConfig, TypesInlineConfig } from "@powerlines/core";
3
4
  import { PartialKeys } from "@stryke/types/base";
4
5
 
5
6
  //#region src/_internal/execution.d.ts
@@ -19,15 +20,11 @@ declare class PowerlinesExecution<TResolvedConfig extends ResolvedConfig = Resol
19
20
  * @param options - The options to initialize the API with
20
21
  * @returns A new instance of the Powerlines API
21
22
  */
22
- static init<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(options: ExecutionOptions, initialConfig?: InitialConfig<TResolvedConfig["userConfig"]>): Promise<PowerlinesExecution<TResolvedConfig>>;
23
+ static from<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(options: ExecutionOptions, initialConfig?: TResolvedConfig["initialConfig"]): Promise<PowerlinesExecution<TResolvedConfig>>;
23
24
  /**
24
25
  * The Powerlines context
25
26
  */
26
- get context(): ExecutionContext<TResolvedConfig>;
27
- /**
28
- * Initialize the execution API with the provided configuration options
29
- */
30
- setup(): Promise<void>;
27
+ get context(): PowerlinesExecutionContext<TResolvedConfig>;
31
28
  /**
32
29
  * Generate the Powerlines typescript declaration file
33
30
  *
@@ -128,19 +125,55 @@ declare class PowerlinesExecution<TResolvedConfig extends ResolvedConfig = Resol
128
125
  */
129
126
  callHook<TKey extends string>(hook: TKey, options: CallHookOptions & {
130
127
  environment?: string | EnvironmentContext<TResolvedConfig>;
131
- }, ...args: InferHookParameters<PluginContext<TResolvedConfig>, TKey>): Promise<ReturnType<_$_powerlines_core0.InferHookFunction<PluginContext<TResolvedConfig>, TKey>> | undefined>;
128
+ }, ...args: InferHookParameters<PluginContext<TResolvedConfig>, TKey>): Promise<ReturnType<_$_powerlines_core0.InferHookFunction<PluginContext<TResolvedConfig, _$_powerlines_core0.API<any>>, TKey>> | undefined>;
132
129
  /**
133
130
  * Create a new Powerlines API instance
134
131
  *
135
132
  * @param context - The Powerlines context
136
133
  */
137
- protected constructor(context: ExecutionContext<TResolvedConfig>);
134
+ protected constructor(context: PowerlinesExecutionContext<TResolvedConfig>);
135
+ /**
136
+ * Initialize the execution API with the provided configuration options
137
+ */
138
+ protected init(): Promise<void>;
138
139
  /**
139
140
  * Add a Powerlines plugin used in the build process
140
141
  *
141
142
  * @param config - The import path of the plugin to add
142
143
  */
143
144
  protected addPlugin(config: PluginConfig<PluginContext<TResolvedConfig>>): Promise<void>;
145
+ /**
146
+ * Get the configured environments
147
+ *
148
+ * @returns The configured environments
149
+ */
150
+ private getEnvironments;
151
+ /**
152
+ * Execute a handler function for each environment
153
+ *
154
+ * @param handle - The handler function to execute for each environment
155
+ */
156
+ private executeEnvironments;
157
+ /**
158
+ * Initialize a Powerlines plugin
159
+ *
160
+ * @param config - The configuration for the plugin
161
+ * @returns The initialized plugin instance, or null if the plugin was a duplicate
162
+ * @throws Will throw an error if the plugin cannot be found or is invalid
163
+ */
164
+ private initPlugin;
165
+ private resolvePlugin;
166
+ private handleBuild;
167
+ /**
168
+ * Generate the Powerlines TypeScript declaration file
169
+ *
170
+ * @remarks
171
+ * This method will generate the TypeScript declaration file for the Powerlines project, including any types provided by plugins.
172
+ *
173
+ * @param context - The environment context to use for generating the TypeScript declaration file
174
+ * @returns A promise that resolves when the TypeScript declaration file has been generated
175
+ */
176
+ private handleTypes;
144
177
  }
145
178
  //#endregion
146
179
  //#region src/api.d.ts
@@ -160,7 +193,7 @@ declare class PowerlinesAPI<TResolvedConfig extends ResolvedConfig = ResolvedCon
160
193
  * @param initialConfig - The initial configuration for the API, which can be used to provide additional context or override certain configuration values during initialization. This is particularly useful when initializing the API from a CLI command, where the CLI flags can be passed as part of the initial configuration to ensure they are properly merged with the configuration file and made available to plugins during their setup and execution.
161
194
  * @returns A new instance of the Powerlines API
162
195
  */
163
- static init<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(options: PartialKeys<ExecutionOptions, "executionId" | "executionIndex">, initialConfig?: InitialConfig<TResolvedConfig["userConfig"]>): Promise<PowerlinesAPI<TResolvedConfig>>;
196
+ static from<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(options: PartialKeys<ExecutionOptions, "executionId" | "executionIndex">, initialConfig?: TResolvedConfig["initialConfig"]): Promise<PowerlinesAPI<TResolvedConfig>>;
164
197
  /**
165
198
  * Generate the Powerlines typescript declaration file
166
199
  *
@@ -263,7 +296,7 @@ declare class PowerlinesAPI<TResolvedConfig extends ResolvedConfig = ResolvedCon
263
296
  *
264
297
  * @param context - The Powerlines context
265
298
  */
266
- protected constructor(context: ExecutionContext<TResolvedConfig>);
299
+ protected constructor(context: PowerlinesExecutionContext<TResolvedConfig>);
267
300
  }
268
301
  //#endregion
269
302
  export { PowerlinesAPI };
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.cts","names":[],"sources":["../src/_internal/execution.ts","../src/api.ts"],"mappings":"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"}
1
+ {"version":3,"file":"api.d.cts","names":[],"sources":["../src/_internal/execution.ts","../src/api.ts"],"mappings":"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"}
package/dist/api.d.mts CHANGED
@@ -1,5 +1,6 @@
1
+ import { t as PowerlinesExecutionContext } from "./execution-context-BpRfsnkE.mjs";
1
2
  import * as _$_powerlines_core0 from "@powerlines/core";
2
- import { API, BuildInlineConfig, CallHookOptions, CleanInlineConfig, DeployInlineConfig, DocsInlineConfig, EnvironmentContext, Execution, ExecutionContext, ExecutionOptions, InferHookParameters, InitialConfig, LintInlineConfig, NewInlineConfig, PluginConfig, PluginContext, PrepareInlineConfig, ResolvedConfig, TestInlineConfig, TypesInlineConfig } from "@powerlines/core";
3
+ import { API, BuildInlineConfig, CallHookOptions, CleanInlineConfig, DeployInlineConfig, DocsInlineConfig, EnvironmentContext, Execution, ExecutionOptions, InferHookParameters, LintInlineConfig, NewInlineConfig, PluginConfig, PluginContext, PrepareInlineConfig, ResolvedConfig, TestInlineConfig, TypesInlineConfig } from "@powerlines/core";
3
4
  import { PartialKeys } from "@stryke/types/base";
4
5
 
5
6
  //#region src/_internal/execution.d.ts
@@ -19,15 +20,11 @@ declare class PowerlinesExecution<TResolvedConfig extends ResolvedConfig = Resol
19
20
  * @param options - The options to initialize the API with
20
21
  * @returns A new instance of the Powerlines API
21
22
  */
22
- static init<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(options: ExecutionOptions, initialConfig?: InitialConfig<TResolvedConfig["userConfig"]>): Promise<PowerlinesExecution<TResolvedConfig>>;
23
+ static from<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(options: ExecutionOptions, initialConfig?: TResolvedConfig["initialConfig"]): Promise<PowerlinesExecution<TResolvedConfig>>;
23
24
  /**
24
25
  * The Powerlines context
25
26
  */
26
- get context(): ExecutionContext<TResolvedConfig>;
27
- /**
28
- * Initialize the execution API with the provided configuration options
29
- */
30
- setup(): Promise<void>;
27
+ get context(): PowerlinesExecutionContext<TResolvedConfig>;
31
28
  /**
32
29
  * Generate the Powerlines typescript declaration file
33
30
  *
@@ -128,19 +125,55 @@ declare class PowerlinesExecution<TResolvedConfig extends ResolvedConfig = Resol
128
125
  */
129
126
  callHook<TKey extends string>(hook: TKey, options: CallHookOptions & {
130
127
  environment?: string | EnvironmentContext<TResolvedConfig>;
131
- }, ...args: InferHookParameters<PluginContext<TResolvedConfig>, TKey>): Promise<ReturnType<_$_powerlines_core0.InferHookFunction<PluginContext<TResolvedConfig>, TKey>> | undefined>;
128
+ }, ...args: InferHookParameters<PluginContext<TResolvedConfig>, TKey>): Promise<ReturnType<_$_powerlines_core0.InferHookFunction<PluginContext<TResolvedConfig, _$_powerlines_core0.API<any>>, TKey>> | undefined>;
132
129
  /**
133
130
  * Create a new Powerlines API instance
134
131
  *
135
132
  * @param context - The Powerlines context
136
133
  */
137
- protected constructor(context: ExecutionContext<TResolvedConfig>);
134
+ protected constructor(context: PowerlinesExecutionContext<TResolvedConfig>);
135
+ /**
136
+ * Initialize the execution API with the provided configuration options
137
+ */
138
+ protected init(): Promise<void>;
138
139
  /**
139
140
  * Add a Powerlines plugin used in the build process
140
141
  *
141
142
  * @param config - The import path of the plugin to add
142
143
  */
143
144
  protected addPlugin(config: PluginConfig<PluginContext<TResolvedConfig>>): Promise<void>;
145
+ /**
146
+ * Get the configured environments
147
+ *
148
+ * @returns The configured environments
149
+ */
150
+ private getEnvironments;
151
+ /**
152
+ * Execute a handler function for each environment
153
+ *
154
+ * @param handle - The handler function to execute for each environment
155
+ */
156
+ private executeEnvironments;
157
+ /**
158
+ * Initialize a Powerlines plugin
159
+ *
160
+ * @param config - The configuration for the plugin
161
+ * @returns The initialized plugin instance, or null if the plugin was a duplicate
162
+ * @throws Will throw an error if the plugin cannot be found or is invalid
163
+ */
164
+ private initPlugin;
165
+ private resolvePlugin;
166
+ private handleBuild;
167
+ /**
168
+ * Generate the Powerlines TypeScript declaration file
169
+ *
170
+ * @remarks
171
+ * This method will generate the TypeScript declaration file for the Powerlines project, including any types provided by plugins.
172
+ *
173
+ * @param context - The environment context to use for generating the TypeScript declaration file
174
+ * @returns A promise that resolves when the TypeScript declaration file has been generated
175
+ */
176
+ private handleTypes;
144
177
  }
145
178
  //#endregion
146
179
  //#region src/api.d.ts
@@ -160,7 +193,7 @@ declare class PowerlinesAPI<TResolvedConfig extends ResolvedConfig = ResolvedCon
160
193
  * @param initialConfig - The initial configuration for the API, which can be used to provide additional context or override certain configuration values during initialization. This is particularly useful when initializing the API from a CLI command, where the CLI flags can be passed as part of the initial configuration to ensure they are properly merged with the configuration file and made available to plugins during their setup and execution.
161
194
  * @returns A new instance of the Powerlines API
162
195
  */
163
- static init<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(options: PartialKeys<ExecutionOptions, "executionId" | "executionIndex">, initialConfig?: InitialConfig<TResolvedConfig["userConfig"]>): Promise<PowerlinesAPI<TResolvedConfig>>;
196
+ static from<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(options: PartialKeys<ExecutionOptions, "executionId" | "executionIndex">, initialConfig?: TResolvedConfig["initialConfig"]): Promise<PowerlinesAPI<TResolvedConfig>>;
164
197
  /**
165
198
  * Generate the Powerlines typescript declaration file
166
199
  *
@@ -263,7 +296,7 @@ declare class PowerlinesAPI<TResolvedConfig extends ResolvedConfig = ResolvedCon
263
296
  *
264
297
  * @param context - The Powerlines context
265
298
  */
266
- protected constructor(context: ExecutionContext<TResolvedConfig>);
299
+ protected constructor(context: PowerlinesExecutionContext<TResolvedConfig>);
267
300
  }
268
301
  //#endregion
269
302
  export { PowerlinesAPI };
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.mts","names":[],"sources":["../src/_internal/execution.ts","../src/api.ts"],"mappings":"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"}
1
+ {"version":3,"file":"api.d.mts","names":[],"sources":["../src/_internal/execution.ts","../src/api.ts"],"mappings":"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"}