@trigger.dev/build 0.0.0-prerelease-20240825150620 → 0.0.0-prerelease-20240911144933
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/commonjs/extensions/prisma.d.ts +4 -0
- package/dist/commonjs/extensions/prisma.js +24 -5
- package/dist/commonjs/extensions/prisma.js.map +1 -1
- package/dist/commonjs/extensions/typescript.d.ts +1 -4
- package/dist/commonjs/extensions/typescript.js +45 -31
- package/dist/commonjs/extensions/typescript.js.map +1 -1
- package/dist/esm/extensions/prisma.d.ts +4 -0
- package/dist/esm/extensions/prisma.js +24 -5
- package/dist/esm/extensions/prisma.js.map +1 -1
- package/dist/esm/extensions/typescript.d.ts +1 -4
- package/dist/esm/extensions/typescript.js +45 -31
- package/dist/esm/extensions/typescript.js.map +1 -1
- package/package.json +27 -5
|
@@ -4,6 +4,10 @@ export type PrismaExtensionOptions = {
|
|
|
4
4
|
schema: string;
|
|
5
5
|
migrate?: boolean;
|
|
6
6
|
version?: string;
|
|
7
|
+
/**
|
|
8
|
+
* Adds the `--sql` flag to the `prisma generate` command. This will generate the SQL files for the Prisma schema. Requires the `typedSql preview feature and prisma 5.19.0 or later.
|
|
9
|
+
*/
|
|
10
|
+
typedSql?: boolean;
|
|
7
11
|
/**
|
|
8
12
|
* The client generator to use. Set this param to prevent all generators in the prisma schema from being generated.
|
|
9
13
|
*
|
|
@@ -58,9 +58,28 @@ class PrismaExtension {
|
|
|
58
58
|
const usingSchemaFolder = (0, node_path_1.dirname)(this._resolvedSchemaPath).endsWith("schema");
|
|
59
59
|
const commands = [];
|
|
60
60
|
let prismaDir;
|
|
61
|
-
const
|
|
62
|
-
|
|
63
|
-
|
|
61
|
+
const generatorFlags = [];
|
|
62
|
+
if (this.options.clientGenerator) {
|
|
63
|
+
generatorFlags.push(`--generator=${this.options.clientGenerator}`);
|
|
64
|
+
}
|
|
65
|
+
if (this.options.typedSql) {
|
|
66
|
+
generatorFlags.push(`--sql`);
|
|
67
|
+
const schemaDir = (0, node_path_1.dirname)(this._resolvedSchemaPath);
|
|
68
|
+
const prismaDir = (0, node_path_1.dirname)(schemaDir);
|
|
69
|
+
context.logger.debug(`Using typedSql`);
|
|
70
|
+
// Find all the files prisma/sql/*.sql
|
|
71
|
+
const sqlFiles = await (0, promises_1.readdir)((0, node_path_1.join)(prismaDir, "sql")).then((files) => files.filter((file) => file.endsWith(".sql")));
|
|
72
|
+
context.logger.debug(`Found sql files`, {
|
|
73
|
+
sqlFiles,
|
|
74
|
+
});
|
|
75
|
+
const sqlDestinationPath = (0, node_path_1.join)(manifest.outputPath, "prisma", "sql");
|
|
76
|
+
for (const file of sqlFiles) {
|
|
77
|
+
const destination = (0, node_path_1.join)(sqlDestinationPath, file);
|
|
78
|
+
const source = (0, node_path_1.join)(prismaDir, "sql", file);
|
|
79
|
+
context.logger.debug(`Copying the sql from ${source} to ${destination}`);
|
|
80
|
+
await (0, promises_1.cp)(source, destination);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
64
83
|
if (usingSchemaFolder) {
|
|
65
84
|
const schemaDir = (0, node_path_1.dirname)(this._resolvedSchemaPath);
|
|
66
85
|
prismaDir = (0, node_path_1.dirname)(schemaDir);
|
|
@@ -78,7 +97,7 @@ class PrismaExtension {
|
|
|
78
97
|
context.logger.debug(`Copying the prisma schema from ${source} to ${destination}`);
|
|
79
98
|
await (0, promises_1.cp)(source, destination);
|
|
80
99
|
}
|
|
81
|
-
commands.push(`${(0, build_1.binaryForRuntime)(manifest.runtime)} node_modules/prisma/build/index.js generate ${
|
|
100
|
+
commands.push(`${(0, build_1.binaryForRuntime)(manifest.runtime)} node_modules/prisma/build/index.js generate ${generatorFlags.join(" ")}` // Don't add the --schema flag or this will fail
|
|
82
101
|
);
|
|
83
102
|
}
|
|
84
103
|
else {
|
|
@@ -91,7 +110,7 @@ class PrismaExtension {
|
|
|
91
110
|
// Copy the prisma schema to the build output path
|
|
92
111
|
context.logger.debug(`Copying the prisma schema from ${this._resolvedSchemaPath} to ${schemaDestinationPath}`);
|
|
93
112
|
await (0, promises_1.cp)(this._resolvedSchemaPath, schemaDestinationPath);
|
|
94
|
-
commands.push(`${(0, build_1.binaryForRuntime)(manifest.runtime)} node_modules/prisma/build/index.js generate --schema=./prisma/schema.prisma ${
|
|
113
|
+
commands.push(`${(0, build_1.binaryForRuntime)(manifest.runtime)} node_modules/prisma/build/index.js generate --schema=./prisma/schema.prisma ${generatorFlags.join(" ")}`);
|
|
95
114
|
}
|
|
96
115
|
const env = {};
|
|
97
116
|
if (this.options.migrate) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../../src/extensions/prisma.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../../src/extensions/prisma.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,2 @@
|
|
|
1
1
|
import { BuildExtension } from "@trigger.dev/core/v3/build";
|
|
2
|
-
export
|
|
3
|
-
path?: string;
|
|
4
|
-
};
|
|
5
|
-
export declare function emitDecoratorMetadata(options?: EmitDecoratorMetadataOptions): BuildExtension;
|
|
2
|
+
export declare function emitDecoratorMetadata(): BuildExtension;
|
|
@@ -4,43 +4,57 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.emitDecoratorMetadata = emitDecoratorMetadata;
|
|
7
|
-
const build_1 = require("@trigger.dev/core/v3/build");
|
|
8
7
|
const promises_1 = require("node:fs/promises");
|
|
9
|
-
const pkg_types_1 = require("pkg-types");
|
|
10
8
|
const typescript_1 = __importDefault(require("typescript"));
|
|
11
9
|
const { transpileModule, ModuleKind } = typescript_1.default;
|
|
12
10
|
const decoratorMatcher = new RegExp(/((?<![(\s]\s*['"])@\w[.[\]\w\d]*\s*(?![;])[((?=\s)])/);
|
|
13
|
-
function emitDecoratorMetadata(
|
|
14
|
-
return (0, build_1.esbuildPlugin)(plugin(options));
|
|
15
|
-
}
|
|
16
|
-
function plugin(options = {}) {
|
|
11
|
+
function emitDecoratorMetadata() {
|
|
17
12
|
return {
|
|
18
13
|
name: "emitDecoratorMetadata",
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
14
|
+
onBuildStart(context) {
|
|
15
|
+
context.registerPlugin({
|
|
16
|
+
name: "emitDecoratorMetadata",
|
|
17
|
+
async setup(build) {
|
|
18
|
+
const { parseNative, TSConfckCache } = await import("tsconfck");
|
|
19
|
+
const cache = new TSConfckCache();
|
|
20
|
+
build.onLoad({ filter: /\.ts$/ }, async (args) => {
|
|
21
|
+
context.logger.debug("emitDecoratorMetadata onLoad", { args });
|
|
22
|
+
const { tsconfigFile, tsconfig } = await parseNative(args.path, {
|
|
23
|
+
ignoreNodeModules: true,
|
|
24
|
+
cache,
|
|
25
|
+
});
|
|
26
|
+
context.logger.debug("emitDecoratorMetadata parsed native tsconfig", {
|
|
27
|
+
tsconfig,
|
|
28
|
+
tsconfigFile,
|
|
29
|
+
args,
|
|
30
|
+
});
|
|
31
|
+
if (tsconfig.compilerOptions?.emitDecoratorMetadata !== true) {
|
|
32
|
+
context.logger.debug("emitDecoratorMetadata skipping", {
|
|
33
|
+
args,
|
|
34
|
+
tsconfig,
|
|
35
|
+
});
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
const ts = await (0, promises_1.readFile)(args.path, "utf8");
|
|
39
|
+
if (!ts)
|
|
40
|
+
return undefined;
|
|
41
|
+
// Find the decorator and if there isn't one, return out
|
|
42
|
+
if (!decoratorMatcher.test(ts)) {
|
|
43
|
+
context.logger.debug("emitDecoratorMetadata skipping, no decorators found", {
|
|
44
|
+
args,
|
|
45
|
+
});
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
const program = transpileModule(ts, {
|
|
49
|
+
fileName: args.path,
|
|
50
|
+
compilerOptions: {
|
|
51
|
+
...tsconfig.compilerOptions,
|
|
52
|
+
module: ModuleKind.ES2022,
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
return { contents: program.outputText };
|
|
56
|
+
});
|
|
57
|
+
},
|
|
44
58
|
});
|
|
45
59
|
},
|
|
46
60
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/extensions/typescript.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/extensions/typescript.ts"],"names":[],"mappings":";;;;;AAQA,sDA4DC;AAnED,+CAA4C;AAC5C,4DAAuC;AAEvC,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,oBAAa,CAAC;AAEtD,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,sDAAsD,CAAC,CAAC;AAE5F,SAAgB,qBAAqB;IACnC,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,YAAY,CAAC,OAAO;YAClB,OAAO,CAAC,cAAc,CAAC;gBACrB,IAAI,EAAE,uBAAuB;gBAC7B,KAAK,CAAC,KAAK,CAAC,KAAK;oBACf,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;oBAChE,MAAM,KAAK,GAAG,IAAI,aAAa,EAAO,CAAC;oBAEvC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;wBAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;wBAE/D,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE;4BAC9D,iBAAiB,EAAE,IAAI;4BACvB,KAAK;yBACN,CAAC,CAAC;wBAEH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE;4BACnE,QAAQ;4BACR,YAAY;4BACZ,IAAI;yBACL,CAAC,CAAC;wBAEH,IAAI,QAAQ,CAAC,eAAe,EAAE,qBAAqB,KAAK,IAAI,EAAE,CAAC;4BAC7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE;gCACrD,IAAI;gCACJ,QAAQ;6BACT,CAAC,CAAC;4BAEH,OAAO,SAAS,CAAC;wBACnB,CAAC;wBAED,MAAM,EAAE,GAAG,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;wBAE7C,IAAI,CAAC,EAAE;4BAAE,OAAO,SAAS,CAAC;wBAE1B,wDAAwD;wBACxD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;4BAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,EAAE;gCAC1E,IAAI;6BACL,CAAC,CAAC;4BAEH,OAAO,SAAS,CAAC;wBACnB,CAAC;wBAED,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,EAAE;4BAClC,QAAQ,EAAE,IAAI,CAAC,IAAI;4BACnB,eAAe,EAAE;gCACf,GAAG,QAAQ,CAAC,eAAe;gCAC3B,MAAM,EAAE,UAAU,CAAC,MAAM;6BAC1B;yBACF,CAAC,CAAC;wBAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;oBAC1C,CAAC,CAAC,CAAC;gBACL,CAAC;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -4,6 +4,10 @@ export type PrismaExtensionOptions = {
|
|
|
4
4
|
schema: string;
|
|
5
5
|
migrate?: boolean;
|
|
6
6
|
version?: string;
|
|
7
|
+
/**
|
|
8
|
+
* Adds the `--sql` flag to the `prisma generate` command. This will generate the SQL files for the Prisma schema. Requires the `typedSql preview feature and prisma 5.19.0 or later.
|
|
9
|
+
*/
|
|
10
|
+
typedSql?: boolean;
|
|
7
11
|
/**
|
|
8
12
|
* The client generator to use. Set this param to prevent all generators in the prisma schema from being generated.
|
|
9
13
|
*
|
|
@@ -51,9 +51,28 @@ export class PrismaExtension {
|
|
|
51
51
|
const usingSchemaFolder = dirname(this._resolvedSchemaPath).endsWith("schema");
|
|
52
52
|
const commands = [];
|
|
53
53
|
let prismaDir;
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
const generatorFlags = [];
|
|
55
|
+
if (this.options.clientGenerator) {
|
|
56
|
+
generatorFlags.push(`--generator=${this.options.clientGenerator}`);
|
|
57
|
+
}
|
|
58
|
+
if (this.options.typedSql) {
|
|
59
|
+
generatorFlags.push(`--sql`);
|
|
60
|
+
const schemaDir = dirname(this._resolvedSchemaPath);
|
|
61
|
+
const prismaDir = dirname(schemaDir);
|
|
62
|
+
context.logger.debug(`Using typedSql`);
|
|
63
|
+
// Find all the files prisma/sql/*.sql
|
|
64
|
+
const sqlFiles = await readdir(join(prismaDir, "sql")).then((files) => files.filter((file) => file.endsWith(".sql")));
|
|
65
|
+
context.logger.debug(`Found sql files`, {
|
|
66
|
+
sqlFiles,
|
|
67
|
+
});
|
|
68
|
+
const sqlDestinationPath = join(manifest.outputPath, "prisma", "sql");
|
|
69
|
+
for (const file of sqlFiles) {
|
|
70
|
+
const destination = join(sqlDestinationPath, file);
|
|
71
|
+
const source = join(prismaDir, "sql", file);
|
|
72
|
+
context.logger.debug(`Copying the sql from ${source} to ${destination}`);
|
|
73
|
+
await cp(source, destination);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
57
76
|
if (usingSchemaFolder) {
|
|
58
77
|
const schemaDir = dirname(this._resolvedSchemaPath);
|
|
59
78
|
prismaDir = dirname(schemaDir);
|
|
@@ -71,7 +90,7 @@ export class PrismaExtension {
|
|
|
71
90
|
context.logger.debug(`Copying the prisma schema from ${source} to ${destination}`);
|
|
72
91
|
await cp(source, destination);
|
|
73
92
|
}
|
|
74
|
-
commands.push(`${binaryForRuntime(manifest.runtime)} node_modules/prisma/build/index.js generate ${
|
|
93
|
+
commands.push(`${binaryForRuntime(manifest.runtime)} node_modules/prisma/build/index.js generate ${generatorFlags.join(" ")}` // Don't add the --schema flag or this will fail
|
|
75
94
|
);
|
|
76
95
|
}
|
|
77
96
|
else {
|
|
@@ -84,7 +103,7 @@ export class PrismaExtension {
|
|
|
84
103
|
// Copy the prisma schema to the build output path
|
|
85
104
|
context.logger.debug(`Copying the prisma schema from ${this._resolvedSchemaPath} to ${schemaDestinationPath}`);
|
|
86
105
|
await cp(this._resolvedSchemaPath, schemaDestinationPath);
|
|
87
|
-
commands.push(`${binaryForRuntime(manifest.runtime)} node_modules/prisma/build/index.js generate --schema=./prisma/schema.prisma ${
|
|
106
|
+
commands.push(`${binaryForRuntime(manifest.runtime)} node_modules/prisma/build/index.js generate --schema=./prisma/schema.prisma ${generatorFlags.join(" ")}`);
|
|
88
107
|
}
|
|
89
108
|
const env = {};
|
|
90
109
|
if (this.options.migrate) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../../src/extensions/prisma.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAgC,MAAM,4BAA4B,CAAC;AAC5F,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../../src/extensions/prisma.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,2 @@
|
|
|
1
1
|
import { BuildExtension } from "@trigger.dev/core/v3/build";
|
|
2
|
-
export
|
|
3
|
-
path?: string;
|
|
4
|
-
};
|
|
5
|
-
export declare function emitDecoratorMetadata(options?: EmitDecoratorMetadataOptions): BuildExtension;
|
|
2
|
+
export declare function emitDecoratorMetadata(): BuildExtension;
|
|
@@ -1,40 +1,54 @@
|
|
|
1
|
-
import { esbuildPlugin } from "@trigger.dev/core/v3/build";
|
|
2
1
|
import { readFile } from "node:fs/promises";
|
|
3
|
-
import { readTSConfig } from "pkg-types";
|
|
4
2
|
import typescriptPkg from "typescript";
|
|
5
3
|
const { transpileModule, ModuleKind } = typescriptPkg;
|
|
6
4
|
const decoratorMatcher = new RegExp(/((?<![(\s]\s*['"])@\w[.[\]\w\d]*\s*(?![;])[((?=\s)])/);
|
|
7
|
-
export function emitDecoratorMetadata(
|
|
8
|
-
return esbuildPlugin(plugin(options));
|
|
9
|
-
}
|
|
10
|
-
function plugin(options = {}) {
|
|
5
|
+
export function emitDecoratorMetadata() {
|
|
11
6
|
return {
|
|
12
7
|
name: "emitDecoratorMetadata",
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
8
|
+
onBuildStart(context) {
|
|
9
|
+
context.registerPlugin({
|
|
10
|
+
name: "emitDecoratorMetadata",
|
|
11
|
+
async setup(build) {
|
|
12
|
+
const { parseNative, TSConfckCache } = await import("tsconfck");
|
|
13
|
+
const cache = new TSConfckCache();
|
|
14
|
+
build.onLoad({ filter: /\.ts$/ }, async (args) => {
|
|
15
|
+
context.logger.debug("emitDecoratorMetadata onLoad", { args });
|
|
16
|
+
const { tsconfigFile, tsconfig } = await parseNative(args.path, {
|
|
17
|
+
ignoreNodeModules: true,
|
|
18
|
+
cache,
|
|
19
|
+
});
|
|
20
|
+
context.logger.debug("emitDecoratorMetadata parsed native tsconfig", {
|
|
21
|
+
tsconfig,
|
|
22
|
+
tsconfigFile,
|
|
23
|
+
args,
|
|
24
|
+
});
|
|
25
|
+
if (tsconfig.compilerOptions?.emitDecoratorMetadata !== true) {
|
|
26
|
+
context.logger.debug("emitDecoratorMetadata skipping", {
|
|
27
|
+
args,
|
|
28
|
+
tsconfig,
|
|
29
|
+
});
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
const ts = await readFile(args.path, "utf8");
|
|
33
|
+
if (!ts)
|
|
34
|
+
return undefined;
|
|
35
|
+
// Find the decorator and if there isn't one, return out
|
|
36
|
+
if (!decoratorMatcher.test(ts)) {
|
|
37
|
+
context.logger.debug("emitDecoratorMetadata skipping, no decorators found", {
|
|
38
|
+
args,
|
|
39
|
+
});
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
const program = transpileModule(ts, {
|
|
43
|
+
fileName: args.path,
|
|
44
|
+
compilerOptions: {
|
|
45
|
+
...tsconfig.compilerOptions,
|
|
46
|
+
module: ModuleKind.ES2022,
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
return { contents: program.outputText };
|
|
50
|
+
});
|
|
51
|
+
},
|
|
38
52
|
});
|
|
39
53
|
},
|
|
40
54
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/extensions/typescript.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/extensions/typescript.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,aAAa,MAAM,YAAY,CAAC;AAEvC,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC;AAEtD,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,sDAAsD,CAAC,CAAC;AAE5F,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,YAAY,CAAC,OAAO;YAClB,OAAO,CAAC,cAAc,CAAC;gBACrB,IAAI,EAAE,uBAAuB;gBAC7B,KAAK,CAAC,KAAK,CAAC,KAAK;oBACf,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;oBAChE,MAAM,KAAK,GAAG,IAAI,aAAa,EAAO,CAAC;oBAEvC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;wBAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;wBAE/D,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE;4BAC9D,iBAAiB,EAAE,IAAI;4BACvB,KAAK;yBACN,CAAC,CAAC;wBAEH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE;4BACnE,QAAQ;4BACR,YAAY;4BACZ,IAAI;yBACL,CAAC,CAAC;wBAEH,IAAI,QAAQ,CAAC,eAAe,EAAE,qBAAqB,KAAK,IAAI,EAAE,CAAC;4BAC7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE;gCACrD,IAAI;gCACJ,QAAQ;6BACT,CAAC,CAAC;4BAEH,OAAO,SAAS,CAAC;wBACnB,CAAC;wBAED,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;wBAE7C,IAAI,CAAC,EAAE;4BAAE,OAAO,SAAS,CAAC;wBAE1B,wDAAwD;wBACxD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;4BAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,EAAE;gCAC1E,IAAI;6BACL,CAAC,CAAC;4BAEH,OAAO,SAAS,CAAC;wBACnB,CAAC;wBAED,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,EAAE;4BAClC,QAAQ,EAAE,IAAI,CAAC,IAAI;4BACnB,eAAe,EAAE;gCACf,GAAG,QAAQ,CAAC,eAAe;gCAC3B,MAAM,EAAE,UAAU,CAAC,MAAM;6BAC1B;yBACF,CAAC,CAAC;wBAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;oBAC1C,CAAC,CAAC,CAAC;gBACL,CAAC;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trigger.dev/build",
|
|
3
|
-
"version": "0.0.0-prerelease-
|
|
3
|
+
"version": "0.0.0-prerelease-20240911144933",
|
|
4
4
|
"description": "trigger.dev build extensions",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -33,10 +33,30 @@
|
|
|
33
33
|
"@triggerdotdev/source"
|
|
34
34
|
]
|
|
35
35
|
},
|
|
36
|
+
"typesVersions": {
|
|
37
|
+
"*": {
|
|
38
|
+
"extensions": [
|
|
39
|
+
"dist/commonjs/extensions/index.d.ts"
|
|
40
|
+
],
|
|
41
|
+
"extensions/core": [
|
|
42
|
+
"dist/commonjs/extensions/core.d.ts"
|
|
43
|
+
],
|
|
44
|
+
"extensions/prisma": [
|
|
45
|
+
"dist/commonjs/extensions/prisma.d.ts"
|
|
46
|
+
],
|
|
47
|
+
"extensions/audioWaveform": [
|
|
48
|
+
"dist/commonjs/extensions/audioWaveform.d.ts"
|
|
49
|
+
],
|
|
50
|
+
"extensions/typescript": [
|
|
51
|
+
"dist/commonjs/extensions/typescript.d.ts"
|
|
52
|
+
]
|
|
53
|
+
}
|
|
54
|
+
},
|
|
36
55
|
"dependencies": {
|
|
37
|
-
"@trigger.dev/core": "0.0.0-prerelease-
|
|
56
|
+
"@trigger.dev/core": "0.0.0-prerelease-20240911144933",
|
|
38
57
|
"pkg-types": "^1.1.3",
|
|
39
|
-
"tinyglobby": "^0.2.2"
|
|
58
|
+
"tinyglobby": "^0.2.2",
|
|
59
|
+
"tsconfck": "3.1.3"
|
|
40
60
|
},
|
|
41
61
|
"devDependencies": {
|
|
42
62
|
"@types/node": "20.14.14",
|
|
@@ -44,7 +64,8 @@
|
|
|
44
64
|
"tshy": "^3.0.2",
|
|
45
65
|
"typescript": "^5.5.4",
|
|
46
66
|
"tsx": "4.17.0",
|
|
47
|
-
"esbuild": "^0.23.0"
|
|
67
|
+
"esbuild": "^0.23.0",
|
|
68
|
+
"@arethetypeswrong/cli": "^0.15.4"
|
|
48
69
|
},
|
|
49
70
|
"engines": {
|
|
50
71
|
"node": ">=18.20.0"
|
|
@@ -126,6 +147,7 @@
|
|
|
126
147
|
"build": "tshy && pnpm run update-version",
|
|
127
148
|
"dev": "tshy --watch",
|
|
128
149
|
"typecheck": "tsc --noEmit -p tsconfig.src.json",
|
|
129
|
-
"update-version": "tsx ../../scripts/updateVersion.ts"
|
|
150
|
+
"update-version": "tsx ../../scripts/updateVersion.ts",
|
|
151
|
+
"check-exports": "attw --pack ."
|
|
130
152
|
}
|
|
131
153
|
}
|