@prisma/migrate 6.6.0-dev.10 → 6.6.0-dev.100
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.js +3 -3
- package/dist/Migrate.js +9 -6
- package/dist/SchemaEngine.js +0 -28
- package/dist/SchemaEngineCLI.js +29 -0
- package/dist/{utils/getSchemaPathAndPrint.js → SchemaEngineWasm.js} +8 -8
- package/dist/bin.js +52 -50
- package/dist/chunk-23DZXSTI.js +62 -0
- package/dist/{chunk-WWAWV7DQ.js → chunk-2ESYSVXG.js} +3 -27
- package/dist/{chunk-LKTTJWFT.js → chunk-2R6DII47.js} +5 -5
- package/dist/chunk-33LPBNDX.js +1399 -0
- package/dist/{chunk-MKK3GSDF.js → chunk-344G2PKM.js} +9 -9
- package/dist/{chunk-V3ZMNXZC.js → chunk-5LKIRKDL.js} +307 -382
- package/dist/{chunk-LOGAFLCN.js → chunk-5R44VVVX.js} +29 -29
- package/dist/{chunk-DJMFXNR4.js → chunk-74LUB4XX.js} +56 -57
- package/dist/{chunk-GG54LOYV.js → chunk-A4FQW4A5.js} +54 -50
- package/dist/{chunk-RP2N6UXA.js → chunk-AI6DH66U.js} +6 -6
- package/dist/{chunk-A6PMXMMT.js → chunk-AUGZZ6RT.js} +105 -13
- package/dist/{chunk-G2XUUMKH.js → chunk-B4SUSDC2.js} +31 -39
- package/dist/{chunk-N4XTKFY6.js → chunk-CLSF7VUT.js} +42 -38
- package/dist/{chunk-2B4IAB6L.js → chunk-CNCVJ2IN.js} +377 -532
- package/dist/{chunk-IR55GBON.js → chunk-CU5UT2ED.js} +19 -18
- package/dist/{chunk-CQZFVAXC.js → chunk-CYEVXXRH.js} +51 -47
- package/dist/{chunk-W2SZNLK4.js → chunk-EJG7GKM7.js} +37 -39
- package/dist/{chunk-5PSO7BDO.js → chunk-EJUXYFV3.js} +15 -15
- package/dist/{chunk-KS7IEA6Z.js → chunk-HIDSEBVV.js} +55 -54
- package/dist/{chunk-ZOEKRXDP.js → chunk-I3LT2PO3.js} +35 -57
- package/dist/{chunk-N3KYWSX2.js → chunk-IEEJZC3B.js} +56 -49
- package/dist/{chunk-MCWCB2AX.js → chunk-IINN7QUV.js} +170 -643
- package/dist/chunk-IK3BVD3Y.js +233 -0
- package/dist/{chunk-255BRND3.js → chunk-KRQEFTDT.js} +6 -6
- package/dist/{chunk-HCBZB4XC.js → chunk-KW633S3Y.js} +56 -52
- package/dist/{chunk-VVKOFN3Y.js → chunk-LLO7YF56.js} +44 -46
- package/dist/{chunk-VZ23KD5C.js → chunk-NGQA5JTN.js} +8 -10
- package/dist/{chunk-MATFO4ZW.js → chunk-OEWQACEH.js} +38 -39
- package/dist/chunk-PQKZ53DW.js +76 -0
- package/dist/{chunk-EGPJABTW.js → chunk-QVMYNWAN.js} +257 -103
- package/dist/{chunk-WI2A2TQE.js → chunk-SO3VXCZV.js} +93 -92
- package/dist/{chunk-V5TUSOJX.js → chunk-SQKGZVG3.js} +45 -45
- package/dist/chunk-URKH6SE2.js +479 -0
- package/dist/{chunk-DLLXDCI2.js → chunk-VAJ4VX67.js} +5 -6
- package/dist/{chunk-5GVIOOXU.js → chunk-W5SQWSLC.js} +378 -533
- package/dist/{chunk-Q3ZLC44N.js → chunk-YBS5GSRF.js} +64 -69
- package/dist/{chunk-OCQGHQED.js → chunk-YBX7R3MT.js} +12 -12
- package/dist/chunk-YSWLN2IJ.js +890 -0
- package/dist/commands/DbCommand.js +3 -3
- package/dist/commands/DbDrop.js +4 -5
- package/dist/commands/DbExecute.js +10 -7
- package/dist/commands/DbPull.js +17 -12
- package/dist/commands/DbPush.js +12 -10
- package/dist/commands/DbSeed.js +4 -5
- package/dist/commands/MigrateCommand.js +3 -3
- package/dist/commands/MigrateDeploy.js +14 -12
- package/dist/commands/MigrateDev.js +17 -15
- package/dist/commands/MigrateDiff.js +13 -10
- package/dist/commands/MigrateReset.js +16 -14
- package/dist/commands/MigrateResolve.js +12 -10
- package/dist/commands/MigrateStatus.js +12 -10
- package/dist/index.js +58 -57
- package/dist/internals/src/Generator.d.ts +23 -5
- package/dist/internals/src/WasmSchemaEngineLoader.d.ts +5 -0
- package/dist/internals/src/cli/checkUnsupportedDataProxy.d.ts +12 -17
- package/dist/internals/src/cli/directoryConfig.d.ts +7 -0
- package/dist/internals/src/cli/getSchema.d.ts +3 -28
- package/dist/internals/src/cli/hashes.d.ts +1 -2
- package/dist/internals/src/cli/schemaContext.d.ts +59 -0
- package/dist/internals/src/client/getClientEngineType.d.ts +1 -1
- package/dist/internals/src/convertCredentials.d.ts +1 -1
- package/dist/internals/src/engine-commands/getConfig.d.ts +1 -5
- package/dist/internals/src/engine-commands/getDmmf.d.ts +3 -6
- package/dist/internals/src/engine-commands/lintSchema.d.ts +1 -1
- package/dist/internals/src/errorReporting.d.ts +0 -1
- package/dist/internals/src/get-generators/getGenerators.d.ts +22 -9
- package/dist/internals/src/get-generators/utils/binaryTypeToEngineType.d.ts +1 -1
- package/dist/internals/src/get-generators/utils/engineTypeToBinaryType.d.ts +1 -1
- package/dist/internals/src/get-generators/utils/fixBinaryTargets.d.ts +1 -1
- package/dist/internals/src/get-generators/utils/getBinaryPathsByVersion.d.ts +1 -1
- package/dist/internals/src/get-generators/utils/getEngineVersionForGenerator.d.ts +1 -1
- package/dist/internals/src/get-generators/utils/printGeneratorConfig.d.ts +1 -1
- package/dist/internals/src/index.d.ts +9 -8
- package/dist/internals/src/migrateTypes.d.ts +63 -0
- package/dist/internals/src/panic.d.ts +1 -4
- package/dist/internals/src/resolvePkg.d.ts +7 -0
- package/dist/internals/src/types.d.ts +1 -1
- package/dist/internals/src/utils/extractPreviewFeatures.d.ts +2 -2
- package/dist/internals/src/utils/getEnvPaths.d.ts +1 -1
- package/dist/internals/src/utils/parseEnvValue.d.ts +1 -1
- package/dist/internals/src/utils/schemaFileInput.d.ts +0 -4
- package/dist/internals/src/utils/toSchemasContainer.d.ts +2 -3
- package/dist/internals/src/wasm.d.ts +3 -1
- package/dist/migrate/src/Migrate.d.ts +18 -7
- package/dist/migrate/src/SchemaEngine.d.ts +20 -50
- package/dist/migrate/src/SchemaEngineCLI.d.ts +139 -0
- package/dist/migrate/src/SchemaEngineWasm.d.ts +134 -0
- package/dist/migrate/src/commands/DbExecute.d.ts +1 -1
- package/dist/migrate/src/commands/DbPull.d.ts +1 -1
- package/dist/migrate/src/commands/DbPush.d.ts +1 -1
- package/dist/migrate/src/commands/MigrateDeploy.d.ts +1 -1
- package/dist/migrate/src/commands/MigrateDev.d.ts +1 -1
- package/dist/migrate/src/commands/MigrateDiff.d.ts +1 -1
- package/dist/migrate/src/commands/MigrateReset.d.ts +1 -1
- package/dist/migrate/src/commands/MigrateResolve.d.ts +1 -1
- package/dist/migrate/src/commands/MigrateStatus.d.ts +1 -1
- package/dist/migrate/src/index.d.ts +2 -2
- package/dist/migrate/src/types.d.ts +19 -19
- package/dist/migrate/src/utils/createMigration.d.ts +21 -0
- package/dist/migrate/src/utils/ensureDatabaseExists.d.ts +4 -6
- package/dist/migrate/src/utils/introspectSql.d.ts +3 -2
- package/dist/migrate/src/utils/listMigrations.d.ts +9 -0
- package/dist/migrate/src/utils/printDatasources.d.ts +1 -1
- package/dist/migrate/src/utils/seed.d.ts +0 -2
- package/dist/migrate/src/views/handleViewsIO.d.ts +2 -2
- package/dist/{multipart-parser-54WEFGGN-NLZG56KM.js → multipart-parser-ASKQAOL4-WZ47HU6G.js} +92 -125
- package/dist/{multipart-parser-NDLECNMN.js → multipart-parser-QCI3Y5IB.js} +66 -68
- package/dist/types.js +1 -1
- package/dist/{typescript-WN4QH2CP.js → typescript-2LKASCMC.js} +33 -33
- package/dist/{typescript-AILDXN3I.js → typescript-H3AVJ6KX.js} +32 -32
- package/dist/utils/byline.js +1 -1
- package/dist/utils/captureStdout.js +3 -3
- package/dist/utils/countModelsAndTypes.js +1 -1
- package/dist/utils/createMigration.js +27 -0
- package/dist/utils/customColors.js +1 -1
- package/dist/utils/ensureDatabaseExists.js +7 -7
- package/dist/utils/errors.js +1 -1
- package/dist/utils/flagErrors.js +1 -1
- package/dist/utils/getDatabaseVersionSafe.js +10 -5
- package/dist/utils/handleEvaluateDataloss.js +1 -1
- package/dist/utils/introspectSql.js +10 -5
- package/dist/utils/isSchemaEmpty.js +1 -1
- package/dist/utils/listMigrations.js +25 -0
- package/dist/utils/now.js +1 -1
- package/dist/utils/printDatasource.js +1 -1
- package/dist/utils/printDatasources.js +5 -5
- package/dist/utils/printFiles.js +5 -5
- package/dist/utils/printIntrospectedSchema.js +1 -1
- package/dist/utils/printMigrationId.js +1 -1
- package/dist/utils/promptForMigrationName.js +3 -3
- package/dist/utils/removeSchemaFiles.js +1 -1
- package/dist/utils/replaceOrAddDatasource.js +1 -1
- package/dist/utils/replaceOrAddDatasource.test.js +1 -1
- package/dist/utils/saveSchemaFiles.js +1 -1
- package/dist/utils/seed.js +4 -7
- package/dist/utils/setupCockroach.js +3 -3
- package/dist/utils/setupMSSQL.js +1478 -707
- package/dist/utils/setupMongo.js +553 -552
- package/dist/utils/setupMysql.js +508 -563
- package/dist/utils/setupPostgres.js +3 -3
- package/dist/utils/spinner.js +4 -3
- package/dist/utils/test-handlePanic.js +1 -30
- package/dist/utils/unixSocket.js +1 -1
- package/dist/views/handleViewsIO.js +3 -3
- package/package.json +12 -11
- package/dist/chunk-GKDFIHM2.js +0 -45
- package/dist/chunk-J46BJQHT.js +0 -268
- package/dist/chunk-KOF4LGTS.js +0 -1817
- package/dist/chunk-YYPMC5FN.js +0 -1407
- package/dist/internals/src/get-generators/generatorResolvers/generatorResolvers.d.ts +0 -15
- package/dist/internals/src/get-generators/generatorResolvers/prisma-client-js/auto-installation/findPrismaClientDir.d.ts +0 -6
- package/dist/internals/src/get-generators/generatorResolvers/prisma-client-js/auto-installation/getPackageCmd.d.ts +0 -9
- package/dist/internals/src/get-generators/generatorResolvers/prisma-client-js/auto-installation/runPackageCmd.d.ts +0 -8
- package/dist/internals/src/get-generators/generatorResolvers/prisma-client-js/check-dependencies/checkTypeScriptVersion.d.ts +0 -6
- package/dist/internals/src/get-generators/generatorResolvers/prisma-client-js/check-dependencies/isYarnUsed.d.ts +0 -1
- package/dist/internals/src/get-generators/generatorResolvers/prisma-client-js/check-dependencies/resolve.d.ts +0 -20
- package/dist/internals/src/get-generators/generatorResolvers/prisma-client-js/check-dependencies/semverLt.d.ts +0 -7
- package/dist/internals/src/get-generators/generatorResolvers/prisma-client-js/prismaClientResolver.d.ts +0 -20
- package/dist/internals/src/get-generators/utils/check-feature-flags/checkFeatureFlags.d.ts +0 -8
- package/dist/migrate/src/utils/getSchemaPathAndPrint.d.ts +0 -10
|
@@ -26,37 +26,75 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_SO3VXCZV_exports = {};
|
|
30
|
+
__export(chunk_SO3VXCZV_exports, {
|
|
31
31
|
DbPull: () => DbPull
|
|
32
32
|
});
|
|
33
|
-
module.exports = __toCommonJS(
|
|
34
|
-
var
|
|
35
|
-
var import_chunk_RTGQXNX6 = require("./chunk-RTGQXNX6.js");
|
|
36
|
-
var import_chunk_RP2N6UXA = require("./chunk-RP2N6UXA.js");
|
|
37
|
-
var import_chunk_AHJ2N6BJ = require("./chunk-AHJ2N6BJ.js");
|
|
33
|
+
module.exports = __toCommonJS(chunk_SO3VXCZV_exports);
|
|
34
|
+
var import_chunk_IINN7QUV = require("./chunk-IINN7QUV.js");
|
|
38
35
|
var import_chunk_JZ75RIMZ = require("./chunk-JZ75RIMZ.js");
|
|
39
36
|
var import_chunk_RR6BKMNO = require("./chunk-RR6BKMNO.js");
|
|
37
|
+
var import_chunk_RTGQXNX6 = require("./chunk-RTGQXNX6.js");
|
|
40
38
|
var import_chunk_JFKDSUIE = require("./chunk-JFKDSUIE.js");
|
|
39
|
+
var import_chunk_AI6DH66U = require("./chunk-AI6DH66U.js");
|
|
40
|
+
var import_chunk_AHJ2N6BJ = require("./chunk-AHJ2N6BJ.js");
|
|
41
41
|
var import_chunk_LGYRZ6CV = require("./chunk-LGYRZ6CV.js");
|
|
42
|
-
var import_chunk_ZOEKRXDP = require("./chunk-ZOEKRXDP.js");
|
|
43
|
-
var import_chunk_MATFO4ZW = require("./chunk-MATFO4ZW.js");
|
|
44
42
|
var import_chunk_3WC4XD74 = require("./chunk-3WC4XD74.js");
|
|
45
43
|
var import_chunk_QOPTDDIH = require("./chunk-QOPTDDIH.js");
|
|
46
|
-
var
|
|
44
|
+
var import_chunk_74LUB4XX = require("./chunk-74LUB4XX.js");
|
|
45
|
+
var import_chunk_YSWLN2IJ = require("./chunk-YSWLN2IJ.js");
|
|
46
|
+
var import_chunk_OEWQACEH = require("./chunk-OEWQACEH.js");
|
|
47
47
|
var import_chunk_SKRR5WT4 = require("./chunk-SKRR5WT4.js");
|
|
48
|
-
var import_chunk_WWAWV7DQ = require("./chunk-WWAWV7DQ.js");
|
|
49
48
|
var import_debug = __toESM(require("@prisma/debug"));
|
|
50
49
|
var import_internals = require("@prisma/internals");
|
|
51
50
|
var import_path = __toESM(require("path"));
|
|
52
51
|
var debug = (0, import_debug.default)("prisma:db:pull");
|
|
53
|
-
var
|
|
52
|
+
var DbPull = class _DbPull {
|
|
54
53
|
static new() {
|
|
55
|
-
return new
|
|
54
|
+
return new _DbPull();
|
|
56
55
|
}
|
|
56
|
+
static help = (0, import_internals.format)(`
|
|
57
|
+
Pull the state from the database to the Prisma schema using introspection
|
|
58
|
+
|
|
59
|
+
${(0, import_chunk_SKRR5WT4.bold)("Usage")}
|
|
60
|
+
|
|
61
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull [flags/options]
|
|
62
|
+
|
|
63
|
+
${(0, import_chunk_SKRR5WT4.bold)("Flags")}
|
|
64
|
+
|
|
65
|
+
-h, --help Display this help message
|
|
66
|
+
--force Ignore current Prisma schema file
|
|
67
|
+
--print Print the introspected Prisma schema to stdout
|
|
68
|
+
|
|
69
|
+
${(0, import_chunk_SKRR5WT4.bold)("Options")}
|
|
70
|
+
|
|
71
|
+
--config Custom path to your Prisma config file
|
|
72
|
+
--schema Custom path to your Prisma schema
|
|
73
|
+
--composite-type-depth Specify the depth for introspecting composite types (e.g. Embedded Documents in MongoDB)
|
|
74
|
+
Number, default is -1 for infinite depth, 0 = off
|
|
75
|
+
--schemas Specify the database schemas to introspect. This overrides the schemas defined in the datasource block of your Prisma schema.
|
|
76
|
+
--local-d1 Generate a Prisma schema from a local Cloudflare D1 database
|
|
77
|
+
${(0, import_chunk_SKRR5WT4.bold)("Examples")}
|
|
78
|
+
|
|
79
|
+
With an existing Prisma schema
|
|
80
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull
|
|
81
|
+
|
|
82
|
+
Or specify a Prisma schema path
|
|
83
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull --schema=./schema.prisma
|
|
84
|
+
|
|
85
|
+
Instead of saving the result to the filesystem, you can also print it to stdout
|
|
86
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull --print
|
|
87
|
+
|
|
88
|
+
Overwrite the current schema with the introspected schema instead of enriching it
|
|
89
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull --force
|
|
90
|
+
|
|
91
|
+
Set composite types introspection depth to 2 levels
|
|
92
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull --composite-type-depth=2
|
|
93
|
+
|
|
94
|
+
`);
|
|
57
95
|
urlToDatasource(url, defaultProvider) {
|
|
58
96
|
const provider = defaultProvider || (0, import_internals.protocolToConnectorType)(`${url.split(":")[0]}:`);
|
|
59
|
-
return (0,
|
|
97
|
+
return (0, import_chunk_AI6DH66U.printDatasources)([
|
|
60
98
|
{
|
|
61
99
|
config: {},
|
|
62
100
|
provider,
|
|
@@ -80,47 +118,50 @@ var _DbPull = class _DbPull2 {
|
|
|
80
118
|
"--local-d1": Boolean
|
|
81
119
|
// optional, only on cloudflare D1
|
|
82
120
|
});
|
|
83
|
-
const spinnerFactory = (0,
|
|
121
|
+
const spinnerFactory = (0, import_chunk_IINN7QUV.createSpinner)(!args["--print"]);
|
|
84
122
|
if (args instanceof Error) {
|
|
85
123
|
return this.help(args.message);
|
|
86
124
|
}
|
|
87
|
-
await (0, import_internals.checkUnsupportedDataProxy)("db pull", args, config.schema, !args["--url"]);
|
|
88
125
|
if (args["--help"]) {
|
|
89
126
|
return this.help();
|
|
90
127
|
}
|
|
91
128
|
const url = args["--url"];
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
129
|
+
await (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: !args["--print"], config });
|
|
130
|
+
const schemaContext = await (0, import_internals.loadSchemaContext)({
|
|
131
|
+
schemaPathFromArg: args["--schema"],
|
|
132
|
+
schemaPathFromConfig: config.schema,
|
|
133
|
+
printLoadMessage: false,
|
|
134
|
+
allowNull: true
|
|
135
|
+
});
|
|
136
|
+
(0, import_internals.checkUnsupportedDataProxy)({
|
|
137
|
+
cmd: "db pull",
|
|
138
|
+
schemaContext: schemaContext && !url ? schemaContext : void 0,
|
|
139
|
+
urls: [url]
|
|
140
|
+
});
|
|
141
|
+
if (schemaContext && !args["--print"]) {
|
|
142
|
+
process.stdout.write((0, import_chunk_SKRR5WT4.dim)(`Prisma schema loaded from ${schemaContext.loadedFromPathForLogMessages}`) + "\n");
|
|
143
|
+
(0, import_chunk_QOPTDDIH.printDatasource)({ datasourceInfo: (0, import_chunk_74LUB4XX.parseDatasourceInfo)(schemaContext?.primaryDatasource) });
|
|
102
144
|
}
|
|
103
145
|
const fromD1 = Boolean(args["--local-d1"]);
|
|
104
|
-
if (!url && !
|
|
146
|
+
if (!url && !schemaContext && !fromD1) {
|
|
105
147
|
throw new import_chunk_3WC4XD74.NoSchemaFoundError();
|
|
106
148
|
}
|
|
107
|
-
const
|
|
108
|
-
|
|
149
|
+
const adapter = await config.migrate?.adapter(process.env);
|
|
150
|
+
const { firstDatasource, schema, validationWarning } = await (0, import_chunk_OEWQACEH.z)({ url, schemaContext, fromD1 }).when(
|
|
151
|
+
(input) => input.schemaContext !== null,
|
|
109
152
|
async (input) => {
|
|
110
|
-
const
|
|
111
|
-
const
|
|
112
|
-
datamodel: rawSchema,
|
|
113
|
-
ignoreEnvVarErrors: true
|
|
114
|
-
});
|
|
115
|
-
const previewFeatures = engineConfig.generators.find(({ name }) => name === "client")?.previewFeatures;
|
|
116
|
-
const firstDatasource2 = engineConfig.datasources[0] ? engineConfig.datasources[0] : void 0;
|
|
153
|
+
const previewFeatures = input.schemaContext.generators.find(({ name }) => name === "client")?.previewFeatures;
|
|
154
|
+
const firstDatasource2 = input.schemaContext.primaryDatasource ? input.schemaContext.primaryDatasource : void 0;
|
|
117
155
|
if (input.url) {
|
|
118
156
|
let providerFromSchema = firstDatasource2?.provider;
|
|
119
157
|
if (providerFromSchema === "postgres") {
|
|
120
158
|
providerFromSchema = "postgresql";
|
|
121
159
|
}
|
|
122
160
|
const providerFromUrl = (0, import_internals.protocolToConnectorType)(`${input.url.split(":")[0]}:`);
|
|
123
|
-
const schema2 = (0, import_chunk_RR6BKMNO.replaceOrAddDatasource)(
|
|
161
|
+
const schema2 = (0, import_chunk_RR6BKMNO.replaceOrAddDatasource)(
|
|
162
|
+
this.urlToDatasource(input.url, providerFromSchema),
|
|
163
|
+
input.schemaContext.schemaFiles
|
|
164
|
+
);
|
|
124
165
|
if (providerFromSchema && providerFromUrl && providerFromSchema !== providerFromUrl && Boolean(providerFromSchema === "cockroachdb" && providerFromUrl === "postgresql") === false) {
|
|
125
166
|
throw new Error(
|
|
126
167
|
`The database provider found in --url (${providerFromUrl}) is different from the provider found in the Prisma schema (${providerFromSchema}).`
|
|
@@ -129,7 +170,7 @@ var _DbPull = class _DbPull2 {
|
|
|
129
170
|
return { firstDatasource: firstDatasource2, schema: schema2, validationWarning: void 0 };
|
|
130
171
|
} else if (input.fromD1) {
|
|
131
172
|
const d1Database = await (0, import_internals.locateLocalCloudflareD1)({ arg: "--from-local-d1" });
|
|
132
|
-
const pathToSQLiteFile = import_path.default.relative(
|
|
173
|
+
const pathToSQLiteFile = import_path.default.relative(input.schemaContext.schemaRootDir, d1Database);
|
|
133
174
|
const schema2 = [
|
|
134
175
|
["schema.prisma", this.urlToDatasource(`file:${pathToSQLiteFile}`, "sqlite")]
|
|
135
176
|
];
|
|
@@ -151,11 +192,11 @@ var _DbPull = class _DbPull2 {
|
|
|
151
192
|
}
|
|
152
193
|
} else {
|
|
153
194
|
await (0, import_internals.getConfig)({
|
|
154
|
-
datamodel:
|
|
195
|
+
datamodel: input.schemaContext.schemaFiles,
|
|
155
196
|
ignoreEnvVarErrors: false
|
|
156
197
|
});
|
|
157
198
|
}
|
|
158
|
-
return { firstDatasource: firstDatasource2, schema:
|
|
199
|
+
return { firstDatasource: firstDatasource2, schema: input.schemaContext.schemaFiles, validationWarning: void 0 };
|
|
159
200
|
}
|
|
160
201
|
).when(
|
|
161
202
|
(input) => input.fromD1 === true,
|
|
@@ -186,10 +227,9 @@ ${this.urlToDatasource(`file:${pathToSQLiteFile}`, "sqlite")}`;
|
|
|
186
227
|
return { firstDatasource: config2.datasources[0], schema: schema2, validationWarning: void 0 };
|
|
187
228
|
}
|
|
188
229
|
).run();
|
|
189
|
-
if (
|
|
190
|
-
const schemas = await (0, import_internals.getSchema)(args["--schema"], config.schema);
|
|
230
|
+
if (schemaContext) {
|
|
191
231
|
const modelRegex = /\s*model\s*(\w+)\s*{/;
|
|
192
|
-
const isReintrospection =
|
|
232
|
+
const isReintrospection = schemaContext.schemaFiles.some(([_, schema2]) => !!modelRegex.exec(schema2));
|
|
193
233
|
if (isReintrospection && !args["--force"] && firstDatasource?.provider === "mongodb") {
|
|
194
234
|
throw new Error(`Iterating on one schema using re-introspection with db pull is currently not supported with MongoDB provider.
|
|
195
235
|
You can explicitly ignore and override your current local schema file with ${(0, import_chunk_SKRR5WT4.green)(
|
|
@@ -200,18 +240,19 @@ Some information will be lost (relations, comments, mapped fields, @ignore...),
|
|
|
200
240
|
)} for more info.`);
|
|
201
241
|
}
|
|
202
242
|
}
|
|
203
|
-
const
|
|
204
|
-
|
|
205
|
-
}
|
|
206
|
-
const basedOn = !args["--url"] && schemaPath ? ` based on datasource defined in ${(0, import_chunk_SKRR5WT4.underline)(import_path.default.relative(process.cwd(), schemaPath))}` : "";
|
|
243
|
+
const migrate = await import_chunk_YSWLN2IJ.Migrate.setup({ adapter, schemaContext: schemaContext ?? void 0 });
|
|
244
|
+
const engine = migrate.engine;
|
|
245
|
+
const basedOn = !args["--url"] && schemaContext?.primaryDatasource ? ` based on datasource defined in ${(0, import_chunk_SKRR5WT4.underline)(schemaContext.loadedFromPathForLogMessages)}` : "";
|
|
207
246
|
const introspectionSpinner = spinnerFactory(`Introspecting${basedOn}`);
|
|
208
247
|
const before = Math.round(performance.now());
|
|
209
248
|
let introspectionSchema = void 0;
|
|
210
249
|
let introspectionWarnings;
|
|
211
250
|
try {
|
|
251
|
+
const directoryConfig = (0, import_internals.inferDirectoryConfig)(schemaContext);
|
|
212
252
|
const introspectionResult = await engine.introspect({
|
|
213
253
|
schema: (0, import_internals.toSchemasContainer)(schema),
|
|
214
|
-
baseDirectoryPath:
|
|
254
|
+
baseDirectoryPath: schemaContext?.schemaRootDir ?? process.cwd(),
|
|
255
|
+
viewsDirectoryPath: directoryConfig.viewsDirPath,
|
|
215
256
|
force: args["--force"],
|
|
216
257
|
compositeTypeDepth: args["--composite-type-depth"],
|
|
217
258
|
namespaces: args["--schemas"]?.split(",")
|
|
@@ -283,7 +324,6 @@ Or run this command with the ${(0, import_chunk_SKRR5WT4.green)(
|
|
|
283
324
|
console.error(introspectionWarningsMessage.replace(/(\n)/gm, "\n// "));
|
|
284
325
|
}
|
|
285
326
|
} else {
|
|
286
|
-
schemaPath = schemaPath || "schema.prisma";
|
|
287
327
|
if (args["--force"]) {
|
|
288
328
|
await (0, import_chunk_JZ75RIMZ.removeSchemaFiles)(schema);
|
|
289
329
|
}
|
|
@@ -300,8 +340,9 @@ Or run this command with the ${(0, import_chunk_SKRR5WT4.green)(
|
|
|
300
340
|
const modelsAndTypesCountMessage = modelsCount + typesCount > 1 ? `${modelsAndTypesMessage} and wrote them` : `${modelsAndTypesMessage} and wrote it`;
|
|
301
341
|
const renderValidationWarning = validationWarning ? `
|
|
302
342
|
${(0, import_chunk_SKRR5WT4.yellow)(validationWarning)}` : "";
|
|
343
|
+
const introspectedSchemaPath = schemaContext?.loadedFromPathForLogMessages || introspectionSchema.files[0].path;
|
|
303
344
|
introspectionSpinner.success(`Introspected ${modelsAndTypesCountMessage} into ${(0, import_chunk_SKRR5WT4.underline)(
|
|
304
|
-
import_path.default.relative(process.cwd(),
|
|
345
|
+
import_path.default.relative(process.cwd(), introspectedSchemaPath)
|
|
305
346
|
)} in ${(0, import_chunk_SKRR5WT4.bold)((0, import_internals.formatms)(Math.round(performance.now()) - before))}
|
|
306
347
|
${(0, import_chunk_SKRR5WT4.yellow)(introspectionWarningsMessage)}
|
|
307
348
|
${`Run ${(0, import_chunk_SKRR5WT4.green)((0, import_internals.getCommandWithExecutor)("prisma generate"))} to generate Prisma Client.`}${renderValidationWarning}`);
|
|
@@ -319,48 +360,8 @@ ${warnings}`;
|
|
|
319
360
|
if (error) {
|
|
320
361
|
return new import_internals.HelpError(`
|
|
321
362
|
${(0, import_chunk_SKRR5WT4.bold)((0, import_chunk_SKRR5WT4.red)(`!`))} ${error}
|
|
322
|
-
${
|
|
363
|
+
${_DbPull.help}`);
|
|
323
364
|
}
|
|
324
|
-
return
|
|
365
|
+
return _DbPull.help;
|
|
325
366
|
}
|
|
326
367
|
};
|
|
327
|
-
(0, import_chunk_WWAWV7DQ.__publicField)(_DbPull, "help", (0, import_internals.format)(`
|
|
328
|
-
Pull the state from the database to the Prisma schema using introspection
|
|
329
|
-
|
|
330
|
-
${(0, import_chunk_SKRR5WT4.bold)("Usage")}
|
|
331
|
-
|
|
332
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull [flags/options]
|
|
333
|
-
|
|
334
|
-
${(0, import_chunk_SKRR5WT4.bold)("Flags")}
|
|
335
|
-
|
|
336
|
-
-h, --help Display this help message
|
|
337
|
-
--force Ignore current Prisma schema file
|
|
338
|
-
--print Print the introspected Prisma schema to stdout
|
|
339
|
-
|
|
340
|
-
${(0, import_chunk_SKRR5WT4.bold)("Options")}
|
|
341
|
-
|
|
342
|
-
--config Custom path to your Prisma config file
|
|
343
|
-
--schema Custom path to your Prisma schema
|
|
344
|
-
--composite-type-depth Specify the depth for introspecting composite types (e.g. Embedded Documents in MongoDB)
|
|
345
|
-
Number, default is -1 for infinite depth, 0 = off
|
|
346
|
-
--schemas Specify the database schemas to introspect. This overrides the schemas defined in the datasource block of your Prisma schema.
|
|
347
|
-
--local-d1 Generate a Prisma schema from a local Cloudflare D1 database
|
|
348
|
-
${(0, import_chunk_SKRR5WT4.bold)("Examples")}
|
|
349
|
-
|
|
350
|
-
With an existing Prisma schema
|
|
351
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull
|
|
352
|
-
|
|
353
|
-
Or specify a Prisma schema path
|
|
354
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull --schema=./schema.prisma
|
|
355
|
-
|
|
356
|
-
Instead of saving the result to the filesystem, you can also print it to stdout
|
|
357
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull --print
|
|
358
|
-
|
|
359
|
-
Overwrite the current schema with the introspected schema instead of enriching it
|
|
360
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull --force
|
|
361
|
-
|
|
362
|
-
Set composite types introspection depth to 2 levels
|
|
363
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db pull --composite-type-depth=2
|
|
364
|
-
|
|
365
|
-
`));
|
|
366
|
-
var DbPull = _DbPull;
|
|
@@ -26,24 +26,53 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_SQKGZVG3_exports = {};
|
|
30
|
+
__export(chunk_SQKGZVG3_exports, {
|
|
31
31
|
DbDrop: () => DbDrop
|
|
32
32
|
});
|
|
33
|
-
module.exports = __toCommonJS(
|
|
33
|
+
module.exports = __toCommonJS(chunk_SQKGZVG3_exports);
|
|
34
34
|
var import_chunk_IHDN3L3R = require("./chunk-IHDN3L3R.js");
|
|
35
35
|
var import_chunk_3WC4XD74 = require("./chunk-3WC4XD74.js");
|
|
36
|
-
var import_chunk_GKDFIHM2 = require("./chunk-GKDFIHM2.js");
|
|
37
36
|
var import_chunk_QOPTDDIH = require("./chunk-QOPTDDIH.js");
|
|
38
|
-
var
|
|
37
|
+
var import_chunk_74LUB4XX = require("./chunk-74LUB4XX.js");
|
|
39
38
|
var import_chunk_SKRR5WT4 = require("./chunk-SKRR5WT4.js");
|
|
40
|
-
var import_chunk_WWAWV7DQ = require("./chunk-WWAWV7DQ.js");
|
|
41
39
|
var import_internals = require("@prisma/internals");
|
|
42
40
|
var import_prompts = __toESM(require("prompts"));
|
|
43
|
-
var
|
|
41
|
+
var DbDrop = class _DbDrop {
|
|
44
42
|
static new() {
|
|
45
|
-
return new
|
|
43
|
+
return new _DbDrop();
|
|
46
44
|
}
|
|
45
|
+
static help = (0, import_internals.format)(`
|
|
46
|
+
${process.platform === "win32" ? "" : "\u{1F4A3} "}Drop the database
|
|
47
|
+
|
|
48
|
+
${(0, import_chunk_SKRR5WT4.bold)((0, import_chunk_SKRR5WT4.yellow)("WARNING"))} ${(0, import_chunk_SKRR5WT4.bold)(
|
|
49
|
+
`Prisma db drop is currently in Preview (${(0, import_internals.link)("https://pris.ly/d/preview")}).
|
|
50
|
+
There may be bugs and it's not recommended to use it in production environments.`
|
|
51
|
+
)}
|
|
52
|
+
${(0, import_chunk_SKRR5WT4.dim)("When using any of the subcommands below you need to explicitly opt-in via the --preview-feature flag.")}
|
|
53
|
+
|
|
54
|
+
${(0, import_chunk_SKRR5WT4.bold)("Usage")}
|
|
55
|
+
|
|
56
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db drop [options] --preview-feature
|
|
57
|
+
|
|
58
|
+
${(0, import_chunk_SKRR5WT4.bold)("Options")}
|
|
59
|
+
|
|
60
|
+
-h, --help Display this help message
|
|
61
|
+
--config Custom path to your Prisma config file
|
|
62
|
+
--schema Custom path to your Prisma schema
|
|
63
|
+
-f, --force Skip the confirmation prompt
|
|
64
|
+
|
|
65
|
+
${(0, import_chunk_SKRR5WT4.bold)("Examples")}
|
|
66
|
+
|
|
67
|
+
Drop the database
|
|
68
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db drop --preview-feature
|
|
69
|
+
|
|
70
|
+
Specify a schema
|
|
71
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db drop --preview-feature --schema=./schema.prisma
|
|
72
|
+
|
|
73
|
+
Use --force to skip the confirmation prompt
|
|
74
|
+
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db drop --preview-feature --force
|
|
75
|
+
`);
|
|
47
76
|
async parse(argv, config) {
|
|
48
77
|
const args = (0, import_internals.arg)(argv, {
|
|
49
78
|
"--help": Boolean,
|
|
@@ -58,7 +87,6 @@ var _DbDrop = class _DbDrop2 {
|
|
|
58
87
|
if ((0, import_internals.isError)(args)) {
|
|
59
88
|
return this.help(args.message);
|
|
60
89
|
}
|
|
61
|
-
await (0, import_internals.checkUnsupportedDataProxy)("db drop", args, config.schema, true);
|
|
62
90
|
if (args["--help"]) {
|
|
63
91
|
return this.help();
|
|
64
92
|
}
|
|
@@ -66,8 +94,12 @@ var _DbDrop = class _DbDrop2 {
|
|
|
66
94
|
throw new import_chunk_IHDN3L3R.PreviewFlagError();
|
|
67
95
|
}
|
|
68
96
|
await (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
|
|
69
|
-
const
|
|
70
|
-
|
|
97
|
+
const schemaContext = await (0, import_internals.loadSchemaContext)({
|
|
98
|
+
schemaPathFromArg: args["--schema"],
|
|
99
|
+
schemaPathFromConfig: config.schema
|
|
100
|
+
});
|
|
101
|
+
(0, import_internals.checkUnsupportedDataProxy)({ cmd: "db drop", schemaContext });
|
|
102
|
+
const datasourceInfo = (0, import_chunk_74LUB4XX.parseDatasourceInfo)(schemaContext.primaryDatasource);
|
|
71
103
|
(0, import_chunk_QOPTDDIH.printDatasource)({ datasourceInfo });
|
|
72
104
|
process.stdout.write("\n");
|
|
73
105
|
if (!args["--force"]) {
|
|
@@ -100,40 +132,8 @@ ${(0, import_chunk_SKRR5WT4.red)("All data will be lost")}.`
|
|
|
100
132
|
if (error) {
|
|
101
133
|
return new import_internals.HelpError(`
|
|
102
134
|
${(0, import_chunk_SKRR5WT4.bold)((0, import_chunk_SKRR5WT4.red)(`!`))} ${error}
|
|
103
|
-
${
|
|
135
|
+
${_DbDrop.help}`);
|
|
104
136
|
}
|
|
105
|
-
return
|
|
137
|
+
return _DbDrop.help;
|
|
106
138
|
}
|
|
107
139
|
};
|
|
108
|
-
(0, import_chunk_WWAWV7DQ.__publicField)(_DbDrop, "help", (0, import_internals.format)(`
|
|
109
|
-
${process.platform === "win32" ? "" : "\u{1F4A3} "}Drop the database
|
|
110
|
-
|
|
111
|
-
${(0, import_chunk_SKRR5WT4.bold)((0, import_chunk_SKRR5WT4.yellow)("WARNING"))} ${(0, import_chunk_SKRR5WT4.bold)(
|
|
112
|
-
`Prisma db drop is currently in Preview (${(0, import_internals.link)("https://pris.ly/d/preview")}).
|
|
113
|
-
There may be bugs and it's not recommended to use it in production environments.`
|
|
114
|
-
)}
|
|
115
|
-
${(0, import_chunk_SKRR5WT4.dim)("When using any of the subcommands below you need to explicitly opt-in via the --preview-feature flag.")}
|
|
116
|
-
|
|
117
|
-
${(0, import_chunk_SKRR5WT4.bold)("Usage")}
|
|
118
|
-
|
|
119
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db drop [options] --preview-feature
|
|
120
|
-
|
|
121
|
-
${(0, import_chunk_SKRR5WT4.bold)("Options")}
|
|
122
|
-
|
|
123
|
-
-h, --help Display this help message
|
|
124
|
-
--config Custom path to your Prisma config file
|
|
125
|
-
--schema Custom path to your Prisma schema
|
|
126
|
-
-f, --force Skip the confirmation prompt
|
|
127
|
-
|
|
128
|
-
${(0, import_chunk_SKRR5WT4.bold)("Examples")}
|
|
129
|
-
|
|
130
|
-
Drop the database
|
|
131
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db drop --preview-feature
|
|
132
|
-
|
|
133
|
-
Specify a schema
|
|
134
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db drop --preview-feature --schema=./schema.prisma
|
|
135
|
-
|
|
136
|
-
Use --force to skip the confirmation prompt
|
|
137
|
-
${(0, import_chunk_SKRR5WT4.dim)("$")} prisma db drop --preview-feature --force
|
|
138
|
-
`));
|
|
139
|
-
var DbDrop = _DbDrop;
|