drizzle-kit 0.30.1 → 0.30.2-0a0cdd2
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.js +386 -95
- package/api.mjs +386 -95
- package/bin.cjs +551 -342
- package/package.json +1 -1
package/api.js
CHANGED
@@ -3469,17 +3469,17 @@ function processCreateParams(params) {
|
|
3469
3469
|
if (errorMap2)
|
3470
3470
|
return { errorMap: errorMap2, description };
|
3471
3471
|
const customMap = (iss, ctx) => {
|
3472
|
-
var
|
3472
|
+
var _a415, _b305;
|
3473
3473
|
const { message } = params;
|
3474
3474
|
if (iss.code === "invalid_enum_value") {
|
3475
3475
|
return { message: message !== null && message !== void 0 ? message : ctx.defaultError };
|
3476
3476
|
}
|
3477
3477
|
if (typeof ctx.data === "undefined") {
|
3478
|
-
return { message: (
|
3478
|
+
return { message: (_a415 = message !== null && message !== void 0 ? message : required_error) !== null && _a415 !== void 0 ? _a415 : ctx.defaultError };
|
3479
3479
|
}
|
3480
3480
|
if (iss.code !== "invalid_type")
|
3481
3481
|
return { message: ctx.defaultError };
|
3482
|
-
return { message: (
|
3482
|
+
return { message: (_b305 = message !== null && message !== void 0 ? message : invalid_type_error) !== null && _b305 !== void 0 ? _b305 : ctx.defaultError };
|
3483
3483
|
};
|
3484
3484
|
return { errorMap: customMap, description };
|
3485
3485
|
}
|
@@ -4141,11 +4141,11 @@ var init_lib = __esm({
|
|
4141
4141
|
throw result.error;
|
4142
4142
|
}
|
4143
4143
|
safeParse(data, params) {
|
4144
|
-
var
|
4144
|
+
var _a415;
|
4145
4145
|
const ctx = {
|
4146
4146
|
common: {
|
4147
4147
|
issues: [],
|
4148
|
-
async: (
|
4148
|
+
async: (_a415 = params === null || params === void 0 ? void 0 : params.async) !== null && _a415 !== void 0 ? _a415 : false,
|
4149
4149
|
contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap
|
4150
4150
|
},
|
4151
4151
|
path: (params === null || params === void 0 ? void 0 : params.path) || [],
|
@@ -4467,7 +4467,7 @@ var init_lib = __esm({
|
|
4467
4467
|
} else if (check.kind === "url") {
|
4468
4468
|
try {
|
4469
4469
|
new URL(input.data);
|
4470
|
-
} catch (
|
4470
|
+
} catch (_a415) {
|
4471
4471
|
ctx = this._getOrReturnCtx(input, ctx);
|
4472
4472
|
addIssueToContext(ctx, {
|
4473
4473
|
validation: "url",
|
@@ -4637,7 +4637,7 @@ var init_lib = __esm({
|
|
4637
4637
|
return this._addCheck({ kind: "ip", ...errorUtil.errToObj(options) });
|
4638
4638
|
}
|
4639
4639
|
datetime(options) {
|
4640
|
-
var
|
4640
|
+
var _a415, _b305;
|
4641
4641
|
if (typeof options === "string") {
|
4642
4642
|
return this._addCheck({
|
4643
4643
|
kind: "datetime",
|
@@ -4650,8 +4650,8 @@ var init_lib = __esm({
|
|
4650
4650
|
return this._addCheck({
|
4651
4651
|
kind: "datetime",
|
4652
4652
|
precision: typeof (options === null || options === void 0 ? void 0 : options.precision) === "undefined" ? null : options === null || options === void 0 ? void 0 : options.precision,
|
4653
|
-
offset: (
|
4654
|
-
local: (
|
4653
|
+
offset: (_a415 = options === null || options === void 0 ? void 0 : options.offset) !== null && _a415 !== void 0 ? _a415 : false,
|
4654
|
+
local: (_b305 = options === null || options === void 0 ? void 0 : options.local) !== null && _b305 !== void 0 ? _b305 : false,
|
4655
4655
|
...errorUtil.errToObj(options === null || options === void 0 ? void 0 : options.message)
|
4656
4656
|
});
|
4657
4657
|
}
|
@@ -4814,11 +4814,11 @@ var init_lib = __esm({
|
|
4814
4814
|
}
|
4815
4815
|
};
|
4816
4816
|
ZodString.create = (params) => {
|
4817
|
-
var
|
4817
|
+
var _a415;
|
4818
4818
|
return new ZodString({
|
4819
4819
|
checks: [],
|
4820
4820
|
typeName: ZodFirstPartyTypeKind.ZodString,
|
4821
|
-
coerce: (
|
4821
|
+
coerce: (_a415 = params === null || params === void 0 ? void 0 : params.coerce) !== null && _a415 !== void 0 ? _a415 : false,
|
4822
4822
|
...processCreateParams(params)
|
4823
4823
|
});
|
4824
4824
|
};
|
@@ -5211,11 +5211,11 @@ var init_lib = __esm({
|
|
5211
5211
|
}
|
5212
5212
|
};
|
5213
5213
|
ZodBigInt.create = (params) => {
|
5214
|
-
var
|
5214
|
+
var _a415;
|
5215
5215
|
return new ZodBigInt({
|
5216
5216
|
checks: [],
|
5217
5217
|
typeName: ZodFirstPartyTypeKind.ZodBigInt,
|
5218
|
-
coerce: (
|
5218
|
+
coerce: (_a415 = params === null || params === void 0 ? void 0 : params.coerce) !== null && _a415 !== void 0 ? _a415 : false,
|
5219
5219
|
...processCreateParams(params)
|
5220
5220
|
});
|
5221
5221
|
};
|
@@ -5695,8 +5695,8 @@ var init_lib = __esm({
|
|
5695
5695
|
unknownKeys: "strict",
|
5696
5696
|
...message !== void 0 ? {
|
5697
5697
|
errorMap: (issue, ctx) => {
|
5698
|
-
var
|
5699
|
-
const defaultError = (_c14 = (
|
5698
|
+
var _a415, _b305, _c14, _d6;
|
5699
|
+
const defaultError = (_c14 = (_b305 = (_a415 = this._def).errorMap) === null || _b305 === void 0 ? void 0 : _b305.call(_a415, issue, ctx).message) !== null && _c14 !== void 0 ? _c14 : ctx.defaultError;
|
5700
5700
|
if (issue.code === "unrecognized_keys")
|
5701
5701
|
return {
|
5702
5702
|
message: (_d6 = errorUtil.errToObj(message).message) !== null && _d6 !== void 0 ? _d6 : defaultError
|
@@ -12121,7 +12121,7 @@ function fromJson(statements, dialect6, action, json22) {
|
|
12121
12121
|
}).filter((it) => it !== "");
|
12122
12122
|
return result;
|
12123
12123
|
}
|
12124
|
-
var parseType, Convertor, PgCreateRoleConvertor, PgDropRoleConvertor, PgRenameRoleConvertor, PgAlterRoleConvertor, PgCreatePolicyConvertor, PgDropPolicyConvertor, PgRenamePolicyConvertor, PgAlterPolicyConvertor, PgCreateIndPolicyConvertor, PgDropIndPolicyConvertor, PgRenameIndPolicyConvertor, PgAlterIndPolicyConvertor, PgEnableRlsConvertor, PgDisableRlsConvertor, PgCreateTableConvertor, MySqlCreateTableConvertor, SingleStoreCreateTableConvertor, SQLiteCreateTableConvertor, PgCreateViewConvertor, MySqlCreateViewConvertor, SqliteCreateViewConvertor, PgDropViewConvertor, MySqlDropViewConvertor, SqliteDropViewConvertor, MySqlAlterViewConvertor, PgRenameViewConvertor, MySqlRenameViewConvertor, PgAlterViewSchemaConvertor, PgAlterViewAddWithOptionConvertor, PgAlterViewDropWithOptionConvertor, PgAlterViewAlterTablespaceConvertor, PgAlterViewAlterUsingConvertor, PgAlterTableAlterColumnSetGenerated, PgAlterTableAlterColumnDropGenerated, PgAlterTableAlterColumnAlterGenerated, PgAlterTableAddUniqueConstraintConvertor, PgAlterTableDropUniqueConstraintConvertor, PgAlterTableAddCheckConstraintConvertor, PgAlterTableDeleteCheckConstraintConvertor, MySQLAlterTableAddUniqueConstraintConvertor, MySQLAlterTableDropUniqueConstraintConvertor, MySqlAlterTableAddCheckConstraintConvertor, SingleStoreAlterTableAddUniqueConstraintConvertor, SingleStoreAlterTableDropUniqueConstraintConvertor, MySqlAlterTableDeleteCheckConstraintConvertor, CreatePgSequenceConvertor, DropPgSequenceConvertor, RenamePgSequenceConvertor, MovePgSequenceConvertor, AlterPgSequenceConvertor, CreateTypeEnumConvertor, DropTypeEnumConvertor, AlterTypeAddValueConvertor, AlterTypeSetSchemaConvertor, AlterRenameTypeConvertor, AlterTypeDropValueConvertor, PgDropTableConvertor, MySQLDropTableConvertor, SingleStoreDropTableConvertor, SQLiteDropTableConvertor, PgRenameTableConvertor, SqliteRenameTableConvertor, MySqlRenameTableConvertor, SingleStoreRenameTableConvertor, PgAlterTableRenameColumnConvertor, MySqlAlterTableRenameColumnConvertor, SingleStoreAlterTableRenameColumnConvertor, SQLiteAlterTableRenameColumnConvertor, PgAlterTableDropColumnConvertor, MySqlAlterTableDropColumnConvertor, SingleStoreAlterTableDropColumnConvertor, SQLiteAlterTableDropColumnConvertor, PgAlterTableAddColumnConvertor, MySqlAlterTableAddColumnConvertor, SingleStoreAlterTableAddColumnConvertor, SQLiteAlterTableAddColumnConvertor, PgAlterTableAlterColumnSetTypeConvertor, PgAlterTableAlterColumnSetDefaultConvertor, PgAlterTableAlterColumnDropDefaultConvertor, PgAlterTableAlterColumnDropGeneratedConvertor, PgAlterTableAlterColumnSetExpressionConvertor, PgAlterTableAlterColumnAlterrGeneratedConvertor, SqliteAlterTableAlterColumnDropGeneratedConvertor, SqliteAlterTableAlterColumnSetExpressionConvertor, SqliteAlterTableAlterColumnAlterGeneratedConvertor, MySqlAlterTableAlterColumnAlterrGeneratedConvertor, MySqlAlterTableAddPk, MySqlAlterTableDropPk, LibSQLModifyColumn, MySqlModifyColumn, SingleStoreAlterTableAlterColumnAlterrGeneratedConvertor, SingleStoreAlterTableAddPk, SingleStoreAlterTableDropPk, SingleStoreModifyColumn, PgAlterTableCreateCompositePrimaryKeyConvertor, PgAlterTableDeleteCompositePrimaryKeyConvertor, PgAlterTableAlterCompositePrimaryKeyConvertor, MySqlAlterTableCreateCompositePrimaryKeyConvertor, MySqlAlterTableDeleteCompositePrimaryKeyConvertor, MySqlAlterTableAlterCompositePrimaryKeyConvertor, PgAlterTableAlterColumnSetPrimaryKeyConvertor, PgAlterTableAlterColumnDropPrimaryKeyConvertor, PgAlterTableAlterColumnSetNotNullConvertor, PgAlterTableAlterColumnDropNotNullConvertor, PgCreateForeignKeyConvertor, LibSQLCreateForeignKeyConvertor, MySqlCreateForeignKeyConvertor, PgAlterForeignKeyConvertor, PgDeleteForeignKeyConvertor, MySqlDeleteForeignKeyConvertor, CreatePgIndexConvertor, CreateMySqlIndexConvertor, CreateSingleStoreIndexConvertor, CreateSqliteIndexConvertor, PgDropIndexConvertor, PgCreateSchemaConvertor, PgRenameSchemaConvertor, PgDropSchemaConvertor, PgAlterTableSetSchemaConvertor, PgAlterTableSetNewSchemaConvertor, PgAlterTableRemoveFromSchemaConvertor, SqliteDropIndexConvertor, MySqlDropIndexConvertor, SingleStoreDropIndexConvertor, SQLiteRecreateTableConvertor, LibSQLRecreateTableConvertor, convertors;
|
12124
|
+
var parseType, Convertor, PgCreateRoleConvertor, PgDropRoleConvertor, PgRenameRoleConvertor, PgAlterRoleConvertor, PgCreatePolicyConvertor, PgDropPolicyConvertor, PgRenamePolicyConvertor, PgAlterPolicyConvertor, PgCreateIndPolicyConvertor, PgDropIndPolicyConvertor, PgRenameIndPolicyConvertor, PgAlterIndPolicyConvertor, PgEnableRlsConvertor, PgDisableRlsConvertor, PgCreateTableConvertor, MySqlCreateTableConvertor, SingleStoreCreateTableConvertor, SQLiteCreateTableConvertor, PgCreateViewConvertor, MySqlCreateViewConvertor, SqliteCreateViewConvertor, PgDropViewConvertor, MySqlDropViewConvertor, SqliteDropViewConvertor, MySqlAlterViewConvertor, PgRenameViewConvertor, MySqlRenameViewConvertor, PgAlterViewSchemaConvertor, PgAlterViewAddWithOptionConvertor, PgAlterViewDropWithOptionConvertor, PgAlterViewAlterTablespaceConvertor, PgAlterViewAlterUsingConvertor, PgAlterTableAlterColumnSetGenerated, PgAlterTableAlterColumnDropGenerated, PgAlterTableAlterColumnAlterGenerated, PgAlterTableAddUniqueConstraintConvertor, PgAlterTableDropUniqueConstraintConvertor, PgAlterTableAddCheckConstraintConvertor, PgAlterTableDeleteCheckConstraintConvertor, MySQLAlterTableAddUniqueConstraintConvertor, MySQLAlterTableDropUniqueConstraintConvertor, MySqlAlterTableAddCheckConstraintConvertor, SingleStoreAlterTableAddUniqueConstraintConvertor, SingleStoreAlterTableDropUniqueConstraintConvertor, MySqlAlterTableDeleteCheckConstraintConvertor, CreatePgSequenceConvertor, DropPgSequenceConvertor, RenamePgSequenceConvertor, MovePgSequenceConvertor, AlterPgSequenceConvertor, CreateTypeEnumConvertor, DropTypeEnumConvertor, AlterTypeAddValueConvertor, AlterTypeSetSchemaConvertor, AlterRenameTypeConvertor, AlterTypeDropValueConvertor, PgDropTableConvertor, MySQLDropTableConvertor, SingleStoreDropTableConvertor, SQLiteDropTableConvertor, PgRenameTableConvertor, SqliteRenameTableConvertor, MySqlRenameTableConvertor, SingleStoreRenameTableConvertor, PgAlterTableRenameColumnConvertor, MySqlAlterTableRenameColumnConvertor, SingleStoreAlterTableRenameColumnConvertor, SQLiteAlterTableRenameColumnConvertor, PgAlterTableDropColumnConvertor, MySqlAlterTableDropColumnConvertor, SingleStoreAlterTableDropColumnConvertor, SQLiteAlterTableDropColumnConvertor, PgAlterTableAddColumnConvertor, MySqlAlterTableAddColumnConvertor, SingleStoreAlterTableAddColumnConvertor, SQLiteAlterTableAddColumnConvertor, PgAlterTableAlterColumnSetTypeConvertor, PgAlterTableAlterColumnSetDefaultConvertor, PgAlterTableAlterColumnDropDefaultConvertor, PgAlterTableAlterColumnDropGeneratedConvertor, PgAlterTableAlterColumnSetExpressionConvertor, PgAlterTableAlterColumnAlterrGeneratedConvertor, SqliteAlterTableAlterColumnDropGeneratedConvertor, SqliteAlterTableAlterColumnSetExpressionConvertor, SqliteAlterTableAlterColumnAlterGeneratedConvertor, MySqlAlterTableAlterColumnAlterrGeneratedConvertor, MySqlAlterTableAddPk, MySqlAlterTableDropPk, LibSQLModifyColumn, MySqlModifyColumn, SingleStoreAlterTableAlterColumnAlterrGeneratedConvertor, SingleStoreAlterTableAddPk, SingleStoreAlterTableDropPk, SingleStoreModifyColumn, PgAlterTableCreateCompositePrimaryKeyConvertor, PgAlterTableDeleteCompositePrimaryKeyConvertor, PgAlterTableAlterCompositePrimaryKeyConvertor, MySqlAlterTableCreateCompositePrimaryKeyConvertor, MySqlAlterTableDeleteCompositePrimaryKeyConvertor, MySqlAlterTableAlterCompositePrimaryKeyConvertor, PgAlterTableAlterColumnSetPrimaryKeyConvertor, PgAlterTableAlterColumnDropPrimaryKeyConvertor, PgAlterTableAlterColumnSetNotNullConvertor, PgAlterTableAlterColumnDropNotNullConvertor, PgCreateForeignKeyConvertor, LibSQLCreateForeignKeyConvertor, MySqlCreateForeignKeyConvertor, PgAlterForeignKeyConvertor, PgDeleteForeignKeyConvertor, MySqlDeleteForeignKeyConvertor, CreatePgIndexConvertor, CreateMySqlIndexConvertor, CreateSingleStoreIndexConvertor, CreateSqliteIndexConvertor, PgDropIndexConvertor, PgCreateSchemaConvertor, PgRenameSchemaConvertor, PgDropSchemaConvertor, PgAlterTableSetSchemaConvertor, PgAlterTableSetNewSchemaConvertor, PgAlterTableRemoveFromSchemaConvertor, SqliteDropIndexConvertor, MySqlDropIndexConvertor, SingleStoreDropIndexConvertor, SQLiteRecreateTableConvertor, LibSQLRecreateTableConvertor, SingleStoreRecreateTableConvertor, convertors;
|
12125
12125
|
var init_sqlgenerator = __esm({
|
12126
12126
|
"src/sqlgenerator.ts"() {
|
12127
12127
|
"use strict";
|
@@ -12467,7 +12467,7 @@ var init_sqlgenerator = __esm({
|
|
12467
12467
|
if (typeof compositePKs !== "undefined" && compositePKs.length > 0) {
|
12468
12468
|
statement += ",\n";
|
12469
12469
|
const compositePK5 = SingleStoreSquasher.unsquashPK(compositePKs[0]);
|
12470
|
-
statement += ` CONSTRAINT \`${
|
12470
|
+
statement += ` CONSTRAINT \`${compositePK5.name}\` PRIMARY KEY(\`${compositePK5.columns.join(`\`,\``)}\`)`;
|
12471
12471
|
}
|
12472
12472
|
if (typeof uniqueConstraints !== "undefined" && uniqueConstraints.length > 0) {
|
12473
12473
|
for (const uniqueConstraint5 of uniqueConstraints) {
|
@@ -13122,7 +13122,7 @@ WITH ${withCheckOption} CHECK OPTION` : "";
|
|
13122
13122
|
}
|
13123
13123
|
convert(statement) {
|
13124
13124
|
const { tableNameFrom, tableNameTo } = statement;
|
13125
|
-
return `
|
13125
|
+
return `ALTER TABLE \`${tableNameFrom}\` RENAME TO \`${tableNameTo}\`;`;
|
13126
13126
|
}
|
13127
13127
|
};
|
13128
13128
|
PgAlterTableRenameColumnConvertor = class extends Convertor {
|
@@ -13150,7 +13150,7 @@ WITH ${withCheckOption} CHECK OPTION` : "";
|
|
13150
13150
|
}
|
13151
13151
|
convert(statement) {
|
13152
13152
|
const { tableName, oldColumnName, newColumnName } = statement;
|
13153
|
-
return `ALTER TABLE \`${tableName}\`
|
13153
|
+
return `ALTER TABLE \`${tableName}\` CHANGE \`${oldColumnName}\` \`${newColumnName}\`;`;
|
13154
13154
|
}
|
13155
13155
|
};
|
13156
13156
|
SQLiteAlterTableRenameColumnConvertor = class extends Convertor {
|
@@ -14273,8 +14273,10 @@ ${BREAKPOINT}ALTER TABLE ${tableNameWithSchema} ADD CONSTRAINT "${statement.newC
|
|
14273
14273
|
return statement.type === "drop_index" && dialect6 === "postgresql";
|
14274
14274
|
}
|
14275
14275
|
convert(statement) {
|
14276
|
+
const { schema: schema5 } = statement;
|
14276
14277
|
const { name: name2 } = PgSquasher.unsquashIdx(statement.data);
|
14277
|
-
|
14278
|
+
const indexNameWithSchema = schema5 ? `"${schema5}"."${name2}"` : `"${name2}"`;
|
14279
|
+
return `DROP INDEX ${indexNameWithSchema};`;
|
14278
14280
|
}
|
14279
14281
|
};
|
14280
14282
|
PgCreateSchemaConvertor = class extends Convertor {
|
@@ -14458,10 +14460,52 @@ ${BREAKPOINT}ALTER TABLE ${tableNameWithSchema} ADD CONSTRAINT "${statement.newC
|
|
14458
14460
|
return sqlStatements;
|
14459
14461
|
}
|
14460
14462
|
};
|
14463
|
+
SingleStoreRecreateTableConvertor = class extends Convertor {
|
14464
|
+
can(statement, dialect6) {
|
14465
|
+
return statement.type === "singlestore_recreate_table" && dialect6 === "singlestore";
|
14466
|
+
}
|
14467
|
+
convert(statement) {
|
14468
|
+
const { tableName, columns, compositePKs, uniqueConstraints } = statement;
|
14469
|
+
const columnNames = columns.map((it) => `\`${it.name}\``).join(", ");
|
14470
|
+
const newTableName = `__new_${tableName}`;
|
14471
|
+
const sqlStatements = [];
|
14472
|
+
sqlStatements.push(
|
14473
|
+
new SingleStoreCreateTableConvertor().convert({
|
14474
|
+
type: "create_table",
|
14475
|
+
tableName: newTableName,
|
14476
|
+
columns,
|
14477
|
+
compositePKs,
|
14478
|
+
uniqueConstraints,
|
14479
|
+
schema: ""
|
14480
|
+
})
|
14481
|
+
);
|
14482
|
+
sqlStatements.push(
|
14483
|
+
`INSERT INTO \`${newTableName}\`(${columnNames}) SELECT ${columnNames} FROM \`${tableName}\`;`
|
14484
|
+
);
|
14485
|
+
sqlStatements.push(
|
14486
|
+
new SingleStoreDropTableConvertor().convert({
|
14487
|
+
type: "drop_table",
|
14488
|
+
tableName,
|
14489
|
+
schema: ""
|
14490
|
+
})
|
14491
|
+
);
|
14492
|
+
sqlStatements.push(
|
14493
|
+
new SingleStoreRenameTableConvertor().convert({
|
14494
|
+
fromSchema: "",
|
14495
|
+
tableNameFrom: newTableName,
|
14496
|
+
tableNameTo: tableName,
|
14497
|
+
toSchema: "",
|
14498
|
+
type: "rename_table"
|
14499
|
+
})
|
14500
|
+
);
|
14501
|
+
return sqlStatements;
|
14502
|
+
}
|
14503
|
+
};
|
14461
14504
|
convertors = [];
|
14462
14505
|
convertors.push(new PgCreateTableConvertor());
|
14463
14506
|
convertors.push(new MySqlCreateTableConvertor());
|
14464
14507
|
convertors.push(new SingleStoreCreateTableConvertor());
|
14508
|
+
convertors.push(new SingleStoreRecreateTableConvertor());
|
14465
14509
|
convertors.push(new SQLiteCreateTableConvertor());
|
14466
14510
|
convertors.push(new SQLiteRecreateTableConvertor());
|
14467
14511
|
convertors.push(new LibSQLRecreateTableConvertor());
|
@@ -16457,7 +16501,7 @@ var init_jsonStatements = __esm({
|
|
16457
16501
|
});
|
16458
16502
|
|
16459
16503
|
// src/statementCombiner.ts
|
16460
|
-
var prepareLibSQLRecreateTable, prepareSQLiteRecreateTable, libSQLCombineStatements, sqliteCombineStatements;
|
16504
|
+
var prepareLibSQLRecreateTable, prepareSQLiteRecreateTable, libSQLCombineStatements, sqliteCombineStatements, prepareSingleStoreRecreateTable, singleStoreCombineStatements;
|
16461
16505
|
var init_statementCombiner = __esm({
|
16462
16506
|
"src/statementCombiner.ts"() {
|
16463
16507
|
"use strict";
|
@@ -16736,6 +16780,101 @@ var init_statementCombiner = __esm({
|
|
16736
16780
|
const rest = combinedStatements.filter((it) => it.type !== "rename_table" && it.type !== "alter_table_rename_column");
|
16737
16781
|
return [...renamedTables, ...renamedColumns, ...rest];
|
16738
16782
|
};
|
16783
|
+
prepareSingleStoreRecreateTable = (table5) => {
|
16784
|
+
const { name: name2, columns, uniqueConstraints, indexes, compositePrimaryKeys } = table5;
|
16785
|
+
const composites = Object.values(compositePrimaryKeys);
|
16786
|
+
const statements = [
|
16787
|
+
{
|
16788
|
+
type: "singlestore_recreate_table",
|
16789
|
+
tableName: name2,
|
16790
|
+
columns: Object.values(columns),
|
16791
|
+
compositePKs: composites,
|
16792
|
+
uniqueConstraints: Object.values(uniqueConstraints)
|
16793
|
+
}
|
16794
|
+
];
|
16795
|
+
if (Object.keys(indexes).length) {
|
16796
|
+
statements.push(...prepareCreateIndexesJson(name2, "", indexes));
|
16797
|
+
}
|
16798
|
+
return statements;
|
16799
|
+
};
|
16800
|
+
singleStoreCombineStatements = (statements, json22) => {
|
16801
|
+
const newStatements = {};
|
16802
|
+
for (const statement of statements) {
|
16803
|
+
if (statement.type === "alter_table_alter_column_set_type" || statement.type === "alter_table_alter_column_set_notnull" || statement.type === "alter_table_alter_column_drop_notnull" || statement.type === "alter_table_alter_column_drop_autoincrement" || statement.type === "alter_table_alter_column_set_autoincrement" || statement.type === "alter_table_alter_column_drop_pk" || statement.type === "alter_table_alter_column_set_pk" || statement.type === "create_composite_pk" || statement.type === "alter_composite_pk" || statement.type === "delete_composite_pk") {
|
16804
|
+
const tableName2 = statement.tableName;
|
16805
|
+
const statementsForTable2 = newStatements[tableName2];
|
16806
|
+
if (!statementsForTable2) {
|
16807
|
+
newStatements[tableName2] = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
|
16808
|
+
continue;
|
16809
|
+
}
|
16810
|
+
if (!statementsForTable2.some(({ type }) => type === "recreate_table")) {
|
16811
|
+
const wasRename = statementsForTable2.some(
|
16812
|
+
({ type }) => type === "rename_table" || type === "alter_table_rename_column"
|
16813
|
+
);
|
16814
|
+
const preparedStatements = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
|
16815
|
+
if (wasRename) {
|
16816
|
+
newStatements[tableName2].push(...preparedStatements);
|
16817
|
+
} else {
|
16818
|
+
newStatements[tableName2] = preparedStatements;
|
16819
|
+
}
|
16820
|
+
continue;
|
16821
|
+
}
|
16822
|
+
continue;
|
16823
|
+
}
|
16824
|
+
if ((statement.type === "alter_table_alter_column_drop_default" || statement.type === "alter_table_alter_column_set_default") && statement.columnNotNull) {
|
16825
|
+
const tableName2 = statement.tableName;
|
16826
|
+
const statementsForTable2 = newStatements[tableName2];
|
16827
|
+
if (!statementsForTable2) {
|
16828
|
+
newStatements[tableName2] = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
|
16829
|
+
continue;
|
16830
|
+
}
|
16831
|
+
if (!statementsForTable2.some(({ type }) => type === "recreate_table")) {
|
16832
|
+
const wasRename = statementsForTable2.some(({ type }) => type === "rename_table");
|
16833
|
+
const preparedStatements = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
|
16834
|
+
if (wasRename) {
|
16835
|
+
newStatements[tableName2].push(...preparedStatements);
|
16836
|
+
} else {
|
16837
|
+
newStatements[tableName2] = preparedStatements;
|
16838
|
+
}
|
16839
|
+
continue;
|
16840
|
+
}
|
16841
|
+
continue;
|
16842
|
+
}
|
16843
|
+
if (statement.type === "alter_table_add_column" && statement.column.primaryKey) {
|
16844
|
+
const tableName2 = statement.tableName;
|
16845
|
+
const statementsForTable2 = newStatements[tableName2];
|
16846
|
+
if (!statementsForTable2) {
|
16847
|
+
newStatements[tableName2] = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
|
16848
|
+
continue;
|
16849
|
+
}
|
16850
|
+
if (!statementsForTable2.some(({ type }) => type === "recreate_table")) {
|
16851
|
+
const wasRename = statementsForTable2.some(({ type }) => type === "rename_table");
|
16852
|
+
const preparedStatements = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
|
16853
|
+
if (wasRename) {
|
16854
|
+
newStatements[tableName2].push(...preparedStatements);
|
16855
|
+
} else {
|
16856
|
+
newStatements[tableName2] = preparedStatements;
|
16857
|
+
}
|
16858
|
+
continue;
|
16859
|
+
}
|
16860
|
+
continue;
|
16861
|
+
}
|
16862
|
+
const tableName = statement.type === "rename_table" ? statement.tableNameTo : statement.tableName;
|
16863
|
+
const statementsForTable = newStatements[tableName];
|
16864
|
+
if (!statementsForTable) {
|
16865
|
+
newStatements[tableName] = [statement];
|
16866
|
+
continue;
|
16867
|
+
}
|
16868
|
+
if (!statementsForTable.some(({ type }) => type === "singlestore_recreate_table")) {
|
16869
|
+
newStatements[tableName].push(statement);
|
16870
|
+
}
|
16871
|
+
}
|
16872
|
+
const combinedStatements = Object.values(newStatements).flat();
|
16873
|
+
const renamedTables = combinedStatements.filter((it) => it.type === "rename_table");
|
16874
|
+
const renamedColumns = combinedStatements.filter((it) => it.type === "alter_table_rename_column");
|
16875
|
+
const rest = combinedStatements.filter((it) => it.type !== "rename_table" && it.type !== "alter_table_rename_column");
|
16876
|
+
return [...renamedTables, ...renamedColumns, ...rest];
|
16877
|
+
};
|
16739
16878
|
}
|
16740
16879
|
});
|
16741
16880
|
|
@@ -18681,7 +18820,7 @@ var init_snapshotsDiffer = __esm({
|
|
18681
18820
|
return [tableKey2, tableValue];
|
18682
18821
|
}
|
18683
18822
|
);
|
18684
|
-
const diffResult = applyJsonDiff(
|
18823
|
+
const diffResult = applyJsonDiff(columnsPatchedSnap1, json22);
|
18685
18824
|
const typedResult = diffResultSchemeSingleStore.parse(diffResult);
|
18686
18825
|
const jsonStatements = [];
|
18687
18826
|
const jsonCreateIndexesForCreatedTables = createdTables.map((it) => {
|
@@ -18845,7 +18984,8 @@ var init_snapshotsDiffer = __esm({
|
|
18845
18984
|
jsonStatements.push(...jsonDropColumnsStatemets);
|
18846
18985
|
jsonStatements.push(...jsonAddedCompositePKs);
|
18847
18986
|
jsonStatements.push(...jsonAlteredUniqueConstraints);
|
18848
|
-
const
|
18987
|
+
const combinedJsonStatements = singleStoreCombineStatements(jsonStatements, json22);
|
18988
|
+
const sqlStatements = fromJson(combinedJsonStatements, "singlestore");
|
18849
18989
|
const uniqueSqlStatements = [];
|
18850
18990
|
sqlStatements.forEach((ss) => {
|
18851
18991
|
if (!uniqueSqlStatements.includes(ss)) {
|
@@ -18857,7 +18997,7 @@ var init_snapshotsDiffer = __esm({
|
|
18857
18997
|
});
|
18858
18998
|
const _meta = prepareMigrationMeta([], rTables, rColumns);
|
18859
18999
|
return {
|
18860
|
-
statements:
|
19000
|
+
statements: combinedJsonStatements,
|
18861
19001
|
sqlStatements: uniqueSqlStatements,
|
18862
19002
|
_meta
|
18863
19003
|
};
|
@@ -21975,7 +22115,7 @@ var version;
|
|
21975
22115
|
var init_version = __esm({
|
21976
22116
|
"../drizzle-orm/dist/version.js"() {
|
21977
22117
|
"use strict";
|
21978
|
-
version = "0.38.
|
22118
|
+
version = "0.38.3";
|
21979
22119
|
}
|
21980
22120
|
});
|
21981
22121
|
|
@@ -22457,8 +22597,8 @@ var init_sql = __esm({
|
|
22457
22597
|
sql2.param = param2;
|
22458
22598
|
})(sql || (sql = {}));
|
22459
22599
|
((SQL2) => {
|
22460
|
-
var
|
22461
|
-
|
22600
|
+
var _a415;
|
22601
|
+
_a415 = entityKind;
|
22462
22602
|
const _Aliased = class _Aliased {
|
22463
22603
|
constructor(sql2, fieldAlias) {
|
22464
22604
|
/** @internal */
|
@@ -22474,7 +22614,7 @@ var init_sql = __esm({
|
|
22474
22614
|
return new _Aliased(this.sql, this.fieldAlias);
|
22475
22615
|
}
|
22476
22616
|
};
|
22477
|
-
__publicField(_Aliased,
|
22617
|
+
__publicField(_Aliased, _a415, "SQL.Aliased");
|
22478
22618
|
let Aliased = _Aliased;
|
22479
22619
|
SQL2.Aliased = Aliased;
|
22480
22620
|
})(SQL || (SQL = {}));
|
@@ -41845,6 +41985,18 @@ function text4(a, b = {}) {
|
|
41845
41985
|
const { name: name2, config } = getColumnNameAndConfig(a, b);
|
41846
41986
|
return new SingleStoreTextBuilder(name2, "text", config);
|
41847
41987
|
}
|
41988
|
+
function tinytext2(a, b = {}) {
|
41989
|
+
const { name: name2, config } = getColumnNameAndConfig(a, b);
|
41990
|
+
return new SingleStoreTextBuilder(name2, "tinytext", config);
|
41991
|
+
}
|
41992
|
+
function mediumtext2(a, b = {}) {
|
41993
|
+
const { name: name2, config } = getColumnNameAndConfig(a, b);
|
41994
|
+
return new SingleStoreTextBuilder(name2, "mediumtext", config);
|
41995
|
+
}
|
41996
|
+
function longtext2(a, b = {}) {
|
41997
|
+
const { name: name2, config } = getColumnNameAndConfig(a, b);
|
41998
|
+
return new SingleStoreTextBuilder(name2, "longtext", config);
|
41999
|
+
}
|
41848
42000
|
var _a373, _b277, SingleStoreTextBuilder, _a374, _b278, SingleStoreText;
|
41849
42001
|
var init_text4 = __esm({
|
41850
42002
|
"../drizzle-orm/dist/singlestore-core/columns/text.js"() {
|
@@ -42134,17 +42286,68 @@ var init_varchar3 = __esm({
|
|
42134
42286
|
}
|
42135
42287
|
});
|
42136
42288
|
|
42289
|
+
// ../drizzle-orm/dist/singlestore-core/columns/vector.js
|
42290
|
+
function vector2(a, b) {
|
42291
|
+
const { name: name2, config } = getColumnNameAndConfig(a, b);
|
42292
|
+
return new SingleStoreVectorBuilder(name2, config);
|
42293
|
+
}
|
42294
|
+
var _a389, _b293, SingleStoreVectorBuilder, _a390, _b294, SingleStoreVector;
|
42295
|
+
var init_vector4 = __esm({
|
42296
|
+
"../drizzle-orm/dist/singlestore-core/columns/vector.js"() {
|
42297
|
+
"use strict";
|
42298
|
+
init_entity();
|
42299
|
+
init_utils2();
|
42300
|
+
init_common5();
|
42301
|
+
SingleStoreVectorBuilder = class extends (_b293 = SingleStoreColumnBuilder, _a389 = entityKind, _b293) {
|
42302
|
+
constructor(name2, config) {
|
42303
|
+
super(name2, "array", "SingleStoreVector");
|
42304
|
+
this.config.dimensions = config.dimensions;
|
42305
|
+
this.config.elementType = config.elementType;
|
42306
|
+
}
|
42307
|
+
/** @internal */
|
42308
|
+
build(table5) {
|
42309
|
+
return new SingleStoreVector(
|
42310
|
+
table5,
|
42311
|
+
this.config
|
42312
|
+
);
|
42313
|
+
}
|
42314
|
+
/** @internal */
|
42315
|
+
generatedAlwaysAs(as, config) {
|
42316
|
+
throw new Error("not implemented");
|
42317
|
+
}
|
42318
|
+
};
|
42319
|
+
__publicField(SingleStoreVectorBuilder, _a389, "SingleStoreVectorBuilder");
|
42320
|
+
SingleStoreVector = class extends (_b294 = SingleStoreColumn, _a390 = entityKind, _b294) {
|
42321
|
+
constructor() {
|
42322
|
+
super(...arguments);
|
42323
|
+
__publicField(this, "dimensions", this.config.dimensions);
|
42324
|
+
__publicField(this, "elementType", this.config.elementType);
|
42325
|
+
}
|
42326
|
+
getSQLType() {
|
42327
|
+
return `vector(${this.dimensions}, ${this.elementType || "F32"})`;
|
42328
|
+
}
|
42329
|
+
mapToDriverValue(value) {
|
42330
|
+
return JSON.stringify(value);
|
42331
|
+
}
|
42332
|
+
mapFromDriverValue(value) {
|
42333
|
+
return JSON.parse(value);
|
42334
|
+
}
|
42335
|
+
};
|
42336
|
+
__publicField(SingleStoreVector, _a390, "SingleStoreVector");
|
42337
|
+
}
|
42338
|
+
});
|
42339
|
+
|
42137
42340
|
// ../drizzle-orm/dist/singlestore-core/columns/year.js
|
42138
42341
|
function year2(name2) {
|
42139
42342
|
return new SingleStoreYearBuilder(name2 ?? "");
|
42140
42343
|
}
|
42141
|
-
var
|
42344
|
+
var _a391, _b295, SingleStoreYearBuilder, _a392, _b296, SingleStoreYear;
|
42142
42345
|
var init_year2 = __esm({
|
42143
42346
|
"../drizzle-orm/dist/singlestore-core/columns/year.js"() {
|
42144
42347
|
"use strict";
|
42145
42348
|
init_entity();
|
42146
42349
|
init_common5();
|
42147
|
-
SingleStoreYearBuilder = class extends (
|
42350
|
+
SingleStoreYearBuilder = class extends (_b295 = SingleStoreColumnBuilder, _a391 = entityKind, _b295) {
|
42148
42351
|
constructor(name2) {
|
42149
42352
|
super(name2, "number", "SingleStoreYear");
|
42150
42353
|
}
|
@@ -42156,13 +42359,13 @@ var init_year2 = __esm({
|
|
42156
42359
|
);
|
42157
42360
|
}
|
42158
42361
|
};
|
42159
|
-
__publicField(SingleStoreYearBuilder,
|
42160
|
-
SingleStoreYear = class extends (
|
42362
|
+
__publicField(SingleStoreYearBuilder, _a391, "SingleStoreYearBuilder");
|
42363
|
+
SingleStoreYear = class extends (_b296 = SingleStoreColumn, _a392 = entityKind, _b296) {
|
42161
42364
|
getSQLType() {
|
42162
42365
|
return `year`;
|
42163
42366
|
}
|
42164
42367
|
};
|
42165
|
-
__publicField(SingleStoreYear,
|
42368
|
+
__publicField(SingleStoreYear, _a392, "SingleStoreYear");
|
42166
42369
|
}
|
42167
42370
|
});
|
42168
42371
|
|
@@ -42194,22 +42397,23 @@ var init_columns4 = __esm({
|
|
42194
42397
|
init_tinyint2();
|
42195
42398
|
init_varbinary2();
|
42196
42399
|
init_varchar3();
|
42400
|
+
init_vector4();
|
42197
42401
|
init_year2();
|
42198
42402
|
}
|
42199
42403
|
});
|
42200
42404
|
|
42201
42405
|
// ../drizzle-orm/dist/singlestore-core/query-builders/count.js
|
42202
|
-
var
|
42406
|
+
var _a393, _b297, _c12, _SingleStoreCountBuilder, SingleStoreCountBuilder;
|
42203
42407
|
var init_count4 = __esm({
|
42204
42408
|
"../drizzle-orm/dist/singlestore-core/query-builders/count.js"() {
|
42205
42409
|
"use strict";
|
42206
42410
|
init_entity();
|
42207
42411
|
init_sql();
|
42208
|
-
_SingleStoreCountBuilder = class _SingleStoreCountBuilder extends (_c12 = SQL,
|
42412
|
+
_SingleStoreCountBuilder = class _SingleStoreCountBuilder extends (_c12 = SQL, _b297 = entityKind, _a393 = Symbol.toStringTag, _c12) {
|
42209
42413
|
constructor(params) {
|
42210
42414
|
super(_SingleStoreCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);
|
42211
42415
|
__publicField(this, "sql");
|
42212
|
-
__publicField(this,
|
42416
|
+
__publicField(this, _a393, "SingleStoreCountBuilder");
|
42213
42417
|
__publicField(this, "session");
|
42214
42418
|
this.params = params;
|
42215
42419
|
this.mapWith(Number);
|
@@ -42247,13 +42451,13 @@ var init_count4 = __esm({
|
|
42247
42451
|
);
|
42248
42452
|
}
|
42249
42453
|
};
|
42250
|
-
__publicField(_SingleStoreCountBuilder,
|
42454
|
+
__publicField(_SingleStoreCountBuilder, _b297, "SingleStoreCountBuilder");
|
42251
42455
|
SingleStoreCountBuilder = _SingleStoreCountBuilder;
|
42252
42456
|
}
|
42253
42457
|
});
|
42254
42458
|
|
42255
42459
|
// ../drizzle-orm/dist/singlestore-core/query-builders/delete.js
|
42256
|
-
var
|
42460
|
+
var _a394, _b298, SingleStoreDeleteBase;
|
42257
42461
|
var init_delete4 = __esm({
|
42258
42462
|
"../drizzle-orm/dist/singlestore-core/query-builders/delete.js"() {
|
42259
42463
|
"use strict";
|
@@ -42261,7 +42465,7 @@ var init_delete4 = __esm({
|
|
42261
42465
|
init_query_promise();
|
42262
42466
|
init_selection_proxy();
|
42263
42467
|
init_table();
|
42264
|
-
SingleStoreDeleteBase = class extends (
|
42468
|
+
SingleStoreDeleteBase = class extends (_b298 = QueryPromise, _a394 = entityKind, _b298) {
|
42265
42469
|
constructor(table5, session, dialect6, withList) {
|
42266
42470
|
super();
|
42267
42471
|
__publicField(this, "config");
|
@@ -42351,12 +42555,12 @@ var init_delete4 = __esm({
|
|
42351
42555
|
return this;
|
42352
42556
|
}
|
42353
42557
|
};
|
42354
|
-
__publicField(SingleStoreDeleteBase,
|
42558
|
+
__publicField(SingleStoreDeleteBase, _a394, "SingleStoreDelete");
|
42355
42559
|
}
|
42356
42560
|
});
|
42357
42561
|
|
42358
42562
|
// ../drizzle-orm/dist/singlestore-core/query-builders/insert.js
|
42359
|
-
var
|
42563
|
+
var _a395, SingleStoreInsertBuilder, _a396, _b299, SingleStoreInsertBase;
|
42360
42564
|
var init_insert4 = __esm({
|
42361
42565
|
"../drizzle-orm/dist/singlestore-core/query-builders/insert.js"() {
|
42362
42566
|
"use strict";
|
@@ -42365,7 +42569,7 @@ var init_insert4 = __esm({
|
|
42365
42569
|
init_sql();
|
42366
42570
|
init_table();
|
42367
42571
|
init_utils2();
|
42368
|
-
|
42572
|
+
_a395 = entityKind;
|
42369
42573
|
SingleStoreInsertBuilder = class {
|
42370
42574
|
constructor(table5, session, dialect6) {
|
42371
42575
|
__publicField(this, "shouldIgnore", false);
|
@@ -42394,8 +42598,8 @@ var init_insert4 = __esm({
|
|
42394
42598
|
return new SingleStoreInsertBase(this.table, mappedValues, this.shouldIgnore, this.session, this.dialect);
|
42395
42599
|
}
|
42396
42600
|
};
|
42397
|
-
__publicField(SingleStoreInsertBuilder,
|
42398
|
-
SingleStoreInsertBase = class extends (
|
42601
|
+
__publicField(SingleStoreInsertBuilder, _a395, "SingleStoreInsertBuilder");
|
42602
|
+
SingleStoreInsertBase = class extends (_b299 = QueryPromise, _a396 = entityKind, _b299) {
|
42399
42603
|
constructor(table5, values, ignore, session, dialect6) {
|
42400
42604
|
super();
|
42401
42605
|
__publicField(this, "config");
|
@@ -42476,7 +42680,7 @@ var init_insert4 = __esm({
|
|
42476
42680
|
return this;
|
42477
42681
|
}
|
42478
42682
|
};
|
42479
|
-
__publicField(SingleStoreInsertBase,
|
42683
|
+
__publicField(SingleStoreInsertBase, _a396, "SingleStoreInsert");
|
42480
42684
|
}
|
42481
42685
|
});
|
42482
42686
|
|
@@ -42500,12 +42704,16 @@ function getSingleStoreColumnBuilders() {
|
|
42500
42704
|
real: real4,
|
42501
42705
|
serial: serial3,
|
42502
42706
|
smallint: smallint3,
|
42707
|
+
longtext: longtext2,
|
42708
|
+
mediumtext: mediumtext2,
|
42503
42709
|
text: text4,
|
42710
|
+
tinytext: tinytext2,
|
42504
42711
|
time: time3,
|
42505
42712
|
timestamp: timestamp3,
|
42506
42713
|
tinyint: tinyint2,
|
42507
42714
|
varbinary: varbinary2,
|
42508
42715
|
varchar: varchar3,
|
42716
|
+
vector: vector2,
|
42509
42717
|
year: year2
|
42510
42718
|
};
|
42511
42719
|
}
|
@@ -42535,6 +42743,7 @@ var init_all4 = __esm({
|
|
42535
42743
|
init_tinyint2();
|
42536
42744
|
init_varbinary2();
|
42537
42745
|
init_varchar3();
|
42746
|
+
init_vector4();
|
42538
42747
|
init_year2();
|
42539
42748
|
}
|
42540
42749
|
});
|
@@ -42559,20 +42768,20 @@ function singlestoreTableWithSchema(name2, columns, extraConfig, schema5, baseNa
|
|
42559
42768
|
}
|
42560
42769
|
return table5;
|
42561
42770
|
}
|
42562
|
-
var
|
42771
|
+
var _a397, _b300, _c13, _d5, SingleStoreTable;
|
42563
42772
|
var init_table5 = __esm({
|
42564
42773
|
"../drizzle-orm/dist/singlestore-core/table.js"() {
|
42565
42774
|
"use strict";
|
42566
42775
|
init_entity();
|
42567
42776
|
init_table();
|
42568
42777
|
init_all4();
|
42569
|
-
SingleStoreTable = class extends (_d5 = Table2, _c13 = entityKind,
|
42778
|
+
SingleStoreTable = class extends (_d5 = Table2, _c13 = entityKind, _b300 = Table2.Symbol.Columns, _a397 = Table2.Symbol.ExtraConfigBuilder, _d5) {
|
42570
42779
|
constructor() {
|
42571
42780
|
super(...arguments);
|
42572
42781
|
/** @internal */
|
42573
|
-
__publicField(this,
|
42782
|
+
__publicField(this, _b300);
|
42574
42783
|
/** @internal */
|
42575
|
-
__publicField(this,
|
42784
|
+
__publicField(this, _a397);
|
42576
42785
|
}
|
42577
42786
|
};
|
42578
42787
|
__publicField(SingleStoreTable, _c13, "SingleStoreTable");
|
@@ -42582,7 +42791,7 @@ var init_table5 = __esm({
|
|
42582
42791
|
});
|
42583
42792
|
|
42584
42793
|
// ../drizzle-orm/dist/singlestore-core/dialect.js
|
42585
|
-
var
|
42794
|
+
var _a398, SingleStoreDialect;
|
42586
42795
|
var init_dialect4 = __esm({
|
42587
42796
|
"../drizzle-orm/dist/singlestore-core/dialect.js"() {
|
42588
42797
|
"use strict";
|
@@ -42600,7 +42809,7 @@ var init_dialect4 = __esm({
|
|
42600
42809
|
init_view_common();
|
42601
42810
|
init_common5();
|
42602
42811
|
init_table5();
|
42603
|
-
|
42812
|
+
_a398 = entityKind;
|
42604
42813
|
SingleStoreDialect = class {
|
42605
42814
|
constructor(config) {
|
42606
42815
|
/** @internal */
|
@@ -43165,7 +43374,7 @@ var init_dialect4 = __esm({
|
|
43165
43374
|
};
|
43166
43375
|
}
|
43167
43376
|
};
|
43168
|
-
__publicField(SingleStoreDialect,
|
43377
|
+
__publicField(SingleStoreDialect, _a398, "SingleStoreDialect");
|
43169
43378
|
}
|
43170
43379
|
});
|
43171
43380
|
|
@@ -43187,7 +43396,7 @@ function createSetOperator4(type, isAll) {
|
|
43187
43396
|
return leftSelect.addSetOperators(setOperators);
|
43188
43397
|
};
|
43189
43398
|
}
|
43190
|
-
var
|
43399
|
+
var _a399, SingleStoreSelectBuilder, _a400, _b301, SingleStoreSelectQueryBuilderBase, _a401, _b302, SingleStoreSelectBase, getSingleStoreSetOperators, union4, unionAll4, intersect4, except4, minus;
|
43191
43400
|
var init_select5 = __esm({
|
43192
43401
|
"../drizzle-orm/dist/singlestore-core/query-builders/select.js"() {
|
43193
43402
|
"use strict";
|
@@ -43199,7 +43408,7 @@ var init_select5 = __esm({
|
|
43199
43408
|
init_subquery();
|
43200
43409
|
init_table();
|
43201
43410
|
init_utils2();
|
43202
|
-
|
43411
|
+
_a399 = entityKind;
|
43203
43412
|
SingleStoreSelectBuilder = class {
|
43204
43413
|
constructor(config) {
|
43205
43414
|
__publicField(this, "fields");
|
@@ -43242,8 +43451,8 @@ var init_select5 = __esm({
|
|
43242
43451
|
);
|
43243
43452
|
}
|
43244
43453
|
};
|
43245
|
-
__publicField(SingleStoreSelectBuilder,
|
43246
|
-
SingleStoreSelectQueryBuilderBase = class extends (
|
43454
|
+
__publicField(SingleStoreSelectBuilder, _a399, "SingleStoreSelectBuilder");
|
43455
|
+
SingleStoreSelectQueryBuilderBase = class extends (_b301 = TypedQueryBuilder, _a400 = entityKind, _b301) {
|
43247
43456
|
constructor({ table: table5, fields, isPartialSelect, session, dialect: dialect6, withList, distinct }) {
|
43248
43457
|
super();
|
43249
43458
|
__publicField(this, "_");
|
@@ -43784,8 +43993,8 @@ var init_select5 = __esm({
|
|
43784
43993
|
return this;
|
43785
43994
|
}
|
43786
43995
|
};
|
43787
|
-
__publicField(SingleStoreSelectQueryBuilderBase,
|
43788
|
-
SingleStoreSelectBase = class extends (
|
43996
|
+
__publicField(SingleStoreSelectQueryBuilderBase, _a400, "SingleStoreSelectQueryBuilder");
|
43997
|
+
SingleStoreSelectBase = class extends (_b302 = SingleStoreSelectQueryBuilderBase, _a401 = entityKind, _b302) {
|
43789
43998
|
constructor() {
|
43790
43999
|
super(...arguments);
|
43791
44000
|
__publicField(this, "execute", (placeholderValues) => {
|
@@ -43809,7 +44018,7 @@ var init_select5 = __esm({
|
|
43809
44018
|
return query;
|
43810
44019
|
}
|
43811
44020
|
};
|
43812
|
-
__publicField(SingleStoreSelectBase,
|
44021
|
+
__publicField(SingleStoreSelectBase, _a401, "SingleStoreSelect");
|
43813
44022
|
applyMixins(SingleStoreSelectBase, [QueryPromise]);
|
43814
44023
|
getSingleStoreSetOperators = () => ({
|
43815
44024
|
union: union4,
|
@@ -43827,7 +44036,7 @@ var init_select5 = __esm({
|
|
43827
44036
|
});
|
43828
44037
|
|
43829
44038
|
// ../drizzle-orm/dist/singlestore-core/query-builders/query-builder.js
|
43830
|
-
var
|
44039
|
+
var _a402, QueryBuilder4;
|
43831
44040
|
var init_query_builder5 = __esm({
|
43832
44041
|
"../drizzle-orm/dist/singlestore-core/query-builders/query-builder.js"() {
|
43833
44042
|
"use strict";
|
@@ -43836,7 +44045,7 @@ var init_query_builder5 = __esm({
|
|
43836
44045
|
init_dialect4();
|
43837
44046
|
init_subquery();
|
43838
44047
|
init_select5();
|
43839
|
-
|
44048
|
+
_a402 = entityKind;
|
43840
44049
|
QueryBuilder4 = class {
|
43841
44050
|
constructor(dialect6) {
|
43842
44051
|
__publicField(this, "dialect");
|
@@ -43902,7 +44111,7 @@ var init_query_builder5 = __esm({
|
|
43902
44111
|
return this.dialect;
|
43903
44112
|
}
|
43904
44113
|
};
|
43905
|
-
__publicField(QueryBuilder4,
|
44114
|
+
__publicField(QueryBuilder4, _a402, "SingleStoreQueryBuilder");
|
43906
44115
|
}
|
43907
44116
|
});
|
43908
44117
|
|
@@ -43914,7 +44123,7 @@ var init_select_types4 = __esm({
|
|
43914
44123
|
});
|
43915
44124
|
|
43916
44125
|
// ../drizzle-orm/dist/singlestore-core/query-builders/update.js
|
43917
|
-
var
|
44126
|
+
var _a403, SingleStoreUpdateBuilder, _a404, _b303, SingleStoreUpdateBase;
|
43918
44127
|
var init_update4 = __esm({
|
43919
44128
|
"../drizzle-orm/dist/singlestore-core/query-builders/update.js"() {
|
43920
44129
|
"use strict";
|
@@ -43923,7 +44132,7 @@ var init_update4 = __esm({
|
|
43923
44132
|
init_selection_proxy();
|
43924
44133
|
init_table();
|
43925
44134
|
init_utils2();
|
43926
|
-
|
44135
|
+
_a403 = entityKind;
|
43927
44136
|
SingleStoreUpdateBuilder = class {
|
43928
44137
|
constructor(table5, session, dialect6, withList) {
|
43929
44138
|
this.table = table5;
|
@@ -43941,8 +44150,8 @@ var init_update4 = __esm({
|
|
43941
44150
|
);
|
43942
44151
|
}
|
43943
44152
|
};
|
43944
|
-
__publicField(SingleStoreUpdateBuilder,
|
43945
|
-
SingleStoreUpdateBase = class extends (
|
44153
|
+
__publicField(SingleStoreUpdateBuilder, _a403, "SingleStoreUpdateBuilder");
|
44154
|
+
SingleStoreUpdateBase = class extends (_b303 = QueryPromise, _a404 = entityKind, _b303) {
|
43946
44155
|
constructor(table5, set, session, dialect6, withList) {
|
43947
44156
|
super();
|
43948
44157
|
__publicField(this, "config");
|
@@ -44035,7 +44244,7 @@ var init_update4 = __esm({
|
|
44035
44244
|
return this;
|
44036
44245
|
}
|
44037
44246
|
};
|
44038
|
-
__publicField(SingleStoreUpdateBase,
|
44247
|
+
__publicField(SingleStoreUpdateBase, _a404, "SingleStoreUpdate");
|
44039
44248
|
}
|
44040
44249
|
});
|
44041
44250
|
|
@@ -44053,7 +44262,7 @@ var init_query_builders4 = __esm({
|
|
44053
44262
|
});
|
44054
44263
|
|
44055
44264
|
// ../drizzle-orm/dist/singlestore-core/db.js
|
44056
|
-
var
|
44265
|
+
var _a405, SingleStoreDatabase;
|
44057
44266
|
var init_db4 = __esm({
|
44058
44267
|
"../drizzle-orm/dist/singlestore-core/db.js"() {
|
44059
44268
|
"use strict";
|
@@ -44063,7 +44272,7 @@ var init_db4 = __esm({
|
|
44063
44272
|
init_subquery();
|
44064
44273
|
init_count4();
|
44065
44274
|
init_query_builders4();
|
44066
|
-
|
44275
|
+
_a405 = entityKind;
|
44067
44276
|
SingleStoreDatabase = class {
|
44068
44277
|
constructor(dialect6, session, schema5) {
|
44069
44278
|
// We are waiting for SingleStore support for `json_array` function
|
@@ -44263,17 +44472,17 @@ var init_db4 = __esm({
|
|
44263
44472
|
return this.session.transaction(transaction, config);
|
44264
44473
|
}
|
44265
44474
|
};
|
44266
|
-
__publicField(SingleStoreDatabase,
|
44475
|
+
__publicField(SingleStoreDatabase, _a405, "SingleStoreDatabase");
|
44267
44476
|
}
|
44268
44477
|
});
|
44269
44478
|
|
44270
44479
|
// ../drizzle-orm/dist/singlestore-core/indexes.js
|
44271
|
-
var
|
44480
|
+
var _a406, IndexBuilderOn4, _a407, IndexBuilder4, _a408, Index6;
|
44272
44481
|
var init_indexes4 = __esm({
|
44273
44482
|
"../drizzle-orm/dist/singlestore-core/indexes.js"() {
|
44274
44483
|
"use strict";
|
44275
44484
|
init_entity();
|
44276
|
-
|
44485
|
+
_a406 = entityKind;
|
44277
44486
|
IndexBuilderOn4 = class {
|
44278
44487
|
constructor(name2, unique) {
|
44279
44488
|
this.name = name2;
|
@@ -44283,8 +44492,8 @@ var init_indexes4 = __esm({
|
|
44283
44492
|
return new IndexBuilder4(this.name, columns, this.unique);
|
44284
44493
|
}
|
44285
44494
|
};
|
44286
|
-
__publicField(IndexBuilderOn4,
|
44287
|
-
|
44495
|
+
__publicField(IndexBuilderOn4, _a406, "SingleStoreIndexBuilderOn");
|
44496
|
+
_a407 = entityKind;
|
44288
44497
|
IndexBuilder4 = class {
|
44289
44498
|
constructor(name2, columns, unique) {
|
44290
44499
|
/** @internal */
|
@@ -44312,26 +44521,26 @@ var init_indexes4 = __esm({
|
|
44312
44521
|
return new Index6(this.config, table5);
|
44313
44522
|
}
|
44314
44523
|
};
|
44315
|
-
__publicField(IndexBuilder4,
|
44316
|
-
|
44524
|
+
__publicField(IndexBuilder4, _a407, "SingleStoreIndexBuilder");
|
44525
|
+
_a408 = entityKind;
|
44317
44526
|
Index6 = class {
|
44318
44527
|
constructor(config, table5) {
|
44319
44528
|
__publicField(this, "config");
|
44320
44529
|
this.config = { ...config, table: table5 };
|
44321
44530
|
}
|
44322
44531
|
};
|
44323
|
-
__publicField(Index6,
|
44532
|
+
__publicField(Index6, _a408, "SingleStoreIndex");
|
44324
44533
|
}
|
44325
44534
|
});
|
44326
44535
|
|
44327
44536
|
// ../drizzle-orm/dist/singlestore-core/primary-keys.js
|
44328
|
-
var
|
44537
|
+
var _a409, PrimaryKeyBuilder4, _a410, PrimaryKey4;
|
44329
44538
|
var init_primary_keys4 = __esm({
|
44330
44539
|
"../drizzle-orm/dist/singlestore-core/primary-keys.js"() {
|
44331
44540
|
"use strict";
|
44332
44541
|
init_entity();
|
44333
44542
|
init_table5();
|
44334
|
-
|
44543
|
+
_a409 = entityKind;
|
44335
44544
|
PrimaryKeyBuilder4 = class {
|
44336
44545
|
constructor(columns, name2) {
|
44337
44546
|
/** @internal */
|
@@ -44346,8 +44555,8 @@ var init_primary_keys4 = __esm({
|
|
44346
44555
|
return new PrimaryKey4(table5, this.columns, this.name);
|
44347
44556
|
}
|
44348
44557
|
};
|
44349
|
-
__publicField(PrimaryKeyBuilder4,
|
44350
|
-
|
44558
|
+
__publicField(PrimaryKeyBuilder4, _a409, "SingleStorePrimaryKeyBuilder");
|
44559
|
+
_a410 = entityKind;
|
44351
44560
|
PrimaryKey4 = class {
|
44352
44561
|
constructor(table5, columns, name2) {
|
44353
44562
|
__publicField(this, "columns");
|
@@ -44360,18 +44569,18 @@ var init_primary_keys4 = __esm({
|
|
44360
44569
|
return this.name ?? `${this.table[SingleStoreTable.Symbol.Name]}_${this.columns.map((column5) => column5.name).join("_")}_pk`;
|
44361
44570
|
}
|
44362
44571
|
};
|
44363
|
-
__publicField(PrimaryKey4,
|
44572
|
+
__publicField(PrimaryKey4, _a410, "SingleStorePrimaryKey");
|
44364
44573
|
}
|
44365
44574
|
});
|
44366
44575
|
|
44367
44576
|
// ../drizzle-orm/dist/singlestore-core/schema.js
|
44368
|
-
var
|
44577
|
+
var _a411, SingleStoreSchema5;
|
44369
44578
|
var init_schema3 = __esm({
|
44370
44579
|
"../drizzle-orm/dist/singlestore-core/schema.js"() {
|
44371
44580
|
"use strict";
|
44372
44581
|
init_entity();
|
44373
44582
|
init_table5();
|
44374
|
-
|
44583
|
+
_a411 = entityKind;
|
44375
44584
|
SingleStoreSchema5 = class {
|
44376
44585
|
constructor(schemaName) {
|
44377
44586
|
__publicField(this, "table", (name2, columns, extraConfig) => {
|
@@ -44384,12 +44593,12 @@ var init_schema3 = __esm({
|
|
44384
44593
|
return singlestoreViewWithSchema(name, columns, this.schemaName);
|
44385
44594
|
}) as typeof singlestoreView; */
|
44386
44595
|
};
|
44387
|
-
__publicField(SingleStoreSchema5,
|
44596
|
+
__publicField(SingleStoreSchema5, _a411, "SingleStoreSchema");
|
44388
44597
|
}
|
44389
44598
|
});
|
44390
44599
|
|
44391
44600
|
// ../drizzle-orm/dist/singlestore-core/session.js
|
44392
|
-
var
|
44601
|
+
var _a412, SingleStorePreparedQuery, _a413, SingleStoreSession, _a414, _b304, SingleStoreTransaction;
|
44393
44602
|
var init_session4 = __esm({
|
44394
44603
|
"../drizzle-orm/dist/singlestore-core/session.js"() {
|
44395
44604
|
"use strict";
|
@@ -44397,15 +44606,15 @@ var init_session4 = __esm({
|
|
44397
44606
|
init_errors();
|
44398
44607
|
init_sql();
|
44399
44608
|
init_db4();
|
44400
|
-
|
44609
|
+
_a412 = entityKind;
|
44401
44610
|
SingleStorePreparedQuery = class {
|
44402
44611
|
constructor() {
|
44403
44612
|
/** @internal */
|
44404
44613
|
__publicField(this, "joinsNotNullableMap");
|
44405
44614
|
}
|
44406
44615
|
};
|
44407
|
-
__publicField(SingleStorePreparedQuery,
|
44408
|
-
|
44616
|
+
__publicField(SingleStorePreparedQuery, _a412, "SingleStorePreparedQuery");
|
44617
|
+
_a413 = entityKind;
|
44409
44618
|
SingleStoreSession = class {
|
44410
44619
|
constructor(dialect6) {
|
44411
44620
|
this.dialect = dialect6;
|
@@ -44440,8 +44649,8 @@ var init_session4 = __esm({
|
|
44440
44649
|
return parts.length ? sql`start transaction ${sql.raw(parts.join(" "))}` : void 0;
|
44441
44650
|
}
|
44442
44651
|
};
|
44443
|
-
__publicField(SingleStoreSession,
|
44444
|
-
SingleStoreTransaction = class extends (
|
44652
|
+
__publicField(SingleStoreSession, _a413, "SingleStoreSession");
|
44653
|
+
SingleStoreTransaction = class extends (_b304 = SingleStoreDatabase, _a414 = entityKind, _b304) {
|
44445
44654
|
constructor(dialect6, session, schema5, nestedIndex) {
|
44446
44655
|
super(dialect6, session, schema5);
|
44447
44656
|
this.schema = schema5;
|
@@ -44451,7 +44660,7 @@ var init_session4 = __esm({
|
|
44451
44660
|
throw new TransactionRollbackError();
|
44452
44661
|
}
|
44453
44662
|
};
|
44454
|
-
__publicField(SingleStoreTransaction,
|
44663
|
+
__publicField(SingleStoreTransaction, _a414, "SingleStoreTransaction");
|
44455
44664
|
}
|
44456
44665
|
});
|
44457
44666
|
|
@@ -44628,7 +44837,7 @@ ${withStyle.errorWarning(`We've found duplicated unique constraint names in ${so
|
|
44628
44837
|
if (typeof column5.default === "string") {
|
44629
44838
|
columnToSet.default = `'${column5.default}'`;
|
44630
44839
|
} else {
|
44631
|
-
if (sqlTypeLowered === "json") {
|
44840
|
+
if (sqlTypeLowered === "json" || Array.isArray(column5.default)) {
|
44632
44841
|
columnToSet.default = `'${JSON.stringify(column5.default)}'`;
|
44633
44842
|
} else if (column5.default instanceof Date) {
|
44634
44843
|
if (sqlTypeLowered === "date") {
|
@@ -45398,15 +45607,31 @@ var init_singlestoreImports = __esm({
|
|
45398
45607
|
var singlestorePushUtils_exports = {};
|
45399
45608
|
__export(singlestorePushUtils_exports, {
|
45400
45609
|
filterStatements: () => filterStatements2,
|
45610
|
+
findColumnTypeAlternations: () => findColumnTypeAlternations,
|
45401
45611
|
logSuggestionsAndReturn: () => logSuggestionsAndReturn3
|
45402
45612
|
});
|
45613
|
+
function findColumnTypeAlternations(columns1, columns2) {
|
45614
|
+
const changes = [];
|
45615
|
+
for (const key in columns1) {
|
45616
|
+
if (columns1.hasOwnProperty(key) && columns2.hasOwnProperty(key)) {
|
45617
|
+
const col1 = columns1[key];
|
45618
|
+
const col2 = columns2[key];
|
45619
|
+
if (col1.type !== col2.type) {
|
45620
|
+
changes.push(col2.name);
|
45621
|
+
}
|
45622
|
+
}
|
45623
|
+
}
|
45624
|
+
return changes;
|
45625
|
+
}
|
45403
45626
|
var import_hanji10, filterStatements2, logSuggestionsAndReturn3;
|
45404
45627
|
var init_singlestorePushUtils = __esm({
|
45405
45628
|
"src/cli/commands/singlestorePushUtils.ts"() {
|
45406
45629
|
"use strict";
|
45407
45630
|
init_source();
|
45408
45631
|
import_hanji10 = __toESM(require_hanji());
|
45632
|
+
init_sqlgenerator();
|
45409
45633
|
init_singlestoreSchema();
|
45634
|
+
init_utils();
|
45410
45635
|
init_selector_ui();
|
45411
45636
|
init_outputs();
|
45412
45637
|
filterStatements2 = (statements, currentSchema, prevSchema) => {
|
@@ -45450,7 +45675,7 @@ var init_singlestorePushUtils = __esm({
|
|
45450
45675
|
return true;
|
45451
45676
|
});
|
45452
45677
|
};
|
45453
|
-
logSuggestionsAndReturn3 = async (db, statements, json22) => {
|
45678
|
+
logSuggestionsAndReturn3 = async (db, statements, json22, json1) => {
|
45454
45679
|
let shouldAskForApprove = false;
|
45455
45680
|
const statementsToExecute = [];
|
45456
45681
|
const infoToPrint = [];
|
@@ -45631,6 +45856,71 @@ var init_singlestorePushUtils = __esm({
|
|
45631
45856
|
shouldAskForApprove = true;
|
45632
45857
|
}
|
45633
45858
|
}
|
45859
|
+
} else if (statement.type === "singlestore_recreate_table") {
|
45860
|
+
const tableName = statement.tableName;
|
45861
|
+
const prevColumns = json1.tables[tableName].columns;
|
45862
|
+
const currentColumns = json22.tables[tableName].columns;
|
45863
|
+
const { removedColumns, addedColumns } = findAddedAndRemoved(
|
45864
|
+
Object.keys(prevColumns),
|
45865
|
+
Object.keys(currentColumns)
|
45866
|
+
);
|
45867
|
+
if (removedColumns.length) {
|
45868
|
+
for (const removedColumn of removedColumns) {
|
45869
|
+
const res = await db.query(
|
45870
|
+
`select count(\`${tableName}\`.\`${removedColumn}\`) as count from \`${tableName}\``
|
45871
|
+
);
|
45872
|
+
const count2 = Number(res[0].count);
|
45873
|
+
if (count2 > 0) {
|
45874
|
+
infoToPrint.push(
|
45875
|
+
`\xB7 You're about to delete ${source_default.underline(
|
45876
|
+
removedColumn
|
45877
|
+
)} column in ${tableName} table with ${count2} items`
|
45878
|
+
);
|
45879
|
+
columnsToRemove.push(removedColumn);
|
45880
|
+
shouldAskForApprove = true;
|
45881
|
+
}
|
45882
|
+
}
|
45883
|
+
}
|
45884
|
+
if (addedColumns.length) {
|
45885
|
+
for (const addedColumn of addedColumns) {
|
45886
|
+
const [res] = await db.query(
|
45887
|
+
`select count(*) as count from \`${tableName}\``
|
45888
|
+
);
|
45889
|
+
const columnConf = json22.tables[tableName].columns[addedColumn];
|
45890
|
+
const count2 = Number(res.count);
|
45891
|
+
if (count2 > 0 && columnConf.notNull && !columnConf.default) {
|
45892
|
+
infoToPrint.push(
|
45893
|
+
`\xB7 You're about to add not-null ${source_default.underline(
|
45894
|
+
addedColumn
|
45895
|
+
)} column without default value to table, which contains ${count2} items`
|
45896
|
+
);
|
45897
|
+
shouldAskForApprove = true;
|
45898
|
+
tablesToTruncate.push(tableName);
|
45899
|
+
statementsToExecute.push(`TRUNCATE TABLE \`${tableName}\`;`);
|
45900
|
+
}
|
45901
|
+
}
|
45902
|
+
}
|
45903
|
+
const columnWithChangedType = findColumnTypeAlternations(prevColumns, currentColumns);
|
45904
|
+
for (const column5 of columnWithChangedType) {
|
45905
|
+
const [res] = await db.query(
|
45906
|
+
`select count(*) as count from \`${tableName}\` WHERE \`${tableName}\`.\`${column5}\` IS NOT NULL;`
|
45907
|
+
);
|
45908
|
+
const count2 = Number(res.count);
|
45909
|
+
if (count2 > 0) {
|
45910
|
+
infoToPrint.push(
|
45911
|
+
`\xB7 You're about recreate ${source_default.underline(tableName)} table with data type changing for ${source_default.underline(
|
45912
|
+
column5
|
45913
|
+
)} column, which contains ${count2} items`
|
45914
|
+
);
|
45915
|
+
shouldAskForApprove = true;
|
45916
|
+
tablesToTruncate.push(tableName);
|
45917
|
+
statementsToExecute.push(`TRUNCATE TABLE \`${tableName}\`;`);
|
45918
|
+
}
|
45919
|
+
}
|
45920
|
+
}
|
45921
|
+
const stmnt = fromJson([statement], "singlestore", "push");
|
45922
|
+
if (typeof stmnt !== "undefined") {
|
45923
|
+
statementsToExecute.push(...stmnt);
|
45634
45924
|
}
|
45635
45925
|
}
|
45636
45926
|
return {
|
@@ -46476,7 +46766,8 @@ var pushSingleStoreSchema = async (imports, drizzleInstance, databaseName) => {
|
|
46476
46766
|
const { shouldAskForApprove, statementsToExecute, infoToPrint } = await logSuggestionsAndReturn4(
|
46477
46767
|
db,
|
46478
46768
|
statements,
|
46479
|
-
|
46769
|
+
squashedCur,
|
46770
|
+
squashedPrev
|
46480
46771
|
);
|
46481
46772
|
return {
|
46482
46773
|
hasDataLoss: shouldAskForApprove,
|