create-prisma 0.11.1 → 0.11.2-pr.84.295.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/cli.mjs +1 -1
- package/dist/{create-CT9uJcQ1.mjs → create-Cp4cObcy.mjs} +66 -32
- package/dist/index.mjs +2 -2
- package/package.json +1 -1
- package/templates/create/_shared/tsdown.config.ts.hbs +37 -0
- package/templates/create/elysia/package.json.hbs +4 -1
- package/templates/create/hono/package.json.hbs +4 -1
- package/templates/create/minimal/package.json.hbs +6 -1
- package/templates/create/nest/package.json.hbs +4 -1
package/dist/cli.mjs
CHANGED
|
@@ -52,21 +52,12 @@ function createCommandFailureResult(stage, message, project) {
|
|
|
52
52
|
|
|
53
53
|
//#endregion
|
|
54
54
|
//#region src/telemetry/client.ts
|
|
55
|
-
const TELEMETRY_API_KEY = "
|
|
55
|
+
const TELEMETRY_API_KEY = "";
|
|
56
56
|
const TELEMETRY_HOST = "https://us.i.posthog.com";
|
|
57
57
|
const TELEMETRY_CONFIG_FILE = "telemetry.json";
|
|
58
58
|
const UUID_V4_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
59
|
-
function isTruthyEnvValue(value) {
|
|
60
|
-
return [
|
|
61
|
-
"1",
|
|
62
|
-
"true",
|
|
63
|
-
"yes",
|
|
64
|
-
"on"
|
|
65
|
-
].includes(String(value ?? "").trim().toLowerCase());
|
|
66
|
-
}
|
|
67
59
|
function shouldDisableTelemetry() {
|
|
68
|
-
|
|
69
|
-
return process.env.CREATE_PRISMA_DISABLE_TELEMETRY !== void 0 || process.env.CREATE_PRISMA_TELEMETRY_DISABLED !== void 0 || process.env.DO_NOT_TRACK !== void 0;
|
|
60
|
+
return true;
|
|
70
61
|
}
|
|
71
62
|
function getTelemetryConfigDir() {
|
|
72
63
|
if (process.platform === "darwin") return path.join(os.homedir(), "Library", "Application Support", "create-prisma");
|
|
@@ -88,7 +79,7 @@ async function getAnonymousId() {
|
|
|
88
79
|
}
|
|
89
80
|
function getCommonProperties() {
|
|
90
81
|
return {
|
|
91
|
-
"cli-version": "0.11.1",
|
|
82
|
+
"cli-version": "0.11.2-pr.84.295.1",
|
|
92
83
|
"node-version": process.version,
|
|
93
84
|
platform: process.platform,
|
|
94
85
|
arch: process.arch
|
|
@@ -420,8 +411,47 @@ function getPackageExecutionArgs(packageManager, commandArgs) {
|
|
|
420
411
|
};
|
|
421
412
|
}
|
|
422
413
|
}
|
|
423
|
-
function
|
|
424
|
-
|
|
414
|
+
function getLocalPackageBinaryArgs(packageManager, binaryName, binaryArgs) {
|
|
415
|
+
switch (packageManager) {
|
|
416
|
+
case "deno": return {
|
|
417
|
+
command: "deno",
|
|
418
|
+
args: [
|
|
419
|
+
"run",
|
|
420
|
+
"-A",
|
|
421
|
+
DENO_ALLOW_FRESH_DEPENDENCIES,
|
|
422
|
+
`npm:${binaryName}`,
|
|
423
|
+
...binaryArgs
|
|
424
|
+
]
|
|
425
|
+
};
|
|
426
|
+
case "pnpm": return {
|
|
427
|
+
command: "pnpm",
|
|
428
|
+
args: [
|
|
429
|
+
"exec",
|
|
430
|
+
binaryName,
|
|
431
|
+
...binaryArgs
|
|
432
|
+
]
|
|
433
|
+
};
|
|
434
|
+
case "yarn": return {
|
|
435
|
+
command: "yarn",
|
|
436
|
+
args: [binaryName, ...binaryArgs]
|
|
437
|
+
};
|
|
438
|
+
case "bun": return {
|
|
439
|
+
command: "bun",
|
|
440
|
+
args: [binaryName, ...binaryArgs]
|
|
441
|
+
};
|
|
442
|
+
default: return {
|
|
443
|
+
command: "npm",
|
|
444
|
+
args: [
|
|
445
|
+
"exec",
|
|
446
|
+
binaryName,
|
|
447
|
+
"--",
|
|
448
|
+
...binaryArgs
|
|
449
|
+
]
|
|
450
|
+
};
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
function getLocalPackageBinaryCommand(packageManager, binaryName, binaryArgs) {
|
|
454
|
+
const execution = getLocalPackageBinaryArgs(packageManager, binaryName, binaryArgs);
|
|
425
455
|
return [execution.command, ...execution.args].join(" ");
|
|
426
456
|
}
|
|
427
457
|
function getRunScriptArgs(packageManager, scriptName) {
|
|
@@ -518,6 +548,12 @@ async function renderTemplateTree(opts) {
|
|
|
518
548
|
|
|
519
549
|
//#endregion
|
|
520
550
|
//#region src/templates/render-create-template.ts
|
|
551
|
+
const tsdownEntries = {
|
|
552
|
+
minimal: "src/index.ts",
|
|
553
|
+
hono: "src/index.ts",
|
|
554
|
+
elysia: "src/index.ts",
|
|
555
|
+
nest: "src/main.ts"
|
|
556
|
+
};
|
|
521
557
|
function getCreateTemplateDir(template) {
|
|
522
558
|
return resolveTemplatesDir(`templates/create/${template}`);
|
|
523
559
|
}
|
|
@@ -530,7 +566,8 @@ function createTemplateContext(projectName, template, provider, authoring, packa
|
|
|
530
566
|
template,
|
|
531
567
|
provider,
|
|
532
568
|
authoring,
|
|
533
|
-
packageManager
|
|
569
|
+
packageManager,
|
|
570
|
+
tsdownEntry: tsdownEntries[template] ?? null
|
|
534
571
|
};
|
|
535
572
|
}
|
|
536
573
|
async function scaffoldCreateSharedTemplates(opts) {
|
|
@@ -564,13 +601,13 @@ const dependencyVersionMap = {
|
|
|
564
601
|
alchemy: "2.0.0-beta.74",
|
|
565
602
|
arktype: "^2.2.3",
|
|
566
603
|
dotenv: "^17.4.2",
|
|
567
|
-
esbuild: "^0.28.1",
|
|
568
604
|
effect: "4.0.0-rc.112",
|
|
569
605
|
mongodb: "^7.1.0",
|
|
570
606
|
"mongodb-memory-server": "^11.1.0",
|
|
571
607
|
nitro: "^3.0.260610-beta",
|
|
572
608
|
prisma: "latest",
|
|
573
609
|
"temporal-polyfill": "^1.0.4",
|
|
610
|
+
tsdown: "^0.22.14",
|
|
574
611
|
tsx: "^4.21.0",
|
|
575
612
|
typescript: "^5.9.3"
|
|
576
613
|
};
|
|
@@ -579,7 +616,7 @@ const PRISMA_DENO_CLI_PACKAGE = PRISMA_PLATFORM_CLI_PACKAGE;
|
|
|
579
616
|
function getDependencyVersion(packageName) {
|
|
580
617
|
return dependencyVersionMap[packageName];
|
|
581
618
|
}
|
|
582
|
-
function
|
|
619
|
+
function usesTsdown(template) {
|
|
583
620
|
return template === "minimal" || template === "hono" || template === "elysia" || template === "nest";
|
|
584
621
|
}
|
|
585
622
|
function getCreateTemplateDependencies(template, _packageManager) {
|
|
@@ -589,8 +626,10 @@ function getCreateTemplateDependencies(template, _packageManager) {
|
|
|
589
626
|
"alchemy"
|
|
590
627
|
];
|
|
591
628
|
const devDependencies = [];
|
|
592
|
-
if (
|
|
593
|
-
|
|
629
|
+
if (usesTsdown(template)) {
|
|
630
|
+
devDependencies.push("tsdown");
|
|
631
|
+
devDependencies.push("tsx");
|
|
632
|
+
}
|
|
594
633
|
if (template === "minimal") devDependencies.push("typescript");
|
|
595
634
|
if (template === "elysia") {
|
|
596
635
|
dependencies.push("@elysiajs/node");
|
|
@@ -822,7 +861,7 @@ function parsePrismaCliEnvelope(output) {
|
|
|
822
861
|
throw new Error("Prisma CLI returned output that is not a valid result envelope.");
|
|
823
862
|
}
|
|
824
863
|
function getPrismaCliArgs(packageManager, args) {
|
|
825
|
-
return
|
|
864
|
+
return getLocalPackageBinaryArgs(packageManager, "prisma", args);
|
|
826
865
|
}
|
|
827
866
|
async function runPrismaJsonCommand(options) {
|
|
828
867
|
const invocation = getPrismaCliArgs(options.packageManager, [
|
|
@@ -875,11 +914,7 @@ async function ensureAuthentication(options) {
|
|
|
875
914
|
});
|
|
876
915
|
const authState = await whoami();
|
|
877
916
|
if (authState.authenticated) return authState;
|
|
878
|
-
const loginCommand =
|
|
879
|
-
PRISMA_PLATFORM_CLI_PACKAGE,
|
|
880
|
-
"auth",
|
|
881
|
-
"login"
|
|
882
|
-
]);
|
|
917
|
+
const loginCommand = getLocalPackageBinaryCommand(options.packageManager, "prisma", ["auth", "login"]);
|
|
883
918
|
if (!options.allowInteractiveLogin || process.stdin.isTTY !== true) throw new ClassifiedCreateError("not_authenticated", `Sign in first with ${loginCommand}, then run ${getRunScriptCommand(options.packageManager, "deploy")}.`);
|
|
884
919
|
options.beforeInteractiveLogin?.();
|
|
885
920
|
log.info("Sign in to Prisma to deploy.", { output: options.output });
|
|
@@ -1091,11 +1126,7 @@ async function deployNewProjectWithComposer(options) {
|
|
|
1091
1126
|
clearProgress();
|
|
1092
1127
|
failureStage = "composer_deploy";
|
|
1093
1128
|
failureReason = "composer_deploy_failed";
|
|
1094
|
-
const deployCommand =
|
|
1095
|
-
PRISMA_PLATFORM_CLI_PACKAGE,
|
|
1096
|
-
"deploy",
|
|
1097
|
-
"module.ts"
|
|
1098
|
-
]);
|
|
1129
|
+
const deployCommand = getLocalPackageBinaryCommand(options.packageManager, "prisma", ["deploy", "module.ts"]);
|
|
1099
1130
|
if (options.verbose) log.step(`Deploying to Prisma with ${deployCommand}.`, { output });
|
|
1100
1131
|
else {
|
|
1101
1132
|
deploymentLog = taskLog({
|
|
@@ -1329,6 +1360,9 @@ function getInitTarget(provider) {
|
|
|
1329
1360
|
function getPrismaCliInvocation(packageManager, args) {
|
|
1330
1361
|
return getPackageExecutionArgs(packageManager, [packageManager === "deno" ? PRISMA_DENO_CLI_PACKAGE : PRISMA_PLATFORM_CLI_PACKAGE, ...args]);
|
|
1331
1362
|
}
|
|
1363
|
+
function getInstalledPrismaCliInvocation(packageManager, args) {
|
|
1364
|
+
return getLocalPackageBinaryArgs(packageManager, "prisma", args);
|
|
1365
|
+
}
|
|
1332
1366
|
async function runPrismaInit(context, projectDir) {
|
|
1333
1367
|
const args = [
|
|
1334
1368
|
"orm",
|
|
@@ -1360,7 +1394,7 @@ async function runPrismaInit(context, projectDir) {
|
|
|
1360
1394
|
}
|
|
1361
1395
|
async function initializeAgentSkills(context, projectDir) {
|
|
1362
1396
|
if (context.packageManager === "deno") return;
|
|
1363
|
-
const invocation =
|
|
1397
|
+
const invocation = getInstalledPrismaCliInvocation(context.packageManager, [
|
|
1364
1398
|
"init",
|
|
1365
1399
|
"--yes",
|
|
1366
1400
|
"--no-interactive"
|
|
@@ -1403,7 +1437,7 @@ async function ensureComposerTypeScriptOptions(projectDir) {
|
|
|
1403
1437
|
await fs.writeFile(tsconfigPath, updated, "utf8");
|
|
1404
1438
|
}
|
|
1405
1439
|
async function runPrismaCli(context, projectDir, args) {
|
|
1406
|
-
const invocation =
|
|
1440
|
+
const invocation = getInstalledPrismaCliInvocation(context.packageManager, args);
|
|
1407
1441
|
if (context.verbose) log.step([invocation.command, ...invocation.args].join(" "), { output: context.output });
|
|
1408
1442
|
await runSetupCommand({
|
|
1409
1443
|
command: invocation.command,
|
package/dist/index.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { a as DatabaseProviderSchema, i as CreateTemplateSchema, n as AuthoringStyleSchema, o as PackageManagerSchema, r as CreateCommandInputSchema, s as CREATE_PRISMA_RESULT_SCHEMA_VERSION, t as runCreateCommand } from "./create-
|
|
2
|
+
import { a as DatabaseProviderSchema, i as CreateTemplateSchema, n as AuthoringStyleSchema, o as PackageManagerSchema, r as CreateCommandInputSchema, s as CREATE_PRISMA_RESULT_SCHEMA_VERSION, t as runCreateCommand } from "./create-Cp4cObcy.mjs";
|
|
3
3
|
import { os } from "@orpc/server";
|
|
4
4
|
import { createCli } from "trpc-cli";
|
|
5
5
|
import { z } from "zod";
|
|
6
6
|
|
|
7
7
|
//#region src/index.ts
|
|
8
|
-
const CLI_VERSION = "0.11.1";
|
|
8
|
+
const CLI_VERSION = "0.11.2-pr.84.295.1";
|
|
9
9
|
const CreateCliInputSchema = z.tuple([z.string().trim().min(1, "Please enter a valid project name").optional().describe("Project name / directory"), CreateCommandInputSchema]);
|
|
10
10
|
function normalizeCreateCliInput(input) {
|
|
11
11
|
const [projectName, options] = input;
|
package/package.json
CHANGED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{{#unless (eq packageManager "deno")}}
|
|
2
|
+
{{#if tsdownEntry}}
|
|
3
|
+
import { isBuiltin } from "node:module";
|
|
4
|
+
import { defineConfig } from "tsdown";
|
|
5
|
+
|
|
6
|
+
{{#if (eq template "nest")}}
|
|
7
|
+
const optionalNestDependencies = [
|
|
8
|
+
/^@nestjs\/microservices(?:\/|$)/,
|
|
9
|
+
/^@nestjs\/platform-socket\.io(?:\/|$)/,
|
|
10
|
+
/^@nestjs\/websockets(?:\/|$)/,
|
|
11
|
+
/^class-transformer(?:\/|$)/,
|
|
12
|
+
/^class-validator(?:\/|$)/,
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
{{/if}}
|
|
16
|
+
export default defineConfig({
|
|
17
|
+
entry: { server: "{{tsdownEntry}}" },
|
|
18
|
+
platform: "node",
|
|
19
|
+
target: "node22.18",
|
|
20
|
+
format: "esm",
|
|
21
|
+
clean: true,
|
|
22
|
+
hash: false,
|
|
23
|
+
outputOptions: {
|
|
24
|
+
codeSplitting: false,
|
|
25
|
+
},
|
|
26
|
+
deps: {
|
|
27
|
+
onlyBundle: false,
|
|
28
|
+
alwaysBundle: (id) =>
|
|
29
|
+
!isBuiltin(id){{#if (eq template "nest")}} &&
|
|
30
|
+
!optionalNestDependencies.some((pattern) => pattern.test(id)){{/if}},
|
|
31
|
+
{{#if (eq template "nest")}}
|
|
32
|
+
neverBundle: optionalNestDependencies,
|
|
33
|
+
{{/if}}
|
|
34
|
+
},
|
|
35
|
+
});
|
|
36
|
+
{{/if}}
|
|
37
|
+
{{/unless}}
|
|
@@ -5,9 +5,12 @@
|
|
|
5
5
|
"packageManager": "{{packageManagerManifestValue packageManager}}",
|
|
6
6
|
{{/if}}
|
|
7
7
|
"type": "module",
|
|
8
|
+
"engines": {
|
|
9
|
+
"node": "^22.18.0 || >=24.11.0"
|
|
10
|
+
},
|
|
8
11
|
"scripts": {
|
|
9
12
|
"dev": "tsx watch src/index.ts",
|
|
10
|
-
"build": "
|
|
13
|
+
"build": "tsdown",
|
|
11
14
|
"start": "node dist/server.mjs"
|
|
12
15
|
},
|
|
13
16
|
"dependencies": {
|
|
@@ -5,9 +5,12 @@
|
|
|
5
5
|
"packageManager": "{{packageManagerManifestValue packageManager}}",
|
|
6
6
|
{{/if}}
|
|
7
7
|
"type": "module",
|
|
8
|
+
"engines": {
|
|
9
|
+
"node": "^22.18.0 || >=24.11.0"
|
|
10
|
+
},
|
|
8
11
|
"scripts": {
|
|
9
12
|
"dev": "{{runtimeScript packageManager "dev" "src/index.ts" "dist/src/index.js"}}",
|
|
10
|
-
"build": "
|
|
13
|
+
"build": "tsdown",
|
|
11
14
|
"start": "node dist/server.mjs"
|
|
12
15
|
},
|
|
13
16
|
"dependencies": {
|
|
@@ -5,6 +5,11 @@
|
|
|
5
5
|
"packageManager": "{{packageManagerManifestValue packageManager}}",
|
|
6
6
|
{{/if}}
|
|
7
7
|
"type": "module",
|
|
8
|
+
{{#unless (eq packageManager "deno")}}
|
|
9
|
+
"engines": {
|
|
10
|
+
"node": "^22.18.0 || >=24.11.0"
|
|
11
|
+
},
|
|
12
|
+
{{/unless}}
|
|
8
13
|
"scripts": {
|
|
9
14
|
{{#if (eq packageManager "deno")}}
|
|
10
15
|
"dev": "{{runtimeScript packageManager "dev" "src/index.ts" "dist/server.mjs"}}",
|
|
@@ -12,7 +17,7 @@
|
|
|
12
17
|
"start": "{{runtimeScript packageManager "start" "src/index.ts" "dist/server.mjs"}}"
|
|
13
18
|
{{else}}
|
|
14
19
|
"dev": "tsx watch src/index.ts",
|
|
15
|
-
"build": "
|
|
20
|
+
"build": "tsdown",
|
|
16
21
|
"start": "node dist/server.mjs"
|
|
17
22
|
{{/if}}
|
|
18
23
|
},
|
|
@@ -5,9 +5,12 @@
|
|
|
5
5
|
"packageManager": "{{packageManagerManifestValue packageManager}}",
|
|
6
6
|
{{/if}}
|
|
7
7
|
"type": "module",
|
|
8
|
+
"engines": {
|
|
9
|
+
"node": "^22.18.0 || >=24.11.0"
|
|
10
|
+
},
|
|
8
11
|
"scripts": {
|
|
9
12
|
"dev": "{{runtimeScript packageManager "dev" "src/main.ts" "dist/main.js"}}",
|
|
10
|
-
"build": "
|
|
13
|
+
"build": "tsdown",
|
|
11
14
|
"start": "node dist/server.mjs"
|
|
12
15
|
},
|
|
13
16
|
"dependencies": {
|