drizzle-kit 1.0.0-beta.2-278d7e6 → 1.0.0-beta.2-31baa2b
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/api-mysql.js +200 -387
- package/api-mysql.mjs +200 -387
- package/api-postgres.js +238 -417
- package/api-postgres.mjs +238 -417
- package/api-sqlite.js +200 -387
- package/api-sqlite.mjs +200 -387
- package/bin.cjs +347 -448
- package/index.d.mts +6 -1
- package/index.d.ts +6 -1
- package/package.json +3 -1
package/api-postgres.js
CHANGED
|
@@ -15199,7 +15199,8 @@ var init_schemaValidator = __esm({
|
|
|
15199
15199
|
"singlestore",
|
|
15200
15200
|
"gel",
|
|
15201
15201
|
"mssql",
|
|
15202
|
-
"cockroach"
|
|
15202
|
+
"cockroach",
|
|
15203
|
+
"duckdb"
|
|
15203
15204
|
];
|
|
15204
15205
|
dialect = enumType(dialects);
|
|
15205
15206
|
}
|
|
@@ -24989,7 +24990,7 @@ var init_introspect = __esm({
|
|
|
24989
24990
|
let checksCount = 0;
|
|
24990
24991
|
let viewsCount = 0;
|
|
24991
24992
|
for (const seq of sequencesList) {
|
|
24992
|
-
const depend = dependList.find((it) => it.oid === seq.oid);
|
|
24993
|
+
const depend = dependList.find((it) => Number(it.oid) === Number(seq.oid));
|
|
24993
24994
|
if (depend && (depend.deptype === "a" || depend.deptype === "i")) {
|
|
24994
24995
|
continue;
|
|
24995
24996
|
}
|
|
@@ -25055,22 +25056,22 @@ var init_introspect = __esm({
|
|
|
25055
25056
|
continue;
|
|
25056
25057
|
}
|
|
25057
25058
|
const expr = serialsList.find(
|
|
25058
|
-
(it) => it.tableId === column8.tableId && it.ordinality === column8.ordinality
|
|
25059
|
+
(it) => Number(it.tableId) === Number(column8.tableId) && it.ordinality === column8.ordinality
|
|
25059
25060
|
);
|
|
25060
25061
|
if (expr) {
|
|
25061
|
-
const table7 = tablesList.find((it) => it.oid === column8.tableId);
|
|
25062
|
+
const table7 = tablesList.find((it) => Number(it.oid) === Number(column8.tableId));
|
|
25062
25063
|
const isSerial = isSerialExpression(expr.expression, table7.schema);
|
|
25063
25064
|
column8.type = isSerial ? type === "bigint" ? "bigserial" : type === "integer" ? "serial" : "smallserial" : type;
|
|
25064
25065
|
}
|
|
25065
25066
|
}
|
|
25066
25067
|
for (const column8 of columnsList.filter((x6) => x6.kind === "r" || x6.kind === "p")) {
|
|
25067
|
-
const table7 = tablesList.find((it) => it.oid === column8.tableId);
|
|
25068
|
+
const table7 = tablesList.find((it) => Number(it.oid) === Number(column8.tableId));
|
|
25068
25069
|
const enumType2 = column8.typeId in groupedEnums ? groupedEnums[column8.typeId] : column8.typeId in groupedArrEnums ? groupedArrEnums[column8.typeId] : null;
|
|
25069
25070
|
let columnTypeMapped = enumType2 ? enumType2.name : column8.type.replaceAll("[]", "");
|
|
25070
25071
|
columnTypeMapped = columnTypeMapped.replace("character varying", "varchar").replace(" without time zone", "").replace("character", "char").replace("geometry(Point", "geometry(point");
|
|
25071
25072
|
columnTypeMapped = trimChar(columnTypeMapped, '"');
|
|
25072
25073
|
const columnDefault = defaultsList.find(
|
|
25073
|
-
(it) => it.tableId === column8.tableId && it.ordinality === column8.ordinality
|
|
25074
|
+
(it) => Number(it.tableId) === Number(column8.tableId) && it.ordinality === column8.ordinality
|
|
25074
25075
|
);
|
|
25075
25076
|
const defaultValue = defaultForColumn(
|
|
25076
25077
|
columnTypeMapped,
|
|
@@ -25079,10 +25080,10 @@ var init_introspect = __esm({
|
|
|
25079
25080
|
Boolean(enumType2)
|
|
25080
25081
|
);
|
|
25081
25082
|
const unique = constraintsList.find((it) => {
|
|
25082
|
-
return it.type === "u" && it.tableId === column8.tableId && it.columnsOrdinals.length === 1 && it.columnsOrdinals.includes(column8.ordinality);
|
|
25083
|
+
return it.type === "u" && Number(it.tableId) === Number(column8.tableId) && it.columnsOrdinals.length === 1 && it.columnsOrdinals.includes(column8.ordinality);
|
|
25083
25084
|
}) ?? null;
|
|
25084
25085
|
const pk = constraintsList.find((it) => {
|
|
25085
|
-
return it.type === "p" && it.tableId === column8.tableId && it.columnsOrdinals.length === 1 && it.columnsOrdinals.includes(column8.ordinality);
|
|
25086
|
+
return it.type === "p" && Number(it.tableId) === Number(column8.tableId) && it.columnsOrdinals.length === 1 && it.columnsOrdinals.includes(column8.ordinality);
|
|
25086
25087
|
}) ?? null;
|
|
25087
25088
|
const metadata = column8.metadata;
|
|
25088
25089
|
if (column8.generatedType === "s" && (!metadata || !metadata.expression)) {
|
|
@@ -25097,7 +25098,7 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25097
25098
|
${JSON.stringify(column8.metadata)}`
|
|
25098
25099
|
);
|
|
25099
25100
|
}
|
|
25100
|
-
const sequence = metadata?.seqId ? sequencesList.find((it) => it.oid === Number(metadata.seqId)) ?? null : null;
|
|
25101
|
+
const sequence = metadata?.seqId ? sequencesList.find((it) => Number(it.oid) === Number(metadata.seqId)) ?? null : null;
|
|
25101
25102
|
columns.push({
|
|
25102
25103
|
entityType: "columns",
|
|
25103
25104
|
schema: table7.schema,
|
|
@@ -25127,10 +25128,12 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25127
25128
|
});
|
|
25128
25129
|
}
|
|
25129
25130
|
for (const unique of constraintsList.filter((it) => it.type === "u")) {
|
|
25130
|
-
const table7 = tablesList.find((it) => it.oid === unique.tableId);
|
|
25131
|
-
const schema6 = namespaces.find((it) => it.oid === unique.schemaId);
|
|
25131
|
+
const table7 = tablesList.find((it) => Number(it.oid) === Number(unique.tableId));
|
|
25132
|
+
const schema6 = namespaces.find((it) => Number(it.oid) === Number(unique.schemaId));
|
|
25132
25133
|
const columns2 = unique.columnsOrdinals.map((it) => {
|
|
25133
|
-
const column8 = columnsList.find(
|
|
25134
|
+
const column8 = columnsList.find(
|
|
25135
|
+
(column9) => Number(column9.tableId) === Number(unique.tableId) && column9.ordinality === it
|
|
25136
|
+
);
|
|
25134
25137
|
return column8.name;
|
|
25135
25138
|
});
|
|
25136
25139
|
uniques.push({
|
|
@@ -25144,10 +25147,12 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25144
25147
|
});
|
|
25145
25148
|
}
|
|
25146
25149
|
for (const pk of constraintsList.filter((it) => it.type === "p")) {
|
|
25147
|
-
const table7 = tablesList.find((it) => it.oid === pk.tableId);
|
|
25148
|
-
const schema6 = namespaces.find((it) => it.oid === pk.schemaId);
|
|
25150
|
+
const table7 = tablesList.find((it) => Number(it.oid) === Number(pk.tableId));
|
|
25151
|
+
const schema6 = namespaces.find((it) => Number(it.oid) === Number(pk.schemaId));
|
|
25149
25152
|
const columns2 = pk.columnsOrdinals.map((it) => {
|
|
25150
|
-
const column8 = columnsList.find(
|
|
25153
|
+
const column8 = columnsList.find(
|
|
25154
|
+
(column9) => Number(column9.tableId) === Number(pk.tableId) && column9.ordinality === it
|
|
25155
|
+
);
|
|
25151
25156
|
return column8.name;
|
|
25152
25157
|
});
|
|
25153
25158
|
pks.push({
|
|
@@ -25160,15 +25165,19 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25160
25165
|
});
|
|
25161
25166
|
}
|
|
25162
25167
|
for (const fk6 of constraintsList.filter((it) => it.type === "f")) {
|
|
25163
|
-
const table7 = tablesList.find((it) => it.oid === fk6.tableId);
|
|
25164
|
-
const schema6 = namespaces.find((it) => it.oid === fk6.schemaId);
|
|
25165
|
-
const tableTo = tablesList.find((it) => it.oid === fk6.tableToId);
|
|
25168
|
+
const table7 = tablesList.find((it) => Number(it.oid) === Number(fk6.tableId));
|
|
25169
|
+
const schema6 = namespaces.find((it) => Number(it.oid) === Number(fk6.schemaId));
|
|
25170
|
+
const tableTo = tablesList.find((it) => Number(it.oid) === Number(fk6.tableToId));
|
|
25166
25171
|
const columns2 = fk6.columnsOrdinals.map((it) => {
|
|
25167
|
-
const column8 = columnsList.find(
|
|
25172
|
+
const column8 = columnsList.find(
|
|
25173
|
+
(column9) => Number(column9.tableId) === Number(fk6.tableId) && column9.ordinality === it
|
|
25174
|
+
);
|
|
25168
25175
|
return column8.name;
|
|
25169
25176
|
});
|
|
25170
25177
|
const columnsTo = fk6.columnsToOrdinals.map((it) => {
|
|
25171
|
-
const column8 = columnsList.find(
|
|
25178
|
+
const column8 = columnsList.find(
|
|
25179
|
+
(column9) => Number(column9.tableId) === Number(fk6.tableToId) && column9.ordinality === it
|
|
25180
|
+
);
|
|
25172
25181
|
return column8.name;
|
|
25173
25182
|
});
|
|
25174
25183
|
fks.push({
|
|
@@ -25186,8 +25195,8 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25186
25195
|
});
|
|
25187
25196
|
}
|
|
25188
25197
|
for (const check of constraintsList.filter((it) => it.type === "c")) {
|
|
25189
|
-
const table7 = tablesList.find((it) => it.oid === check.tableId);
|
|
25190
|
-
const schema6 = namespaces.find((it) => it.oid === check.schemaId);
|
|
25198
|
+
const table7 = tablesList.find((it) => Number(it.oid) === Number(check.tableId));
|
|
25199
|
+
const schema6 = namespaces.find((it) => Number(it.oid) === Number(check.schemaId));
|
|
25191
25200
|
checks.push({
|
|
25192
25201
|
entityType: "checks",
|
|
25193
25202
|
schema: schema6.name,
|
|
@@ -25248,10 +25257,10 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25248
25257
|
});
|
|
25249
25258
|
for (const idx of idxs) {
|
|
25250
25259
|
const { metadata } = idx;
|
|
25251
|
-
const forUnique = metadata.isUnique && constraintsList.some((x6) => x6.type === "u" && x6.indexId === idx.oid);
|
|
25252
|
-
const forPK = metadata.isPrimary && constraintsList.some((x6) => x6.type === "p" && x6.indexId === idx.oid);
|
|
25260
|
+
const forUnique = metadata.isUnique && constraintsList.some((x6) => x6.type === "u" && Number(x6.indexId) === Number(idx.oid));
|
|
25261
|
+
const forPK = metadata.isPrimary && constraintsList.some((x6) => x6.type === "p" && Number(x6.indexId) === Number(idx.oid));
|
|
25253
25262
|
const expr = splitExpressions(metadata.expression);
|
|
25254
|
-
const table7 = tablesList.find((it) => it.oid === idx.metadata.tableId);
|
|
25263
|
+
const table7 = tablesList.find((it) => Number(it.oid) === Number(idx.metadata.tableId));
|
|
25255
25264
|
const nonColumnsCount = metadata.columnOrdinals.reduce((acc, it) => {
|
|
25256
25265
|
if (it === 0) acc += 1;
|
|
25257
25266
|
return acc;
|
|
@@ -25283,7 +25292,7 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25283
25292
|
k6 += 1;
|
|
25284
25293
|
} else {
|
|
25285
25294
|
const column8 = columnsList.find((column9) => {
|
|
25286
|
-
return column9.tableId === metadata.tableId && column9.ordinality === ordinal;
|
|
25295
|
+
return Number(column9.tableId) === Number(metadata.tableId) && column9.ordinality === ordinal;
|
|
25287
25296
|
});
|
|
25288
25297
|
if (!column8) throw new Error(`missing column: ${metadata.tableId}:${ordinal}`);
|
|
25289
25298
|
const options = opts[i7];
|
|
@@ -25332,7 +25341,7 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25332
25341
|
progressCallback("indexes", indexesCount, "fetching");
|
|
25333
25342
|
progressCallback("tables", tableCount, "done");
|
|
25334
25343
|
for (const it of columnsList.filter((x6) => x6.kind === "m" || x6.kind === "v")) {
|
|
25335
|
-
const view6 = viewsList.find((x6) => x6.oid === it.tableId);
|
|
25344
|
+
const view6 = viewsList.find((x6) => Number(x6.oid) === Number(it.tableId));
|
|
25336
25345
|
const typeDimensions = it.type.split("[]").length - 1;
|
|
25337
25346
|
const enumType2 = it.typeId in groupedEnums ? groupedEnums[it.typeId] : it.typeId in groupedArrEnums ? groupedArrEnums[it.typeId] : null;
|
|
25338
25347
|
let columnTypeMapped = enumType2 ? enumType2.name : it.type.replace("[]", "");
|
|
@@ -25355,8 +25364,8 @@ ${JSON.stringify(column8.metadata)}`
|
|
|
25355
25364
|
}
|
|
25356
25365
|
for (const view6 of viewsList) {
|
|
25357
25366
|
tableCount += 1;
|
|
25358
|
-
const accessMethod = view6.accessMethod === 0 ? null : ams.find((it) => it.oid === view6.accessMethod);
|
|
25359
|
-
const tablespace = view6.tablespaceid === 0 ? null : tablespaces.find((it) => it.oid === view6.tablespaceid).name;
|
|
25367
|
+
const accessMethod = Number(view6.accessMethod) === 0 ? null : ams.find((it) => Number(it.oid) === Number(view6.accessMethod));
|
|
25368
|
+
const tablespace = Number(view6.tablespaceid) === 0 ? null : tablespaces.find((it) => Number(it.oid) === Number(view6.tablespaceid)).name;
|
|
25360
25369
|
const definition = parseViewDefinition(view6.definition);
|
|
25361
25370
|
const withOpts = wrapRecord(
|
|
25362
25371
|
view6.options?.reduce((acc, it) => {
|
|
@@ -34395,7 +34404,7 @@ var require_websocket = __commonJS({
|
|
|
34395
34404
|
var EventEmitter = require("events");
|
|
34396
34405
|
var https2 = require("https");
|
|
34397
34406
|
var http3 = require("http");
|
|
34398
|
-
var
|
|
34407
|
+
var net = require("net");
|
|
34399
34408
|
var tls = require("tls");
|
|
34400
34409
|
var { randomBytes, createHash: createHash5 } = require("crypto");
|
|
34401
34410
|
var { Duplex, Readable: Readable6 } = require("stream");
|
|
@@ -35126,12 +35135,12 @@ var require_websocket = __commonJS({
|
|
|
35126
35135
|
}
|
|
35127
35136
|
function netConnect(options) {
|
|
35128
35137
|
options.path = options.socketPath;
|
|
35129
|
-
return
|
|
35138
|
+
return net.connect(options);
|
|
35130
35139
|
}
|
|
35131
35140
|
function tlsConnect(options) {
|
|
35132
35141
|
options.path = void 0;
|
|
35133
35142
|
if (!options.servername && options.servername !== "") {
|
|
35134
|
-
options.servername =
|
|
35143
|
+
options.servername = net.isIP(options.host) ? "" : options.host;
|
|
35135
35144
|
}
|
|
35136
35145
|
return tls.connect(options);
|
|
35137
35146
|
}
|
|
@@ -39450,7 +39459,7 @@ var init_timing = __esm({
|
|
|
39450
39459
|
"../node_modules/.pnpm/@smithy+node-http-handler@4.4.5/node_modules/@smithy/node-http-handler/dist-es/timing.js"() {
|
|
39451
39460
|
"use strict";
|
|
39452
39461
|
timing = {
|
|
39453
|
-
setTimeout: (cb,
|
|
39462
|
+
setTimeout: (cb, ms) => setTimeout(cb, ms),
|
|
39454
39463
|
clearTimeout: (timeoutId) => clearTimeout(timeoutId)
|
|
39455
39464
|
};
|
|
39456
39465
|
}
|
|
@@ -41338,13 +41347,13 @@ var init_schema_date_utils = __esm({
|
|
|
41338
41347
|
if (!matches) {
|
|
41339
41348
|
throw new TypeError(`Invalid RFC3339 timestamp format ${value}`);
|
|
41340
41349
|
}
|
|
41341
|
-
const [, yearStr, monthStr, dayStr, hours, minutes, seconds, ,
|
|
41350
|
+
const [, yearStr, monthStr, dayStr, hours, minutes, seconds, , ms, offsetStr] = matches;
|
|
41342
41351
|
range(monthStr, 1, 12);
|
|
41343
41352
|
range(dayStr, 1, 31);
|
|
41344
41353
|
range(hours, 0, 23);
|
|
41345
41354
|
range(minutes, 0, 59);
|
|
41346
41355
|
range(seconds, 0, 60);
|
|
41347
|
-
const date2 = new Date(Date.UTC(Number(yearStr), Number(monthStr) - 1, Number(dayStr), Number(hours), Number(minutes), Number(seconds), Number(
|
|
41356
|
+
const date2 = new Date(Date.UTC(Number(yearStr), Number(monthStr) - 1, Number(dayStr), Number(hours), Number(minutes), Number(seconds), Number(ms) ? Math.round(parseFloat(`0.${ms}`) * 1e3) : 0));
|
|
41348
41357
|
date2.setUTCFullYear(Number(yearStr));
|
|
41349
41358
|
if (offsetStr.toUpperCase() != "Z") {
|
|
41350
41359
|
const [, sign2, offsetH, offsetM] = /([+-])(\d\d):(\d\d)/.exec(offsetStr) || [void 0, "+", 0, 0];
|
|
@@ -61358,8 +61367,8 @@ var require_datetime2 = __commonJS({
|
|
|
61358
61367
|
if (!(object instanceof Date)) {
|
|
61359
61368
|
throw new errors_1.InvalidArgumentError(`a Date instance was expected, got "${object}"`);
|
|
61360
61369
|
}
|
|
61361
|
-
const
|
|
61362
|
-
const us =
|
|
61370
|
+
const ms = object.getTime() - TIMESHIFT;
|
|
61371
|
+
const us = ms * 1e3;
|
|
61363
61372
|
buf.writeInt32(8);
|
|
61364
61373
|
buf.writeInt64(us);
|
|
61365
61374
|
}
|
|
@@ -61369,12 +61378,12 @@ var require_datetime2 = __commonJS({
|
|
|
61369
61378
|
return ctx.postDecode(this, us2 + BI_TIMESHIFT_US);
|
|
61370
61379
|
}
|
|
61371
61380
|
const us = Number(buf.readBigInt64());
|
|
61372
|
-
let
|
|
61373
|
-
if (Math.abs(us % 1e3) === 500 && Math.abs(
|
|
61374
|
-
|
|
61381
|
+
let ms = Math.round(us / 1e3);
|
|
61382
|
+
if (Math.abs(us % 1e3) === 500 && Math.abs(ms) % 2 === 1) {
|
|
61383
|
+
ms -= 1;
|
|
61375
61384
|
}
|
|
61376
|
-
|
|
61377
|
-
return new Date(
|
|
61385
|
+
ms += TIMESHIFT;
|
|
61386
|
+
return new Date(ms);
|
|
61378
61387
|
}
|
|
61379
61388
|
};
|
|
61380
61389
|
exports2.DateTimeCodec = DateTimeCodec;
|
|
@@ -61395,8 +61404,8 @@ var require_datetime2 = __commonJS({
|
|
|
61395
61404
|
if (!(object instanceof datetime_1.LocalDateTime)) {
|
|
61396
61405
|
throw new errors_1.InvalidArgumentError(`a LocalDateTime instance was expected, got "${object}"`);
|
|
61397
61406
|
}
|
|
61398
|
-
const
|
|
61399
|
-
let us =
|
|
61407
|
+
const ms = BigInt(datetime_1.localDateInstances.get(object).getTime() - TIMESHIFT);
|
|
61408
|
+
let us = ms * 1000n + BigInt(object.hour * 36e8 + object.minute * 6e7 + object.second * 1e6 + object.millisecond * 1e3 + object.microsecond);
|
|
61400
61409
|
if (object.nanosecond === 500 && Math.abs(object.microsecond) % 2 === 1 || object.nanosecond > 500) {
|
|
61401
61410
|
us += 1n;
|
|
61402
61411
|
}
|
|
@@ -61410,13 +61419,13 @@ var require_datetime2 = __commonJS({
|
|
|
61410
61419
|
}
|
|
61411
61420
|
const bi_ms = bi_us / 1000n;
|
|
61412
61421
|
let us = Number(bi_us - bi_ms * 1000n);
|
|
61413
|
-
let
|
|
61422
|
+
let ms = Number(bi_ms);
|
|
61414
61423
|
if (us < 0) {
|
|
61415
61424
|
us += 1e3;
|
|
61416
|
-
|
|
61425
|
+
ms -= 1;
|
|
61417
61426
|
}
|
|
61418
|
-
|
|
61419
|
-
const date2 = new Date(
|
|
61427
|
+
ms += TIMESHIFT;
|
|
61428
|
+
const date2 = new Date(ms);
|
|
61420
61429
|
return new datetime_1.LocalDateTime(date2.getUTCFullYear(), date2.getUTCMonth() + 1, date2.getUTCDate(), date2.getUTCHours(), date2.getUTCMinutes(), date2.getUTCSeconds(), date2.getUTCMilliseconds(), us);
|
|
61421
61430
|
}
|
|
61422
61431
|
};
|
|
@@ -61478,13 +61487,13 @@ var require_datetime2 = __commonJS({
|
|
|
61478
61487
|
}
|
|
61479
61488
|
let us = Number(bius);
|
|
61480
61489
|
let seconds = Math.floor(us / 1e6);
|
|
61481
|
-
const
|
|
61482
|
-
us = us % 1e6 -
|
|
61490
|
+
const ms = Math.floor(us % 1e6 / 1e3);
|
|
61491
|
+
us = us % 1e6 - ms * 1e3;
|
|
61483
61492
|
let minutes = Math.floor(seconds / 60);
|
|
61484
61493
|
seconds = Math.floor(seconds % 60);
|
|
61485
61494
|
const hours = Math.floor(minutes / 60);
|
|
61486
61495
|
minutes = Math.floor(minutes % 60);
|
|
61487
|
-
return new datetime_1.LocalTime(hours, minutes, seconds,
|
|
61496
|
+
return new datetime_1.LocalTime(hours, minutes, seconds, ms, us);
|
|
61488
61497
|
}
|
|
61489
61498
|
};
|
|
61490
61499
|
exports2.LocalTimeCodec = LocalTimeCodec;
|
|
@@ -61561,14 +61570,14 @@ var require_datetime2 = __commonJS({
|
|
|
61561
61570
|
const biMillion = 1000000n;
|
|
61562
61571
|
const biSeconds = bius / biMillion;
|
|
61563
61572
|
let us = Number(bius - biSeconds * biMillion);
|
|
61564
|
-
const
|
|
61573
|
+
const ms = Math.floor(us / 1e3);
|
|
61565
61574
|
us = us % 1e3;
|
|
61566
61575
|
let seconds = Number(biSeconds);
|
|
61567
61576
|
let minutes = Math.floor(seconds / 60);
|
|
61568
61577
|
seconds = Math.floor(seconds % 60);
|
|
61569
61578
|
const hours = Math.floor(minutes / 60);
|
|
61570
61579
|
minutes = Math.floor(minutes % 60);
|
|
61571
|
-
return new datetime_1.Duration(0, 0, 0, 0, hours * sign2, minutes * sign2, seconds * sign2,
|
|
61580
|
+
return new datetime_1.Duration(0, 0, 0, 0, hours * sign2, minutes * sign2, seconds * sign2, ms * sign2, us * sign2);
|
|
61572
61581
|
}
|
|
61573
61582
|
};
|
|
61574
61583
|
exports2.DurationCodec = DurationCodec;
|
|
@@ -61614,7 +61623,7 @@ var require_datetime2 = __commonJS({
|
|
|
61614
61623
|
const million = BigInt(1e6);
|
|
61615
61624
|
const biSeconds = bius / million;
|
|
61616
61625
|
let us = Number(bius - biSeconds * million);
|
|
61617
|
-
const
|
|
61626
|
+
const ms = Math.trunc(us / 1e3);
|
|
61618
61627
|
us = us % 1e3;
|
|
61619
61628
|
let seconds = Number(biSeconds);
|
|
61620
61629
|
let minutes = Math.trunc(seconds / 60);
|
|
@@ -61625,7 +61634,7 @@ var require_datetime2 = __commonJS({
|
|
|
61625
61634
|
days = Math.trunc(days % 7);
|
|
61626
61635
|
const years = Math.trunc(months2 / 12);
|
|
61627
61636
|
months2 = Math.trunc(months2 % 12);
|
|
61628
|
-
return new datetime_1.RelativeDuration(years, months2, weeks, days, hours * sign2, minutes * sign2, seconds * sign2,
|
|
61637
|
+
return new datetime_1.RelativeDuration(years, months2, weeks, days, hours * sign2, minutes * sign2, seconds * sign2, ms * sign2, us * sign2);
|
|
61629
61638
|
}
|
|
61630
61639
|
};
|
|
61631
61640
|
exports2.RelativeDurationCodec = RelativeDurationCodec;
|
|
@@ -71789,41 +71798,41 @@ var require_ms = __commonJS({
|
|
|
71789
71798
|
return void 0;
|
|
71790
71799
|
}
|
|
71791
71800
|
}
|
|
71792
|
-
function fmtShort(
|
|
71793
|
-
var msAbs = Math.abs(
|
|
71801
|
+
function fmtShort(ms) {
|
|
71802
|
+
var msAbs = Math.abs(ms);
|
|
71794
71803
|
if (msAbs >= d6) {
|
|
71795
|
-
return Math.round(
|
|
71804
|
+
return Math.round(ms / d6) + "d";
|
|
71796
71805
|
}
|
|
71797
71806
|
if (msAbs >= h7) {
|
|
71798
|
-
return Math.round(
|
|
71807
|
+
return Math.round(ms / h7) + "h";
|
|
71799
71808
|
}
|
|
71800
71809
|
if (msAbs >= m7) {
|
|
71801
|
-
return Math.round(
|
|
71810
|
+
return Math.round(ms / m7) + "m";
|
|
71802
71811
|
}
|
|
71803
71812
|
if (msAbs >= s7) {
|
|
71804
|
-
return Math.round(
|
|
71813
|
+
return Math.round(ms / s7) + "s";
|
|
71805
71814
|
}
|
|
71806
|
-
return
|
|
71815
|
+
return ms + "ms";
|
|
71807
71816
|
}
|
|
71808
|
-
function fmtLong(
|
|
71809
|
-
var msAbs = Math.abs(
|
|
71817
|
+
function fmtLong(ms) {
|
|
71818
|
+
var msAbs = Math.abs(ms);
|
|
71810
71819
|
if (msAbs >= d6) {
|
|
71811
|
-
return plural2(
|
|
71820
|
+
return plural2(ms, msAbs, d6, "day");
|
|
71812
71821
|
}
|
|
71813
71822
|
if (msAbs >= h7) {
|
|
71814
|
-
return plural2(
|
|
71823
|
+
return plural2(ms, msAbs, h7, "hour");
|
|
71815
71824
|
}
|
|
71816
71825
|
if (msAbs >= m7) {
|
|
71817
|
-
return plural2(
|
|
71826
|
+
return plural2(ms, msAbs, m7, "minute");
|
|
71818
71827
|
}
|
|
71819
71828
|
if (msAbs >= s7) {
|
|
71820
|
-
return plural2(
|
|
71829
|
+
return plural2(ms, msAbs, s7, "second");
|
|
71821
71830
|
}
|
|
71822
|
-
return
|
|
71831
|
+
return ms + " ms";
|
|
71823
71832
|
}
|
|
71824
|
-
function plural2(
|
|
71833
|
+
function plural2(ms, msAbs, n6, name) {
|
|
71825
71834
|
var isPlural = msAbs >= n6 * 1.5;
|
|
71826
|
-
return Math.round(
|
|
71835
|
+
return Math.round(ms / n6) + " " + name + (isPlural ? "s" : "");
|
|
71827
71836
|
}
|
|
71828
71837
|
}
|
|
71829
71838
|
});
|
|
@@ -71867,8 +71876,8 @@ var require_common2 = __commonJS({
|
|
|
71867
71876
|
}
|
|
71868
71877
|
const self2 = debug;
|
|
71869
71878
|
const curr = Number(/* @__PURE__ */ new Date());
|
|
71870
|
-
const
|
|
71871
|
-
self2.diff =
|
|
71879
|
+
const ms = curr - (prevTime || curr);
|
|
71880
|
+
self2.diff = ms;
|
|
71872
71881
|
self2.prev = prevTime;
|
|
71873
71882
|
self2.curr = curr;
|
|
71874
71883
|
prevTime = curr;
|
|
@@ -87371,11 +87380,11 @@ var require_TokenExpiredError = __commonJS({
|
|
|
87371
87380
|
var require_timespan = __commonJS({
|
|
87372
87381
|
"../node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/lib/timespan.js"(exports2, module2) {
|
|
87373
87382
|
"use strict";
|
|
87374
|
-
var
|
|
87383
|
+
var ms = require_ms();
|
|
87375
87384
|
module2.exports = function(time2, iat) {
|
|
87376
87385
|
var timestamp = iat || Math.floor(Date.now() / 1e3);
|
|
87377
87386
|
if (typeof time2 === "string") {
|
|
87378
|
-
var milliseconds =
|
|
87387
|
+
var milliseconds = ms(time2);
|
|
87379
87388
|
if (typeof milliseconds === "undefined") {
|
|
87380
87389
|
return;
|
|
87381
87390
|
}
|
|
@@ -101913,7 +101922,7 @@ var require_dist = __commonJS({
|
|
|
101913
101922
|
};
|
|
101914
101923
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
101915
101924
|
exports2.Agent = void 0;
|
|
101916
|
-
var
|
|
101925
|
+
var net = __importStar2(require("net"));
|
|
101917
101926
|
var http3 = __importStar2(require("http"));
|
|
101918
101927
|
var https_1 = require("https");
|
|
101919
101928
|
__exportStar2(require_helpers2(), exports2);
|
|
@@ -101953,7 +101962,7 @@ var require_dist = __commonJS({
|
|
|
101953
101962
|
if (!this.sockets[name]) {
|
|
101954
101963
|
this.sockets[name] = [];
|
|
101955
101964
|
}
|
|
101956
|
-
const fakeSocket = new
|
|
101965
|
+
const fakeSocket = new net.Socket({ writable: false });
|
|
101957
101966
|
this.sockets[name].push(fakeSocket);
|
|
101958
101967
|
this.totalSocketCount++;
|
|
101959
101968
|
return fakeSocket;
|
|
@@ -102165,7 +102174,7 @@ var require_dist2 = __commonJS({
|
|
|
102165
102174
|
};
|
|
102166
102175
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
102167
102176
|
exports2.HttpsProxyAgent = void 0;
|
|
102168
|
-
var
|
|
102177
|
+
var net = __importStar2(require("net"));
|
|
102169
102178
|
var tls = __importStar2(require("tls"));
|
|
102170
102179
|
var assert_1 = __importDefault2(require("assert"));
|
|
102171
102180
|
var debug_1 = __importDefault2(require_src2());
|
|
@@ -102174,7 +102183,7 @@ var require_dist2 = __commonJS({
|
|
|
102174
102183
|
var parse_proxy_response_1 = require_parse_proxy_response();
|
|
102175
102184
|
var debug = (0, debug_1.default)("https-proxy-agent");
|
|
102176
102185
|
var setServernameFromNonIpHost = (options) => {
|
|
102177
|
-
if (options.servername === void 0 && options.host && !
|
|
102186
|
+
if (options.servername === void 0 && options.host && !net.isIP(options.host)) {
|
|
102178
102187
|
return {
|
|
102179
102188
|
...options,
|
|
102180
102189
|
servername: options.host
|
|
@@ -102214,10 +102223,10 @@ var require_dist2 = __commonJS({
|
|
|
102214
102223
|
socket = tls.connect(setServernameFromNonIpHost(this.connectOpts));
|
|
102215
102224
|
} else {
|
|
102216
102225
|
debug("Creating `net.Socket`: %o", this.connectOpts);
|
|
102217
|
-
socket =
|
|
102226
|
+
socket = net.connect(this.connectOpts);
|
|
102218
102227
|
}
|
|
102219
102228
|
const headers = typeof this.proxyHeaders === "function" ? this.proxyHeaders() : { ...this.proxyHeaders };
|
|
102220
|
-
const host =
|
|
102229
|
+
const host = net.isIPv6(opts.host) ? `[${opts.host}]` : opts.host;
|
|
102221
102230
|
let payload = `CONNECT ${host}:${opts.port} HTTP/1.1\r
|
|
102222
102231
|
`;
|
|
102223
102232
|
if (proxy.username || proxy.password) {
|
|
@@ -102250,7 +102259,7 @@ var require_dist2 = __commonJS({
|
|
|
102250
102259
|
return socket;
|
|
102251
102260
|
}
|
|
102252
102261
|
socket.destroy();
|
|
102253
|
-
const fakeSocket = new
|
|
102262
|
+
const fakeSocket = new net.Socket({ writable: false });
|
|
102254
102263
|
fakeSocket.readable = true;
|
|
102255
102264
|
req.once("socket", (s7) => {
|
|
102256
102265
|
debug("Replaying proxy buffer for failed request");
|
|
@@ -102315,7 +102324,7 @@ var require_dist3 = __commonJS({
|
|
|
102315
102324
|
};
|
|
102316
102325
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
102317
102326
|
exports2.HttpProxyAgent = void 0;
|
|
102318
|
-
var
|
|
102327
|
+
var net = __importStar2(require("net"));
|
|
102319
102328
|
var tls = __importStar2(require("tls"));
|
|
102320
102329
|
var debug_1 = __importDefault2(require_src2());
|
|
102321
102330
|
var events_1 = require("events");
|
|
@@ -102388,7 +102397,7 @@ var require_dist3 = __commonJS({
|
|
|
102388
102397
|
socket = tls.connect(this.connectOpts);
|
|
102389
102398
|
} else {
|
|
102390
102399
|
debug("Creating `net.Socket`: %o", this.connectOpts);
|
|
102391
|
-
socket =
|
|
102400
|
+
socket = net.connect(this.connectOpts);
|
|
102392
102401
|
}
|
|
102393
102402
|
await (0, events_1.once)(socket, "connect");
|
|
102394
102403
|
return socket;
|
|
@@ -141268,7 +141277,7 @@ var require_connection = __commonJS({
|
|
|
141268
141277
|
var _crypto = _interopRequireDefault(require("crypto"));
|
|
141269
141278
|
var _os = _interopRequireDefault(require("os"));
|
|
141270
141279
|
var tls = _interopRequireWildcard(require("tls"));
|
|
141271
|
-
var
|
|
141280
|
+
var net = _interopRequireWildcard(require("net"));
|
|
141272
141281
|
var _dns = _interopRequireDefault(require("dns"));
|
|
141273
141282
|
var _constants = _interopRequireDefault(require("constants"));
|
|
141274
141283
|
var _stream = require("stream");
|
|
@@ -142317,7 +142326,7 @@ var require_connection = __commonJS({
|
|
|
142317
142326
|
async wrapWithTls(socket, signal) {
|
|
142318
142327
|
signal.throwIfAborted();
|
|
142319
142328
|
const secureContext = tls.createSecureContext(this.secureContextOptions);
|
|
142320
|
-
const serverName = !
|
|
142329
|
+
const serverName = !net.isIP(this.config.server) ? this.config.server : "";
|
|
142321
142330
|
const encryptOptions = {
|
|
142322
142331
|
host: this.config.server,
|
|
142323
142332
|
socket,
|
|
@@ -145223,6 +145232,7 @@ __export(connections_exports, {
|
|
|
145223
145232
|
connectToSQLite: () => connectToSQLite,
|
|
145224
145233
|
connectToSingleStore: () => connectToSingleStore,
|
|
145225
145234
|
prepareCockroach: () => prepareCockroach,
|
|
145235
|
+
prepareDuckDb: () => prepareDuckDb,
|
|
145226
145236
|
prepareGelDB: () => prepareGelDB,
|
|
145227
145237
|
preparePostgresDB: () => preparePostgresDB
|
|
145228
145238
|
});
|
|
@@ -145239,11 +145249,10 @@ function parseMssqlUrl(url) {
|
|
|
145239
145249
|
}
|
|
145240
145250
|
};
|
|
145241
145251
|
}
|
|
145242
|
-
var
|
|
145252
|
+
var normalisePGliteUrl, preparePostgresDB, prepareDuckDb, prepareCockroach, prepareGelDB, parseSingleStoreCredentials, connectToSingleStore, parseMysqlCredentials, connectToMySQL, parseMssqlCredentials, connectToMsSQL, prepareSqliteParams, preparePGliteParams, connectToSQLite, connectToLibSQL;
|
|
145243
145253
|
var init_connections = __esm({
|
|
145244
145254
|
"src/cli/connections.ts"() {
|
|
145245
145255
|
"use strict";
|
|
145246
|
-
import_net = __toESM(require("net"));
|
|
145247
145256
|
init_src();
|
|
145248
145257
|
init_wrapper();
|
|
145249
145258
|
init_utils();
|
|
@@ -145251,7 +145260,6 @@ var init_connections = __esm({
|
|
|
145251
145260
|
init_when_json_met_bigint();
|
|
145252
145261
|
init_utils3();
|
|
145253
145262
|
init_outputs();
|
|
145254
|
-
ms = (a6, b6) => Number(b6 - a6) / 1e6;
|
|
145255
145263
|
normalisePGliteUrl = (it) => {
|
|
145256
145264
|
if (it.startsWith("file:")) {
|
|
145257
145265
|
return it.substring(5);
|
|
@@ -145375,7 +145383,13 @@ var init_connections = __esm({
|
|
|
145375
145383
|
}
|
|
145376
145384
|
return results;
|
|
145377
145385
|
};
|
|
145378
|
-
return {
|
|
145386
|
+
return {
|
|
145387
|
+
packageName: "pglite",
|
|
145388
|
+
query,
|
|
145389
|
+
proxy,
|
|
145390
|
+
transactionProxy,
|
|
145391
|
+
migrate: migrateFn
|
|
145392
|
+
};
|
|
145379
145393
|
}
|
|
145380
145394
|
assertUnreachable(driver2);
|
|
145381
145395
|
}
|
|
@@ -145406,13 +145420,13 @@ var init_connections = __esm({
|
|
|
145406
145420
|
return pg.types.getTypeParser(typeId, format2);
|
|
145407
145421
|
}
|
|
145408
145422
|
};
|
|
145409
|
-
const
|
|
145410
|
-
const db = drizzle({ client
|
|
145423
|
+
const client = "url" in credentials ? new pg.Pool({ connectionString: credentials.url, max: 1 }) : new pg.Pool({ ...credentials, ssl, max: 1 });
|
|
145424
|
+
const db = drizzle({ client });
|
|
145411
145425
|
const migrateFn = async (config) => {
|
|
145412
145426
|
return migrate(db, config);
|
|
145413
145427
|
};
|
|
145414
145428
|
const query = async (sql, params) => {
|
|
145415
|
-
const result2 = await
|
|
145429
|
+
const result2 = await client.query({
|
|
145416
145430
|
text: sql,
|
|
145417
145431
|
values: params ?? [],
|
|
145418
145432
|
types: types3
|
|
@@ -145422,7 +145436,7 @@ var init_connections = __esm({
|
|
|
145422
145436
|
return result2.rows;
|
|
145423
145437
|
};
|
|
145424
145438
|
const proxy = async (params) => {
|
|
145425
|
-
const result2 = await
|
|
145439
|
+
const result2 = await client.query({
|
|
145426
145440
|
text: params.sql,
|
|
145427
145441
|
values: params.params,
|
|
145428
145442
|
...params.mode === "array" && { rowMode: "array" },
|
|
@@ -145434,7 +145448,7 @@ var init_connections = __esm({
|
|
|
145434
145448
|
};
|
|
145435
145449
|
const transactionProxy = async (queries) => {
|
|
145436
145450
|
const results = [];
|
|
145437
|
-
const tx = await
|
|
145451
|
+
const tx = await client.connect();
|
|
145438
145452
|
try {
|
|
145439
145453
|
await tx.query("BEGIN");
|
|
145440
145454
|
for (const query2 of queries) {
|
|
@@ -145453,119 +145467,13 @@ var init_connections = __esm({
|
|
|
145453
145467
|
}
|
|
145454
145468
|
return results;
|
|
145455
145469
|
};
|
|
145456
|
-
|
|
145457
|
-
|
|
145458
|
-
|
|
145459
|
-
|
|
145460
|
-
|
|
145461
|
-
|
|
145462
|
-
const stringifiedResult = JSON.stringify(explainResult.rows);
|
|
145463
|
-
const planningMatch = stringifiedResult.match(/Planning Time:\s*([\d.]+)\s*ms/i);
|
|
145464
|
-
const executionMatch = stringifiedResult.match(/Execution Time:\s*([\d.]+)\s*ms/i);
|
|
145465
|
-
let planningTime = Number(planningMatch[1]);
|
|
145466
|
-
let executionTime = Number(executionMatch[1]);
|
|
145467
|
-
let querySentAt = 0n;
|
|
145468
|
-
let firstDataAt = 0n;
|
|
145469
|
-
let lastDataAt = 0n;
|
|
145470
|
-
let lastRowParsedAt = 0n;
|
|
145471
|
-
let queryCompletedAt = 0n;
|
|
145472
|
-
let bytesReceived = 0;
|
|
145473
|
-
let rowCount = 0;
|
|
145474
|
-
let parseTime = 0;
|
|
145475
|
-
let lastParseTime = 0;
|
|
145476
|
-
const rowDescriptionListener = (data) => {
|
|
145477
|
-
if (firstDataAt === 0n) {
|
|
145478
|
-
firstDataAt = process.hrtime.bigint();
|
|
145479
|
-
}
|
|
145480
|
-
bytesReceived += data.length;
|
|
145481
|
-
};
|
|
145482
|
-
const originalRowListener = client.connection.listeners("dataRow")[0];
|
|
145483
|
-
const wrappedRowListener = (data) => {
|
|
145484
|
-
rowCount += 1;
|
|
145485
|
-
const start = process.hrtime.bigint();
|
|
145486
|
-
lastDataAt = start;
|
|
145487
|
-
originalRowListener.apply(client.connection, [data]);
|
|
145488
|
-
const end2 = process.hrtime.bigint();
|
|
145489
|
-
lastRowParsedAt = end2;
|
|
145490
|
-
lastParseTime = ms(start, end2);
|
|
145491
|
-
parseTime += lastParseTime;
|
|
145492
|
-
bytesReceived += data.length;
|
|
145493
|
-
};
|
|
145494
|
-
client.connection.removeAllListeners("dataRow");
|
|
145495
|
-
client.connection.addListener("dataRow", wrappedRowListener);
|
|
145496
|
-
client.connection.prependListener("rowDescription", rowDescriptionListener);
|
|
145497
|
-
querySentAt = process.hrtime.bigint();
|
|
145498
|
-
await client.query({
|
|
145499
|
-
text: sql,
|
|
145500
|
-
values: params,
|
|
145501
|
-
types: types3
|
|
145502
|
-
});
|
|
145503
|
-
queryCompletedAt = process.hrtime.bigint();
|
|
145504
|
-
client.connection.removeListener("rowDescription", rowDescriptionListener);
|
|
145505
|
-
client.connection.removeAllListeners("dataRow");
|
|
145506
|
-
client.connection.addListener("dataRow", originalRowListener);
|
|
145507
|
-
let querySentTime = ms(querySentAt, firstDataAt) - executionTime - planningTime;
|
|
145508
|
-
if (querySentTime < 0) {
|
|
145509
|
-
const percent = 0.1;
|
|
145510
|
-
const overflow = -querySentTime;
|
|
145511
|
-
const keepForSent = overflow * percent;
|
|
145512
|
-
const adjustedOverflow = overflow * (1 + percent);
|
|
145513
|
-
const total2 = planningTime + executionTime;
|
|
145514
|
-
const ratioPlanning = planningTime / total2;
|
|
145515
|
-
const ratioExecution = executionTime / total2;
|
|
145516
|
-
planningTime -= adjustedOverflow * ratioPlanning;
|
|
145517
|
-
executionTime -= adjustedOverflow * ratioExecution;
|
|
145518
|
-
querySentTime = keepForSent;
|
|
145519
|
-
}
|
|
145520
|
-
const networkLatencyBefore = querySentTime / 2;
|
|
145521
|
-
const networkLatencyAfter = querySentTime / 2;
|
|
145522
|
-
const downloadTime = ms(firstDataAt, lastDataAt) - (rowCount > 1 ? parseTime - lastParseTime : 0);
|
|
145523
|
-
const total = ms(querySentAt, queryCompletedAt);
|
|
145524
|
-
const calculatedTotal = networkLatencyBefore + planningTime + executionTime + networkLatencyAfter + downloadTime + parseTime + ms(lastRowParsedAt, queryCompletedAt);
|
|
145525
|
-
const errorMargin = Math.abs(total - calculatedTotal);
|
|
145526
|
-
return {
|
|
145527
|
-
networkLatencyBefore,
|
|
145528
|
-
planning: planningTime,
|
|
145529
|
-
execution: executionTime,
|
|
145530
|
-
networkLatencyAfter,
|
|
145531
|
-
dataDownload: downloadTime,
|
|
145532
|
-
dataParse: parseTime,
|
|
145533
|
-
total,
|
|
145534
|
-
errorMargin,
|
|
145535
|
-
dataSize: bytesReceived
|
|
145536
|
-
};
|
|
145537
|
-
};
|
|
145538
|
-
const benchmarkProxy = async ({ sql, params }, repeats) => {
|
|
145539
|
-
let startAt = 0n;
|
|
145540
|
-
let tcpConnectedAt = 0n;
|
|
145541
|
-
let tlsConnectedAt = null;
|
|
145542
|
-
let dbReadyAt = 0n;
|
|
145543
|
-
const client = "url" in credentials ? new pg.Client({ connectionString: credentials.url }) : new pg.Client({ ...credentials, ssl });
|
|
145544
|
-
client.connection.once("connect", () => {
|
|
145545
|
-
tcpConnectedAt = process.hrtime.bigint();
|
|
145546
|
-
});
|
|
145547
|
-
client.connection.prependOnceListener("sslconnect", () => {
|
|
145548
|
-
tlsConnectedAt = process.hrtime.bigint();
|
|
145549
|
-
});
|
|
145550
|
-
client.connection.prependOnceListener("readyForQuery", () => {
|
|
145551
|
-
dbReadyAt = process.hrtime.bigint();
|
|
145552
|
-
});
|
|
145553
|
-
startAt = process.hrtime.bigint();
|
|
145554
|
-
await client.connect();
|
|
145555
|
-
const results = [];
|
|
145556
|
-
for (let i7 = 0; i7 < repeats; i7++) {
|
|
145557
|
-
const r7 = await benchmarkQuery(client, sql, params);
|
|
145558
|
-
results.push(r7);
|
|
145559
|
-
}
|
|
145560
|
-
await client.end();
|
|
145561
|
-
return {
|
|
145562
|
-
tcpHandshake: ms(startAt, tcpConnectedAt),
|
|
145563
|
-
tlsHandshake: tlsConnectedAt ? ms(tcpConnectedAt, tlsConnectedAt) : null,
|
|
145564
|
-
dbHandshake: ms(tlsConnectedAt ?? tcpConnectedAt, dbReadyAt),
|
|
145565
|
-
queries: results
|
|
145566
|
-
};
|
|
145470
|
+
return {
|
|
145471
|
+
packageName: "pg",
|
|
145472
|
+
query,
|
|
145473
|
+
proxy,
|
|
145474
|
+
transactionProxy,
|
|
145475
|
+
migrate: migrateFn
|
|
145567
145476
|
};
|
|
145568
|
-
return { packageName: "pg", query, proxy, transactionProxy, benchmarkProxy, migrate: migrateFn };
|
|
145569
145477
|
}
|
|
145570
145478
|
if (await checkPackage("postgres")) {
|
|
145571
145479
|
console.log(
|
|
@@ -145616,7 +145524,13 @@ var init_connections = __esm({
|
|
|
145616
145524
|
}
|
|
145617
145525
|
return results;
|
|
145618
145526
|
};
|
|
145619
|
-
return {
|
|
145527
|
+
return {
|
|
145528
|
+
packageName: "postgres",
|
|
145529
|
+
query,
|
|
145530
|
+
proxy,
|
|
145531
|
+
transactionProxy,
|
|
145532
|
+
migrate: migrateFn
|
|
145533
|
+
};
|
|
145620
145534
|
}
|
|
145621
145535
|
if (await checkPackage("@vercel/postgres")) {
|
|
145622
145536
|
console.log(
|
|
@@ -145697,7 +145611,13 @@ var init_connections = __esm({
|
|
|
145697
145611
|
}
|
|
145698
145612
|
return results;
|
|
145699
145613
|
};
|
|
145700
|
-
return {
|
|
145614
|
+
return {
|
|
145615
|
+
packageName: "@vercel/postgres",
|
|
145616
|
+
query,
|
|
145617
|
+
proxy,
|
|
145618
|
+
transactionProxy,
|
|
145619
|
+
migrate: migrateFn
|
|
145620
|
+
};
|
|
145701
145621
|
}
|
|
145702
145622
|
if (await checkPackage("@neondatabase/serverless")) {
|
|
145703
145623
|
console.log(
|
|
@@ -145710,7 +145630,11 @@ var init_connections = __esm({
|
|
|
145710
145630
|
"'@neondatabase/serverless' can only connect to remote Neon/Vercel Postgres/Supabase instances through a websocket"
|
|
145711
145631
|
)
|
|
145712
145632
|
);
|
|
145713
|
-
const {
|
|
145633
|
+
const {
|
|
145634
|
+
Pool,
|
|
145635
|
+
neonConfig,
|
|
145636
|
+
types: pgTypes
|
|
145637
|
+
} = require("@neondatabase/serverless");
|
|
145714
145638
|
const { drizzle } = require("drizzle-orm/neon-serverless");
|
|
145715
145639
|
const { migrate } = require("drizzle-orm/neon-serverless/migrator");
|
|
145716
145640
|
const ssl = "ssl" in credentials ? credentials.ssl === "prefer" || credentials.ssl === "require" || credentials.ssl === "allow" ? { rejectUnauthorized: false } : credentials.ssl === "verify-full" ? {} : credentials.ssl : {};
|
|
@@ -145780,7 +145704,13 @@ var init_connections = __esm({
|
|
|
145780
145704
|
}
|
|
145781
145705
|
return results;
|
|
145782
145706
|
};
|
|
145783
|
-
return {
|
|
145707
|
+
return {
|
|
145708
|
+
packageName: "@neondatabase/serverless",
|
|
145709
|
+
query,
|
|
145710
|
+
proxy,
|
|
145711
|
+
transactionProxy,
|
|
145712
|
+
migrate: migrateFn
|
|
145713
|
+
};
|
|
145784
145714
|
}
|
|
145785
145715
|
if (await checkPackage("bun")) {
|
|
145786
145716
|
console.log(withStyle.info(`Using 'bun' driver for database querying`));
|
|
@@ -145831,6 +145761,54 @@ var init_connections = __esm({
|
|
|
145831
145761
|
console.warn("For the 'bun' driver, run your script using: bun --bun");
|
|
145832
145762
|
process.exit(1);
|
|
145833
145763
|
};
|
|
145764
|
+
prepareDuckDb = async (credentials) => {
|
|
145765
|
+
if (await checkPackage("@duckdb/node-api")) {
|
|
145766
|
+
console.log(
|
|
145767
|
+
withStyle.info(`Using '@duckdb/node-api' driver for database querying`)
|
|
145768
|
+
);
|
|
145769
|
+
const { DuckDBInstance } = require("@duckdb/node-api");
|
|
145770
|
+
const instance = await DuckDBInstance.create(credentials.url);
|
|
145771
|
+
const client = await instance.connect();
|
|
145772
|
+
const query = async (sql, params = []) => {
|
|
145773
|
+
const result2 = await client.run(sql, params);
|
|
145774
|
+
const rows = await result2.getRowObjectsJson();
|
|
145775
|
+
return rows;
|
|
145776
|
+
};
|
|
145777
|
+
const proxy = async (params) => {
|
|
145778
|
+
const result2 = await client.run(params.sql, params.params);
|
|
145779
|
+
return params.mode === "array" ? await result2.getRowsJson() : await result2.getRowObjectsJson();
|
|
145780
|
+
};
|
|
145781
|
+
const transactionProxy = async (queries) => {
|
|
145782
|
+
const results = [];
|
|
145783
|
+
try {
|
|
145784
|
+
await client.run("BEGIN");
|
|
145785
|
+
for (const query2 of queries) {
|
|
145786
|
+
const result2 = await client.run(query2.sql);
|
|
145787
|
+
results.push(await result2.getRowObjectsJson());
|
|
145788
|
+
}
|
|
145789
|
+
await client.run("COMMIT");
|
|
145790
|
+
} catch (error3) {
|
|
145791
|
+
await client.run("ROLLBACK");
|
|
145792
|
+
results.push(error3);
|
|
145793
|
+
}
|
|
145794
|
+
return results;
|
|
145795
|
+
};
|
|
145796
|
+
return {
|
|
145797
|
+
packageName: "@duckdb/node-api",
|
|
145798
|
+
query,
|
|
145799
|
+
proxy,
|
|
145800
|
+
transactionProxy,
|
|
145801
|
+
migrate: () => {
|
|
145802
|
+
throw new Error("DuckDB does not support migrations");
|
|
145803
|
+
}
|
|
145804
|
+
};
|
|
145805
|
+
}
|
|
145806
|
+
console.error(
|
|
145807
|
+
// "To connect to DuckDb database - please install either of 'duckdb', '@duckdb/node-api' drivers",
|
|
145808
|
+
"To connect to DuckDb database - please install '@duckdb/node-api' driver"
|
|
145809
|
+
);
|
|
145810
|
+
process.exit(1);
|
|
145811
|
+
};
|
|
145834
145812
|
prepareCockroach = async (credentials) => {
|
|
145835
145813
|
if (await checkPackage("pg")) {
|
|
145836
145814
|
const { default: pg } = require("pg");
|
|
@@ -145883,9 +145861,7 @@ var init_connections = __esm({
|
|
|
145883
145861
|
};
|
|
145884
145862
|
return { query, proxy, migrate: migrateFn };
|
|
145885
145863
|
}
|
|
145886
|
-
console.error(
|
|
145887
|
-
"To connect to Cockroach - please install 'pg' package"
|
|
145888
|
-
);
|
|
145864
|
+
console.error("To connect to Cockroach - please install 'pg' package");
|
|
145889
145865
|
process.exit(1);
|
|
145890
145866
|
};
|
|
145891
145867
|
prepareGelDB = async (credentials) => {
|
|
@@ -145944,9 +145920,7 @@ To link your project, please refer https://docs.geldata.com/reference/cli/gel_in
|
|
|
145944
145920
|
};
|
|
145945
145921
|
return { packageName: "gel", query, proxy, transactionProxy };
|
|
145946
145922
|
}
|
|
145947
|
-
console.error(
|
|
145948
|
-
"To connect to gel database - please install 'edgedb' driver"
|
|
145949
|
-
);
|
|
145923
|
+
console.error("To connect to gel database - please install 'edgedb' driver");
|
|
145950
145924
|
process.exit(1);
|
|
145951
145925
|
};
|
|
145952
145926
|
parseSingleStoreCredentials = (credentials) => {
|
|
@@ -146060,6 +146034,7 @@ To link your project, please refer https://docs.geldata.com/reference/cli/gel_in
|
|
|
146060
146034
|
}
|
|
146061
146035
|
return next();
|
|
146062
146036
|
};
|
|
146037
|
+
await connection.connect();
|
|
146063
146038
|
const query = async (sql, params) => {
|
|
146064
146039
|
const res = await connection.execute({
|
|
146065
146040
|
sql,
|
|
@@ -146099,156 +146074,11 @@ To link your project, please refer https://docs.geldata.com/reference/cli/gel_in
|
|
|
146099
146074
|
}
|
|
146100
146075
|
return results;
|
|
146101
146076
|
};
|
|
146102
|
-
const benchmarkQuery = async (newConnection, sql, params) => {
|
|
146103
|
-
const explainResult = await connection.query({
|
|
146104
|
-
sql: `EXPLAIN ANALYZE ${sql}`,
|
|
146105
|
-
values: params ?? [],
|
|
146106
|
-
typeCast
|
|
146107
|
-
});
|
|
146108
|
-
const stringifiedResult = JSON.stringify(explainResult[0]);
|
|
146109
|
-
const timeMatch = stringifiedResult.match(
|
|
146110
|
-
/actual time=([0-9.eE+-]+)\.\.([0-9.eE+-]+)/
|
|
146111
|
-
);
|
|
146112
|
-
const lastRowTime = Number(timeMatch[2]);
|
|
146113
|
-
let executionTime = lastRowTime;
|
|
146114
|
-
let querySentAt = 0n;
|
|
146115
|
-
let firstDataAt = 0n;
|
|
146116
|
-
let lastDataAt = 0n;
|
|
146117
|
-
let lastRowParsedAt = 0n;
|
|
146118
|
-
let queryCompletedAt = 0n;
|
|
146119
|
-
let bytesReceived = 0;
|
|
146120
|
-
let rowCount = 0;
|
|
146121
|
-
let parseTime = 0;
|
|
146122
|
-
let lastParseTime = 0;
|
|
146123
|
-
querySentAt = process.hrtime.bigint();
|
|
146124
|
-
await new Promise((resolve2, reject) => {
|
|
146125
|
-
const query2 = newConnection.query({
|
|
146126
|
-
sql,
|
|
146127
|
-
values: params ?? [],
|
|
146128
|
-
typeCast
|
|
146129
|
-
});
|
|
146130
|
-
const originalRowHandler = query2.row;
|
|
146131
|
-
let packets = 0;
|
|
146132
|
-
const wrappedRowListener = (packet, connection2) => {
|
|
146133
|
-
packets += 1;
|
|
146134
|
-
if (firstDataAt === 0n) {
|
|
146135
|
-
firstDataAt = process.hrtime.bigint();
|
|
146136
|
-
bytesReceived += packet.start;
|
|
146137
|
-
}
|
|
146138
|
-
const start = process.hrtime.bigint();
|
|
146139
|
-
lastDataAt = start;
|
|
146140
|
-
const res = originalRowHandler.apply(query2, [packet, connection2]);
|
|
146141
|
-
const end2 = process.hrtime.bigint();
|
|
146142
|
-
lastRowParsedAt = end2;
|
|
146143
|
-
lastParseTime = ms(start, end2);
|
|
146144
|
-
parseTime += lastParseTime;
|
|
146145
|
-
bytesReceived += packet.length();
|
|
146146
|
-
if (!res || packet.isEOF()) {
|
|
146147
|
-
return res;
|
|
146148
|
-
}
|
|
146149
|
-
return wrappedRowListener;
|
|
146150
|
-
};
|
|
146151
|
-
query2.row = wrappedRowListener;
|
|
146152
|
-
query2.on("result", () => {
|
|
146153
|
-
rowCount += 1;
|
|
146154
|
-
});
|
|
146155
|
-
query2.on("error", (err2) => {
|
|
146156
|
-
reject(err2);
|
|
146157
|
-
});
|
|
146158
|
-
query2.on("end", () => {
|
|
146159
|
-
resolve2();
|
|
146160
|
-
});
|
|
146161
|
-
});
|
|
146162
|
-
queryCompletedAt = process.hrtime.bigint();
|
|
146163
|
-
let querySentTime = ms(querySentAt, firstDataAt) - executionTime;
|
|
146164
|
-
if (querySentTime < 0) {
|
|
146165
|
-
const percent = 0.1;
|
|
146166
|
-
const overflow = -querySentTime;
|
|
146167
|
-
const keepForSent = overflow * percent;
|
|
146168
|
-
const adjustedOverflow = overflow * (1 + percent);
|
|
146169
|
-
const total2 = executionTime;
|
|
146170
|
-
const ratioExecution = executionTime / total2;
|
|
146171
|
-
executionTime -= adjustedOverflow * ratioExecution;
|
|
146172
|
-
querySentTime = keepForSent;
|
|
146173
|
-
}
|
|
146174
|
-
const networkLatencyBefore = querySentTime / 2;
|
|
146175
|
-
const networkLatencyAfter = querySentTime / 2;
|
|
146176
|
-
const downloadTime = ms(firstDataAt, lastDataAt) - (rowCount > 1 ? parseTime - lastParseTime : 0);
|
|
146177
|
-
const total = ms(querySentAt, queryCompletedAt);
|
|
146178
|
-
const calculatedTotal = networkLatencyBefore + executionTime + networkLatencyAfter + downloadTime + parseTime + ms(lastRowParsedAt, queryCompletedAt);
|
|
146179
|
-
const errorMargin = Math.abs(total - calculatedTotal);
|
|
146180
|
-
return {
|
|
146181
|
-
networkLatencyBefore,
|
|
146182
|
-
planning: null,
|
|
146183
|
-
execution: executionTime,
|
|
146184
|
-
networkLatencyAfter,
|
|
146185
|
-
dataDownload: downloadTime,
|
|
146186
|
-
dataParse: parseTime,
|
|
146187
|
-
total,
|
|
146188
|
-
errorMargin,
|
|
146189
|
-
dataSize: bytesReceived
|
|
146190
|
-
};
|
|
146191
|
-
};
|
|
146192
|
-
const benchmarkProxy = async ({ sql, params }, repeats) => {
|
|
146193
|
-
const { createConnection: createConnection2 } = require("mysql2");
|
|
146194
|
-
let startAt = 0n;
|
|
146195
|
-
let tcpConnectedAt = 0n;
|
|
146196
|
-
let tlsConnectedAt = null;
|
|
146197
|
-
const createStream = ({ config }) => {
|
|
146198
|
-
let stream;
|
|
146199
|
-
if (config.socketPath) {
|
|
146200
|
-
stream = import_net.default.connect(config.socketPath);
|
|
146201
|
-
} else {
|
|
146202
|
-
stream = import_net.default.connect(config.port, config.host);
|
|
146203
|
-
}
|
|
146204
|
-
if (config.enableKeepAlive) {
|
|
146205
|
-
stream.on("connect", () => {
|
|
146206
|
-
stream.setKeepAlive(true, config.keepAliveInitialDelay);
|
|
146207
|
-
});
|
|
146208
|
-
}
|
|
146209
|
-
stream.setNoDelay(true);
|
|
146210
|
-
stream.once("connect", () => {
|
|
146211
|
-
tcpConnectedAt = process.hrtime.bigint();
|
|
146212
|
-
});
|
|
146213
|
-
return stream;
|
|
146214
|
-
};
|
|
146215
|
-
startAt = process.hrtime.bigint();
|
|
146216
|
-
const connection2 = result2.url ? createConnection2({
|
|
146217
|
-
uri: result2.url,
|
|
146218
|
-
stream: createStream
|
|
146219
|
-
}) : createConnection2({
|
|
146220
|
-
...result2.credentials,
|
|
146221
|
-
stream: createStream
|
|
146222
|
-
});
|
|
146223
|
-
await new Promise((resolve2, reject) => {
|
|
146224
|
-
connection2.connect((err2) => {
|
|
146225
|
-
tlsConnectedAt = process.hrtime.bigint();
|
|
146226
|
-
if (err2) {
|
|
146227
|
-
reject(err2);
|
|
146228
|
-
} else {
|
|
146229
|
-
resolve2();
|
|
146230
|
-
}
|
|
146231
|
-
});
|
|
146232
|
-
});
|
|
146233
|
-
const results = [];
|
|
146234
|
-
for (let i7 = 0; i7 < repeats; i7++) {
|
|
146235
|
-
const r7 = await benchmarkQuery(connection2, sql, params);
|
|
146236
|
-
results.push(r7);
|
|
146237
|
-
}
|
|
146238
|
-
connection2.end();
|
|
146239
|
-
return {
|
|
146240
|
-
tcpHandshake: ms(startAt, tcpConnectedAt),
|
|
146241
|
-
tlsHandshake: tlsConnectedAt ? ms(tcpConnectedAt, tlsConnectedAt) : null,
|
|
146242
|
-
dbHandshake: null,
|
|
146243
|
-
queries: results
|
|
146244
|
-
};
|
|
146245
|
-
};
|
|
146246
146077
|
return {
|
|
146247
146078
|
db: { query },
|
|
146248
146079
|
packageName: "mysql2",
|
|
146249
146080
|
proxy,
|
|
146250
146081
|
transactionProxy,
|
|
146251
|
-
benchmarkProxy,
|
|
146252
146082
|
database: result2.database,
|
|
146253
146083
|
migrate: migrateFn
|
|
146254
146084
|
};
|
|
@@ -146398,9 +146228,7 @@ To link your project, please refer https://docs.geldata.com/reference/cli/gel_in
|
|
|
146398
146228
|
migrate: migrateFn
|
|
146399
146229
|
};
|
|
146400
146230
|
}
|
|
146401
|
-
console.error(
|
|
146402
|
-
"To connect to MsSQL database - please install 'mssql' driver"
|
|
146403
|
-
);
|
|
146231
|
+
console.error("To connect to MsSQL database - please install 'mssql' driver");
|
|
146404
146232
|
process.exit(1);
|
|
146405
146233
|
};
|
|
146406
146234
|
prepareSqliteParams = (params, driver2) => {
|
|
@@ -146505,7 +146333,10 @@ To link your project, please refer https://docs.geldata.com/reference/cli/gel_in
|
|
|
146505
146333
|
await remoteCallback(query2, [], "run");
|
|
146506
146334
|
};
|
|
146507
146335
|
const proxy = async (params) => {
|
|
146508
|
-
const preparedParams = prepareSqliteParams(
|
|
146336
|
+
const preparedParams = prepareSqliteParams(
|
|
146337
|
+
params.params || [],
|
|
146338
|
+
"d1-http"
|
|
146339
|
+
);
|
|
146509
146340
|
const result2 = await remoteCallback(
|
|
146510
146341
|
params.sql,
|
|
146511
146342
|
preparedParams,
|
|
@@ -146730,17 +146561,19 @@ To link your project, please refer https://docs.geldata.com/reference/cli/gel_in
|
|
|
146730
146561
|
};
|
|
146731
146562
|
const transactionProxy = async (queries) => {
|
|
146732
146563
|
const results = [];
|
|
146733
|
-
const tx = sqlite.transaction(
|
|
146734
|
-
|
|
146735
|
-
|
|
146736
|
-
|
|
146737
|
-
|
|
146738
|
-
|
|
146739
|
-
|
|
146564
|
+
const tx = sqlite.transaction(
|
|
146565
|
+
(queries2) => {
|
|
146566
|
+
for (const query of queries2) {
|
|
146567
|
+
let result2 = [];
|
|
146568
|
+
if (query.method === "values" || query.method === "get" || query.method === "all") {
|
|
146569
|
+
result2 = sqlite.prepare(query.sql).all();
|
|
146570
|
+
} else {
|
|
146571
|
+
sqlite.prepare(query.sql).run();
|
|
146572
|
+
}
|
|
146573
|
+
results.push(result2);
|
|
146740
146574
|
}
|
|
146741
|
-
results.push(result2);
|
|
146742
146575
|
}
|
|
146743
|
-
|
|
146576
|
+
);
|
|
146744
146577
|
try {
|
|
146745
146578
|
tx(queries);
|
|
146746
146579
|
} catch (error3) {
|
|
@@ -146748,7 +146581,13 @@ To link your project, please refer https://docs.geldata.com/reference/cli/gel_in
|
|
|
146748
146581
|
}
|
|
146749
146582
|
return results;
|
|
146750
146583
|
};
|
|
146751
|
-
return {
|
|
146584
|
+
return {
|
|
146585
|
+
...db,
|
|
146586
|
+
packageName: "better-sqlite3",
|
|
146587
|
+
proxy,
|
|
146588
|
+
transactionProxy,
|
|
146589
|
+
migrate: migrateFn
|
|
146590
|
+
};
|
|
146752
146591
|
}
|
|
146753
146592
|
if (await checkPackage("bun")) {
|
|
146754
146593
|
console.log(withStyle.info(`Using 'bun' driver for database querying`));
|
|
@@ -148802,8 +148641,8 @@ ${sql}
|
|
|
148802
148641
|
`;
|
|
148803
148642
|
return content;
|
|
148804
148643
|
};
|
|
148805
|
-
prepareSnapshotFolderName = (
|
|
148806
|
-
const now =
|
|
148644
|
+
prepareSnapshotFolderName = (ms) => {
|
|
148645
|
+
const now = ms ? new Date(ms) : /* @__PURE__ */ new Date();
|
|
148807
148646
|
return `${now.getFullYear()}${two(now.getUTCMonth() + 1)}${two(
|
|
148808
148647
|
now.getUTCDate()
|
|
148809
148648
|
)}${two(now.getUTCHours())}${two(now.getUTCMinutes())}${two(
|
|
@@ -152288,6 +152127,7 @@ var init_cors = __esm({
|
|
|
152288
152127
|
// src/cli/commands/studio.ts
|
|
152289
152128
|
var studio_exports = {};
|
|
152290
152129
|
__export(studio_exports, {
|
|
152130
|
+
drizzleForDuckDb: () => drizzleForDuckDb,
|
|
152291
152131
|
drizzleForLibSQL: () => drizzleForLibSQL,
|
|
152292
152132
|
drizzleForMySQL: () => drizzleForMySQL,
|
|
152293
152133
|
drizzleForPostgres: () => drizzleForPostgres,
|
|
@@ -152301,7 +152141,7 @@ __export(studio_exports, {
|
|
|
152301
152141
|
prepareServer: () => prepareServer,
|
|
152302
152142
|
prepareSingleStoreSchema: () => prepareSingleStoreSchema
|
|
152303
152143
|
});
|
|
152304
|
-
var import_crypto10, import_drizzle_orm3, import_relations3, import_mssql_core2, import_mysql_core2, import_pg_core3, import_singlestore_core, import_sqlite_core2, import_fs6, import_node_https2, preparePgSchema, prepareMySqlSchema, prepareMsSqlSchema, prepareSQLiteSchema, prepareSingleStoreSchema, getCustomDefaults, drizzleForPostgres, drizzleForMySQL, drizzleForSQLite, drizzleForLibSQL, drizzleForSingleStore, extractRelations, init2, proxySchema, transactionProxySchema,
|
|
152144
|
+
var import_crypto10, import_drizzle_orm3, import_relations3, import_mssql_core2, import_mysql_core2, import_pg_core3, import_singlestore_core, import_sqlite_core2, import_fs6, import_node_https2, preparePgSchema, prepareMySqlSchema, prepareMsSqlSchema, prepareSQLiteSchema, prepareSingleStoreSchema, getCustomDefaults, drizzleForPostgres, drizzleForDuckDb, drizzleForMySQL, drizzleForSQLite, drizzleForLibSQL, drizzleForSingleStore, extractRelations, init2, proxySchema, transactionProxySchema, defaultsSchema, schema5, jsonStringify, prepareServer;
|
|
152305
152145
|
var init_studio = __esm({
|
|
152306
152146
|
"src/cli/commands/studio.ts"() {
|
|
152307
152147
|
"use strict";
|
|
@@ -152525,7 +152365,6 @@ var init_studio = __esm({
|
|
|
152525
152365
|
packageName: db.packageName,
|
|
152526
152366
|
proxy: db.proxy,
|
|
152527
152367
|
transactionProxy: db.transactionProxy,
|
|
152528
|
-
benchmarkProxy: db.benchmarkProxy,
|
|
152529
152368
|
customDefaults,
|
|
152530
152369
|
schema: pgSchema2,
|
|
152531
152370
|
relations: relations2,
|
|
@@ -152533,9 +152372,26 @@ var init_studio = __esm({
|
|
|
152533
152372
|
casing: casing2
|
|
152534
152373
|
};
|
|
152535
152374
|
};
|
|
152375
|
+
drizzleForDuckDb = async (credentials) => {
|
|
152376
|
+
const { prepareDuckDb: prepareDuckDb2 } = await Promise.resolve().then(() => (init_connections(), connections_exports));
|
|
152377
|
+
const db = await prepareDuckDb2(credentials);
|
|
152378
|
+
const dbUrl = `duckdb://${credentials.url}`;
|
|
152379
|
+
const dbHash = (0, import_crypto10.createHash)("sha256").update(dbUrl).digest("hex");
|
|
152380
|
+
return {
|
|
152381
|
+
dbHash,
|
|
152382
|
+
dialect: "duckdb",
|
|
152383
|
+
driver: void 0,
|
|
152384
|
+
packageName: db.packageName,
|
|
152385
|
+
proxy: db.proxy,
|
|
152386
|
+
transactionProxy: db.transactionProxy,
|
|
152387
|
+
customDefaults: [],
|
|
152388
|
+
schema: {},
|
|
152389
|
+
relations: {}
|
|
152390
|
+
};
|
|
152391
|
+
};
|
|
152536
152392
|
drizzleForMySQL = async (credentials, mysqlSchema, relations2, schemaFiles, casing2) => {
|
|
152537
152393
|
const { connectToMySQL: connectToMySQL2 } = await Promise.resolve().then(() => (init_connections(), connections_exports));
|
|
152538
|
-
const { proxy, transactionProxy,
|
|
152394
|
+
const { proxy, transactionProxy, database, packageName } = await connectToMySQL2(credentials);
|
|
152539
152395
|
const customDefaults = getCustomDefaults(mysqlSchema, casing2);
|
|
152540
152396
|
let dbUrl;
|
|
152541
152397
|
if ("url" in credentials) {
|
|
@@ -152551,7 +152407,6 @@ var init_studio = __esm({
|
|
|
152551
152407
|
databaseName: database,
|
|
152552
152408
|
proxy,
|
|
152553
152409
|
transactionProxy,
|
|
152554
|
-
benchmarkProxy,
|
|
152555
152410
|
customDefaults,
|
|
152556
152411
|
schema: mysqlSchema,
|
|
152557
152412
|
relations: relations2,
|
|
@@ -152721,23 +152576,6 @@ var init_studio = __esm({
|
|
|
152721
152576
|
]).optional()
|
|
152722
152577
|
}).array()
|
|
152723
152578
|
});
|
|
152724
|
-
benchmarkProxySchema = external_exports.object({
|
|
152725
|
-
type: external_exports.literal("bproxy"),
|
|
152726
|
-
data: external_exports.object({
|
|
152727
|
-
query: external_exports.object({
|
|
152728
|
-
sql: external_exports.string(),
|
|
152729
|
-
params: external_exports.array(external_exports.any()).optional(),
|
|
152730
|
-
method: external_exports.union([
|
|
152731
|
-
external_exports.literal("values"),
|
|
152732
|
-
external_exports.literal("get"),
|
|
152733
|
-
external_exports.literal("all"),
|
|
152734
|
-
external_exports.literal("run"),
|
|
152735
|
-
external_exports.literal("execute")
|
|
152736
|
-
]).optional()
|
|
152737
|
-
}),
|
|
152738
|
-
repeats: external_exports.number().min(1).optional()
|
|
152739
|
-
})
|
|
152740
|
-
});
|
|
152741
152579
|
defaultsSchema = external_exports.object({
|
|
152742
152580
|
type: external_exports.literal("defaults"),
|
|
152743
152581
|
data: external_exports.array(
|
|
@@ -152752,7 +152590,6 @@ var init_studio = __esm({
|
|
|
152752
152590
|
init2,
|
|
152753
152591
|
proxySchema,
|
|
152754
152592
|
transactionProxySchema,
|
|
152755
|
-
benchmarkProxySchema,
|
|
152756
152593
|
defaultsSchema
|
|
152757
152594
|
]);
|
|
152758
152595
|
jsonStringify = (data) => {
|
|
@@ -152775,7 +152612,6 @@ var init_studio = __esm({
|
|
|
152775
152612
|
databaseName,
|
|
152776
152613
|
proxy,
|
|
152777
152614
|
transactionProxy,
|
|
152778
|
-
benchmarkProxy,
|
|
152779
152615
|
customDefaults,
|
|
152780
152616
|
schema: drizzleSchema,
|
|
152781
152617
|
relations: relations2,
|
|
@@ -152839,7 +152675,7 @@ var init_studio = __esm({
|
|
|
152839
152675
|
console.warn("Error message:", error3.message);
|
|
152840
152676
|
}
|
|
152841
152677
|
return c6.json({
|
|
152842
|
-
version: "6.
|
|
152678
|
+
version: "6.2",
|
|
152843
152679
|
dialect: dialect6,
|
|
152844
152680
|
driver: driver2,
|
|
152845
152681
|
packageName,
|
|
@@ -152877,21 +152713,6 @@ var init_studio = __esm({
|
|
|
152877
152713
|
}
|
|
152878
152714
|
);
|
|
152879
152715
|
}
|
|
152880
|
-
if (type === "bproxy") {
|
|
152881
|
-
if (!benchmarkProxy) {
|
|
152882
|
-
throw new Error("Benchmark proxy is not configured for this database.");
|
|
152883
|
-
}
|
|
152884
|
-
const result2 = await benchmarkProxy(body.data.query, body.data.repeats || 1);
|
|
152885
|
-
const res = jsonStringify(result2);
|
|
152886
|
-
return c6.body(
|
|
152887
|
-
res,
|
|
152888
|
-
{
|
|
152889
|
-
headers: {
|
|
152890
|
-
"Content-Type": "application/json"
|
|
152891
|
-
}
|
|
152892
|
-
}
|
|
152893
|
-
);
|
|
152894
|
-
}
|
|
152895
152716
|
if (type === "defaults") {
|
|
152896
152717
|
const columns = body.data;
|
|
152897
152718
|
const result2 = columns.map((column8) => {
|