@trigger.dev/build 0.0.0-cli-e2e-20240910161832
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/LICENSE +21 -0
- package/README.md +3 -0
- package/dist/commonjs/extensions/audioWaveform.d.ts +6 -0
- package/dist/commonjs/extensions/audioWaveform.js +45 -0
- package/dist/commonjs/extensions/audioWaveform.js.map +1 -0
- package/dist/commonjs/extensions/core/additionalFiles.d.ts +5 -0
- package/dist/commonjs/extensions/core/additionalFiles.js +64 -0
- package/dist/commonjs/extensions/core/additionalFiles.js.map +1 -0
- package/dist/commonjs/extensions/core/additionalPackages.d.ts +15 -0
- package/dist/commonjs/extensions/core/additionalPackages.js +77 -0
- package/dist/commonjs/extensions/core/additionalPackages.js.map +1 -0
- package/dist/commonjs/extensions/core/syncEnvVars.d.ts +16 -0
- package/dist/commonjs/extensions/core/syncEnvVars.js +129 -0
- package/dist/commonjs/extensions/core/syncEnvVars.js.map +1 -0
- package/dist/commonjs/extensions/core.d.ts +3 -0
- package/dist/commonjs/extensions/core.js +20 -0
- package/dist/commonjs/extensions/core.js.map +1 -0
- package/dist/commonjs/extensions/index.d.ts +1 -0
- package/dist/commonjs/extensions/index.js +18 -0
- package/dist/commonjs/extensions/index.js.map +1 -0
- package/dist/commonjs/extensions/prisma.d.ts +47 -0
- package/dist/commonjs/extensions/prisma.js +133 -0
- package/dist/commonjs/extensions/prisma.js.map +1 -0
- package/dist/commonjs/extensions/typescript.d.ts +2 -0
- package/dist/commonjs/extensions/typescript.js +62 -0
- package/dist/commonjs/extensions/typescript.js.map +1 -0
- package/dist/commonjs/index.d.ts +1 -0
- package/dist/commonjs/index.js +3 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/package.json +3 -0
- package/dist/commonjs/version.d.ts +1 -0
- package/dist/commonjs/version.js +5 -0
- package/dist/commonjs/version.js.map +1 -0
- package/dist/esm/extensions/audioWaveform.d.ts +6 -0
- package/dist/esm/extensions/audioWaveform.js +42 -0
- package/dist/esm/extensions/audioWaveform.js.map +1 -0
- package/dist/esm/extensions/core/additionalFiles.d.ts +5 -0
- package/dist/esm/extensions/core/additionalFiles.js +61 -0
- package/dist/esm/extensions/core/additionalFiles.js.map +1 -0
- package/dist/esm/extensions/core/additionalPackages.d.ts +15 -0
- package/dist/esm/extensions/core/additionalPackages.js +74 -0
- package/dist/esm/extensions/core/additionalPackages.js.map +1 -0
- package/dist/esm/extensions/core/syncEnvVars.d.ts +16 -0
- package/dist/esm/extensions/core/syncEnvVars.js +126 -0
- package/dist/esm/extensions/core/syncEnvVars.js.map +1 -0
- package/dist/esm/extensions/core.d.ts +3 -0
- package/dist/esm/extensions/core.js +4 -0
- package/dist/esm/extensions/core.js.map +1 -0
- package/dist/esm/extensions/index.d.ts +1 -0
- package/dist/esm/extensions/index.js +2 -0
- package/dist/esm/extensions/index.js.map +1 -0
- package/dist/esm/extensions/prisma.d.ts +47 -0
- package/dist/esm/extensions/prisma.js +125 -0
- package/dist/esm/extensions/prisma.js.map +1 -0
- package/dist/esm/extensions/typescript.d.ts +2 -0
- package/dist/esm/extensions/typescript.js +56 -0
- package/dist/esm/extensions/typescript.js.map +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +3 -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 +153 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { binaryForRuntime } from "@trigger.dev/core/v3/build";
|
|
2
|
+
import assert from "node:assert";
|
|
3
|
+
import { existsSync } from "node:fs";
|
|
4
|
+
import { cp, readdir } from "node:fs/promises";
|
|
5
|
+
import { dirname, join, resolve } from "node:path";
|
|
6
|
+
const BINARY_TARGET = "linux-arm64-openssl-3.0.x";
|
|
7
|
+
export function prismaExtension(options) {
|
|
8
|
+
return new PrismaExtension(options);
|
|
9
|
+
}
|
|
10
|
+
export class PrismaExtension {
|
|
11
|
+
options;
|
|
12
|
+
moduleExternals;
|
|
13
|
+
name = "PrismaExtension";
|
|
14
|
+
_resolvedSchemaPath;
|
|
15
|
+
constructor(options) {
|
|
16
|
+
this.options = options;
|
|
17
|
+
this.moduleExternals = ["@prisma/client", "@prisma/engines"];
|
|
18
|
+
}
|
|
19
|
+
externalsForTarget(target) {
|
|
20
|
+
if (target === "dev") {
|
|
21
|
+
return [];
|
|
22
|
+
}
|
|
23
|
+
return this.moduleExternals;
|
|
24
|
+
}
|
|
25
|
+
async onBuildStart(context) {
|
|
26
|
+
if (context.target === "dev") {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
// Resolve the path to the prisma schema, relative to the config.directory
|
|
30
|
+
this._resolvedSchemaPath = resolve(context.workingDir, this.options.schema);
|
|
31
|
+
context.logger.debug(`Resolved the prisma schema to: ${this._resolvedSchemaPath}`);
|
|
32
|
+
// Check that the prisma schema exists
|
|
33
|
+
if (!existsSync(this._resolvedSchemaPath)) {
|
|
34
|
+
throw new Error(`PrismaExtension could not find the prisma schema at ${this._resolvedSchemaPath}. Make sure the path is correct: ${this.options.schema}, relative to the working dir ${context.workingDir}`);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
async onBuildComplete(context, manifest) {
|
|
38
|
+
if (context.target === "dev") {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
assert(this._resolvedSchemaPath, "Resolved schema path is not set");
|
|
42
|
+
context.logger.debug("Looking for @prisma/client in the externals", {
|
|
43
|
+
externals: manifest.externals,
|
|
44
|
+
});
|
|
45
|
+
const prismaExternal = manifest.externals?.find((external) => external.name === "@prisma/client");
|
|
46
|
+
const version = prismaExternal?.version ?? this.options.version;
|
|
47
|
+
if (!version) {
|
|
48
|
+
throw new Error(`PrismaExtension could not determine the version of @prisma/client. It's possible that the @prisma/client was not used in the project. If this isn't the case, please provide a version in the PrismaExtension options.`);
|
|
49
|
+
}
|
|
50
|
+
context.logger.debug(`PrismaExtension is generating the Prisma client for version ${version}`);
|
|
51
|
+
const usingSchemaFolder = dirname(this._resolvedSchemaPath).endsWith("schema");
|
|
52
|
+
const commands = [];
|
|
53
|
+
let prismaDir;
|
|
54
|
+
const generatorFlag = this.options.clientGenerator
|
|
55
|
+
? `--generator=${this.options.clientGenerator}`
|
|
56
|
+
: "";
|
|
57
|
+
if (usingSchemaFolder) {
|
|
58
|
+
const schemaDir = dirname(this._resolvedSchemaPath);
|
|
59
|
+
prismaDir = dirname(schemaDir);
|
|
60
|
+
context.logger.debug(`Using the schema folder: ${schemaDir}`);
|
|
61
|
+
// Find all the files in schemaDir that end with .prisma (excluding the schema.prisma file)
|
|
62
|
+
const prismaFiles = await readdir(schemaDir).then((files) => files.filter((file) => file.endsWith(".prisma")));
|
|
63
|
+
context.logger.debug(`Found prisma files in the schema folder`, {
|
|
64
|
+
prismaFiles,
|
|
65
|
+
});
|
|
66
|
+
const schemaDestinationPath = join(manifest.outputPath, "prisma", "schema");
|
|
67
|
+
const allPrismaFiles = [...prismaFiles];
|
|
68
|
+
for (const file of allPrismaFiles) {
|
|
69
|
+
const destination = join(schemaDestinationPath, file);
|
|
70
|
+
const source = join(schemaDir, file);
|
|
71
|
+
context.logger.debug(`Copying the prisma schema from ${source} to ${destination}`);
|
|
72
|
+
await cp(source, destination);
|
|
73
|
+
}
|
|
74
|
+
commands.push(`${binaryForRuntime(manifest.runtime)} node_modules/prisma/build/index.js generate ${generatorFlag}` // Don't add the --schema flag or this will fail
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
prismaDir = dirname(this._resolvedSchemaPath);
|
|
79
|
+
// Now we need to add a layer that:
|
|
80
|
+
// Copies the prisma schema to the build outputPath
|
|
81
|
+
// Adds the `prisma` CLI dependency to the dependencies
|
|
82
|
+
// Adds the `prisma generate` command, which generates the Prisma client
|
|
83
|
+
const schemaDestinationPath = join(manifest.outputPath, "prisma", "schema.prisma");
|
|
84
|
+
// Copy the prisma schema to the build output path
|
|
85
|
+
context.logger.debug(`Copying the prisma schema from ${this._resolvedSchemaPath} to ${schemaDestinationPath}`);
|
|
86
|
+
await cp(this._resolvedSchemaPath, schemaDestinationPath);
|
|
87
|
+
commands.push(`${binaryForRuntime(manifest.runtime)} node_modules/prisma/build/index.js generate --schema=./prisma/schema.prisma ${generatorFlag}`);
|
|
88
|
+
}
|
|
89
|
+
const env = {};
|
|
90
|
+
if (this.options.migrate) {
|
|
91
|
+
// Copy the migrations directory to the build output path
|
|
92
|
+
const migrationsDir = join(prismaDir, "migrations");
|
|
93
|
+
const migrationsDestinationPath = join(manifest.outputPath, "prisma", "migrations");
|
|
94
|
+
context.logger.debug(`Copying the prisma migrations from ${migrationsDir} to ${migrationsDestinationPath}`);
|
|
95
|
+
await cp(migrationsDir, migrationsDestinationPath, { recursive: true });
|
|
96
|
+
commands.push(`${binaryForRuntime(manifest.runtime)} node_modules/prisma/build/index.js migrate deploy`);
|
|
97
|
+
env.DATABASE_URL = manifest.deploy.env?.DATABASE_URL;
|
|
98
|
+
if (this.options.directUrlEnvVarName) {
|
|
99
|
+
env[this.options.directUrlEnvVarName] =
|
|
100
|
+
manifest.deploy.env?.[this.options.directUrlEnvVarName];
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
env.DIRECT_URL = manifest.deploy.env?.DIRECT_URL;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
context.logger.debug(`Adding the prisma layer with the following commands`, {
|
|
107
|
+
commands,
|
|
108
|
+
env,
|
|
109
|
+
dependencies: {
|
|
110
|
+
prisma: version,
|
|
111
|
+
},
|
|
112
|
+
});
|
|
113
|
+
context.addLayer({
|
|
114
|
+
id: "prisma",
|
|
115
|
+
commands,
|
|
116
|
+
dependencies: {
|
|
117
|
+
prisma: version,
|
|
118
|
+
},
|
|
119
|
+
build: {
|
|
120
|
+
env,
|
|
121
|
+
},
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=prisma.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../../src/extensions/prisma.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import typescriptPkg from "typescript";
|
|
3
|
+
const { transpileModule, ModuleKind } = typescriptPkg;
|
|
4
|
+
const decoratorMatcher = new RegExp(/((?<![(\s]\s*['"])@\w[.[\]\w\d]*\s*(?![;])[((?=\s)])/);
|
|
5
|
+
export function emitDecoratorMetadata() {
|
|
6
|
+
return {
|
|
7
|
+
name: "emitDecoratorMetadata",
|
|
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
|
+
},
|
|
52
|
+
});
|
|
53
|
+
},
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=typescript.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const VERSION = "0.0.0";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@trigger.dev/build",
|
|
3
|
+
"version": "0.0.0-cli-e2e-20240910161832",
|
|
4
|
+
"description": "trigger.dev build extensions",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"publishConfig": {
|
|
7
|
+
"access": "public"
|
|
8
|
+
},
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "https://github.com/triggerdotdev/trigger.dev",
|
|
12
|
+
"directory": "packages/build"
|
|
13
|
+
},
|
|
14
|
+
"type": "module",
|
|
15
|
+
"files": [
|
|
16
|
+
"dist"
|
|
17
|
+
],
|
|
18
|
+
"tshy": {
|
|
19
|
+
"selfLink": false,
|
|
20
|
+
"main": true,
|
|
21
|
+
"module": true,
|
|
22
|
+
"project": "./tsconfig.src.json",
|
|
23
|
+
"exports": {
|
|
24
|
+
"./package.json": "./package.json",
|
|
25
|
+
".": "./src/index.ts",
|
|
26
|
+
"./extensions": "./src/extensions/index.ts",
|
|
27
|
+
"./extensions/core": "./src/extensions/core.ts",
|
|
28
|
+
"./extensions/prisma": "./src/extensions/prisma.ts",
|
|
29
|
+
"./extensions/audioWaveform": "./src/extensions/audioWaveform.ts",
|
|
30
|
+
"./extensions/typescript": "./src/extensions/typescript.ts"
|
|
31
|
+
},
|
|
32
|
+
"sourceDialects": [
|
|
33
|
+
"@triggerdotdev/source"
|
|
34
|
+
]
|
|
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
|
+
},
|
|
55
|
+
"dependencies": {
|
|
56
|
+
"@trigger.dev/core": "0.0.0-cli-e2e-20240910161832",
|
|
57
|
+
"pkg-types": "^1.1.3",
|
|
58
|
+
"tinyglobby": "^0.2.2",
|
|
59
|
+
"tsconfck": "3.1.3"
|
|
60
|
+
},
|
|
61
|
+
"devDependencies": {
|
|
62
|
+
"@types/node": "20.14.14",
|
|
63
|
+
"rimraf": "6.0.1",
|
|
64
|
+
"tshy": "^3.0.2",
|
|
65
|
+
"typescript": "^5.5.4",
|
|
66
|
+
"tsx": "4.17.0",
|
|
67
|
+
"esbuild": "^0.23.0",
|
|
68
|
+
"@arethetypeswrong/cli": "^0.15.4"
|
|
69
|
+
},
|
|
70
|
+
"engines": {
|
|
71
|
+
"node": ">=18.20.0"
|
|
72
|
+
},
|
|
73
|
+
"exports": {
|
|
74
|
+
"./package.json": "./package.json",
|
|
75
|
+
".": {
|
|
76
|
+
"import": {
|
|
77
|
+
"@triggerdotdev/source": "./src/index.ts",
|
|
78
|
+
"types": "./dist/esm/index.d.ts",
|
|
79
|
+
"default": "./dist/esm/index.js"
|
|
80
|
+
},
|
|
81
|
+
"require": {
|
|
82
|
+
"types": "./dist/commonjs/index.d.ts",
|
|
83
|
+
"default": "./dist/commonjs/index.js"
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"./extensions": {
|
|
87
|
+
"import": {
|
|
88
|
+
"@triggerdotdev/source": "./src/extensions/index.ts",
|
|
89
|
+
"types": "./dist/esm/extensions/index.d.ts",
|
|
90
|
+
"default": "./dist/esm/extensions/index.js"
|
|
91
|
+
},
|
|
92
|
+
"require": {
|
|
93
|
+
"types": "./dist/commonjs/extensions/index.d.ts",
|
|
94
|
+
"default": "./dist/commonjs/extensions/index.js"
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
"./extensions/core": {
|
|
98
|
+
"import": {
|
|
99
|
+
"@triggerdotdev/source": "./src/extensions/core.ts",
|
|
100
|
+
"types": "./dist/esm/extensions/core.d.ts",
|
|
101
|
+
"default": "./dist/esm/extensions/core.js"
|
|
102
|
+
},
|
|
103
|
+
"require": {
|
|
104
|
+
"types": "./dist/commonjs/extensions/core.d.ts",
|
|
105
|
+
"default": "./dist/commonjs/extensions/core.js"
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
"./extensions/prisma": {
|
|
109
|
+
"import": {
|
|
110
|
+
"@triggerdotdev/source": "./src/extensions/prisma.ts",
|
|
111
|
+
"types": "./dist/esm/extensions/prisma.d.ts",
|
|
112
|
+
"default": "./dist/esm/extensions/prisma.js"
|
|
113
|
+
},
|
|
114
|
+
"require": {
|
|
115
|
+
"types": "./dist/commonjs/extensions/prisma.d.ts",
|
|
116
|
+
"default": "./dist/commonjs/extensions/prisma.js"
|
|
117
|
+
}
|
|
118
|
+
},
|
|
119
|
+
"./extensions/audioWaveform": {
|
|
120
|
+
"import": {
|
|
121
|
+
"@triggerdotdev/source": "./src/extensions/audioWaveform.ts",
|
|
122
|
+
"types": "./dist/esm/extensions/audioWaveform.d.ts",
|
|
123
|
+
"default": "./dist/esm/extensions/audioWaveform.js"
|
|
124
|
+
},
|
|
125
|
+
"require": {
|
|
126
|
+
"types": "./dist/commonjs/extensions/audioWaveform.d.ts",
|
|
127
|
+
"default": "./dist/commonjs/extensions/audioWaveform.js"
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"./extensions/typescript": {
|
|
131
|
+
"import": {
|
|
132
|
+
"@triggerdotdev/source": "./src/extensions/typescript.ts",
|
|
133
|
+
"types": "./dist/esm/extensions/typescript.d.ts",
|
|
134
|
+
"default": "./dist/esm/extensions/typescript.js"
|
|
135
|
+
},
|
|
136
|
+
"require": {
|
|
137
|
+
"types": "./dist/commonjs/extensions/typescript.d.ts",
|
|
138
|
+
"default": "./dist/commonjs/extensions/typescript.js"
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
"main": "./dist/commonjs/index.js",
|
|
143
|
+
"types": "./dist/commonjs/index.d.ts",
|
|
144
|
+
"module": "./dist/esm/index.js",
|
|
145
|
+
"scripts": {
|
|
146
|
+
"clean": "rimraf dist",
|
|
147
|
+
"build": "tshy && pnpm run update-version",
|
|
148
|
+
"dev": "tshy --watch",
|
|
149
|
+
"typecheck": "tsc --noEmit -p tsconfig.src.json",
|
|
150
|
+
"update-version": "tsx ../../scripts/updateVersion.ts",
|
|
151
|
+
"check-exports": "attw --pack ."
|
|
152
|
+
}
|
|
153
|
+
}
|