@workflow/builders 5.0.0-beta.4 → 5.0.0-beta.5
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.
- package/dist/base-builder.d.ts +69 -2
- package/dist/base-builder.d.ts.map +1 -1
- package/dist/base-builder.js +368 -19
- package/dist/base-builder.js.map +1 -1
- package/dist/config-helpers.d.ts +2 -1
- package/dist/config-helpers.d.ts.map +1 -1
- package/dist/config-helpers.js +1 -0
- package/dist/config-helpers.js.map +1 -1
- package/dist/constants.d.ts +3 -13
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +3 -13
- package/dist/constants.js.map +1 -1
- package/dist/discover-entries-esbuild-plugin.d.ts.map +1 -1
- package/dist/discover-entries-esbuild-plugin.js +16 -1
- package/dist/discover-entries-esbuild-plugin.js.map +1 -1
- package/dist/external-package-warning.test.d.ts +2 -0
- package/dist/external-package-warning.test.d.ts.map +1 -0
- package/dist/external-package-warning.test.js +219 -0
- package/dist/external-package-warning.test.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/module-specifier.d.ts.map +1 -1
- package/dist/module-specifier.js +47 -9
- package/dist/module-specifier.js.map +1 -1
- package/dist/module-specifier.test.js +20 -0
- package/dist/module-specifier.test.js.map +1 -1
- package/dist/node-module-esbuild-plugin.d.ts.map +1 -1
- package/dist/node-module-esbuild-plugin.js +72 -22
- package/dist/node-module-esbuild-plugin.js.map +1 -1
- package/dist/node-module-esbuild-plugin.test.js +96 -0
- package/dist/node-module-esbuild-plugin.test.js.map +1 -1
- package/dist/resolve-sourcemap.test.d.ts +2 -0
- package/dist/resolve-sourcemap.test.d.ts.map +1 -0
- package/dist/resolve-sourcemap.test.js +126 -0
- package/dist/resolve-sourcemap.test.js.map +1 -0
- package/dist/standalone.d.ts +0 -3
- package/dist/standalone.d.ts.map +1 -1
- package/dist/standalone.js +10 -39
- package/dist/standalone.js.map +1 -1
- package/dist/swc-esbuild-plugin.d.ts +9 -0
- package/dist/swc-esbuild-plugin.d.ts.map +1 -1
- package/dist/swc-esbuild-plugin.js +63 -8
- package/dist/swc-esbuild-plugin.js.map +1 -1
- package/dist/swc-esbuild-plugin.test.js +279 -3
- package/dist/swc-esbuild-plugin.test.js.map +1 -1
- package/dist/types.d.ts +29 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/vercel-build-output-api.d.ts +0 -2
- package/dist/vercel-build-output-api.d.ts.map +1 -1
- package/dist/vercel-build-output-api.js +24 -55
- package/dist/vercel-build-output-api.js.map +1 -1
- package/package.json +5 -5
package/dist/base-builder.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as esbuild from 'esbuild';
|
|
2
2
|
import { type WorkflowManifest } from './apply-swc-transform.js';
|
|
3
|
-
import type { WorkflowConfig } from './types.js';
|
|
3
|
+
import type { SourcemapMode, WorkflowConfig } from './types.js';
|
|
4
4
|
export interface DiscoveredEntries {
|
|
5
5
|
discoveredSteps: Set<string>;
|
|
6
6
|
discoveredWorkflows: Set<string>;
|
|
@@ -14,6 +14,11 @@ export interface DiscoveredEntries {
|
|
|
14
14
|
*/
|
|
15
15
|
export declare abstract class BaseBuilder {
|
|
16
16
|
protected config: WorkflowConfig;
|
|
17
|
+
/**
|
|
18
|
+
* Tracks which external packages have already been warned about
|
|
19
|
+
* to avoid duplicate warnings across multiple discoverEntries() calls.
|
|
20
|
+
*/
|
|
21
|
+
private warnedExternalPackages;
|
|
17
22
|
constructor(config: WorkflowConfig);
|
|
18
23
|
protected get transformProjectRoot(): string;
|
|
19
24
|
/**
|
|
@@ -63,6 +68,17 @@ export declare abstract class BaseBuilder {
|
|
|
63
68
|
* (e.g., when files are added/removed during watch mode).
|
|
64
69
|
*/
|
|
65
70
|
private discoveredEntries;
|
|
71
|
+
/**
|
|
72
|
+
* Pseudo-packages that should not be checked for workflow patterns.
|
|
73
|
+
*/
|
|
74
|
+
private static readonly PSEUDO_PACKAGES;
|
|
75
|
+
/**
|
|
76
|
+
* Checks each package in externalPackages for workflow patterns and emits
|
|
77
|
+
* warnings if any contain "use step", "use workflow" directives, or
|
|
78
|
+
* serialization classes. These patterns will not be transformed by the
|
|
79
|
+
* workflow compiler when the package is externalized.
|
|
80
|
+
*/
|
|
81
|
+
private warnAboutExternalWorkflowPackages;
|
|
66
82
|
protected discoverEntries(inputs: string[], outdir: string, tsconfigPath?: string): Promise<DiscoveredEntries>;
|
|
67
83
|
/**
|
|
68
84
|
* Writes debug information to a JSON file for troubleshooting build issues.
|
|
@@ -84,16 +100,25 @@ export declare abstract class BaseBuilder {
|
|
|
84
100
|
* Steps have full Node.js runtime access and handle side effects, API calls, etc.
|
|
85
101
|
*
|
|
86
102
|
* @param externalizeNonSteps - If true, only bundles step entry points and externalizes other code
|
|
103
|
+
* @param bundleTransitiveLocalStepDependencies - If true, also bundles project-local files imported by step entries for direct runtime loading
|
|
87
104
|
* @returns Build context (for watch mode) and the collected workflow manifest
|
|
88
105
|
*/
|
|
89
|
-
protected createStepsBundle({ inputFiles, format, outfile, externalizeNonSteps, rewriteTsExtensions, tsconfigPath, discoveredEntries, }: {
|
|
106
|
+
protected createStepsBundle({ inputFiles, format, outfile, externalizeNonSteps, bundleTransitiveLocalStepDependencies, rewriteTsExtensions, tsconfigPath, discoveredEntries, skipEsmRequireBanner, }: {
|
|
90
107
|
tsconfigPath?: string;
|
|
91
108
|
inputFiles: string[];
|
|
92
109
|
outfile: string;
|
|
93
110
|
format?: 'cjs' | 'esm';
|
|
94
111
|
externalizeNonSteps?: boolean;
|
|
112
|
+
bundleTransitiveLocalStepDependencies?: boolean;
|
|
95
113
|
rewriteTsExtensions?: boolean;
|
|
96
114
|
discoveredEntries?: DiscoveredEntries;
|
|
115
|
+
/**
|
|
116
|
+
* When true, skip the `createRequire` banner on the steps bundle.
|
|
117
|
+
* Used by `createCombinedBundle` with `bundleFinalOutput: true` where
|
|
118
|
+
* the outer esbuild pass provides its own banner, preventing the
|
|
119
|
+
* `__createRequire` identifier from being declared twice after inlining.
|
|
120
|
+
*/
|
|
121
|
+
skipEsmRequireBanner?: boolean;
|
|
97
122
|
}): Promise<{
|
|
98
123
|
context: esbuild.BuildContext | undefined;
|
|
99
124
|
manifest: WorkflowManifest;
|
|
@@ -116,6 +141,35 @@ export declare abstract class BaseBuilder {
|
|
|
116
141
|
manifest: WorkflowManifest;
|
|
117
142
|
interimBundleCtx?: esbuild.BuildContext;
|
|
118
143
|
bundleFinal?: (interimBundleResult: string) => Promise<void>;
|
|
144
|
+
/** The raw workflow VM code (before wrapping with entrypoint) */
|
|
145
|
+
interimBundleText?: string;
|
|
146
|
+
}>;
|
|
147
|
+
/**
|
|
148
|
+
* V2: Creates a combined bundle that includes both step registrations and
|
|
149
|
+
* workflow orchestration in a single route. The combined entrypoint executes
|
|
150
|
+
* steps inline when possible, reducing function invocations and queue overhead.
|
|
151
|
+
*
|
|
152
|
+
* This method reuses createStepsBundle (for step registrations) and
|
|
153
|
+
* createWorkflowsBundle (for workflow VM code), then combines them into
|
|
154
|
+
* a single route file using workflowEntrypoint().
|
|
155
|
+
*/
|
|
156
|
+
protected createCombinedBundle({ inputFiles, stepsOutfile, flowOutfile, format, bundleFinalOutput, tsconfigPath, externalizeNonSteps, bundleTransitiveLocalStepDependencies, discoveredEntries, }: {
|
|
157
|
+
inputFiles: string[];
|
|
158
|
+
/** Output path for the step registrations bundle (side effects only) */
|
|
159
|
+
stepsOutfile: string;
|
|
160
|
+
/** Output path for the combined route file */
|
|
161
|
+
flowOutfile: string;
|
|
162
|
+
format?: 'cjs' | 'esm';
|
|
163
|
+
bundleFinalOutput?: boolean;
|
|
164
|
+
tsconfigPath?: string;
|
|
165
|
+
externalizeNonSteps?: boolean;
|
|
166
|
+
bundleTransitiveLocalStepDependencies?: boolean;
|
|
167
|
+
discoveredEntries?: DiscoveredEntries;
|
|
168
|
+
}): Promise<{
|
|
169
|
+
manifest: WorkflowManifest;
|
|
170
|
+
stepsContext?: esbuild.BuildContext;
|
|
171
|
+
interimBundleCtx?: esbuild.BuildContext;
|
|
172
|
+
bundleFinal?: (interimBundleResult: string) => Promise<void>;
|
|
119
173
|
}>;
|
|
120
174
|
/**
|
|
121
175
|
* Creates a client library bundle for workflow execution.
|
|
@@ -175,6 +229,19 @@ export declare abstract class BaseBuilder {
|
|
|
175
229
|
* emit one.
|
|
176
230
|
*/
|
|
177
231
|
protected getDiagnosticsManifestPath(): string | undefined;
|
|
232
|
+
/**
|
|
233
|
+
* Resolve the effective source map mode for a given call site. Precedence:
|
|
234
|
+
* explicit `sourcemap` config > `WORKFLOW_SOURCEMAP` env var > the call
|
|
235
|
+
* site's default. Returned value is passed directly to esbuild's
|
|
236
|
+
* `sourcemap` option.
|
|
237
|
+
*/
|
|
238
|
+
protected resolveSourcemap(defaultMode: SourcemapMode): SourcemapMode;
|
|
239
|
+
/**
|
|
240
|
+
* Whether the resolved source map mode emits any source maps at all.
|
|
241
|
+
* Used by consumers like the Vercel builder to decide whether to include
|
|
242
|
+
* the source-map-support runtime shim in generated functions.
|
|
243
|
+
*/
|
|
244
|
+
protected get sourcemapsEnabled(): boolean;
|
|
178
245
|
/**
|
|
179
246
|
* Creates a manifest JSON file containing step/workflow/class metadata
|
|
180
247
|
* and graph data for visualization.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-builder.d.ts","sourceRoot":"","sources":["../src/base-builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"base-builder.d.ts","sourceRoot":"","sources":["../src/base-builder.ts"],"names":[],"mappings":"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"}
|