@workflow/builders 4.0.1-beta.4 → 4.0.1-beta.40
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/apply-swc-transform.d.ts +1 -4
- package/dist/apply-swc-transform.d.ts.map +1 -1
- package/dist/apply-swc-transform.js +44 -9
- package/dist/apply-swc-transform.js.map +1 -1
- package/dist/base-builder.d.ts +26 -14
- package/dist/base-builder.d.ts.map +1 -1
- package/dist/base-builder.js +207 -74
- package/dist/base-builder.js.map +1 -1
- package/dist/build-queue.d.ts +18 -0
- package/dist/build-queue.d.ts.map +1 -0
- package/dist/build-queue.js +26 -0
- package/dist/build-queue.js.map +1 -0
- package/dist/config-helpers.d.ts +21 -0
- package/dist/config-helpers.d.ts.map +1 -1
- package/dist/config-helpers.js +50 -0
- package/dist/config-helpers.js.map +1 -1
- package/dist/discover-entries-esbuild-plugin.d.ts.map +1 -1
- package/dist/discover-entries-esbuild-plugin.js +10 -4
- package/dist/discover-entries-esbuild-plugin.js.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/node-module-esbuild-plugin.d.ts +37 -0
- package/dist/node-module-esbuild-plugin.d.ts.map +1 -1
- package/dist/node-module-esbuild-plugin.js +289 -9
- package/dist/node-module-esbuild-plugin.js.map +1 -1
- package/dist/node-module-esbuild-plugin.test.js +359 -88
- package/dist/node-module-esbuild-plugin.test.js.map +1 -1
- package/dist/request-converter.d.ts +3 -0
- package/dist/request-converter.d.ts.map +1 -0
- package/dist/request-converter.js +14 -0
- package/dist/request-converter.js.map +1 -0
- package/dist/standalone.d.ts +2 -0
- package/dist/standalone.d.ts.map +1 -1
- package/dist/standalone.js +23 -11
- package/dist/standalone.js.map +1 -1
- package/dist/swc-esbuild-plugin.d.ts +0 -2
- package/dist/swc-esbuild-plugin.d.ts.map +1 -1
- package/dist/swc-esbuild-plugin.js +67 -16
- package/dist/swc-esbuild-plugin.js.map +1 -1
- package/dist/types.d.ts +12 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -1
- package/dist/vercel-build-output-api.d.ts.map +1 -1
- package/dist/vercel-build-output-api.js +16 -11
- package/dist/vercel-build-output-api.js.map +1 -1
- package/dist/workflows-extractor.d.ts +92 -0
- package/dist/workflows-extractor.d.ts.map +1 -0
- package/dist/workflows-extractor.js +1476 -0
- package/dist/workflows-extractor.js.map +1 -0
- package/package.json +9 -9
|
@@ -14,10 +14,7 @@ export type WorkflowManifest = {
|
|
|
14
14
|
};
|
|
15
15
|
};
|
|
16
16
|
};
|
|
17
|
-
export declare function applySwcTransform(filename: string, source: string, mode: 'workflow' | 'step' | 'client' | false
|
|
18
|
-
paths?: Record<string, string[]>;
|
|
19
|
-
baseUrl?: string;
|
|
20
|
-
}): Promise<{
|
|
17
|
+
export declare function applySwcTransform(filename: string, source: string, mode: 'workflow' | 'step' | 'client' | false): Promise<{
|
|
21
18
|
code: string;
|
|
22
19
|
workflowManifest: WorkflowManifest;
|
|
23
20
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply-swc-transform.d.ts","sourceRoot":"","sources":["../src/apply-swc-transform.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apply-swc-transform.d.ts","sourceRoot":"","sources":["../src/apply-swc-transform.ts"],"names":[],"mappings":"AAwBA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,CAAC,EAAE;QACN,CAAC,gBAAgB,EAAE,MAAM,GAAG;YAC1B,CAAC,YAAY,EAAE,MAAM,GAAG;gBACtB,MAAM,EAAE,MAAM,CAAC;aAChB,CAAC;SACH,CAAC;KACH,CAAC;IACF,SAAS,CAAC,EAAE;QACV,CAAC,gBAAgB,EAAE,MAAM,GAAG;YAC1B,CAAC,YAAY,EAAE,MAAM,GAAG;gBACtB,UAAU,EAAE,MAAM,CAAC;aACpB,CAAC;SACH,CAAC;KACH,CAAC;CACH,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAC3C,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC,CAiED"}
|
|
@@ -1,26 +1,61 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';
|
|
2
|
+
import { dirname } from 'node:path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
1
4
|
import { transform } from '@swc/core';
|
|
2
|
-
import {
|
|
3
|
-
const require = createRequire(import.meta.
|
|
4
|
-
|
|
5
|
+
import { getDecoratorOptionsForDirectory } from './config-helpers.js';
|
|
6
|
+
const require = createRequire(import.meta.url);
|
|
7
|
+
// Cache decorator options per directory - tsconfig doesn't change during a build
|
|
8
|
+
const decoratorOptionsCache = new Map();
|
|
9
|
+
function getDecoratorOptions() {
|
|
10
|
+
const cwd = process.cwd();
|
|
11
|
+
let cached = decoratorOptionsCache.get(cwd);
|
|
12
|
+
if (!cached) {
|
|
13
|
+
cached = getDecoratorOptionsForDirectory(cwd);
|
|
14
|
+
decoratorOptionsCache.set(cwd, cached);
|
|
15
|
+
}
|
|
16
|
+
return cached;
|
|
17
|
+
}
|
|
18
|
+
export async function applySwcTransform(filename, source, mode) {
|
|
19
|
+
const decoratorOptions = await getDecoratorOptions();
|
|
20
|
+
const swcPluginPath = require.resolve('@workflow/swc-plugin', {
|
|
21
|
+
paths: [dirname(fileURLToPath(import.meta.url))],
|
|
22
|
+
});
|
|
5
23
|
// Determine if this is a TypeScript file
|
|
6
|
-
const isTypeScript = filename.endsWith('.ts') ||
|
|
7
|
-
|
|
24
|
+
const isTypeScript = filename.endsWith('.ts') ||
|
|
25
|
+
filename.endsWith('.tsx') ||
|
|
26
|
+
filename.endsWith('.mts') ||
|
|
27
|
+
filename.endsWith('.cts');
|
|
8
28
|
// Transform with SWC to support syntax esbuild doesn't
|
|
9
29
|
const result = await transform(source, {
|
|
10
30
|
filename,
|
|
11
31
|
swcrc: false,
|
|
12
32
|
jsc: {
|
|
13
33
|
parser: {
|
|
14
|
-
|
|
15
|
-
|
|
34
|
+
...(isTypeScript
|
|
35
|
+
? {
|
|
36
|
+
syntax: 'typescript',
|
|
37
|
+
tsx: filename.endsWith('.tsx'),
|
|
38
|
+
decorators: decoratorOptions.decorators,
|
|
39
|
+
}
|
|
40
|
+
: {
|
|
41
|
+
syntax: 'ecmascript',
|
|
42
|
+
jsx: filename.endsWith('.jsx'),
|
|
43
|
+
decorators: decoratorOptions.decorators,
|
|
44
|
+
}),
|
|
16
45
|
},
|
|
17
46
|
target: 'es2022',
|
|
18
47
|
experimental: mode
|
|
19
48
|
? {
|
|
20
|
-
plugins: [[
|
|
49
|
+
plugins: [[swcPluginPath, { mode }]],
|
|
21
50
|
}
|
|
22
51
|
: undefined,
|
|
23
|
-
|
|
52
|
+
transform: {
|
|
53
|
+
react: {
|
|
54
|
+
runtime: 'preserve',
|
|
55
|
+
},
|
|
56
|
+
legacyDecorator: decoratorOptions.legacyDecorator,
|
|
57
|
+
decoratorMetadata: decoratorOptions.decoratorMetadata,
|
|
58
|
+
},
|
|
24
59
|
},
|
|
25
60
|
// TODO: investigate proper source map support as they
|
|
26
61
|
// won't even be used in Node.js by default unless we
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply-swc-transform.js","sourceRoot":"","sources":["../src/apply-swc-transform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"apply-swc-transform.js","sourceRoot":"","sources":["../src/apply-swc-transform.ts"],"names":[],"mappings":"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"}
|
package/dist/base-builder.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as esbuild from 'esbuild';
|
|
2
|
+
import type { WorkflowManifest } from './apply-swc-transform.js';
|
|
2
3
|
import type { WorkflowConfig } from './types.js';
|
|
3
4
|
/**
|
|
4
5
|
* Base class for workflow builders. Provides common build logic for transforming
|
|
@@ -15,13 +16,10 @@ export declare abstract class BaseBuilder {
|
|
|
15
16
|
*/
|
|
16
17
|
abstract build(): Promise<void>;
|
|
17
18
|
/**
|
|
18
|
-
*
|
|
19
|
-
* Used to properly resolve module imports during bundling.
|
|
19
|
+
* Finds tsconfig.json/jsconfig.json for the project.
|
|
20
|
+
* Used by esbuild to properly resolve module imports during bundling.
|
|
20
21
|
*/
|
|
21
|
-
protected
|
|
22
|
-
baseUrl?: string;
|
|
23
|
-
paths?: Record<string, string[]>;
|
|
24
|
-
}>;
|
|
22
|
+
protected findTsConfigPath(): Promise<string | undefined>;
|
|
25
23
|
/**
|
|
26
24
|
* Discovers all source files in the configured directories.
|
|
27
25
|
* Searches for TypeScript and JavaScript files while excluding common build
|
|
@@ -41,7 +39,8 @@ export declare abstract class BaseBuilder {
|
|
|
41
39
|
}>;
|
|
42
40
|
/**
|
|
43
41
|
* Writes debug information to a JSON file for troubleshooting build issues.
|
|
44
|
-
*
|
|
42
|
+
* Uses atomic write (temp file + rename) to prevent race conditions when
|
|
43
|
+
* multiple builds run concurrently.
|
|
45
44
|
*/
|
|
46
45
|
private writeDebugFile;
|
|
47
46
|
/**
|
|
@@ -54,24 +53,26 @@ export declare abstract class BaseBuilder {
|
|
|
54
53
|
* Steps have full Node.js runtime access and handle side effects, API calls, etc.
|
|
55
54
|
*
|
|
56
55
|
* @param externalizeNonSteps - If true, only bundles step entry points and externalizes other code
|
|
56
|
+
* @returns Build context (for watch mode) and the collected workflow manifest
|
|
57
57
|
*/
|
|
58
|
-
protected createStepsBundle({ inputFiles, format, outfile, externalizeNonSteps,
|
|
59
|
-
|
|
60
|
-
tsBaseUrl?: string;
|
|
58
|
+
protected createStepsBundle({ inputFiles, format, outfile, externalizeNonSteps, tsconfigPath, }: {
|
|
59
|
+
tsconfigPath?: string;
|
|
61
60
|
inputFiles: string[];
|
|
62
61
|
outfile: string;
|
|
63
62
|
format?: 'cjs' | 'esm';
|
|
64
63
|
externalizeNonSteps?: boolean;
|
|
65
|
-
}): Promise<
|
|
64
|
+
}): Promise<{
|
|
65
|
+
context: esbuild.BuildContext | undefined;
|
|
66
|
+
manifest: WorkflowManifest;
|
|
67
|
+
}>;
|
|
66
68
|
/**
|
|
67
69
|
* Creates a bundle for workflow orchestration functions.
|
|
68
70
|
* Workflows run in a sandboxed VM and coordinate step execution.
|
|
69
71
|
*
|
|
70
72
|
* @param bundleFinalOutput - If false, skips the final bundling step (used by Next.js)
|
|
71
73
|
*/
|
|
72
|
-
protected createWorkflowsBundle({ inputFiles, format, outfile, bundleFinalOutput,
|
|
73
|
-
|
|
74
|
-
tsBaseUrl?: string;
|
|
74
|
+
protected createWorkflowsBundle({ inputFiles, format, outfile, bundleFinalOutput, tsconfigPath, }: {
|
|
75
|
+
tsconfigPath?: string;
|
|
75
76
|
inputFiles: string[];
|
|
76
77
|
outfile: string;
|
|
77
78
|
format?: 'cjs' | 'esm';
|
|
@@ -127,5 +128,16 @@ export declare abstract class BaseBuilder {
|
|
|
127
128
|
*/
|
|
128
129
|
protected ensureDirectory(filePath: string): Promise<void>;
|
|
129
130
|
private createSwcGitignore;
|
|
131
|
+
/**
|
|
132
|
+
* Creates a manifest JSON file containing step/workflow metadata
|
|
133
|
+
* and graph data for visualization.
|
|
134
|
+
*/
|
|
135
|
+
protected createManifest({ workflowBundlePath, manifestDir, manifest, }: {
|
|
136
|
+
workflowBundlePath: string;
|
|
137
|
+
manifestDir: string;
|
|
138
|
+
manifest: WorkflowManifest;
|
|
139
|
+
}): Promise<void>;
|
|
140
|
+
private convertStepsManifest;
|
|
141
|
+
private convertWorkflowsManifest;
|
|
130
142
|
}
|
|
131
143
|
//# sourceMappingURL=base-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-builder.d.ts","sourceRoot":"","sources":["../src/base-builder.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"base-builder.d.ts","sourceRoot":"","sources":["../src/base-builder.ts"],"names":[],"mappings":"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"}
|