drizzle-kit 0.28.0-cc4f208 → 0.28.1-d7e3535

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.
Files changed (4) hide show
  1. package/api.js +240 -88
  2. package/api.mjs +240 -88
  3. package/bin.cjs +1 -1
  4. package/package.json +1 -1
package/api.js CHANGED
@@ -21121,7 +21121,7 @@ var version;
21121
21121
  var init_version = __esm({
21122
21122
  "../drizzle-orm/dist/version.js"() {
21123
21123
  "use strict";
21124
- version = "0.36.1";
21124
+ version = "0.36.2";
21125
21125
  }
21126
21126
  });
21127
21127
 
@@ -22144,7 +22144,7 @@ function haveSameKeys(left, right) {
22144
22144
  }
22145
22145
  function mapUpdateSet(table4, values) {
22146
22146
  const entries = Object.entries(values).filter(([, value]) => value !== void 0).map(([key, value]) => {
22147
- if (is(value, SQL)) {
22147
+ if (is(value, SQL) || is(value, Column2)) {
22148
22148
  return [key, value];
22149
22149
  } else {
22150
22150
  return [key, new Param(value, table4[Table2.Symbol.Columns][key])];
@@ -24985,12 +24985,19 @@ var init_dialect = __esm({
24985
24985
  return [res];
24986
24986
  }));
24987
24987
  }
24988
- buildUpdateQuery({ table: table4, set, where, returning, withList }) {
24988
+ buildUpdateQuery({ table: table4, set, where, returning, withList, from, joins }) {
24989
24989
  const withSql = this.buildWithCTE(withList);
24990
+ const tableName = table4[PgTable.Symbol.Name];
24991
+ const tableSchema = table4[PgTable.Symbol.Schema];
24992
+ const origTableName = table4[PgTable.Symbol.OriginalName];
24993
+ const alias = tableName === origTableName ? void 0 : tableName;
24994
+ const tableSql = sql`${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`}`;
24990
24995
  const setSql = this.buildUpdateSet(table4, set);
24991
- const returningSql = returning ? sql` returning ${this.buildSelection(returning, { isSingleTable: true })}` : void 0;
24996
+ const fromSql = from && sql.join([sql.raw(" from "), this.buildFromTable(from)]);
24997
+ const joinsSql = this.buildJoins(joins);
24998
+ const returningSql = returning ? sql` returning ${this.buildSelection(returning, { isSingleTable: !from })}` : void 0;
24992
24999
  const whereSql = where ? sql` where ${where}` : void 0;
24993
- return sql`${withSql}update ${table4} set ${setSql}${whereSql}${returningSql}`;
25000
+ return sql`${withSql}update ${tableSql} set ${setSql}${fromSql}${joinsSql}${whereSql}${returningSql}`;
24994
25001
  }
24995
25002
  /**
24996
25003
  * Builds selection SQL with provided fields/expressions
@@ -25042,6 +25049,54 @@ var init_dialect = __esm({
25042
25049
  });
25043
25050
  return sql.join(chunks);
25044
25051
  }
25052
+ buildJoins(joins) {
25053
+ if (!joins || joins.length === 0) {
25054
+ return void 0;
25055
+ }
25056
+ const joinsArray = [];
25057
+ for (const [index4, joinMeta] of joins.entries()) {
25058
+ if (index4 === 0) {
25059
+ joinsArray.push(sql` `);
25060
+ }
25061
+ const table4 = joinMeta.table;
25062
+ const lateralSql = joinMeta.lateral ? sql` lateral` : void 0;
25063
+ if (is(table4, PgTable)) {
25064
+ const tableName = table4[PgTable.Symbol.Name];
25065
+ const tableSchema = table4[PgTable.Symbol.Schema];
25066
+ const origTableName = table4[PgTable.Symbol.OriginalName];
25067
+ const alias = tableName === origTableName ? void 0 : joinMeta.alias;
25068
+ joinsArray.push(
25069
+ sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
25070
+ );
25071
+ } else if (is(table4, View3)) {
25072
+ const viewName = table4[ViewBaseConfig].name;
25073
+ const viewSchema = table4[ViewBaseConfig].schema;
25074
+ const origViewName = table4[ViewBaseConfig].originalName;
25075
+ const alias = viewName === origViewName ? void 0 : joinMeta.alias;
25076
+ joinsArray.push(
25077
+ sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${viewSchema ? sql`${sql.identifier(viewSchema)}.` : void 0}${sql.identifier(origViewName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
25078
+ );
25079
+ } else {
25080
+ joinsArray.push(
25081
+ sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${table4} on ${joinMeta.on}`
25082
+ );
25083
+ }
25084
+ if (index4 < joins.length - 1) {
25085
+ joinsArray.push(sql` `);
25086
+ }
25087
+ }
25088
+ return sql.join(joinsArray);
25089
+ }
25090
+ buildFromTable(table4) {
25091
+ if (is(table4, Table2) && table4[Table2.Symbol.OriginalName] !== table4[Table2.Symbol.Name]) {
25092
+ let fullName = sql`${sql.identifier(table4[Table2.Symbol.OriginalName])}`;
25093
+ if (table4[Table2.Symbol.Schema]) {
25094
+ fullName = sql`${sql.identifier(table4[Table2.Symbol.Schema])}.${fullName}`;
25095
+ }
25096
+ return sql`${fullName} ${sql.identifier(table4[Table2.Symbol.Name])}`;
25097
+ }
25098
+ return table4;
25099
+ }
25045
25100
  buildSelectQuery({
25046
25101
  withList,
25047
25102
  fields,
@@ -25076,51 +25131,8 @@ var init_dialect = __esm({
25076
25131
  distinctSql = distinct === true ? sql` distinct` : sql` distinct on (${sql.join(distinct.on, sql`, `)})`;
25077
25132
  }
25078
25133
  const selection = this.buildSelection(fieldsList, { isSingleTable });
25079
- const tableSql = (() => {
25080
- if (is(table4, Table2) && table4[Table2.Symbol.OriginalName] !== table4[Table2.Symbol.Name]) {
25081
- let fullName = sql`${sql.identifier(table4[Table2.Symbol.OriginalName])}`;
25082
- if (table4[Table2.Symbol.Schema]) {
25083
- fullName = sql`${sql.identifier(table4[Table2.Symbol.Schema])}.${fullName}`;
25084
- }
25085
- return sql`${fullName} ${sql.identifier(table4[Table2.Symbol.Name])}`;
25086
- }
25087
- return table4;
25088
- })();
25089
- const joinsArray = [];
25090
- if (joins) {
25091
- for (const [index4, joinMeta] of joins.entries()) {
25092
- if (index4 === 0) {
25093
- joinsArray.push(sql` `);
25094
- }
25095
- const table22 = joinMeta.table;
25096
- const lateralSql = joinMeta.lateral ? sql` lateral` : void 0;
25097
- if (is(table22, PgTable)) {
25098
- const tableName = table22[PgTable.Symbol.Name];
25099
- const tableSchema = table22[PgTable.Symbol.Schema];
25100
- const origTableName = table22[PgTable.Symbol.OriginalName];
25101
- const alias = tableName === origTableName ? void 0 : joinMeta.alias;
25102
- joinsArray.push(
25103
- sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
25104
- );
25105
- } else if (is(table22, View3)) {
25106
- const viewName = table22[ViewBaseConfig].name;
25107
- const viewSchema = table22[ViewBaseConfig].schema;
25108
- const origViewName = table22[ViewBaseConfig].originalName;
25109
- const alias = viewName === origViewName ? void 0 : joinMeta.alias;
25110
- joinsArray.push(
25111
- sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${viewSchema ? sql`${sql.identifier(viewSchema)}.` : void 0}${sql.identifier(origViewName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
25112
- );
25113
- } else {
25114
- joinsArray.push(
25115
- sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${table22} on ${joinMeta.on}`
25116
- );
25117
- }
25118
- if (index4 < joins.length - 1) {
25119
- joinsArray.push(sql` `);
25120
- }
25121
- }
25122
- }
25123
- const joinsSql = sql.join(joinsArray);
25134
+ const tableSql = this.buildFromTable(table4);
25135
+ const joinsSql = this.buildJoins(joins);
25124
25136
  const whereSql = where ? sql` where ${where}` : void 0;
25125
25137
  const havingSql = having ? sql` having ${having}` : void 0;
25126
25138
  let orderBySql;
@@ -26978,9 +26990,14 @@ var init_update = __esm({
26978
26990
  "../drizzle-orm/dist/pg-core/query-builders/update.js"() {
26979
26991
  "use strict";
26980
26992
  init_entity();
26993
+ init_table2();
26981
26994
  init_query_promise();
26995
+ init_selection_proxy();
26996
+ init_sql();
26997
+ init_subquery();
26982
26998
  init_table();
26983
26999
  init_utils2();
27000
+ init_view_common();
26984
27001
  _a137 = entityKind;
26985
27002
  PgUpdateBuilder = class {
26986
27003
  constructor(table4, session, dialect4, withList) {
@@ -27004,12 +27021,85 @@ var init_update = __esm({
27004
27021
  constructor(table4, set, session, dialect4, withList) {
27005
27022
  super();
27006
27023
  __publicField(this, "config");
27024
+ __publicField(this, "tableName");
27025
+ __publicField(this, "joinsNotNullableMap");
27026
+ __publicField(this, "leftJoin", this.createJoin("left"));
27027
+ __publicField(this, "rightJoin", this.createJoin("right"));
27028
+ __publicField(this, "innerJoin", this.createJoin("inner"));
27029
+ __publicField(this, "fullJoin", this.createJoin("full"));
27007
27030
  __publicField(this, "execute", (placeholderValues) => {
27008
27031
  return this._prepare().execute(placeholderValues);
27009
27032
  });
27010
27033
  this.session = session;
27011
27034
  this.dialect = dialect4;
27012
- this.config = { set, table: table4, withList };
27035
+ this.config = { set, table: table4, withList, joins: [] };
27036
+ this.tableName = getTableLikeName(table4);
27037
+ this.joinsNotNullableMap = typeof this.tableName === "string" ? { [this.tableName]: true } : {};
27038
+ }
27039
+ from(source) {
27040
+ const tableName = getTableLikeName(source);
27041
+ if (typeof tableName === "string") {
27042
+ this.joinsNotNullableMap[tableName] = true;
27043
+ }
27044
+ this.config.from = source;
27045
+ return this;
27046
+ }
27047
+ getTableLikeFields(table4) {
27048
+ if (is(table4, PgTable)) {
27049
+ return table4[Table2.Symbol.Columns];
27050
+ } else if (is(table4, Subquery)) {
27051
+ return table4._.selectedFields;
27052
+ }
27053
+ return table4[ViewBaseConfig].selectedFields;
27054
+ }
27055
+ createJoin(joinType) {
27056
+ return (table4, on) => {
27057
+ const tableName = getTableLikeName(table4);
27058
+ if (typeof tableName === "string" && this.config.joins.some((join) => join.alias === tableName)) {
27059
+ throw new Error(`Alias "${tableName}" is already used in this query`);
27060
+ }
27061
+ if (typeof on === "function") {
27062
+ const from = this.config.from && !is(this.config.from, SQL) ? this.getTableLikeFields(this.config.from) : void 0;
27063
+ on = on(
27064
+ new Proxy(
27065
+ this.config.table[Table2.Symbol.Columns],
27066
+ new SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
27067
+ ),
27068
+ from && new Proxy(
27069
+ from,
27070
+ new SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
27071
+ )
27072
+ );
27073
+ }
27074
+ this.config.joins.push({ on, table: table4, joinType, alias: tableName });
27075
+ if (typeof tableName === "string") {
27076
+ switch (joinType) {
27077
+ case "left": {
27078
+ this.joinsNotNullableMap[tableName] = false;
27079
+ break;
27080
+ }
27081
+ case "right": {
27082
+ this.joinsNotNullableMap = Object.fromEntries(
27083
+ Object.entries(this.joinsNotNullableMap).map(([key]) => [key, false])
27084
+ );
27085
+ this.joinsNotNullableMap[tableName] = true;
27086
+ break;
27087
+ }
27088
+ case "inner": {
27089
+ this.joinsNotNullableMap[tableName] = true;
27090
+ break;
27091
+ }
27092
+ case "full": {
27093
+ this.joinsNotNullableMap = Object.fromEntries(
27094
+ Object.entries(this.joinsNotNullableMap).map(([key]) => [key, false])
27095
+ );
27096
+ this.joinsNotNullableMap[tableName] = false;
27097
+ break;
27098
+ }
27099
+ }
27100
+ }
27101
+ return this;
27102
+ };
27013
27103
  }
27014
27104
  /**
27015
27105
  * Adds a 'where' clause to the query.
@@ -27048,7 +27138,24 @@ var init_update = __esm({
27048
27138
  this.config.where = where;
27049
27139
  return this;
27050
27140
  }
27051
- returning(fields = this.config.table[Table2.Symbol.Columns]) {
27141
+ returning(fields) {
27142
+ if (!fields) {
27143
+ fields = Object.assign({}, this.config.table[Table2.Symbol.Columns]);
27144
+ if (this.config.from) {
27145
+ const tableName = getTableLikeName(this.config.from);
27146
+ if (typeof tableName === "string" && this.config.from && !is(this.config.from, SQL)) {
27147
+ const fromFields = this.getTableLikeFields(this.config.from);
27148
+ fields[tableName] = fromFields;
27149
+ }
27150
+ for (const join of this.config.joins) {
27151
+ const tableName2 = getTableLikeName(join.table);
27152
+ if (typeof tableName2 === "string" && !is(join.table, SQL)) {
27153
+ const fromFields = this.getTableLikeFields(join.table);
27154
+ fields[tableName2] = fromFields;
27155
+ }
27156
+ }
27157
+ }
27158
+ }
27052
27159
  this.config.returning = orderSelectedFields(fields);
27053
27160
  return this;
27054
27161
  }
@@ -27062,7 +27169,9 @@ var init_update = __esm({
27062
27169
  }
27063
27170
  /** @internal */
27064
27171
  _prepare(name2) {
27065
- return this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name2, true);
27172
+ const query = this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name2, true);
27173
+ query.joinsNotNullableMap = this.joinsNotNullableMap;
27174
+ return query;
27066
27175
  }
27067
27176
  prepare(name2) {
27068
27177
  return this._prepare(name2);
@@ -31077,14 +31186,16 @@ var init_dialect2 = __esm({
31077
31186
  return [res];
31078
31187
  }));
31079
31188
  }
31080
- buildUpdateQuery({ table: table4, set, where, returning, withList, limit, orderBy }) {
31189
+ buildUpdateQuery({ table: table4, set, where, returning, withList, joins, from, limit, orderBy }) {
31081
31190
  const withSql = this.buildWithCTE(withList);
31082
31191
  const setSql = this.buildUpdateSet(table4, set);
31192
+ const fromSql = from && sql.join([sql.raw(" from "), this.buildFromTable(from)]);
31193
+ const joinsSql = this.buildJoins(joins);
31083
31194
  const returningSql = returning ? sql` returning ${this.buildSelection(returning, { isSingleTable: true })}` : void 0;
31084
31195
  const whereSql = where ? sql` where ${where}` : void 0;
31085
31196
  const orderBySql = this.buildOrderBy(orderBy);
31086
31197
  const limitSql = this.buildLimit(limit);
31087
- return sql`${withSql}update ${table4} set ${setSql}${whereSql}${returningSql}${orderBySql}${limitSql}`;
31198
+ return sql`${withSql}update ${table4} set ${setSql}${fromSql}${joinsSql}${whereSql}${returningSql}${orderBySql}${limitSql}`;
31088
31199
  }
31089
31200
  /**
31090
31201
  * Builds selection SQL with provided fields/expressions
@@ -31137,6 +31248,37 @@ var init_dialect2 = __esm({
31137
31248
  });
31138
31249
  return sql.join(chunks);
31139
31250
  }
31251
+ buildJoins(joins) {
31252
+ if (!joins || joins.length === 0) {
31253
+ return void 0;
31254
+ }
31255
+ const joinsArray = [];
31256
+ if (joins) {
31257
+ for (const [index4, joinMeta] of joins.entries()) {
31258
+ if (index4 === 0) {
31259
+ joinsArray.push(sql` `);
31260
+ }
31261
+ const table4 = joinMeta.table;
31262
+ if (is(table4, SQLiteTable)) {
31263
+ const tableName = table4[SQLiteTable.Symbol.Name];
31264
+ const tableSchema = table4[SQLiteTable.Symbol.Schema];
31265
+ const origTableName = table4[SQLiteTable.Symbol.OriginalName];
31266
+ const alias = tableName === origTableName ? void 0 : joinMeta.alias;
31267
+ joinsArray.push(
31268
+ sql`${sql.raw(joinMeta.joinType)} join ${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
31269
+ );
31270
+ } else {
31271
+ joinsArray.push(
31272
+ sql`${sql.raw(joinMeta.joinType)} join ${table4} on ${joinMeta.on}`
31273
+ );
31274
+ }
31275
+ if (index4 < joins.length - 1) {
31276
+ joinsArray.push(sql` `);
31277
+ }
31278
+ }
31279
+ }
31280
+ return sql.join(joinsArray);
31281
+ }
31140
31282
  buildLimit(limit) {
31141
31283
  return typeof limit === "object" || typeof limit === "number" && limit >= 0 ? sql` limit ${limit}` : void 0;
31142
31284
  }
@@ -31152,6 +31294,12 @@ var init_dialect2 = __esm({
31152
31294
  }
31153
31295
  return orderByList.length > 0 ? sql` order by ${sql.join(orderByList)}` : void 0;
31154
31296
  }
31297
+ buildFromTable(table4) {
31298
+ if (is(table4, Table2) && table4[Table2.Symbol.OriginalName] !== table4[Table2.Symbol.Name]) {
31299
+ return sql`${sql.identifier(table4[Table2.Symbol.OriginalName])} ${sql.identifier(table4[Table2.Symbol.Name])}`;
31300
+ }
31301
+ return table4;
31302
+ }
31155
31303
  buildSelectQuery({
31156
31304
  withList,
31157
31305
  fields,
@@ -31182,38 +31330,8 @@ var init_dialect2 = __esm({
31182
31330
  const withSql = this.buildWithCTE(withList);
31183
31331
  const distinctSql = distinct ? sql` distinct` : void 0;
31184
31332
  const selection = this.buildSelection(fieldsList, { isSingleTable });
31185
- const tableSql = (() => {
31186
- if (is(table4, Table2) && table4[Table2.Symbol.OriginalName] !== table4[Table2.Symbol.Name]) {
31187
- return sql`${sql.identifier(table4[Table2.Symbol.OriginalName])} ${sql.identifier(table4[Table2.Symbol.Name])}`;
31188
- }
31189
- return table4;
31190
- })();
31191
- const joinsArray = [];
31192
- if (joins) {
31193
- for (const [index4, joinMeta] of joins.entries()) {
31194
- if (index4 === 0) {
31195
- joinsArray.push(sql` `);
31196
- }
31197
- const table22 = joinMeta.table;
31198
- if (is(table22, SQLiteTable)) {
31199
- const tableName = table22[SQLiteTable.Symbol.Name];
31200
- const tableSchema = table22[SQLiteTable.Symbol.Schema];
31201
- const origTableName = table22[SQLiteTable.Symbol.OriginalName];
31202
- const alias = tableName === origTableName ? void 0 : joinMeta.alias;
31203
- joinsArray.push(
31204
- sql`${sql.raw(joinMeta.joinType)} join ${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
31205
- );
31206
- } else {
31207
- joinsArray.push(
31208
- sql`${sql.raw(joinMeta.joinType)} join ${table22} on ${joinMeta.on}`
31209
- );
31210
- }
31211
- if (index4 < joins.length - 1) {
31212
- joinsArray.push(sql` `);
31213
- }
31214
- }
31215
- }
31216
- const joinsSql = sql.join(joinsArray);
31333
+ const tableSql = this.buildFromTable(table4);
31334
+ const joinsSql = this.buildJoins(joins);
31217
31335
  const whereSql = where ? sql` where ${where}` : void 0;
31218
31336
  const havingSql = having ? sql` having ${having}` : void 0;
31219
31337
  const groupByList = [];
@@ -32340,8 +32458,11 @@ var init_update2 = __esm({
32340
32458
  init_query_promise();
32341
32459
  init_selection_proxy();
32342
32460
  init_table3();
32461
+ init_subquery();
32343
32462
  init_table();
32344
32463
  init_utils2();
32464
+ init_view_common();
32465
+ init_view_base2();
32345
32466
  _a207 = entityKind;
32346
32467
  SQLiteUpdateBuilder = class {
32347
32468
  constructor(table4, session, dialect4, withList) {
@@ -32366,6 +32487,10 @@ var init_update2 = __esm({
32366
32487
  super();
32367
32488
  /** @internal */
32368
32489
  __publicField(this, "config");
32490
+ __publicField(this, "leftJoin", this.createJoin("left"));
32491
+ __publicField(this, "rightJoin", this.createJoin("right"));
32492
+ __publicField(this, "innerJoin", this.createJoin("inner"));
32493
+ __publicField(this, "fullJoin", this.createJoin("full"));
32369
32494
  __publicField(this, "run", (placeholderValues) => {
32370
32495
  return this._prepare().run(placeholderValues);
32371
32496
  });
@@ -32380,7 +32505,34 @@ var init_update2 = __esm({
32380
32505
  });
32381
32506
  this.session = session;
32382
32507
  this.dialect = dialect4;
32383
- this.config = { set, table: table4, withList };
32508
+ this.config = { set, table: table4, withList, joins: [] };
32509
+ }
32510
+ from(source) {
32511
+ this.config.from = source;
32512
+ return this;
32513
+ }
32514
+ createJoin(joinType) {
32515
+ return (table4, on) => {
32516
+ const tableName = getTableLikeName(table4);
32517
+ if (typeof tableName === "string" && this.config.joins.some((join) => join.alias === tableName)) {
32518
+ throw new Error(`Alias "${tableName}" is already used in this query`);
32519
+ }
32520
+ if (typeof on === "function") {
32521
+ const from = this.config.from ? is(table4, SQLiteTable) ? table4[Table2.Symbol.Columns] : is(table4, Subquery) ? table4._.selectedFields : is(table4, SQLiteViewBase) ? table4[ViewBaseConfig].selectedFields : void 0 : void 0;
32522
+ on = on(
32523
+ new Proxy(
32524
+ this.config.table[Table2.Symbol.Columns],
32525
+ new SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
32526
+ ),
32527
+ from && new Proxy(
32528
+ from,
32529
+ new SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
32530
+ )
32531
+ );
32532
+ }
32533
+ this.config.joins.push({ on, table: table4, joinType, alias: tableName });
32534
+ return this;
32535
+ };
32384
32536
  }
32385
32537
  /**
32386
32538
  * Adds a 'where' clause to the query.
package/api.mjs CHANGED
@@ -21126,7 +21126,7 @@ var version;
21126
21126
  var init_version = __esm({
21127
21127
  "../drizzle-orm/dist/version.js"() {
21128
21128
  "use strict";
21129
- version = "0.36.1";
21129
+ version = "0.36.2";
21130
21130
  }
21131
21131
  });
21132
21132
 
@@ -22149,7 +22149,7 @@ function haveSameKeys(left, right) {
22149
22149
  }
22150
22150
  function mapUpdateSet(table4, values) {
22151
22151
  const entries = Object.entries(values).filter(([, value]) => value !== void 0).map(([key, value]) => {
22152
- if (is(value, SQL)) {
22152
+ if (is(value, SQL) || is(value, Column2)) {
22153
22153
  return [key, value];
22154
22154
  } else {
22155
22155
  return [key, new Param(value, table4[Table2.Symbol.Columns][key])];
@@ -24990,12 +24990,19 @@ var init_dialect = __esm({
24990
24990
  return [res];
24991
24991
  }));
24992
24992
  }
24993
- buildUpdateQuery({ table: table4, set, where, returning, withList }) {
24993
+ buildUpdateQuery({ table: table4, set, where, returning, withList, from, joins }) {
24994
24994
  const withSql = this.buildWithCTE(withList);
24995
+ const tableName = table4[PgTable.Symbol.Name];
24996
+ const tableSchema = table4[PgTable.Symbol.Schema];
24997
+ const origTableName = table4[PgTable.Symbol.OriginalName];
24998
+ const alias = tableName === origTableName ? void 0 : tableName;
24999
+ const tableSql = sql`${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`}`;
24995
25000
  const setSql = this.buildUpdateSet(table4, set);
24996
- const returningSql = returning ? sql` returning ${this.buildSelection(returning, { isSingleTable: true })}` : void 0;
25001
+ const fromSql = from && sql.join([sql.raw(" from "), this.buildFromTable(from)]);
25002
+ const joinsSql = this.buildJoins(joins);
25003
+ const returningSql = returning ? sql` returning ${this.buildSelection(returning, { isSingleTable: !from })}` : void 0;
24997
25004
  const whereSql = where ? sql` where ${where}` : void 0;
24998
- return sql`${withSql}update ${table4} set ${setSql}${whereSql}${returningSql}`;
25005
+ return sql`${withSql}update ${tableSql} set ${setSql}${fromSql}${joinsSql}${whereSql}${returningSql}`;
24999
25006
  }
25000
25007
  /**
25001
25008
  * Builds selection SQL with provided fields/expressions
@@ -25047,6 +25054,54 @@ var init_dialect = __esm({
25047
25054
  });
25048
25055
  return sql.join(chunks);
25049
25056
  }
25057
+ buildJoins(joins) {
25058
+ if (!joins || joins.length === 0) {
25059
+ return void 0;
25060
+ }
25061
+ const joinsArray = [];
25062
+ for (const [index4, joinMeta] of joins.entries()) {
25063
+ if (index4 === 0) {
25064
+ joinsArray.push(sql` `);
25065
+ }
25066
+ const table4 = joinMeta.table;
25067
+ const lateralSql = joinMeta.lateral ? sql` lateral` : void 0;
25068
+ if (is(table4, PgTable)) {
25069
+ const tableName = table4[PgTable.Symbol.Name];
25070
+ const tableSchema = table4[PgTable.Symbol.Schema];
25071
+ const origTableName = table4[PgTable.Symbol.OriginalName];
25072
+ const alias = tableName === origTableName ? void 0 : joinMeta.alias;
25073
+ joinsArray.push(
25074
+ sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
25075
+ );
25076
+ } else if (is(table4, View3)) {
25077
+ const viewName = table4[ViewBaseConfig].name;
25078
+ const viewSchema = table4[ViewBaseConfig].schema;
25079
+ const origViewName = table4[ViewBaseConfig].originalName;
25080
+ const alias = viewName === origViewName ? void 0 : joinMeta.alias;
25081
+ joinsArray.push(
25082
+ sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${viewSchema ? sql`${sql.identifier(viewSchema)}.` : void 0}${sql.identifier(origViewName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
25083
+ );
25084
+ } else {
25085
+ joinsArray.push(
25086
+ sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${table4} on ${joinMeta.on}`
25087
+ );
25088
+ }
25089
+ if (index4 < joins.length - 1) {
25090
+ joinsArray.push(sql` `);
25091
+ }
25092
+ }
25093
+ return sql.join(joinsArray);
25094
+ }
25095
+ buildFromTable(table4) {
25096
+ if (is(table4, Table2) && table4[Table2.Symbol.OriginalName] !== table4[Table2.Symbol.Name]) {
25097
+ let fullName = sql`${sql.identifier(table4[Table2.Symbol.OriginalName])}`;
25098
+ if (table4[Table2.Symbol.Schema]) {
25099
+ fullName = sql`${sql.identifier(table4[Table2.Symbol.Schema])}.${fullName}`;
25100
+ }
25101
+ return sql`${fullName} ${sql.identifier(table4[Table2.Symbol.Name])}`;
25102
+ }
25103
+ return table4;
25104
+ }
25050
25105
  buildSelectQuery({
25051
25106
  withList,
25052
25107
  fields,
@@ -25081,51 +25136,8 @@ var init_dialect = __esm({
25081
25136
  distinctSql = distinct === true ? sql` distinct` : sql` distinct on (${sql.join(distinct.on, sql`, `)})`;
25082
25137
  }
25083
25138
  const selection = this.buildSelection(fieldsList, { isSingleTable });
25084
- const tableSql = (() => {
25085
- if (is(table4, Table2) && table4[Table2.Symbol.OriginalName] !== table4[Table2.Symbol.Name]) {
25086
- let fullName = sql`${sql.identifier(table4[Table2.Symbol.OriginalName])}`;
25087
- if (table4[Table2.Symbol.Schema]) {
25088
- fullName = sql`${sql.identifier(table4[Table2.Symbol.Schema])}.${fullName}`;
25089
- }
25090
- return sql`${fullName} ${sql.identifier(table4[Table2.Symbol.Name])}`;
25091
- }
25092
- return table4;
25093
- })();
25094
- const joinsArray = [];
25095
- if (joins) {
25096
- for (const [index4, joinMeta] of joins.entries()) {
25097
- if (index4 === 0) {
25098
- joinsArray.push(sql` `);
25099
- }
25100
- const table22 = joinMeta.table;
25101
- const lateralSql = joinMeta.lateral ? sql` lateral` : void 0;
25102
- if (is(table22, PgTable)) {
25103
- const tableName = table22[PgTable.Symbol.Name];
25104
- const tableSchema = table22[PgTable.Symbol.Schema];
25105
- const origTableName = table22[PgTable.Symbol.OriginalName];
25106
- const alias = tableName === origTableName ? void 0 : joinMeta.alias;
25107
- joinsArray.push(
25108
- sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
25109
- );
25110
- } else if (is(table22, View3)) {
25111
- const viewName = table22[ViewBaseConfig].name;
25112
- const viewSchema = table22[ViewBaseConfig].schema;
25113
- const origViewName = table22[ViewBaseConfig].originalName;
25114
- const alias = viewName === origViewName ? void 0 : joinMeta.alias;
25115
- joinsArray.push(
25116
- sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${viewSchema ? sql`${sql.identifier(viewSchema)}.` : void 0}${sql.identifier(origViewName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
25117
- );
25118
- } else {
25119
- joinsArray.push(
25120
- sql`${sql.raw(joinMeta.joinType)} join${lateralSql} ${table22} on ${joinMeta.on}`
25121
- );
25122
- }
25123
- if (index4 < joins.length - 1) {
25124
- joinsArray.push(sql` `);
25125
- }
25126
- }
25127
- }
25128
- const joinsSql = sql.join(joinsArray);
25139
+ const tableSql = this.buildFromTable(table4);
25140
+ const joinsSql = this.buildJoins(joins);
25129
25141
  const whereSql = where ? sql` where ${where}` : void 0;
25130
25142
  const havingSql = having ? sql` having ${having}` : void 0;
25131
25143
  let orderBySql;
@@ -26983,9 +26995,14 @@ var init_update = __esm({
26983
26995
  "../drizzle-orm/dist/pg-core/query-builders/update.js"() {
26984
26996
  "use strict";
26985
26997
  init_entity();
26998
+ init_table2();
26986
26999
  init_query_promise();
27000
+ init_selection_proxy();
27001
+ init_sql();
27002
+ init_subquery();
26987
27003
  init_table();
26988
27004
  init_utils2();
27005
+ init_view_common();
26989
27006
  _a137 = entityKind;
26990
27007
  PgUpdateBuilder = class {
26991
27008
  constructor(table4, session, dialect4, withList) {
@@ -27009,12 +27026,85 @@ var init_update = __esm({
27009
27026
  constructor(table4, set, session, dialect4, withList) {
27010
27027
  super();
27011
27028
  __publicField(this, "config");
27029
+ __publicField(this, "tableName");
27030
+ __publicField(this, "joinsNotNullableMap");
27031
+ __publicField(this, "leftJoin", this.createJoin("left"));
27032
+ __publicField(this, "rightJoin", this.createJoin("right"));
27033
+ __publicField(this, "innerJoin", this.createJoin("inner"));
27034
+ __publicField(this, "fullJoin", this.createJoin("full"));
27012
27035
  __publicField(this, "execute", (placeholderValues) => {
27013
27036
  return this._prepare().execute(placeholderValues);
27014
27037
  });
27015
27038
  this.session = session;
27016
27039
  this.dialect = dialect4;
27017
- this.config = { set, table: table4, withList };
27040
+ this.config = { set, table: table4, withList, joins: [] };
27041
+ this.tableName = getTableLikeName(table4);
27042
+ this.joinsNotNullableMap = typeof this.tableName === "string" ? { [this.tableName]: true } : {};
27043
+ }
27044
+ from(source) {
27045
+ const tableName = getTableLikeName(source);
27046
+ if (typeof tableName === "string") {
27047
+ this.joinsNotNullableMap[tableName] = true;
27048
+ }
27049
+ this.config.from = source;
27050
+ return this;
27051
+ }
27052
+ getTableLikeFields(table4) {
27053
+ if (is(table4, PgTable)) {
27054
+ return table4[Table2.Symbol.Columns];
27055
+ } else if (is(table4, Subquery)) {
27056
+ return table4._.selectedFields;
27057
+ }
27058
+ return table4[ViewBaseConfig].selectedFields;
27059
+ }
27060
+ createJoin(joinType) {
27061
+ return (table4, on) => {
27062
+ const tableName = getTableLikeName(table4);
27063
+ if (typeof tableName === "string" && this.config.joins.some((join) => join.alias === tableName)) {
27064
+ throw new Error(`Alias "${tableName}" is already used in this query`);
27065
+ }
27066
+ if (typeof on === "function") {
27067
+ const from = this.config.from && !is(this.config.from, SQL) ? this.getTableLikeFields(this.config.from) : void 0;
27068
+ on = on(
27069
+ new Proxy(
27070
+ this.config.table[Table2.Symbol.Columns],
27071
+ new SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
27072
+ ),
27073
+ from && new Proxy(
27074
+ from,
27075
+ new SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
27076
+ )
27077
+ );
27078
+ }
27079
+ this.config.joins.push({ on, table: table4, joinType, alias: tableName });
27080
+ if (typeof tableName === "string") {
27081
+ switch (joinType) {
27082
+ case "left": {
27083
+ this.joinsNotNullableMap[tableName] = false;
27084
+ break;
27085
+ }
27086
+ case "right": {
27087
+ this.joinsNotNullableMap = Object.fromEntries(
27088
+ Object.entries(this.joinsNotNullableMap).map(([key]) => [key, false])
27089
+ );
27090
+ this.joinsNotNullableMap[tableName] = true;
27091
+ break;
27092
+ }
27093
+ case "inner": {
27094
+ this.joinsNotNullableMap[tableName] = true;
27095
+ break;
27096
+ }
27097
+ case "full": {
27098
+ this.joinsNotNullableMap = Object.fromEntries(
27099
+ Object.entries(this.joinsNotNullableMap).map(([key]) => [key, false])
27100
+ );
27101
+ this.joinsNotNullableMap[tableName] = false;
27102
+ break;
27103
+ }
27104
+ }
27105
+ }
27106
+ return this;
27107
+ };
27018
27108
  }
27019
27109
  /**
27020
27110
  * Adds a 'where' clause to the query.
@@ -27053,7 +27143,24 @@ var init_update = __esm({
27053
27143
  this.config.where = where;
27054
27144
  return this;
27055
27145
  }
27056
- returning(fields = this.config.table[Table2.Symbol.Columns]) {
27146
+ returning(fields) {
27147
+ if (!fields) {
27148
+ fields = Object.assign({}, this.config.table[Table2.Symbol.Columns]);
27149
+ if (this.config.from) {
27150
+ const tableName = getTableLikeName(this.config.from);
27151
+ if (typeof tableName === "string" && this.config.from && !is(this.config.from, SQL)) {
27152
+ const fromFields = this.getTableLikeFields(this.config.from);
27153
+ fields[tableName] = fromFields;
27154
+ }
27155
+ for (const join of this.config.joins) {
27156
+ const tableName2 = getTableLikeName(join.table);
27157
+ if (typeof tableName2 === "string" && !is(join.table, SQL)) {
27158
+ const fromFields = this.getTableLikeFields(join.table);
27159
+ fields[tableName2] = fromFields;
27160
+ }
27161
+ }
27162
+ }
27163
+ }
27057
27164
  this.config.returning = orderSelectedFields(fields);
27058
27165
  return this;
27059
27166
  }
@@ -27067,7 +27174,9 @@ var init_update = __esm({
27067
27174
  }
27068
27175
  /** @internal */
27069
27176
  _prepare(name2) {
27070
- return this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name2, true);
27177
+ const query = this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name2, true);
27178
+ query.joinsNotNullableMap = this.joinsNotNullableMap;
27179
+ return query;
27071
27180
  }
27072
27181
  prepare(name2) {
27073
27182
  return this._prepare(name2);
@@ -31082,14 +31191,16 @@ var init_dialect2 = __esm({
31082
31191
  return [res];
31083
31192
  }));
31084
31193
  }
31085
- buildUpdateQuery({ table: table4, set, where, returning, withList, limit, orderBy }) {
31194
+ buildUpdateQuery({ table: table4, set, where, returning, withList, joins, from, limit, orderBy }) {
31086
31195
  const withSql = this.buildWithCTE(withList);
31087
31196
  const setSql = this.buildUpdateSet(table4, set);
31197
+ const fromSql = from && sql.join([sql.raw(" from "), this.buildFromTable(from)]);
31198
+ const joinsSql = this.buildJoins(joins);
31088
31199
  const returningSql = returning ? sql` returning ${this.buildSelection(returning, { isSingleTable: true })}` : void 0;
31089
31200
  const whereSql = where ? sql` where ${where}` : void 0;
31090
31201
  const orderBySql = this.buildOrderBy(orderBy);
31091
31202
  const limitSql = this.buildLimit(limit);
31092
- return sql`${withSql}update ${table4} set ${setSql}${whereSql}${returningSql}${orderBySql}${limitSql}`;
31203
+ return sql`${withSql}update ${table4} set ${setSql}${fromSql}${joinsSql}${whereSql}${returningSql}${orderBySql}${limitSql}`;
31093
31204
  }
31094
31205
  /**
31095
31206
  * Builds selection SQL with provided fields/expressions
@@ -31142,6 +31253,37 @@ var init_dialect2 = __esm({
31142
31253
  });
31143
31254
  return sql.join(chunks);
31144
31255
  }
31256
+ buildJoins(joins) {
31257
+ if (!joins || joins.length === 0) {
31258
+ return void 0;
31259
+ }
31260
+ const joinsArray = [];
31261
+ if (joins) {
31262
+ for (const [index4, joinMeta] of joins.entries()) {
31263
+ if (index4 === 0) {
31264
+ joinsArray.push(sql` `);
31265
+ }
31266
+ const table4 = joinMeta.table;
31267
+ if (is(table4, SQLiteTable)) {
31268
+ const tableName = table4[SQLiteTable.Symbol.Name];
31269
+ const tableSchema = table4[SQLiteTable.Symbol.Schema];
31270
+ const origTableName = table4[SQLiteTable.Symbol.OriginalName];
31271
+ const alias = tableName === origTableName ? void 0 : joinMeta.alias;
31272
+ joinsArray.push(
31273
+ sql`${sql.raw(joinMeta.joinType)} join ${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
31274
+ );
31275
+ } else {
31276
+ joinsArray.push(
31277
+ sql`${sql.raw(joinMeta.joinType)} join ${table4} on ${joinMeta.on}`
31278
+ );
31279
+ }
31280
+ if (index4 < joins.length - 1) {
31281
+ joinsArray.push(sql` `);
31282
+ }
31283
+ }
31284
+ }
31285
+ return sql.join(joinsArray);
31286
+ }
31145
31287
  buildLimit(limit) {
31146
31288
  return typeof limit === "object" || typeof limit === "number" && limit >= 0 ? sql` limit ${limit}` : void 0;
31147
31289
  }
@@ -31157,6 +31299,12 @@ var init_dialect2 = __esm({
31157
31299
  }
31158
31300
  return orderByList.length > 0 ? sql` order by ${sql.join(orderByList)}` : void 0;
31159
31301
  }
31302
+ buildFromTable(table4) {
31303
+ if (is(table4, Table2) && table4[Table2.Symbol.OriginalName] !== table4[Table2.Symbol.Name]) {
31304
+ return sql`${sql.identifier(table4[Table2.Symbol.OriginalName])} ${sql.identifier(table4[Table2.Symbol.Name])}`;
31305
+ }
31306
+ return table4;
31307
+ }
31160
31308
  buildSelectQuery({
31161
31309
  withList,
31162
31310
  fields,
@@ -31187,38 +31335,8 @@ var init_dialect2 = __esm({
31187
31335
  const withSql = this.buildWithCTE(withList);
31188
31336
  const distinctSql = distinct ? sql` distinct` : void 0;
31189
31337
  const selection = this.buildSelection(fieldsList, { isSingleTable });
31190
- const tableSql = (() => {
31191
- if (is(table4, Table2) && table4[Table2.Symbol.OriginalName] !== table4[Table2.Symbol.Name]) {
31192
- return sql`${sql.identifier(table4[Table2.Symbol.OriginalName])} ${sql.identifier(table4[Table2.Symbol.Name])}`;
31193
- }
31194
- return table4;
31195
- })();
31196
- const joinsArray = [];
31197
- if (joins) {
31198
- for (const [index4, joinMeta] of joins.entries()) {
31199
- if (index4 === 0) {
31200
- joinsArray.push(sql` `);
31201
- }
31202
- const table22 = joinMeta.table;
31203
- if (is(table22, SQLiteTable)) {
31204
- const tableName = table22[SQLiteTable.Symbol.Name];
31205
- const tableSchema = table22[SQLiteTable.Symbol.Schema];
31206
- const origTableName = table22[SQLiteTable.Symbol.OriginalName];
31207
- const alias = tableName === origTableName ? void 0 : joinMeta.alias;
31208
- joinsArray.push(
31209
- sql`${sql.raw(joinMeta.joinType)} join ${tableSchema ? sql`${sql.identifier(tableSchema)}.` : void 0}${sql.identifier(origTableName)}${alias && sql` ${sql.identifier(alias)}`} on ${joinMeta.on}`
31210
- );
31211
- } else {
31212
- joinsArray.push(
31213
- sql`${sql.raw(joinMeta.joinType)} join ${table22} on ${joinMeta.on}`
31214
- );
31215
- }
31216
- if (index4 < joins.length - 1) {
31217
- joinsArray.push(sql` `);
31218
- }
31219
- }
31220
- }
31221
- const joinsSql = sql.join(joinsArray);
31338
+ const tableSql = this.buildFromTable(table4);
31339
+ const joinsSql = this.buildJoins(joins);
31222
31340
  const whereSql = where ? sql` where ${where}` : void 0;
31223
31341
  const havingSql = having ? sql` having ${having}` : void 0;
31224
31342
  const groupByList = [];
@@ -32345,8 +32463,11 @@ var init_update2 = __esm({
32345
32463
  init_query_promise();
32346
32464
  init_selection_proxy();
32347
32465
  init_table3();
32466
+ init_subquery();
32348
32467
  init_table();
32349
32468
  init_utils2();
32469
+ init_view_common();
32470
+ init_view_base2();
32350
32471
  _a207 = entityKind;
32351
32472
  SQLiteUpdateBuilder = class {
32352
32473
  constructor(table4, session, dialect4, withList) {
@@ -32371,6 +32492,10 @@ var init_update2 = __esm({
32371
32492
  super();
32372
32493
  /** @internal */
32373
32494
  __publicField(this, "config");
32495
+ __publicField(this, "leftJoin", this.createJoin("left"));
32496
+ __publicField(this, "rightJoin", this.createJoin("right"));
32497
+ __publicField(this, "innerJoin", this.createJoin("inner"));
32498
+ __publicField(this, "fullJoin", this.createJoin("full"));
32374
32499
  __publicField(this, "run", (placeholderValues) => {
32375
32500
  return this._prepare().run(placeholderValues);
32376
32501
  });
@@ -32385,7 +32510,34 @@ var init_update2 = __esm({
32385
32510
  });
32386
32511
  this.session = session;
32387
32512
  this.dialect = dialect4;
32388
- this.config = { set, table: table4, withList };
32513
+ this.config = { set, table: table4, withList, joins: [] };
32514
+ }
32515
+ from(source) {
32516
+ this.config.from = source;
32517
+ return this;
32518
+ }
32519
+ createJoin(joinType) {
32520
+ return (table4, on) => {
32521
+ const tableName = getTableLikeName(table4);
32522
+ if (typeof tableName === "string" && this.config.joins.some((join) => join.alias === tableName)) {
32523
+ throw new Error(`Alias "${tableName}" is already used in this query`);
32524
+ }
32525
+ if (typeof on === "function") {
32526
+ const from = this.config.from ? is(table4, SQLiteTable) ? table4[Table2.Symbol.Columns] : is(table4, Subquery) ? table4._.selectedFields : is(table4, SQLiteViewBase) ? table4[ViewBaseConfig].selectedFields : void 0 : void 0;
32527
+ on = on(
32528
+ new Proxy(
32529
+ this.config.table[Table2.Symbol.Columns],
32530
+ new SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
32531
+ ),
32532
+ from && new Proxy(
32533
+ from,
32534
+ new SelectionProxyHandler({ sqlAliasedBehavior: "sql", sqlBehavior: "sql" })
32535
+ )
32536
+ );
32537
+ }
32538
+ this.config.joins.push({ on, table: table4, joinType, alias: tableName });
32539
+ return this;
32540
+ };
32389
32541
  }
32390
32542
  /**
32391
32543
  * Adds a 'where' clause to the query.
package/bin.cjs CHANGED
@@ -89049,7 +89049,7 @@ init_utils2();
89049
89049
  var version2 = async () => {
89050
89050
  const { npmVersion } = await ormCoreVersions();
89051
89051
  const ormVersion = npmVersion ? `drizzle-orm: v${npmVersion}` : "";
89052
- const envVersion = "0.28.0-cc4f208";
89052
+ const envVersion = "0.28.1-d7e3535";
89053
89053
  const kitVersion = envVersion ? `v${envVersion}` : "--";
89054
89054
  const versions = `drizzle-kit: ${kitVersion}
89055
89055
  ${ormVersion}`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drizzle-kit",
3
- "version": "0.28.0-cc4f208",
3
+ "version": "0.28.1-d7e3535",
4
4
  "homepage": "https://orm.drizzle.team",
5
5
  "keywords": [
6
6
  "drizzle",