trigger.dev 3.0.0-beta.9 → 3.0.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.
- package/dist/esm/apiClient.d.ts +190 -0
- package/dist/esm/apiClient.js +239 -0
- package/dist/esm/apiClient.js.map +1 -0
- package/dist/esm/build/buildWorker.d.ts +68 -0
- package/dist/esm/build/buildWorker.js +159 -0
- package/dist/esm/build/buildWorker.js.map +1 -0
- package/dist/esm/build/bundle.d.ts +36 -0
- package/dist/esm/build/bundle.js +197 -0
- package/dist/esm/build/bundle.js.map +1 -0
- package/dist/esm/build/extensions.d.ts +15 -0
- package/dist/esm/build/extensions.js +158 -0
- package/dist/esm/build/extensions.js.map +1 -0
- package/dist/esm/build/externals.d.ts +15 -0
- package/dist/esm/build/externals.js +285 -0
- package/dist/esm/build/externals.js.map +1 -0
- package/dist/esm/build/manifests.d.ts +2 -0
- package/dist/esm/build/manifests.js +22 -0
- package/dist/esm/build/manifests.js.map +1 -0
- package/dist/esm/build/packageModules.d.ts +18 -0
- package/dist/esm/build/packageModules.js +84 -0
- package/dist/esm/build/packageModules.js.map +1 -0
- package/dist/esm/build/plugins.d.ts +6 -0
- package/dist/esm/build/plugins.js +67 -0
- package/dist/esm/build/plugins.js.map +1 -0
- package/dist/esm/build/resolveModule.d.ts +1 -0
- package/dist/esm/build/resolveModule.js +9 -0
- package/dist/esm/build/resolveModule.js.map +1 -0
- package/dist/esm/cli/common.d.ts +30 -0
- package/dist/esm/cli/common.js +85 -0
- package/dist/esm/cli/common.js.map +1 -0
- package/dist/esm/cli/index.d.ts +2 -0
- package/dist/esm/cli/index.js +27 -0
- package/dist/esm/cli/index.js.map +1 -0
- package/dist/esm/commands/deploy.d.ts +5 -0
- package/dist/esm/commands/deploy.js +402 -0
- package/dist/esm/commands/deploy.js.map +1 -0
- package/dist/esm/commands/dev.d.ts +37 -0
- package/dist/esm/commands/dev.js +128 -0
- package/dist/esm/commands/dev.js.map +1 -0
- package/dist/esm/commands/init.d.ts +3 -0
- package/dist/esm/commands/init.js +427 -0
- package/dist/esm/commands/init.js.map +1 -0
- package/dist/esm/commands/list-profiles.d.ts +23 -0
- package/dist/esm/commands/list-profiles.js +40 -0
- package/dist/esm/commands/list-profiles.js.map +1 -0
- package/dist/esm/commands/login.d.ts +28 -0
- package/dist/esm/commands/login.js +275 -0
- package/dist/esm/commands/login.js.map +1 -0
- package/dist/esm/commands/logout.d.ts +23 -0
- package/dist/esm/commands/logout.js +28 -0
- package/dist/esm/commands/logout.js.map +1 -0
- package/dist/esm/commands/update.d.ts +24 -0
- package/dist/esm/commands/update.js +221 -0
- package/dist/esm/commands/update.js.map +1 -0
- package/dist/esm/commands/whoami.d.ts +34 -0
- package/dist/esm/commands/whoami.js +70 -0
- package/dist/esm/commands/whoami.js.map +1 -0
- package/dist/esm/config.d.ts +22 -0
- package/dist/esm/config.js +204 -0
- package/dist/esm/config.js.map +1 -0
- package/dist/esm/consts.d.ts +4 -0
- package/dist/esm/consts.js +5 -0
- package/dist/esm/consts.js.map +1 -0
- package/dist/esm/deploy/buildImage.d.ts +69 -0
- package/dist/esm/deploy/buildImage.js +472 -0
- package/dist/esm/deploy/buildImage.js.map +1 -0
- package/dist/esm/deploy/logs.d.ts +19 -0
- package/dist/esm/deploy/logs.js +96 -0
- package/dist/esm/deploy/logs.js.map +1 -0
- package/dist/esm/dev/backgroundWorker.d.ts +114 -0
- package/dist/esm/dev/backgroundWorker.js +412 -0
- package/dist/esm/dev/backgroundWorker.js.map +1 -0
- package/dist/esm/dev/devOutput.d.ts +9 -0
- package/dist/esm/dev/devOutput.js +137 -0
- package/dist/esm/dev/devOutput.js.map +1 -0
- package/dist/esm/dev/devSession.d.ts +17 -0
- package/dist/esm/dev/devSession.js +156 -0
- package/dist/esm/dev/devSession.js.map +1 -0
- package/dist/esm/dev/workerRuntime.d.ts +16 -0
- package/dist/esm/dev/workerRuntime.js +258 -0
- package/dist/esm/dev/workerRuntime.js.map +1 -0
- package/dist/esm/entryPoints/deploy-index-controller.d.ts +1 -0
- package/dist/esm/entryPoints/deploy-index-controller.js +85 -0
- package/dist/esm/entryPoints/deploy-index-controller.js.map +1 -0
- package/dist/esm/entryPoints/deploy-index-worker.d.ts +1 -0
- package/dist/esm/entryPoints/deploy-index-worker.js +104 -0
- package/dist/esm/entryPoints/deploy-index-worker.js.map +1 -0
- package/dist/esm/entryPoints/deploy-run-controller.d.ts +1 -0
- package/dist/esm/entryPoints/deploy-run-controller.js +996 -0
- package/dist/esm/entryPoints/deploy-run-controller.js.map +1 -0
- package/dist/esm/entryPoints/deploy-run-worker.d.ts +1 -0
- package/dist/esm/entryPoints/deploy-run-worker.js +297 -0
- package/dist/esm/entryPoints/deploy-run-worker.js.map +1 -0
- package/dist/esm/entryPoints/dev-index-worker.d.ts +1 -0
- package/dist/esm/entryPoints/dev-index-worker.js +104 -0
- package/dist/esm/entryPoints/dev-index-worker.js.map +1 -0
- package/dist/esm/entryPoints/dev-run-worker.d.ts +1 -0
- package/dist/esm/entryPoints/dev-run-worker.js +254 -0
- package/dist/esm/entryPoints/dev-run-worker.js.map +1 -0
- package/dist/esm/entryPoints/loader.d.ts +1 -0
- package/dist/esm/entryPoints/loader.js +16 -0
- package/dist/esm/entryPoints/loader.js.map +1 -0
- package/dist/esm/executions/taskRunProcess.d.ts +115 -0
- package/dist/esm/executions/taskRunProcess.js +254 -0
- package/dist/esm/executions/taskRunProcess.js.map +1 -0
- package/dist/esm/imports/magicast.d.ts +2 -0
- package/dist/esm/imports/magicast.js +5 -0
- package/dist/esm/imports/magicast.js.map +1 -0
- package/dist/esm/imports/xdg-app-paths.d.ts +2 -0
- package/dist/esm/imports/xdg-app-paths.js +3 -0
- package/dist/esm/imports/xdg-app-paths.js.map +1 -0
- package/dist/{index.d.ts → esm/index.d.ts} +1 -0
- package/dist/esm/index.js +17 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/indexing/indexWorkerManifest.d.ts +85 -0
- package/dist/esm/indexing/indexWorkerManifest.js +76 -0
- package/dist/esm/indexing/indexWorkerManifest.js.map +1 -0
- package/dist/esm/indexing/registerTasks.d.ts +2 -0
- package/dist/esm/indexing/registerTasks.js +62 -0
- package/dist/esm/indexing/registerTasks.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/runtimes/bun.d.ts +2 -0
- package/dist/esm/runtimes/bun.js +11 -0
- package/dist/esm/runtimes/bun.js.map +1 -0
- package/dist/esm/shims/esm.d.ts +1 -0
- package/dist/esm/shims/esm.js +9 -0
- package/dist/esm/shims/esm.js.map +1 -0
- package/dist/esm/sourceDir.d.ts +1 -0
- package/dist/esm/sourceDir.js +4 -0
- package/dist/esm/sourceDir.js.map +1 -0
- package/dist/esm/telemetry/tracing.d.ts +3 -0
- package/dist/esm/telemetry/tracing.js +58 -0
- package/dist/esm/telemetry/tracing.js.map +1 -0
- package/dist/esm/types.d.ts +6 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utilities/assertExhaustive.d.ts +1 -0
- package/dist/esm/utilities/assertExhaustive.js +4 -0
- package/dist/esm/utilities/assertExhaustive.js.map +1 -0
- package/dist/esm/utilities/buildManifest.d.ts +2 -0
- package/dist/esm/utilities/buildManifest.js +9 -0
- package/dist/esm/utilities/buildManifest.js.map +1 -0
- package/dist/esm/utilities/cliOutput.d.ts +20 -0
- package/dist/esm/utilities/cliOutput.js +88 -0
- package/dist/esm/utilities/cliOutput.js.map +1 -0
- package/dist/esm/utilities/configFiles.d.ts +29 -0
- package/dist/esm/utilities/configFiles.js +65 -0
- package/dist/esm/utilities/configFiles.js.map +1 -0
- package/dist/esm/utilities/createFileFromTemplate.d.ts +16 -0
- package/dist/esm/utilities/createFileFromTemplate.js +50 -0
- package/dist/esm/utilities/createFileFromTemplate.js.map +1 -0
- package/dist/esm/utilities/deployErrors.d.ts +19 -0
- package/dist/esm/utilities/deployErrors.js +117 -0
- package/dist/esm/utilities/deployErrors.js.map +1 -0
- package/dist/esm/utilities/dotEnv.d.ts +4 -0
- package/dist/esm/utilities/dotEnv.js +28 -0
- package/dist/esm/utilities/dotEnv.js.map +1 -0
- package/dist/esm/utilities/eventBus.d.ts +14 -0
- package/dist/esm/utilities/eventBus.js +3 -0
- package/dist/esm/utilities/eventBus.js.map +1 -0
- package/dist/esm/utilities/fileSystem.d.ts +12 -0
- package/dist/esm/utilities/fileSystem.js +81 -0
- package/dist/esm/utilities/fileSystem.js.map +1 -0
- package/dist/esm/utilities/getApiKeyType.d.ts +13 -0
- package/dist/esm/utilities/getApiKeyType.js +44 -0
- package/dist/esm/utilities/getApiKeyType.js.map +1 -0
- package/dist/esm/utilities/initialBanner.d.ts +4 -0
- package/dist/esm/utilities/initialBanner.js +82 -0
- package/dist/esm/utilities/initialBanner.js.map +1 -0
- package/dist/esm/utilities/keyValueBy.d.ts +8 -0
- package/dist/esm/utilities/keyValueBy.js +19 -0
- package/dist/esm/utilities/keyValueBy.js.map +1 -0
- package/dist/esm/utilities/links.d.ts +9 -0
- package/dist/esm/utilities/links.js +10 -0
- package/dist/esm/utilities/links.js.map +1 -0
- package/dist/esm/utilities/linux.d.ts +1 -0
- package/dist/esm/utilities/linux.js +24 -0
- package/dist/esm/utilities/linux.js.map +1 -0
- package/dist/esm/utilities/logger.d.ts +40 -0
- package/dist/esm/utilities/logger.js +109 -0
- package/dist/esm/utilities/logger.js.map +1 -0
- package/dist/esm/utilities/normalizeImportPath.d.ts +1 -0
- package/dist/esm/utilities/normalizeImportPath.js +5 -0
- package/dist/esm/utilities/normalizeImportPath.js.map +1 -0
- package/dist/esm/utilities/obfuscateApiKey.d.ts +1 -0
- package/dist/esm/utilities/obfuscateApiKey.js +5 -0
- package/dist/esm/utilities/obfuscateApiKey.js.map +1 -0
- package/dist/esm/utilities/parseNameAndPath.d.ts +2 -0
- package/dist/esm/utilities/parseNameAndPath.js +10 -0
- package/dist/esm/utilities/parseNameAndPath.js.map +1 -0
- package/dist/esm/utilities/resolveInternalFilePath.d.ts +1 -0
- package/dist/esm/utilities/resolveInternalFilePath.js +8 -0
- package/dist/esm/utilities/resolveInternalFilePath.js.map +1 -0
- package/dist/esm/utilities/runtimeCheck.d.ts +8 -0
- package/dist/esm/utilities/runtimeCheck.js +52 -0
- package/dist/esm/utilities/runtimeCheck.js.map +1 -0
- package/dist/esm/utilities/safeJsonParse.d.ts +1 -0
- package/dist/esm/utilities/safeJsonParse.js +12 -0
- package/dist/esm/utilities/safeJsonParse.js.map +1 -0
- package/dist/esm/utilities/sanitizeEnvVars.d.ts +3 -0
- package/dist/esm/utilities/sanitizeEnvVars.js +4 -0
- package/dist/esm/utilities/sanitizeEnvVars.js.map +1 -0
- package/dist/esm/utilities/session.d.ts +33 -0
- package/dist/esm/utilities/session.js +82 -0
- package/dist/esm/utilities/session.js.map +1 -0
- package/dist/esm/utilities/sourceFiles.d.ts +12 -0
- package/dist/esm/utilities/sourceFiles.js +76 -0
- package/dist/esm/utilities/sourceFiles.js.map +1 -0
- package/dist/esm/utilities/taskFiles.d.ts +6 -0
- package/dist/esm/utilities/taskFiles.js +69 -0
- package/dist/esm/utilities/taskFiles.js.map +1 -0
- package/dist/esm/utilities/tempDirectories.d.ts +16 -0
- package/dist/esm/utilities/tempDirectories.js +27 -0
- package/dist/esm/utilities/tempDirectories.js.map +1 -0
- package/dist/esm/utilities/windows.d.ts +7 -0
- package/dist/esm/utilities/windows.js +21 -0
- package/dist/esm/utilities/windows.js.map +1 -0
- package/dist/esm/version.d.ts +1 -0
- package/dist/esm/version.js +2 -0
- package/dist/esm/version.js.map +1 -0
- package/package.json +85 -82
- package/dist/Containerfile.prod +0 -39
- package/dist/index.js +0 -6115
- package/dist/index.js.map +0 -1
- package/dist/templates/examples/simple.ts.template +0 -14
- package/dist/templates/trigger.config.ts.template +0 -16
- package/dist/workers/dev/worker-facade.js +0 -187
- package/dist/workers/dev/worker-setup.js +0 -40
- package/dist/workers/prod/entry-point.js +0 -1146
- package/dist/workers/prod/worker-facade.js +0 -193
- package/dist/workers/prod/worker-setup.js +0 -35
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const UserAuthConfigSchema: z.ZodObject<{
|
|
3
|
+
accessToken: z.ZodOptional<z.ZodString>;
|
|
4
|
+
apiUrl: z.ZodOptional<z.ZodString>;
|
|
5
|
+
}, "strip", z.ZodTypeAny, {
|
|
6
|
+
accessToken?: string | undefined;
|
|
7
|
+
apiUrl?: string | undefined;
|
|
8
|
+
}, {
|
|
9
|
+
accessToken?: string | undefined;
|
|
10
|
+
apiUrl?: string | undefined;
|
|
11
|
+
}>;
|
|
12
|
+
export type UserAuthConfig = z.infer<typeof UserAuthConfigSchema>;
|
|
13
|
+
declare const UserAuthConfigFileSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
14
|
+
accessToken: z.ZodOptional<z.ZodString>;
|
|
15
|
+
apiUrl: z.ZodOptional<z.ZodString>;
|
|
16
|
+
}, "strip", z.ZodTypeAny, {
|
|
17
|
+
accessToken?: string | undefined;
|
|
18
|
+
apiUrl?: string | undefined;
|
|
19
|
+
}, {
|
|
20
|
+
accessToken?: string | undefined;
|
|
21
|
+
apiUrl?: string | undefined;
|
|
22
|
+
}>>;
|
|
23
|
+
type UserAuthConfigFile = z.infer<typeof UserAuthConfigFileSchema>;
|
|
24
|
+
export declare function writeAuthConfigProfile(config: UserAuthConfig, profile?: string): void;
|
|
25
|
+
export declare function readAuthConfigProfile(profile?: string): UserAuthConfig | undefined;
|
|
26
|
+
export declare function deleteAuthConfigProfile(profile?: string): void;
|
|
27
|
+
export declare function readAuthConfigFile(): UserAuthConfigFile | undefined;
|
|
28
|
+
export declare function writeAuthConfigFile(config: UserAuthConfigFile): void;
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { mkdirSync, writeFileSync } from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
import { xdgAppPaths } from "../imports/xdg-app-paths.js";
|
|
5
|
+
import { readJSONFileSync } from "./fileSystem.js";
|
|
6
|
+
import { logger } from "./logger.js";
|
|
7
|
+
function getGlobalConfigFolderPath() {
|
|
8
|
+
const configDir = xdgAppPaths("trigger").config();
|
|
9
|
+
return configDir;
|
|
10
|
+
}
|
|
11
|
+
//auth config file
|
|
12
|
+
export const UserAuthConfigSchema = z.object({
|
|
13
|
+
accessToken: z.string().optional(),
|
|
14
|
+
apiUrl: z.string().optional(),
|
|
15
|
+
});
|
|
16
|
+
const UserAuthConfigFileSchema = z.record(UserAuthConfigSchema);
|
|
17
|
+
function getAuthConfigFilePath() {
|
|
18
|
+
return path.join(getGlobalConfigFolderPath(), "default.json");
|
|
19
|
+
}
|
|
20
|
+
export function writeAuthConfigProfile(config, profile = "default") {
|
|
21
|
+
const existingConfig = readAuthConfigFile() || {};
|
|
22
|
+
existingConfig[profile] = config;
|
|
23
|
+
writeAuthConfigFile(existingConfig);
|
|
24
|
+
}
|
|
25
|
+
export function readAuthConfigProfile(profile = "default") {
|
|
26
|
+
try {
|
|
27
|
+
const authConfigFilePath = getAuthConfigFilePath();
|
|
28
|
+
logger.debug(`Reading auth config file`, { authConfigFilePath });
|
|
29
|
+
const json = readJSONFileSync(authConfigFilePath);
|
|
30
|
+
const parsed = UserAuthConfigFileSchema.parse(json);
|
|
31
|
+
return parsed[profile];
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
logger.debug(`Error reading auth config file: ${error}`);
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export function deleteAuthConfigProfile(profile = "default") {
|
|
39
|
+
const existingConfig = readAuthConfigFile() || {};
|
|
40
|
+
delete existingConfig[profile];
|
|
41
|
+
writeAuthConfigFile(existingConfig);
|
|
42
|
+
}
|
|
43
|
+
export function readAuthConfigFile() {
|
|
44
|
+
try {
|
|
45
|
+
const authConfigFilePath = getAuthConfigFilePath();
|
|
46
|
+
logger.debug(`Reading auth config file`, { authConfigFilePath });
|
|
47
|
+
const json = readJSONFileSync(authConfigFilePath);
|
|
48
|
+
const parsed = UserAuthConfigFileSchema.parse(json);
|
|
49
|
+
return parsed;
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
logger.debug(`Error reading auth config file: ${error}`);
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
export function writeAuthConfigFile(config) {
|
|
57
|
+
const authConfigFilePath = getAuthConfigFilePath();
|
|
58
|
+
mkdirSync(path.dirname(authConfigFilePath), {
|
|
59
|
+
recursive: true,
|
|
60
|
+
});
|
|
61
|
+
writeFileSync(path.join(authConfigFilePath), JSON.stringify(config), {
|
|
62
|
+
encoding: "utf-8",
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=configFiles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configFiles.js","sourceRoot":"","sources":["../../../src/utilities/configFiles.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type Result = {
|
|
2
|
+
success: true;
|
|
3
|
+
alreadyExisted: boolean;
|
|
4
|
+
} | {
|
|
5
|
+
success: false;
|
|
6
|
+
error: string;
|
|
7
|
+
};
|
|
8
|
+
export declare function createFileFromTemplate(params: {
|
|
9
|
+
templateUrl: string;
|
|
10
|
+
replacements: Record<string, string>;
|
|
11
|
+
outputPath: string;
|
|
12
|
+
override?: boolean;
|
|
13
|
+
}): Promise<Result>;
|
|
14
|
+
export declare function replaceAll(input: string, replacements: Record<string, string>): string;
|
|
15
|
+
export declare function generateTemplateUrl(templateName: string, ref?: string): string;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import fs from "fs/promises";
|
|
2
|
+
import { pathExists } from "./fileSystem.js";
|
|
3
|
+
import path from "path";
|
|
4
|
+
export async function createFileFromTemplate(params) {
|
|
5
|
+
try {
|
|
6
|
+
const response = await fetch(params.templateUrl);
|
|
7
|
+
if (!response.ok) {
|
|
8
|
+
throw new Error(`Failed to fetch template: ${response.statusText}`);
|
|
9
|
+
}
|
|
10
|
+
const template = await response.text();
|
|
11
|
+
if ((await pathExists(params.outputPath)) && !params.override) {
|
|
12
|
+
return {
|
|
13
|
+
success: true,
|
|
14
|
+
alreadyExisted: true,
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
const output = replaceAll(template, params.replacements);
|
|
18
|
+
const directoryName = path.dirname(params.outputPath);
|
|
19
|
+
await fs.mkdir(directoryName, { recursive: true });
|
|
20
|
+
await fs.writeFile(params.outputPath, output);
|
|
21
|
+
return {
|
|
22
|
+
success: true,
|
|
23
|
+
alreadyExisted: false,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
catch (e) {
|
|
27
|
+
if (e instanceof Error) {
|
|
28
|
+
return {
|
|
29
|
+
success: false,
|
|
30
|
+
error: e.message,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
return {
|
|
34
|
+
success: false,
|
|
35
|
+
error: JSON.stringify(e),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
// find strings that match ${varName} and replace with the value from a Record<string, string> where { varName: "value" }
|
|
40
|
+
export function replaceAll(input, replacements) {
|
|
41
|
+
let output = input;
|
|
42
|
+
for (const [key, value] of Object.entries(replacements)) {
|
|
43
|
+
output = output.replace(new RegExp(`\\$\\{${key}\\}`, "g"), value);
|
|
44
|
+
}
|
|
45
|
+
return output;
|
|
46
|
+
}
|
|
47
|
+
export function generateTemplateUrl(templateName, ref = "main") {
|
|
48
|
+
return `https://raw.githubusercontent.com/triggerdotdev/trigger.dev/${ref}/packages/cli-v3/templates/${templateName}.template`;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=createFileFromTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFileFromTemplate.js","sourceRoot":"","sources":["../../../src/utilities/createFileFromTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAY,MAAM,iBAAiB,CAAC;AACvD,OAAO,IAAI,MAAM,MAAM,CAAC;AAYxB,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,MAK5C;IACC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEvC,IAAI,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC9D,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,IAAI;aACrB,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QAEzD,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAE9C,OAAO;YACL,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,KAAK;SACtB,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;YACvB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,CAAC,CAAC,OAAO;aACjB,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;SACzB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,yHAAyH;AACzH,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,YAAoC;IAC5E,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACxD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,SAAS,GAAG,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,YAAoB,EAAE,MAAc,MAAM;IAC5E,OAAO,+DAA+D,GAAG,8BAA8B,YAAY,WAAW,CAAC;AACjI,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export type ESMRequireError = {
|
|
3
|
+
type: "esm-require-error";
|
|
4
|
+
moduleName: string;
|
|
5
|
+
};
|
|
6
|
+
export type BuildError = ESMRequireError | string;
|
|
7
|
+
export declare function parseBuildErrorStack(error: unknown): BuildError | undefined;
|
|
8
|
+
export declare function logESMRequireError(parsedError: ESMRequireError): void;
|
|
9
|
+
export type PackageNotFoundError = {
|
|
10
|
+
type: "package-not-found-error";
|
|
11
|
+
packageName: string;
|
|
12
|
+
};
|
|
13
|
+
export type NoMatchingVersionError = {
|
|
14
|
+
type: "no-matching-version-error";
|
|
15
|
+
packageName: string;
|
|
16
|
+
};
|
|
17
|
+
export type NpmInstallError = PackageNotFoundError | NoMatchingVersionError | string;
|
|
18
|
+
export declare function parseNpmInstallError(error: unknown): NpmInstallError;
|
|
19
|
+
export declare function logTaskMetadataParseError(zodIssues: z.ZodIssue[], tasks: any): void;
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
2
|
+
import { chalkError, chalkPurple, chalkGrey, chalkGreen, chalkWarning, cliLink, } from "./cliOutput.js";
|
|
3
|
+
import { logger } from "./logger.js";
|
|
4
|
+
import { groupTaskMetadataIssuesByTask } from "@trigger.dev/core/v3";
|
|
5
|
+
import { docs } from "./links.js";
|
|
6
|
+
function errorIsErrorLike(error) {
|
|
7
|
+
return (error instanceof Error || (typeof error === "object" && error !== null && "message" in error));
|
|
8
|
+
}
|
|
9
|
+
export function parseBuildErrorStack(error) {
|
|
10
|
+
if (typeof error === "string") {
|
|
11
|
+
return error;
|
|
12
|
+
}
|
|
13
|
+
if (errorIsErrorLike(error)) {
|
|
14
|
+
if (typeof error.stack === "string") {
|
|
15
|
+
if (error.stack.includes("ERR_REQUIRE_ESM")) {
|
|
16
|
+
const moduleName = getPackageNameFromEsmRequireError(error.stack);
|
|
17
|
+
if (moduleName) {
|
|
18
|
+
return {
|
|
19
|
+
type: "esm-require-error",
|
|
20
|
+
moduleName,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
return error.message;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
function getPackageNameFromEsmRequireError(stack) {
|
|
32
|
+
const pathRegex = /require\(\) of ES Module (.*) from/;
|
|
33
|
+
const pathMatch = pathRegex.exec(stack);
|
|
34
|
+
if (!pathMatch) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const filePath = pathMatch[1];
|
|
38
|
+
if (!filePath) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
const lastPart = filePath.split("node_modules/").pop();
|
|
42
|
+
if (!lastPart) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
// regular expression to match the package name
|
|
46
|
+
const moduleRegex = /(@[^\/]+\/[^\/]+|[^\/]+)/;
|
|
47
|
+
const match = moduleRegex.exec(lastPart);
|
|
48
|
+
if (!match) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
return match[1];
|
|
52
|
+
}
|
|
53
|
+
export function logESMRequireError(parsedError) {
|
|
54
|
+
logger.log(`\n${chalkError("X Error:")} The ${chalkPurple(parsedError.moduleName)} module is being required even though it's ESM only, and builds only support CommonJS. There are two ${chalk.underline("possible")} ways to fix this:`);
|
|
55
|
+
logger.log(`\n${chalkGrey("○")} Dynamically import the module in your code: ${chalkGrey(`const myModule = await import("${parsedError.moduleName}");`)}`);
|
|
56
|
+
logger.log(`${chalkGrey("○")} ${chalk.underline("Or")} add ${chalkPurple(parsedError.moduleName)} to the ${chalkGreen("dependenciesToBundle")} array in your config file ${chalkGrey("(you'll need to create one)")}. This will bundle the module with your code.\n`);
|
|
57
|
+
logger.log(`${chalkGrey("○")} For more info see the ${cliLink("relevant docs", docs.config.esm)}.\n`);
|
|
58
|
+
}
|
|
59
|
+
export function parseNpmInstallError(error) {
|
|
60
|
+
if (typeof error === "string") {
|
|
61
|
+
return error;
|
|
62
|
+
}
|
|
63
|
+
if (error instanceof Error) {
|
|
64
|
+
if (typeof error.stack === "string") {
|
|
65
|
+
const isPackageNotFoundError = error.stack.includes("ERR! 404 Not Found") &&
|
|
66
|
+
error.stack.includes("is not in this registry");
|
|
67
|
+
let packageName = null;
|
|
68
|
+
if (isPackageNotFoundError) {
|
|
69
|
+
// Regular expression to match the package name
|
|
70
|
+
const packageNameRegex = /'([^']+)' is not in this registry/;
|
|
71
|
+
const match = packageNameRegex.exec(error.stack);
|
|
72
|
+
if (match) {
|
|
73
|
+
packageName = match[1]; // Capture the package name
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (packageName) {
|
|
77
|
+
return {
|
|
78
|
+
type: "package-not-found-error",
|
|
79
|
+
packageName,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
const noMatchingVersionRegex = /No matching version found for ([^\s]+)\s/;
|
|
83
|
+
const noMatchingVersionMatch = noMatchingVersionRegex.exec(error.stack);
|
|
84
|
+
if (noMatchingVersionMatch) {
|
|
85
|
+
return {
|
|
86
|
+
type: "no-matching-version-error",
|
|
87
|
+
packageName: noMatchingVersionMatch[1].replace(/.$/, ""),
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
return error.message;
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
return error.message;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return "Unknown error";
|
|
97
|
+
}
|
|
98
|
+
export function logTaskMetadataParseError(zodIssues, tasks) {
|
|
99
|
+
logger.log(`\n${chalkError("X Error:")} Failed to start. The following ${zodIssues.length === 1 ? "task issue was" : "task issues were"} found:`);
|
|
100
|
+
const groupedIssues = groupTaskMetadataIssuesByTask(tasks, zodIssues);
|
|
101
|
+
for (const key in groupedIssues) {
|
|
102
|
+
const taskWithIssues = groupedIssues[key];
|
|
103
|
+
if (!taskWithIssues) {
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
logger.log(`\n ${chalkWarning("❯")} ${taskWithIssues.exportName} ${chalkGrey("in")} ${taskWithIssues.filePath}`);
|
|
107
|
+
for (const issue of taskWithIssues.issues) {
|
|
108
|
+
if (issue.path) {
|
|
109
|
+
logger.log(` ${chalkError("x")} ${issue.path} ${chalkGrey(issue.message)}`);
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
logger.log(` ${chalkError("x")} ${chalkGrey(issue.message)}`);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=deployErrors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployErrors.js","sourceRoot":"","sources":["../../../src/utilities/deployErrors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EACL,UAAU,EACV,WAAW,EACX,SAAS,EACT,UAAU,EACV,YAAY,EACZ,OAAO,GACR,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AASlC,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,CACL,KAAK,YAAY,KAAK,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,SAAS,IAAI,KAAK,CAAC,CAC9F,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACpC,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC5C,MAAM,UAAU,GAAG,iCAAiC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAElE,IAAI,UAAU,EAAE,CAAC;oBACf,OAAO;wBACL,IAAI,EAAE,mBAAmB;wBACzB,UAAU;qBACX,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC,OAAO,CAAC;QACvB,CAAC;IACH,CAAC;IAED,OAAO;AACT,CAAC;AAED,SAAS,iCAAiC,CAAC,KAAa;IACtD,MAAM,SAAS,GAAG,oCAAoC,CAAC;IACvD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAExC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAE9B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE,CAAC;IAEvD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,+CAA+C;IAC/C,MAAM,WAAW,GAAG,0BAA0B,CAAC;IAE/C,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEzC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAA4B;IAC7D,MAAM,CAAC,GAAG,CACR,KAAK,UAAU,CAAC,UAAU,CAAC,QAAQ,WAAW,CAC5C,WAAW,CAAC,UAAU,CACvB,wGAAwG,KAAK,CAAC,SAAS,CACtH,UAAU,CACX,oBAAoB,CACtB,CAAC;IACF,MAAM,CAAC,GAAG,CACR,KAAK,SAAS,CAAC,GAAG,CAAC,gDAAgD,SAAS,CAC1E,kCAAkC,WAAW,CAAC,UAAU,KAAK,CAC9D,EAAE,CACJ,CAAC;IAEF,MAAM,CAAC,GAAG,CACR,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,WAAW,CAC3D,WAAW,CAAC,UAAU,CACvB,WAAW,UAAU,CAAC,sBAAsB,CAAC,8BAA8B,SAAS,CACnF,6BAA6B,CAC9B,iDAAiD,CACnD,CAAC;IAEF,MAAM,CAAC,GAAG,CACR,GAAG,SAAS,CAAC,GAAG,CAAC,0BAA0B,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAC1F,CAAC;AACJ,CAAC;AAcD,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,sBAAsB,GAC1B,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,oBAAoB,CAAC;gBAC1C,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;YAClD,IAAI,WAAW,GAAG,IAAI,CAAC;YAEvB,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,+CAA+C;gBAC/C,MAAM,gBAAgB,GAAG,mCAAmC,CAAC;gBAC7D,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjD,IAAI,KAAK,EAAE,CAAC;oBACV,WAAW,GAAG,KAAK,CAAC,CAAC,CAAW,CAAC,CAAC,2BAA2B;gBAC/D,CAAC;YACH,CAAC;YAED,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO;oBACL,IAAI,EAAE,yBAAyB;oBAC/B,WAAW;iBACZ,CAAC;YACJ,CAAC;YAED,MAAM,sBAAsB,GAAG,0CAA0C,CAAC;YAC1E,MAAM,sBAAsB,GAAG,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACxE,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,OAAO;oBACL,IAAI,EAAE,2BAA2B;oBACjC,WAAW,EAAG,sBAAsB,CAAC,CAAC,CAAY,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;iBACrE,CAAC;YACJ,CAAC;YAED,OAAO,KAAK,CAAC,OAAO,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC,OAAO,CAAC;QACvB,CAAC;IACH,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,SAAuB,EAAE,KAAU;IAC3E,MAAM,CAAC,GAAG,CACR,KAAK,UAAU,CAAC,UAAU,CAAC,mCACzB,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,kBAC9C,SAAS,CACV,CAAC;IAEF,MAAM,aAAa,GAAG,6BAA6B,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAEtE,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAE1C,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,SAAS;QACX,CAAC;QAED,MAAM,CAAC,GAAG,CACR,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,UAAU,IAAI,SAAS,CAAC,IAAI,CAAC,IACtE,cAAc,CAAC,QACjB,EAAE,CACH,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;YAC1C,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,CAAC,GAAG,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACjF,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import dotenv from "dotenv";
|
|
2
|
+
import { resolve } from "node:path";
|
|
3
|
+
import { env } from "std-env";
|
|
4
|
+
const ENVVAR_FILES = [".env", ".env.development", ".env.local", ".env.development.local"];
|
|
5
|
+
export function resolveDotEnvVars(cwd, envFile) {
|
|
6
|
+
const result = {};
|
|
7
|
+
const envFilePath = envFile
|
|
8
|
+
? resolve(cwd ?? process.cwd(), envFile)
|
|
9
|
+
: ENVVAR_FILES.map((p) => resolve(cwd ?? process.cwd(), p));
|
|
10
|
+
dotenv.config({
|
|
11
|
+
processEnv: result,
|
|
12
|
+
path: envFilePath,
|
|
13
|
+
});
|
|
14
|
+
env.TRIGGER_API_URL && (result.TRIGGER_API_URL = env.TRIGGER_API_URL);
|
|
15
|
+
// remove TRIGGER_API_URL and TRIGGER_SECRET_KEY, since those should be coming from the worker
|
|
16
|
+
delete result.TRIGGER_API_URL;
|
|
17
|
+
delete result.TRIGGER_SECRET_KEY;
|
|
18
|
+
return result;
|
|
19
|
+
}
|
|
20
|
+
export function loadDotEnvVars(cwd, envFile) {
|
|
21
|
+
const envFilePath = envFile
|
|
22
|
+
? resolve(cwd ?? process.cwd(), envFile)
|
|
23
|
+
: ENVVAR_FILES.map((p) => resolve(cwd ?? process.cwd(), p));
|
|
24
|
+
dotenv.config({
|
|
25
|
+
path: envFilePath,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=dotEnv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dotEnv.js","sourceRoot":"","sources":["../../../src/utilities/dotEnv.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAE9B,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,wBAAwB,CAAC,CAAC;AAE1F,MAAM,UAAU,iBAAiB,CAAC,GAAY,EAAE,OAAgB;IAC9D,MAAM,MAAM,GAA8B,EAAE,CAAC;IAE7C,MAAM,WAAW,GAAG,OAAO;QACzB,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC;QACxC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAE9D,MAAM,CAAC,MAAM,CAAC;QACZ,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,WAAW;KAClB,CAAC,CAAC;IAEH,GAAG,CAAC,eAAe,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe,CAAC,CAAC;IAEtE,8FAA8F;IAC9F,OAAO,MAAM,CAAC,eAAe,CAAC;IAC9B,OAAO,MAAM,CAAC,kBAAkB,CAAC;IAEjC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAY,EAAE,OAAgB;IAC3D,MAAM,WAAW,GAAG,OAAO;QACzB,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC;QACxC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAE9D,MAAM,CAAC,MAAM,CAAC;QACZ,IAAI,EAAE,WAAW;KAClB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { BuildManifest, BuildTarget, TaskRunExecutionPayload, TaskRunExecutionResult } from "@trigger.dev/core/v3";
|
|
2
|
+
import { EventEmitter } from "node:events";
|
|
3
|
+
import { BackgroundWorker } from "../dev/backgroundWorker.js";
|
|
4
|
+
export type EventBusEvents = {
|
|
5
|
+
rebuildStarted: [BuildTarget];
|
|
6
|
+
buildStarted: [BuildTarget];
|
|
7
|
+
workerSkipped: [];
|
|
8
|
+
backgroundWorkerInitialized: [BackgroundWorker];
|
|
9
|
+
backgroundWorkerIndexingError: [BuildManifest, Error];
|
|
10
|
+
runStarted: [BackgroundWorker, TaskRunExecutionPayload];
|
|
11
|
+
runCompleted: [BackgroundWorker, TaskRunExecutionPayload, TaskRunExecutionResult, number];
|
|
12
|
+
};
|
|
13
|
+
export type EventBusEventArgs<T extends keyof EventBusEvents> = EventBusEvents[T];
|
|
14
|
+
export declare const eventBus: EventEmitter<EventBusEvents>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventBus.js","sourceRoot":"","sources":["../../../src/utilities/eventBus.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAe3C,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAkB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare function createFile(path: string, contents: string | NodeJS.ArrayBufferView): Promise<string>;
|
|
2
|
+
export declare function isDirectory(configPath: string): boolean;
|
|
3
|
+
export declare function pathExists(path: string): Promise<boolean>;
|
|
4
|
+
export declare function someFileExists(directory: string, filenames: string[]): Promise<boolean>;
|
|
5
|
+
export declare function removeFile(path: string): Promise<void>;
|
|
6
|
+
export declare function readFile(path: string): Promise<string>;
|
|
7
|
+
export declare function readJSONFile(path: string): Promise<any>;
|
|
8
|
+
export declare function safeFeadJSONFile(path: string): Promise<any>;
|
|
9
|
+
export declare function writeJSONFile(path: string, json: any, pretty?: boolean): Promise<void>;
|
|
10
|
+
export declare function readJSONFileSync(path: string): any;
|
|
11
|
+
export declare function safeDeleteFileSync(path: string): void;
|
|
12
|
+
export declare function createTempDir(): Promise<string>;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import fsSync from "fs";
|
|
2
|
+
import fsModule, { writeFile } from "fs/promises";
|
|
3
|
+
import fs from "node:fs";
|
|
4
|
+
import { tmpdir } from "node:os";
|
|
5
|
+
import pathModule from "node:path";
|
|
6
|
+
// Creates a file at the given path, if the directory doesn't exist it will be created
|
|
7
|
+
export async function createFile(path, contents) {
|
|
8
|
+
await fsModule.mkdir(pathModule.dirname(path), { recursive: true });
|
|
9
|
+
await fsModule.writeFile(path, contents);
|
|
10
|
+
return path;
|
|
11
|
+
}
|
|
12
|
+
export function isDirectory(configPath) {
|
|
13
|
+
try {
|
|
14
|
+
return fs.statSync(configPath).isDirectory();
|
|
15
|
+
}
|
|
16
|
+
catch (error) {
|
|
17
|
+
// ignore error
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export async function pathExists(path) {
|
|
22
|
+
return fsSync.existsSync(path);
|
|
23
|
+
}
|
|
24
|
+
export async function someFileExists(directory, filenames) {
|
|
25
|
+
for (let index = 0; index < filenames.length; index++) {
|
|
26
|
+
const filename = filenames[index];
|
|
27
|
+
if (!filename)
|
|
28
|
+
continue;
|
|
29
|
+
const path = pathModule.join(directory, filename);
|
|
30
|
+
if (await pathExists(path)) {
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
export async function removeFile(path) {
|
|
37
|
+
await fsModule.unlink(path);
|
|
38
|
+
}
|
|
39
|
+
export async function readFile(path) {
|
|
40
|
+
return await fsModule.readFile(path, "utf8");
|
|
41
|
+
}
|
|
42
|
+
export async function readJSONFile(path) {
|
|
43
|
+
const fileContents = await fsModule.readFile(path, "utf8");
|
|
44
|
+
return JSON.parse(fileContents);
|
|
45
|
+
}
|
|
46
|
+
export async function safeFeadJSONFile(path) {
|
|
47
|
+
try {
|
|
48
|
+
const fileExists = await pathExists(path);
|
|
49
|
+
if (!fileExists)
|
|
50
|
+
return;
|
|
51
|
+
const fileContents = await readFile(path);
|
|
52
|
+
return JSON.parse(fileContents);
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export async function writeJSONFile(path, json, pretty = false) {
|
|
59
|
+
await writeFile(path, JSON.stringify(json, undefined, pretty ? 2 : undefined), "utf8");
|
|
60
|
+
}
|
|
61
|
+
export function readJSONFileSync(path) {
|
|
62
|
+
const fileContents = fsSync.readFileSync(path, "utf8");
|
|
63
|
+
return JSON.parse(fileContents);
|
|
64
|
+
}
|
|
65
|
+
export function safeDeleteFileSync(path) {
|
|
66
|
+
try {
|
|
67
|
+
fs.unlinkSync(path);
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
// ignore error
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
// Create a temporary directory within the OS's temp directory
|
|
74
|
+
export async function createTempDir() {
|
|
75
|
+
// Generate a unique temp directory path
|
|
76
|
+
const tempDirPath = pathModule.join(tmpdir(), "trigger-");
|
|
77
|
+
// Create the temp directory synchronously and return the path
|
|
78
|
+
const directory = await fsModule.mkdtemp(tempDirPath);
|
|
79
|
+
return directory;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=fileSystem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fileSystem.js","sourceRoot":"","sources":["../../../src/utilities/fileSystem.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type ApiKeyType = {
|
|
2
|
+
environment: "dev" | "prod";
|
|
3
|
+
type: "server" | "public";
|
|
4
|
+
};
|
|
5
|
+
type Result = {
|
|
6
|
+
success: true;
|
|
7
|
+
} | {
|
|
8
|
+
success: false;
|
|
9
|
+
type: ApiKeyType | undefined;
|
|
10
|
+
};
|
|
11
|
+
export declare function checkApiKeyIsDevServer(apiKey: string): Result;
|
|
12
|
+
export declare function getApiKeyType(apiKey: string): ApiKeyType | undefined;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export function checkApiKeyIsDevServer(apiKey) {
|
|
2
|
+
const type = getApiKeyType(apiKey);
|
|
3
|
+
if (!type) {
|
|
4
|
+
return { success: false, type: undefined };
|
|
5
|
+
}
|
|
6
|
+
if (type.environment === "dev" && type.type === "server") {
|
|
7
|
+
return {
|
|
8
|
+
success: true,
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
return {
|
|
12
|
+
success: false,
|
|
13
|
+
type,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export function getApiKeyType(apiKey) {
|
|
17
|
+
if (apiKey.startsWith("tr_dev_")) {
|
|
18
|
+
return {
|
|
19
|
+
environment: "dev",
|
|
20
|
+
type: "server",
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
if (apiKey.startsWith("pk_dev_")) {
|
|
24
|
+
return {
|
|
25
|
+
environment: "dev",
|
|
26
|
+
type: "public",
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
// If they enter a prod key (tr_prod_), let them know
|
|
30
|
+
if (apiKey.startsWith("tr_prod_")) {
|
|
31
|
+
return {
|
|
32
|
+
environment: "prod",
|
|
33
|
+
type: "server",
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
if (apiKey.startsWith("pk_prod_")) {
|
|
37
|
+
return {
|
|
38
|
+
environment: "prod",
|
|
39
|
+
type: "public",
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=getApiKeyType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getApiKeyType.js","sourceRoot":"","sources":["../../../src/utilities/getApiKeyType.ts"],"names":[],"mappings":"AAcA,MAAM,UAAU,sBAAsB,CAAC,MAAc;IACnD,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEnC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACzD,OAAO;YACL,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK;QACd,IAAI;KACL,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,WAAW,EAAE,KAAK;YAClB,IAAI,EAAE,QAAQ;SACf,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,WAAW,EAAE,KAAK;YAClB,IAAI,EAAE,QAAQ;SACf,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,IAAI,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,OAAO;YACL,WAAW,EAAE,MAAM;YACnB,IAAI,EAAE,QAAQ;SACf,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,OAAO;YACL,WAAW,EAAE,MAAM;YACnB,IAAI,EAAE,QAAQ;SACf,CAAC;IACJ,CAAC;IAED,OAAO;AACT,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare function printInitialBanner(performUpdateCheck?: boolean): Promise<void>;
|
|
2
|
+
export declare function printStandloneInitialBanner(performUpdateCheck?: boolean): Promise<void>;
|
|
3
|
+
export declare function printDevBanner(printTopBorder?: boolean): void;
|
|
4
|
+
export declare function updateCheck(): Promise<string | undefined>;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
2
|
+
import { getLatestVersion } from "fast-npm-meta";
|
|
3
|
+
import { VERSION } from "../version.js";
|
|
4
|
+
import { chalkGrey, chalkRun, chalkTask, chalkWorker, logo } from "./cliOutput.js";
|
|
5
|
+
import { logger } from "./logger.js";
|
|
6
|
+
import { spinner } from "./windows.js";
|
|
7
|
+
export async function printInitialBanner(performUpdateCheck = true) {
|
|
8
|
+
const text = `\n${logo()} ${chalkGrey(`(${VERSION})`)}\n`;
|
|
9
|
+
logger.info(text);
|
|
10
|
+
let maybeNewVersion;
|
|
11
|
+
if (performUpdateCheck) {
|
|
12
|
+
const $spinner = spinner();
|
|
13
|
+
$spinner.start("Checking for updates");
|
|
14
|
+
maybeNewVersion = await updateCheck();
|
|
15
|
+
// Log a slightly more noticeable message if this is a major bump
|
|
16
|
+
if (maybeNewVersion !== undefined) {
|
|
17
|
+
$spinner.stop(`Update available ${chalk.green(maybeNewVersion)}`);
|
|
18
|
+
const currentMajor = parseInt(VERSION.split(".")[0]);
|
|
19
|
+
const newMajor = parseInt(maybeNewVersion.split(".")[0]);
|
|
20
|
+
logger.debug(`updateCheck: ${VERSION} -> ${maybeNewVersion}`);
|
|
21
|
+
if (newMajor > currentMajor) {
|
|
22
|
+
logger.warn(`Please update to the latest version of \`trigger.dev\` to prevent critical errors.
|
|
23
|
+
Run \`npm install --save-dev trigger.dev@${newMajor}\` to update to the latest version.
|
|
24
|
+
After installation, run Trigger.dev with \`npx trigger.dev\`.`);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
$spinner.stop("On latest version");
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export async function printStandloneInitialBanner(performUpdateCheck = true) {
|
|
35
|
+
if (performUpdateCheck) {
|
|
36
|
+
const maybeNewVersion = await updateCheck();
|
|
37
|
+
// Log a slightly more noticeable message if this is a major bump
|
|
38
|
+
if (maybeNewVersion !== undefined) {
|
|
39
|
+
logger.log(`\n${logo()} ${chalkGrey(`(${VERSION} -> ${chalk.green(maybeNewVersion)})`)}`);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
logger.log(`\n${logo()} ${chalkGrey(`(${VERSION})`)}`);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
logger.log(`\n${logo()} ${chalkGrey(`(${VERSION})`)}`);
|
|
47
|
+
}
|
|
48
|
+
logger.log(`${chalkGrey("-".repeat(54))}`);
|
|
49
|
+
}
|
|
50
|
+
export function printDevBanner(printTopBorder = true) {
|
|
51
|
+
if (printTopBorder) {
|
|
52
|
+
logger.log(chalkGrey("-".repeat(54)));
|
|
53
|
+
}
|
|
54
|
+
logger.log(`${chalkGrey("Key:")} ${chalkWorker("Version")} ${chalkGrey("|")} ${chalkTask("Task")} ${chalkGrey("|")} ${chalkRun("Run")}`);
|
|
55
|
+
logger.log(chalkGrey("-".repeat(54)));
|
|
56
|
+
}
|
|
57
|
+
async function doUpdateCheck() {
|
|
58
|
+
try {
|
|
59
|
+
// default cache for update check is 1 day
|
|
60
|
+
const meta = await getLatestVersion("trigger.dev@latest", { force: true });
|
|
61
|
+
if (!meta.version) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
const compareVersions = (a, b) => a.localeCompare(b, "en-US", { numeric: true });
|
|
65
|
+
const comparison = compareVersions(VERSION, meta.version);
|
|
66
|
+
if (comparison === -1) {
|
|
67
|
+
return meta.version;
|
|
68
|
+
}
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
catch (err) {
|
|
72
|
+
// ignore error
|
|
73
|
+
logger.debug(err);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//only do this once while the cli is running
|
|
78
|
+
let updateCheckPromise;
|
|
79
|
+
export function updateCheck() {
|
|
80
|
+
return (updateCheckPromise ??= doUpdateCheck());
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=initialBanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initialBanner.js","sourceRoot":"","sources":["../../../src/utilities/initialBanner.ts"],"names":[],"mappings":"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"}
|