trigger.dev 3.0.0-beta.9 → 3.0.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.
- 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 +243 -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,8 @@
|
|
|
1
|
+
type Index<T = any> = {
|
|
2
|
+
[key: string]: T;
|
|
3
|
+
};
|
|
4
|
+
type KeyValueGenerator<K, V, R> = (key: K, value: V, accum: Index<R>) => Index<R> | null;
|
|
5
|
+
export declare function keyValueBy<T>(arr: T[]): Index<true>;
|
|
6
|
+
export declare function keyValueBy<T, R>(arr: T[], keyValue: KeyValueGenerator<T, number, R>, initialValue?: Index<R>): Index<R>;
|
|
7
|
+
export declare function keyValueBy<T, R>(obj: Index<T>, keyValue: KeyValueGenerator<string, T, R>, initialValue?: Index<R>): Index<R>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Generates an object from an array or object. Simpler than reduce or _.transform. The KeyValueGenerator passes (key, value) if the input is an object, and (value, i) if it is an array. The return object from each iteration is merged into the accumulated object. Return null to skip an item. */
|
|
2
|
+
export function keyValueBy(input,
|
|
3
|
+
// if no keyValue is given, sets all values to true
|
|
4
|
+
keyValue, accum = {}) {
|
|
5
|
+
const isArray = Array.isArray(input);
|
|
6
|
+
keyValue =
|
|
7
|
+
keyValue || ((key) => ({ [key]: true }));
|
|
8
|
+
// considerably faster than Array.prototype.reduce
|
|
9
|
+
Object.entries(input || {}).forEach(([key, value], i) => {
|
|
10
|
+
const o = isArray
|
|
11
|
+
? keyValue(value, i, accum)
|
|
12
|
+
: keyValue(key, value, accum);
|
|
13
|
+
Object.entries(o || {}).forEach((entry) => {
|
|
14
|
+
accum[entry[0]] = entry[1];
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
return accum;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=keyValueBy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyValueBy.js","sourceRoot":"","sources":["../../../src/utilities/keyValueBy.ts"],"names":[],"mappings":"AAiBA,wSAAwS;AACxS,MAAM,UAAU,UAAU,CACxB,KAAqB;AACrB,mDAAmD;AACnD,QAAuE,EACvE,QAAkB,EAAE;IAEpB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,QAAQ;QACN,QAAQ,IAAI,CAAC,CAAC,GAAM,EAAY,EAAE,CAAC,CAAC,EAAE,CAAC,GAAwB,CAAC,EAAE,IAAoB,EAAE,CAAC,CAAC,CAAC;IAC7F,kDAAkD;IAClD,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE;QACtD,MAAM,CAAC,GAAG,OAAO;YACf,CAAC,CAAE,QAAyC,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC;YAC7D,CAAC,CAAE,QAA0C,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACnE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACxC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const docs = {
|
|
2
|
+
config: {
|
|
3
|
+
home: "https://trigger.dev/docs/v3/trigger-config",
|
|
4
|
+
esm: "https://trigger.dev/docs/v3/trigger-config#esm-only-packages",
|
|
5
|
+
prisma: "https://trigger.dev/docs/v3/trigger-config#prisma-and-other-generators",
|
|
6
|
+
additionalPackages: "https://trigger.dev/docs/v3/trigger-config#prisma-and-other-generators",
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
export const getInTouch = "https://trigger.dev/contact";
|
|
10
|
+
//# sourceMappingURL=links.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"links.js","sourceRoot":"","sources":["../../../src/utilities/links.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,MAAM,EAAE;QACN,IAAI,EAAE,4CAA4C;QAClD,GAAG,EAAE,8DAA8D;QACnE,MAAM,EAAE,wEAAwE;QAChF,kBAAkB,EAAE,wEAAwE;KAC7F;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,6BAA6B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const isLinuxServer: () => Promise<boolean>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { spawn } from "child_process";
|
|
2
|
+
import { logger } from "./logger.js";
|
|
3
|
+
export const isLinuxServer = async () => {
|
|
4
|
+
if (process.platform !== "linux") {
|
|
5
|
+
return false;
|
|
6
|
+
}
|
|
7
|
+
const xdgAvailable = await new Promise((res) => {
|
|
8
|
+
const xdg = spawn("xdg-open");
|
|
9
|
+
xdg.on("error", (error) => {
|
|
10
|
+
logger.debug("Error while checking for xdg-open", error);
|
|
11
|
+
res(false);
|
|
12
|
+
});
|
|
13
|
+
xdg.on("spawn", () => {
|
|
14
|
+
res(true);
|
|
15
|
+
});
|
|
16
|
+
xdg.on("exit", (code) => {
|
|
17
|
+
res(code === 0);
|
|
18
|
+
});
|
|
19
|
+
xdg.unref();
|
|
20
|
+
});
|
|
21
|
+
logger.debug("xdg-open available:", xdgAvailable);
|
|
22
|
+
return !xdgAvailable;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=linux.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"linux.js","sourceRoot":"","sources":["../../../src/utilities/linux.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACtC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,GAAG,EAAE,EAAE;QACtD,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;QAE9B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACnB,GAAG,CAAC,IAAI,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,KAAK,EAAE,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;IAElD,OAAO,CAAC,YAAY,CAAC;AACvB,CAAC,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { Message } from "esbuild";
|
|
2
|
+
export declare const LOGGER_LEVELS: {
|
|
3
|
+
readonly none: -1;
|
|
4
|
+
readonly error: 0;
|
|
5
|
+
readonly warn: 1;
|
|
6
|
+
readonly info: 2;
|
|
7
|
+
readonly log: 3;
|
|
8
|
+
readonly debug: 4;
|
|
9
|
+
};
|
|
10
|
+
export type LoggerLevel = keyof typeof LOGGER_LEVELS;
|
|
11
|
+
export type TableRow<Keys extends string> = Record<Keys, string>;
|
|
12
|
+
export declare class Logger {
|
|
13
|
+
constructor();
|
|
14
|
+
loggerLevel: "error" | "debug" | "info" | "warn" | "none" | "log";
|
|
15
|
+
columns: number;
|
|
16
|
+
debug: (...args: unknown[]) => void;
|
|
17
|
+
ignore: (...args: unknown[]) => void;
|
|
18
|
+
debugWithSanitization: (label: string, ...args: unknown[]) => void;
|
|
19
|
+
info: (...args: unknown[]) => void;
|
|
20
|
+
log: (...args: unknown[]) => void;
|
|
21
|
+
warn: (...args: unknown[]) => void;
|
|
22
|
+
error: (...args: unknown[]) => void;
|
|
23
|
+
table<Keys extends string>(data: TableRow<Keys>[], level?: Exclude<LoggerLevel, "none">): void;
|
|
24
|
+
private doLog;
|
|
25
|
+
private formatMessage;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* A drop-in replacement for `console` for outputting logging messages.
|
|
29
|
+
*
|
|
30
|
+
* Errors and Warnings will get additional formatting to highlight them to the user.
|
|
31
|
+
* You can also set a `logger.loggerLevel` value to one of "debug", "log", "warn" or "error",
|
|
32
|
+
* to filter out logging messages.
|
|
33
|
+
*/
|
|
34
|
+
export declare const logger: Logger;
|
|
35
|
+
export declare function logBuildWarnings(warnings: Message[]): void;
|
|
36
|
+
/**
|
|
37
|
+
* Logs all errors/warnings associated with an esbuild BuildFailure in the same
|
|
38
|
+
* style esbuild would.
|
|
39
|
+
*/
|
|
40
|
+
export declare function logBuildFailure(errors: Message[], warnings: Message[]): void;
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
// This is a copy of the logger utility from the wrangler repo: https://github.com/cloudflare/workers-sdk/blob/main/packages/wrangler/src/logger.ts
|
|
2
|
+
import { format } from "node:util";
|
|
3
|
+
import chalk from "chalk";
|
|
4
|
+
import CLITable from "cli-table3";
|
|
5
|
+
import { formatMessagesSync } from "esbuild";
|
|
6
|
+
import { env } from "std-env";
|
|
7
|
+
export const LOGGER_LEVELS = {
|
|
8
|
+
none: -1,
|
|
9
|
+
error: 0,
|
|
10
|
+
warn: 1,
|
|
11
|
+
info: 2,
|
|
12
|
+
log: 3,
|
|
13
|
+
debug: 4,
|
|
14
|
+
};
|
|
15
|
+
/** A map from LOGGER_LEVEL to the error `kind` needed by `formatMessagesSync()`. */
|
|
16
|
+
const LOGGER_LEVEL_FORMAT_TYPE_MAP = {
|
|
17
|
+
error: "error",
|
|
18
|
+
warn: "warning",
|
|
19
|
+
info: undefined,
|
|
20
|
+
log: undefined,
|
|
21
|
+
debug: undefined,
|
|
22
|
+
};
|
|
23
|
+
function getLoggerLevel() {
|
|
24
|
+
const fromEnv = env.TRIGGER_LOG_LEVEL?.toLowerCase();
|
|
25
|
+
if (fromEnv !== undefined) {
|
|
26
|
+
if (fromEnv in LOGGER_LEVELS)
|
|
27
|
+
return fromEnv;
|
|
28
|
+
const expected = Object.keys(LOGGER_LEVELS)
|
|
29
|
+
.map((level) => `"${level}"`)
|
|
30
|
+
.join(" | ");
|
|
31
|
+
console.warn(`Unrecognised TRIGGER_LOG_LEVEL value ${JSON.stringify(fromEnv)}, expected ${expected}, defaulting to "log"...`);
|
|
32
|
+
}
|
|
33
|
+
return "log";
|
|
34
|
+
}
|
|
35
|
+
export class Logger {
|
|
36
|
+
constructor() { }
|
|
37
|
+
loggerLevel = getLoggerLevel();
|
|
38
|
+
columns = process.stdout.columns;
|
|
39
|
+
debug = (...args) => this.doLog("debug", args);
|
|
40
|
+
ignore = (...args) => { };
|
|
41
|
+
debugWithSanitization = (label, ...args) => {
|
|
42
|
+
this.doLog("debug", [label, ...args]);
|
|
43
|
+
};
|
|
44
|
+
info = (...args) => this.doLog("info", args);
|
|
45
|
+
log = (...args) => this.doLog("log", args);
|
|
46
|
+
warn = (...args) => this.doLog("warn", args);
|
|
47
|
+
error = (...args) => this.doLog("error", args);
|
|
48
|
+
table(data, level) {
|
|
49
|
+
const keys = data.length === 0 ? [] : Object.keys(data[0]);
|
|
50
|
+
const t = new CLITable({
|
|
51
|
+
head: keys,
|
|
52
|
+
style: {
|
|
53
|
+
head: chalk.level ? ["blue"] : [],
|
|
54
|
+
border: chalk.level ? ["gray"] : [],
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
t.push(...data.map((row) => keys.map((k) => row[k])));
|
|
58
|
+
return this.doLog(level ?? "log", [t.toString()]);
|
|
59
|
+
}
|
|
60
|
+
doLog(messageLevel, args) {
|
|
61
|
+
const message = this.formatMessage(messageLevel, format(...args));
|
|
62
|
+
// only send logs to the terminal if their level is at least the configured log-level
|
|
63
|
+
if (LOGGER_LEVELS[this.loggerLevel] >= LOGGER_LEVELS[messageLevel]) {
|
|
64
|
+
console[messageLevel](message);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
formatMessage(level, message) {
|
|
68
|
+
const kind = LOGGER_LEVEL_FORMAT_TYPE_MAP[level];
|
|
69
|
+
if (kind) {
|
|
70
|
+
// Format the message using the esbuild formatter.
|
|
71
|
+
// The first line of the message is the main `text`,
|
|
72
|
+
// subsequent lines are put into the `notes`.
|
|
73
|
+
const [firstLine, ...otherLines] = message.split("\n");
|
|
74
|
+
const notes = otherLines.length > 0 ? otherLines.map((text) => ({ text })) : undefined;
|
|
75
|
+
return formatMessagesSync([{ text: firstLine, notes }], {
|
|
76
|
+
color: true,
|
|
77
|
+
kind,
|
|
78
|
+
terminalWidth: this.columns,
|
|
79
|
+
})[0];
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
return message;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* A drop-in replacement for `console` for outputting logging messages.
|
|
88
|
+
*
|
|
89
|
+
* Errors and Warnings will get additional formatting to highlight them to the user.
|
|
90
|
+
* You can also set a `logger.loggerLevel` value to one of "debug", "log", "warn" or "error",
|
|
91
|
+
* to filter out logging messages.
|
|
92
|
+
*/
|
|
93
|
+
export const logger = new Logger();
|
|
94
|
+
export function logBuildWarnings(warnings) {
|
|
95
|
+
const logs = formatMessagesSync(warnings, { kind: "warning", color: true });
|
|
96
|
+
for (const log of logs)
|
|
97
|
+
console.warn(log);
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Logs all errors/warnings associated with an esbuild BuildFailure in the same
|
|
101
|
+
* style esbuild would.
|
|
102
|
+
*/
|
|
103
|
+
export function logBuildFailure(errors, warnings) {
|
|
104
|
+
const logs = formatMessagesSync(errors, { kind: "error", color: true });
|
|
105
|
+
for (const log of logs)
|
|
106
|
+
console.error(log);
|
|
107
|
+
logBuildWarnings(warnings);
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utilities/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function normalizeImportPath(importPath: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalizeImportPath.js","sourceRoot":"","sources":["../../../src/utilities/normalizeImportPath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,mBAAmB,CAAC,UAAkB;IACpD,OAAO,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const obfuscateApiKey: (apiKey: string) => string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"obfuscateApiKey.js","sourceRoot":"","sources":["../../../src/utilities/obfuscateApiKey.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,EAAE;IAChD,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAA6B,CAAC;IACjF,OAAO,GAAG,MAAM,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;AAC9D,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import pathModule from "node:path";
|
|
2
|
+
// Takes a relative path (like .) and resolves it to a full path (like /Users/username/Projects/my-triggers)
|
|
3
|
+
export const resolvePath = (input) => {
|
|
4
|
+
return pathModule.resolve(process.cwd(), input);
|
|
5
|
+
};
|
|
6
|
+
// Takes an absolute path and derives the relative path from the current working directory
|
|
7
|
+
export const relativePath = (input) => {
|
|
8
|
+
return pathModule.relative(process.cwd(), input);
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=parseNameAndPath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseNameAndPath.js","sourceRoot":"","sources":["../../../src/utilities/parseNameAndPath.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,WAAW,CAAC;AAEnC,4GAA4G;AAC5G,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,EAAE;IAC3C,OAAO,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,0FAA0F;AAC1F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE;IAC5C,OAAO,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;AACnD,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function cliRootPath(): string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import path from "path";
|
|
2
|
+
import { fileURLToPath } from "url";
|
|
3
|
+
export function cliRootPath() {
|
|
4
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
5
|
+
const __dirname = path.dirname(__filename);
|
|
6
|
+
return __dirname;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=resolveInternalFilePath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolveInternalFilePath.js","sourceRoot":"","sources":["../../../src/utilities/resolveInternalFilePath.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,WAAW;IACzB,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { chalkError } from "./cliOutput.js";
|
|
2
|
+
import { logger } from "./logger.js";
|
|
3
|
+
const REQUIRED_MINIMUM_VERSIONS = [
|
|
4
|
+
{ major: 18, minor: 20 },
|
|
5
|
+
{ major: 20, minor: 5 },
|
|
6
|
+
];
|
|
7
|
+
/**
|
|
8
|
+
* This function is used by the dev CLI to make sure that the runtime is compatible
|
|
9
|
+
*/
|
|
10
|
+
export function runtimeChecks() {
|
|
11
|
+
const checks = REQUIRED_MINIMUM_VERSIONS.map((version) => runtimeCheck(version));
|
|
12
|
+
// If any of the checks passed, we are good to go
|
|
13
|
+
if (checks.some((check) => check.ok)) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
// Get the first failed check
|
|
17
|
+
const failedCheck = checks.find((check) => !check.ok);
|
|
18
|
+
if (!failedCheck) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
logger.log(`${chalkError("X Error:")} ${failedCheck.message}`);
|
|
22
|
+
process.exit(1);
|
|
23
|
+
}
|
|
24
|
+
function runtimeCheck(version) {
|
|
25
|
+
// Check if the runtime is Node.js
|
|
26
|
+
if (typeof process === "undefined") {
|
|
27
|
+
return {
|
|
28
|
+
ok: false,
|
|
29
|
+
message: "The dev CLI can only be run in a Node.js compatible environment",
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
// Check if the runtime version is compatible
|
|
33
|
+
const [major = 0, minor = 0] = process.versions.node.split(".").map(Number);
|
|
34
|
+
const isBun = typeof process.versions.bun === "string";
|
|
35
|
+
if (major < version.major || (major === version.major && minor < version.minor)) {
|
|
36
|
+
if (isBun) {
|
|
37
|
+
return {
|
|
38
|
+
ok: false,
|
|
39
|
+
message: `The dev CLI requires at least Node.js ${version.major}.${version.minor}. You are running Bun ${process.versions.bun}, which is compatible with Node.js ${process.versions.node}`,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
return {
|
|
44
|
+
ok: false,
|
|
45
|
+
message: `The dev CLI requires at least Node.js ${version.major}.${version.minor}. You are running Node.js ${process.versions.node}`,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
logger.debug(`Node.js version: ${process.versions.node}${isBun ? ` (Bun ${process.versions.bun})` : ""}`);
|
|
50
|
+
return { ok: true };
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=runtimeCheck.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtimeCheck.js","sourceRoot":"","sources":["../../../src/utilities/runtimeCheck.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAOrC,MAAM,yBAAyB,GAA4B;IACzD,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;IACxB,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;CACxB,CAAC;AACF;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,MAAM,MAAM,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAEjF,iDAAiD;IACjD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;QACrC,OAAO;IACT,CAAC;IAED,6BAA6B;IAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAEtD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAWD,SAAS,YAAY,CAAC,OAA8B;IAClD,kCAAkC;IAClC,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,iEAAiE;SAC3E,CAAC;IACJ,CAAC;IAED,6CAA6C;IAC7C,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE5E,MAAM,KAAK,GAAG,OAAO,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,QAAQ,CAAC;IAEvD,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,yCAAyC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,yBAAyB,OAAO,CAAC,QAAQ,CAAC,GAAG,sCAAsC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE;aAC3L,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,yCAAyC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,6BAA6B,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE;aACrI,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CACV,oBAAoB,OAAO,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5F,CAAC;IAEF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function safeJsonParse(json?: string): unknown;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeJsonParse.js","sourceRoot":"","sources":["../../../src/utilities/safeJsonParse.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,aAAa,CAAC,IAAa;IACzC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sanitizeEnvVars.js","sourceRoot":"","sources":["../../../src/utilities/sanitizeEnvVars.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAuC,EAAE,EAAE;IACzE,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CACvC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CACrD,CACF,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { CliApiClient } from "../apiClient.js";
|
|
2
|
+
export type LoginResultOk = {
|
|
3
|
+
ok: true;
|
|
4
|
+
profile: string;
|
|
5
|
+
userId: string;
|
|
6
|
+
email: string;
|
|
7
|
+
dashboardUrl: string;
|
|
8
|
+
auth: {
|
|
9
|
+
apiUrl: string;
|
|
10
|
+
accessToken: string;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export type LoginResult = LoginResultOk | {
|
|
14
|
+
ok: false;
|
|
15
|
+
error: string;
|
|
16
|
+
auth?: {
|
|
17
|
+
apiUrl: string;
|
|
18
|
+
accessToken: string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
export declare function isLoggedIn(profile?: string): Promise<LoginResult>;
|
|
22
|
+
export type GetEnvOptions = {
|
|
23
|
+
accessToken: string;
|
|
24
|
+
apiUrl: string;
|
|
25
|
+
projectRef: string;
|
|
26
|
+
env: string;
|
|
27
|
+
profile: string;
|
|
28
|
+
};
|
|
29
|
+
export declare function getProjectClient(options: GetEnvOptions): Promise<{
|
|
30
|
+
id: string;
|
|
31
|
+
name: string;
|
|
32
|
+
client: CliApiClient;
|
|
33
|
+
} | undefined>;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { recordSpanException } from "@trigger.dev/core/v3/workers";
|
|
2
|
+
import { CliApiClient } from "../apiClient.js";
|
|
3
|
+
import { readAuthConfigProfile } from "./configFiles.js";
|
|
4
|
+
import { getTracer } from "../telemetry/tracing.js";
|
|
5
|
+
import { logger } from "./logger.js";
|
|
6
|
+
const tracer = getTracer();
|
|
7
|
+
export async function isLoggedIn(profile = "default") {
|
|
8
|
+
return await tracer.startActiveSpan("isLoggedIn", async (span) => {
|
|
9
|
+
try {
|
|
10
|
+
const config = readAuthConfigProfile(profile);
|
|
11
|
+
if (!config?.accessToken || !config?.apiUrl) {
|
|
12
|
+
span.recordException(new Error("You must login first"));
|
|
13
|
+
span.end();
|
|
14
|
+
return { ok: false, error: "You must login first" };
|
|
15
|
+
}
|
|
16
|
+
const apiClient = new CliApiClient(config.apiUrl, config.accessToken);
|
|
17
|
+
const userData = await apiClient.whoAmI();
|
|
18
|
+
if (!userData.success) {
|
|
19
|
+
recordSpanException(span, userData.error);
|
|
20
|
+
span.end();
|
|
21
|
+
return {
|
|
22
|
+
ok: false,
|
|
23
|
+
error: userData.error,
|
|
24
|
+
auth: {
|
|
25
|
+
apiUrl: config.apiUrl,
|
|
26
|
+
accessToken: config.accessToken,
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
span.setAttributes({
|
|
31
|
+
"login.userId": userData.data.userId,
|
|
32
|
+
"login.email": userData.data.email,
|
|
33
|
+
"login.dashboardUrl": userData.data.dashboardUrl,
|
|
34
|
+
"login.profile": profile,
|
|
35
|
+
});
|
|
36
|
+
span.end();
|
|
37
|
+
return {
|
|
38
|
+
ok: true,
|
|
39
|
+
profile,
|
|
40
|
+
userId: userData.data.userId,
|
|
41
|
+
email: userData.data.email,
|
|
42
|
+
dashboardUrl: userData.data.dashboardUrl,
|
|
43
|
+
auth: {
|
|
44
|
+
apiUrl: config.apiUrl,
|
|
45
|
+
accessToken: config.accessToken,
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
catch (e) {
|
|
50
|
+
recordSpanException(span, e);
|
|
51
|
+
span.end();
|
|
52
|
+
return {
|
|
53
|
+
ok: false,
|
|
54
|
+
error: e instanceof Error ? e.message : "Unknown error",
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
export async function getProjectClient(options) {
|
|
60
|
+
logger.debug(`Initializing ${options.env} environment for project ${options.projectRef}`, options.apiUrl);
|
|
61
|
+
const apiClient = new CliApiClient(options.apiUrl, options.accessToken);
|
|
62
|
+
const projectEnv = await apiClient.getProjectEnv({
|
|
63
|
+
projectRef: options.projectRef,
|
|
64
|
+
env: options.env,
|
|
65
|
+
});
|
|
66
|
+
if (!projectEnv.success) {
|
|
67
|
+
if (projectEnv.error === "Project not found") {
|
|
68
|
+
logger.error(`Project not found: ${options.projectRef}. Ensure you are using the correct project ref and CLI profile (use --profile). Currently using the "${options.profile}" profile, which points to ${options.apiUrl}`);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
logger.error(`Failed to initialize ${options.env} environment: ${projectEnv.error}. Using project ref ${options.projectRef}`);
|
|
72
|
+
}
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
const client = new CliApiClient(projectEnv.data.apiUrl, projectEnv.data.apiKey);
|
|
76
|
+
return {
|
|
77
|
+
id: projectEnv.data.projectId,
|
|
78
|
+
name: projectEnv.data.name,
|
|
79
|
+
client,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/utilities/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ResolvedConfig } from "@trigger.dev/core/v3/build";
|
|
2
|
+
import type { BackgroundWorkerSourceFileMetadata, TaskFile, TaskManifest } from "@trigger.dev/core/v3/schemas";
|
|
3
|
+
export type FileSource = {
|
|
4
|
+
contents: string;
|
|
5
|
+
contentHash: string;
|
|
6
|
+
};
|
|
7
|
+
export type FileSources = Record<string, FileSource>;
|
|
8
|
+
export declare function resolveFileSources(files: TaskFile[], resolvedConfig: ResolvedConfig): Promise<FileSources>;
|
|
9
|
+
export declare function resolveSourceFiles(sources: Record<string, {
|
|
10
|
+
contents: string;
|
|
11
|
+
contentHash: string;
|
|
12
|
+
}>, tasks: TaskManifest[]): Array<BackgroundWorkerSourceFileMetadata>;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { readFile } from "node:fs/promises";
|
|
3
|
+
import { join, relative } from "node:path";
|
|
4
|
+
import * as zlib from "node:zlib";
|
|
5
|
+
import { logger } from "./logger.js";
|
|
6
|
+
export async function resolveFileSources(files, resolvedConfig) {
|
|
7
|
+
const sources = {};
|
|
8
|
+
for (const file of files) {
|
|
9
|
+
const fullPath = join(resolvedConfig.workingDir, file.entry);
|
|
10
|
+
const fileSource = await resolveFileSource(fullPath);
|
|
11
|
+
if (!fileSource) {
|
|
12
|
+
continue;
|
|
13
|
+
}
|
|
14
|
+
sources[file.entry] = fileSource;
|
|
15
|
+
}
|
|
16
|
+
await resolveConfigSource(sources, resolvedConfig.workingDir, resolvedConfig.configFile);
|
|
17
|
+
await resolveConfigSource(sources, resolvedConfig.workingDir, resolvedConfig.tsconfig);
|
|
18
|
+
await resolveConfigSource(sources, resolvedConfig.workingDir, resolvedConfig.packageJsonPath);
|
|
19
|
+
return sources;
|
|
20
|
+
}
|
|
21
|
+
async function resolveConfigSource(sources, workingDir, filePath) {
|
|
22
|
+
if (!filePath) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
const configSource = await resolveFileSource(filePath);
|
|
26
|
+
if (configSource) {
|
|
27
|
+
sources[relative(workingDir, filePath)] = configSource;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
async function resolveFileSource(filePath) {
|
|
31
|
+
try {
|
|
32
|
+
const content = await readFile(filePath, "utf-8");
|
|
33
|
+
const hasher = createHash("md5");
|
|
34
|
+
hasher.update(content);
|
|
35
|
+
return {
|
|
36
|
+
contents: compressContent(content),
|
|
37
|
+
contentHash: hasher.digest("hex"),
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
catch (e) {
|
|
41
|
+
logger.debug("Failed to read file", {
|
|
42
|
+
filePath,
|
|
43
|
+
error: e,
|
|
44
|
+
});
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
export function resolveSourceFiles(sources, tasks) {
|
|
49
|
+
const tasksGroupedByFile = {};
|
|
50
|
+
for (const task of tasks) {
|
|
51
|
+
if (!tasksGroupedByFile[task.filePath]) {
|
|
52
|
+
tasksGroupedByFile[task.filePath] = [];
|
|
53
|
+
}
|
|
54
|
+
tasksGroupedByFile[task.filePath].push(task);
|
|
55
|
+
}
|
|
56
|
+
const taskFiles = [];
|
|
57
|
+
for (const [filePath, source] of Object.entries(sources)) {
|
|
58
|
+
const tasks = tasksGroupedByFile[filePath] ?? [];
|
|
59
|
+
const taskIds = tasks.map((task) => task.id);
|
|
60
|
+
taskFiles.push({
|
|
61
|
+
...source,
|
|
62
|
+
taskIds,
|
|
63
|
+
filePath,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
return taskFiles;
|
|
67
|
+
}
|
|
68
|
+
function compressContent(data) {
|
|
69
|
+
// Convert data to string if it's not already
|
|
70
|
+
// Compress the data
|
|
71
|
+
const compressedData = zlib.deflateSync(data);
|
|
72
|
+
// Encode the compressed data to base64
|
|
73
|
+
const base64Encoded = compressedData.toString("base64");
|
|
74
|
+
return base64Encoded;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=sourceFiles.js.map
|