drizzle-kit 0.17.0-16763e2 → 0.17.0-5e8cf70

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/index.js +1589 -431
  2. package/package.json +4 -2
  3. package/readme.md +2 -2
  4. package/utils.js +152 -79
package/index.js CHANGED
@@ -5,6 +5,7 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __getProtoOf = Object.getPrototypeOf;
7
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
9
  var __esm = (fn, res) => function __init() {
9
10
  return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
10
11
  };
@@ -28,6 +29,10 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
28
29
  mod
29
30
  ));
30
31
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
32
+ var __publicField = (obj, key, value) => {
33
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
34
+ return value;
35
+ };
31
36
 
32
37
  // node_modules/.pnpm/commander@9.5.0/node_modules/commander/lib/error.js
33
38
  var require_error = __commonJS({
@@ -613,7 +618,7 @@ var require_command = __commonJS({
613
618
  "node_modules/.pnpm/commander@9.5.0/node_modules/commander/lib/command.js"(exports) {
614
619
  var EventEmitter = require("events").EventEmitter;
615
620
  var childProcess = require("child_process");
616
- var path2 = require("path");
621
+ var path3 = require("path");
617
622
  var fs7 = require("fs");
618
623
  var process3 = require("process");
619
624
  var { Argument: Argument2, humanReadableArgName } = require_argument();
@@ -1053,12 +1058,12 @@ Expecting one of '${allowedValues.join("', '")}'`);
1053
1058
  let launchWithNode = false;
1054
1059
  const sourceExt = [".js", ".ts", ".tsx", ".mjs", ".cjs"];
1055
1060
  function findFile(baseDir, baseName) {
1056
- const localBin = path2.resolve(baseDir, baseName);
1061
+ const localBin = path3.resolve(baseDir, baseName);
1057
1062
  if (fs7.existsSync(localBin))
1058
1063
  return localBin;
1059
- if (sourceExt.includes(path2.extname(baseName)))
1064
+ if (sourceExt.includes(path3.extname(baseName)))
1060
1065
  return void 0;
1061
- const foundExt = sourceExt.find((ext) => fs7.existsSync(`${localBin}${ext}`));
1066
+ const foundExt = sourceExt.find((ext2) => fs7.existsSync(`${localBin}${ext2}`));
1062
1067
  if (foundExt)
1063
1068
  return `${localBin}${foundExt}`;
1064
1069
  return void 0;
@@ -1074,19 +1079,19 @@ Expecting one of '${allowedValues.join("', '")}'`);
1074
1079
  } catch (err2) {
1075
1080
  resolvedScriptPath = this._scriptPath;
1076
1081
  }
1077
- executableDir = path2.resolve(path2.dirname(resolvedScriptPath), executableDir);
1082
+ executableDir = path3.resolve(path3.dirname(resolvedScriptPath), executableDir);
1078
1083
  }
1079
1084
  if (executableDir) {
1080
1085
  let localFile = findFile(executableDir, executableFile);
1081
1086
  if (!localFile && !subcommand._executableFile && this._scriptPath) {
1082
- const legacyName = path2.basename(this._scriptPath, path2.extname(this._scriptPath));
1087
+ const legacyName = path3.basename(this._scriptPath, path3.extname(this._scriptPath));
1083
1088
  if (legacyName !== this._name) {
1084
1089
  localFile = findFile(executableDir, `${legacyName}-${subcommand._name}`);
1085
1090
  }
1086
1091
  }
1087
1092
  executableFile = localFile || executableFile;
1088
1093
  }
1089
- launchWithNode = sourceExt.includes(path2.extname(executableFile));
1094
+ launchWithNode = sourceExt.includes(path3.extname(executableFile));
1090
1095
  let proc;
1091
1096
  if (process3.platform !== "win32") {
1092
1097
  if (launchWithNode) {
@@ -1658,13 +1663,13 @@ Expecting one of '${allowedValues.join("', '")}'`);
1658
1663
  return this;
1659
1664
  }
1660
1665
  nameFromFilename(filename) {
1661
- this._name = path2.basename(filename, path2.extname(filename));
1666
+ this._name = path3.basename(filename, path3.extname(filename));
1662
1667
  return this;
1663
1668
  }
1664
- executableDir(path3) {
1665
- if (path3 === void 0)
1669
+ executableDir(path4) {
1670
+ if (path4 === void 0)
1666
1671
  return this._executableDir;
1667
- this._executableDir = path3;
1672
+ this._executableDir = path4;
1668
1673
  return this;
1669
1674
  }
1670
1675
  helpInformation(contextOptions) {
@@ -1765,20 +1770,20 @@ Expecting one of '${allowedValues.join("', '")}'`);
1765
1770
  let debugOption;
1766
1771
  let debugHost = "127.0.0.1";
1767
1772
  let debugPort = "9229";
1768
- let match;
1769
- if ((match = arg.match(/^(--inspect(-brk)?)$/)) !== null) {
1770
- debugOption = match[1];
1771
- } else if ((match = arg.match(/^(--inspect(-brk|-port)?)=([^:]+)$/)) !== null) {
1772
- debugOption = match[1];
1773
- if (/^\d+$/.test(match[3])) {
1774
- debugPort = match[3];
1773
+ let match2;
1774
+ if ((match2 = arg.match(/^(--inspect(-brk)?)$/)) !== null) {
1775
+ debugOption = match2[1];
1776
+ } else if ((match2 = arg.match(/^(--inspect(-brk|-port)?)=([^:]+)$/)) !== null) {
1777
+ debugOption = match2[1];
1778
+ if (/^\d+$/.test(match2[3])) {
1779
+ debugPort = match2[3];
1775
1780
  } else {
1776
- debugHost = match[3];
1781
+ debugHost = match2[3];
1777
1782
  }
1778
- } else if ((match = arg.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/)) !== null) {
1779
- debugOption = match[1];
1780
- debugHost = match[3];
1781
- debugPort = match[4];
1783
+ } else if ((match2 = arg.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/)) !== null) {
1784
+ debugOption = match2[1];
1785
+ debugHost = match2[3];
1786
+ debugPort = match2[4];
1782
1787
  }
1783
1788
  if (debugOption && debugPort !== "0") {
1784
1789
  return `${debugOption}=${debugHost}:${parseInt(debugPort) + 1}`;
@@ -2252,8 +2257,8 @@ var init_lib = __esm({
2252
2257
  };
2253
2258
  overrideErrorMap = errorMap;
2254
2259
  makeIssue = (params) => {
2255
- const { data, path: path2, errorMaps, issueData } = params;
2256
- const fullPath = [...path2, ...issueData.path || []];
2260
+ const { data, path: path3, errorMaps, issueData } = params;
2261
+ const fullPath = [...path3, ...issueData.path || []];
2257
2262
  const fullIssue = {
2258
2263
  ...issueData,
2259
2264
  path: fullPath
@@ -2335,10 +2340,10 @@ var init_lib = __esm({
2335
2340
  errorUtil2.toString = (message) => typeof message === "string" ? message : message === null || message === void 0 ? void 0 : message.message;
2336
2341
  })(errorUtil || (errorUtil = {}));
2337
2342
  ParseInputLazyPath = class {
2338
- constructor(parent, value, path2, key) {
2343
+ constructor(parent, value, path3, key) {
2339
2344
  this.parent = parent;
2340
2345
  this.data = value;
2341
- this._path = path2;
2346
+ this._path = path3;
2342
2347
  this._key = key;
2343
2348
  }
2344
2349
  get path() {
@@ -7623,12 +7628,12 @@ var require_difflib = __commonJS({
7623
7628
  return groups;
7624
7629
  };
7625
7630
  SequenceMatcher2.prototype.ratio = function() {
7626
- var match, matches, _i, _len, _ref;
7631
+ var match2, matches, _i, _len, _ref;
7627
7632
  matches = 0;
7628
7633
  _ref = this.getMatchingBlocks();
7629
7634
  for (_i = 0, _len = _ref.length; _i < _len; _i++) {
7630
- match = _ref[_i];
7631
- matches += match[2];
7635
+ match2 = _ref[_i];
7636
+ matches += match2[2];
7632
7637
  }
7633
7638
  return _calculateRatio(matches, this.a.length + this.b.length);
7634
7639
  };
@@ -8831,15 +8836,15 @@ var require_custom = __commonJS({
8831
8836
  var isValue = require_is_value();
8832
8837
  var captureStackTrace = Error.captureStackTrace;
8833
8838
  module2.exports = function(message) {
8834
- var err2 = new Error(message), code = arguments[1], ext = arguments[2];
8835
- if (!isValue(ext)) {
8839
+ var err2 = new Error(message), code = arguments[1], ext2 = arguments[2];
8840
+ if (!isValue(ext2)) {
8836
8841
  if (isObject(code)) {
8837
- ext = code;
8842
+ ext2 = code;
8838
8843
  code = null;
8839
8844
  }
8840
8845
  }
8841
- if (isValue(ext))
8842
- assign(err2, ext);
8846
+ if (isValue(ext2))
8847
+ assign(err2, ext2);
8843
8848
  if (isValue(code))
8844
8849
  err2.code = code;
8845
8850
  if (captureStackTrace)
@@ -10016,7 +10021,7 @@ var require_get = __commonJS({
10016
10021
  return lastId;
10017
10022
  },
10018
10023
  delete: function(id) {
10019
- var index4 = 0, set = map, i, args = cache[id], length = args.length, path2 = [];
10024
+ var index4 = 0, set = map, i, args = cache[id], length = args.length, path3 = [];
10020
10025
  if (length === 0) {
10021
10026
  delete set[length];
10022
10027
  } else if (set = set[length]) {
@@ -10025,7 +10030,7 @@ var require_get = __commonJS({
10025
10030
  if (i === -1) {
10026
10031
  return;
10027
10032
  }
10028
- path2.push(set, i);
10033
+ path3.push(set, i);
10029
10034
  set = set[1][i];
10030
10035
  ++index4;
10031
10036
  }
@@ -10036,9 +10041,9 @@ var require_get = __commonJS({
10036
10041
  id = set[1][i];
10037
10042
  set[0].splice(i, 1);
10038
10043
  set[1].splice(i, 1);
10039
- while (!set[0].length && path2.length) {
10040
- i = path2.pop();
10041
- set = path2.pop();
10044
+ while (!set[0].length && path3.length) {
10045
+ i = path3.pop();
10046
+ set = path3.pop();
10042
10047
  set[0].splice(i, 1);
10043
10048
  set[1].splice(i, 1);
10044
10049
  }
@@ -10130,13 +10135,13 @@ var require_get_fixed = __commonJS({
10130
10135
  return lastId;
10131
10136
  },
10132
10137
  delete: function(id) {
10133
- var index4 = 0, set = map, i, path2 = [], args = cache[id];
10138
+ var index4 = 0, set = map, i, path3 = [], args = cache[id];
10134
10139
  while (index4 < length - 1) {
10135
10140
  i = indexOf.call(set[0], args[index4]);
10136
10141
  if (i === -1) {
10137
10142
  return;
10138
10143
  }
10139
- path2.push(set, i);
10144
+ path3.push(set, i);
10140
10145
  set = set[1][i];
10141
10146
  ++index4;
10142
10147
  }
@@ -10147,9 +10152,9 @@ var require_get_fixed = __commonJS({
10147
10152
  id = set[1][i];
10148
10153
  set[0].splice(i, 1);
10149
10154
  set[1].splice(i, 1);
10150
- while (!set[0].length && path2.length) {
10151
- i = path2.pop();
10152
- set = path2.pop();
10155
+ while (!set[0].length && path3.length) {
10156
+ i = path3.pop();
10157
+ set = path3.pop();
10153
10158
  set[0].splice(i, 1);
10154
10159
  set[1].splice(i, 1);
10155
10160
  }
@@ -11264,13 +11269,13 @@ var require_uniq = __commonJS({
11264
11269
  "node_modules/.pnpm/es5-ext@0.10.62/node_modules/es5-ext/array/#/uniq.js"(exports, module2) {
11265
11270
  "use strict";
11266
11271
  var indexOf = require_e_index_of();
11267
- var filter = Array.prototype.filter;
11272
+ var filter2 = Array.prototype.filter;
11268
11273
  var isFirst;
11269
11274
  isFirst = function(value, index4) {
11270
11275
  return indexOf.call(this, value) === index4;
11271
11276
  };
11272
11277
  module2.exports = function() {
11273
- return filter.call(this, isFirst, this);
11278
+ return filter2.call(this, isFirst, this);
11274
11279
  };
11275
11280
  }
11276
11281
  });
@@ -11654,7 +11659,7 @@ var require_xterm_match = __commonJS({
11654
11659
  var reduce = Array.prototype.reduce;
11655
11660
  var abs = Math.abs;
11656
11661
  var colors;
11657
- var match;
11662
+ var match2;
11658
11663
  var result;
11659
11664
  var i;
11660
11665
  colors = require_xterm_colors().map(function(color) {
@@ -11664,7 +11669,7 @@ var require_xterm_match = __commonJS({
11664
11669
  b: parseInt(color.slice(4), 16)
11665
11670
  };
11666
11671
  });
11667
- match = colors.slice(0, 16);
11672
+ match2 = colors.slice(0, 16);
11668
11673
  module2.exports = result = [];
11669
11674
  i = 0;
11670
11675
  while (i < 8) {
@@ -11678,7 +11683,7 @@ var require_xterm_match = __commonJS({
11678
11683
  result,
11679
11684
  colors.slice(16).map(function(data) {
11680
11685
  var index4, diff2 = Infinity;
11681
- match.every(function(innerMatch, currentIndex) {
11686
+ match2.every(function(innerMatch, currentIndex) {
11682
11687
  var ndiff = reduce.call(
11683
11688
  "rgb",
11684
11689
  function(currentDiff, channel) {
@@ -12140,18 +12145,18 @@ var require_slice = __commonJS({
12140
12145
  this.token = token;
12141
12146
  };
12142
12147
  var tokenize = function(str) {
12143
- var match = reAnsi().exec(str);
12144
- if (!match) {
12148
+ var match2 = reAnsi().exec(str);
12149
+ if (!match2) {
12145
12150
  return [str];
12146
12151
  }
12147
- var index4 = match.index, head, prehead, tail;
12152
+ var index4 = match2.index, head, prehead, tail;
12148
12153
  if (index4 === 0) {
12149
- head = match[0];
12154
+ head = match2[0];
12150
12155
  tail = str.slice(head.length);
12151
12156
  return [new Token(head)].concat(tokenize(tail));
12152
12157
  }
12153
12158
  prehead = str.slice(0, index4);
12154
- head = match[0];
12159
+ head = match2[0];
12155
12160
  tail = str.slice(index4 + head.length);
12156
12161
  return [prehead, new Token(head)].concat(tokenize(tail));
12157
12162
  };
@@ -12998,8 +13003,8 @@ var require_lib = __commonJS({
12998
13003
  keyScores[bestMatch.key] = { score: bestMatch.score, index: index4 };
12999
13004
  }
13000
13005
  }
13001
- for (const [key, match] of Object.entries(keyScores)) {
13002
- fuzzyMatches[match.index] = key;
13006
+ for (const [key, match2] of Object.entries(keyScores)) {
13007
+ fuzzyMatches[match2.index] = key;
13003
13008
  }
13004
13009
  }
13005
13010
  const result = [];
@@ -13369,6 +13374,19 @@ var init_jsonDiffer = __esm({
13369
13374
  return { ...others, notNull: { type: "deleted", value: it.notNull__deleted } };
13370
13375
  }
13371
13376
  return it;
13377
+ }).map((it) => {
13378
+ if ("primaryKey" in it) {
13379
+ return { ...it, primaryKey: { type: "changed", old: it.primaryKey.__old, new: it.primaryKey.__new } };
13380
+ }
13381
+ if ("primaryKey__added" in it) {
13382
+ const { notNull__added, ...others } = it;
13383
+ return { ...others, primaryKey: { type: "added", value: it.primaryKey__added } };
13384
+ }
13385
+ if ("primaryKey__deleted" in it) {
13386
+ const { notNull__deleted, ...others } = it;
13387
+ return { ...others, primaryKey: { type: "deleted", value: it.primaryKey__deleted } };
13388
+ }
13389
+ return it;
13372
13390
  }).map((it) => {
13373
13391
  if ("onUpdate" in it) {
13374
13392
  return { ...it, onUpdate: { type: "changed", old: it.onUpdate.__old, new: it.onUpdate.__new } };
@@ -13402,7 +13420,7 @@ var init_jsonDiffer = __esm({
13402
13420
  });
13403
13421
 
13404
13422
  // src/sqlgenerator.ts
13405
- var pgNativeTypes, isPgNativeType, Convertor, PgCreateTableConvertor, MySqlCreateTableConvertor, SQLiteCreateTableConvertor, CreateTypeEnumConvertor, AlterTypeAddValueConvertor, DropTableConvertor, PgRenameTableConvertor, SqliteRenameTableConvertor, MySqlRenameTableConvertor, PgAlterTableRenameColumnConvertor, MySqlAlterTableRenameColumnConvertor, SQLiteAlterTableRenameColumnConvertor, PgAlterTableDropColumnConvertor, MySqlAlterTableDropColumnConvertor, SQLiteAlterTableDropColumnConvertor, PgAlterTableAddColumnConvertor, MySqlAlterTableAddColumnConvertor, SQLiteAlterTableAddColumnConvertor, PgAlterTableAlterColumnSetTypeConvertor, SQLiteAlterTableAlterColumnSetTypeConvertor, PgAlterTableAlterColumnSetDefaultConvertor, SqliteAlterTableAlterColumnSetDefaultConvertor, PgAlterTableAlterColumnDropDefaultConvertor, MySqlModifyColumn, SqliteAlterTableAlterColumnDropDefaultConvertor, PgAlterTableCreateCompositePrimaryKeyConvertor, PgAlterTableDeleteCompositePrimaryKeyConvertor, PgAlterTableAlterCompositePrimaryKeyConvertor, MySqlAlterTableCreateCompositePrimaryKeyConvertor, MySqlAlterTableDeleteCompositePrimaryKeyConvertor, MySqlAlterTableAlterCompositePrimaryKeyConvertor, SqliteAlterTableCreateCompositePrimaryKeyConvertor, SqliteAlterTableDeleteCompositePrimaryKeyConvertor, SqliteAlterTableAlterCompositePrimaryKeyConvertor, PgAlterTableAlterColumnSetNotNullConvertor, SqliteAlterTableAlterColumnSetNotNullConvertor, PgAlterTableAlterColumnDropNotNullConvertor, SqliteAlterTableAlterColumnDropNotNullConvertor, PgCreateForeignKeyConvertor, SqliteCreateForeignKeyConvertor, MySqlCreateForeignKeyConvertor, PgAlterForeignKeyConvertor, SqliteAlterForeignKeyConvertor, PgDeleteForeignKeyConvertor, SqliteDeleteForeignKeyConvertor, MySqlDeleteForeignKeyConvertor, CreatePgIndexConvertor, CreateMySqlIndexConvertor, CreateSqliteIndexConvertor, PgDropIndexConvertor, PgCreateSchemaConvertor, PgRenameSchemaConvertor, PgDropSchemaConvertor, PgAlterTableSetSchemaConvertor, PgAlterTableSetNewSchemaConvertor, PgAlterTableRemoveFromSchemaConvertor, SqliteDropIndexConvertor, MysqlCreateSchemaConvertor, MysqlDropSchemaConvertor, MysqlAlterTableSetSchemaConvertor, MysqlAlterTableSetNewSchemaConvertor, MysqlAlterTableRemoveFromSchemaConvertor, MySqlDropIndexConvertor, convertors, fromJson;
13423
+ var pgNativeTypes, isPgNativeType, Convertor, PgCreateTableConvertor, MySqlCreateTableConvertor, SQLiteCreateTableConvertor, CreateTypeEnumConvertor, AlterTypeAddValueConvertor, DropTableConvertor, PgRenameTableConvertor, SqliteRenameTableConvertor, MySqlRenameTableConvertor, PgAlterTableRenameColumnConvertor, MySqlAlterTableRenameColumnConvertor, SQLiteAlterTableRenameColumnConvertor, PgAlterTableDropColumnConvertor, MySqlAlterTableDropColumnConvertor, SQLiteAlterTableDropColumnConvertor, PgAlterTableAddColumnConvertor, MySqlAlterTableAddColumnConvertor, SQLiteAlterTableAddColumnConvertor, PgAlterTableAlterColumnSetTypeConvertor, SQLiteAlterTableAlterColumnSetTypeConvertor, PgAlterTableAlterColumnSetDefaultConvertor, SqliteAlterTableAlterColumnSetDefaultConvertor, PgAlterTableAlterColumnDropDefaultConvertor, MySqlAlterTableAddPk, MySqlAlterTableDropPk, MySqlModifyColumn, SqliteAlterTableAlterColumnDropDefaultConvertor, PgAlterTableCreateCompositePrimaryKeyConvertor, PgAlterTableDeleteCompositePrimaryKeyConvertor, PgAlterTableAlterCompositePrimaryKeyConvertor, MySqlAlterTableCreateCompositePrimaryKeyConvertor, MySqlAlterTableDeleteCompositePrimaryKeyConvertor, MySqlAlterTableAlterCompositePrimaryKeyConvertor, SqliteAlterTableCreateCompositePrimaryKeyConvertor, SqliteAlterTableDeleteCompositePrimaryKeyConvertor, SqliteAlterTableAlterCompositePrimaryKeyConvertor, PgAlterTableAlterColumnSetNotNullConvertor, SqliteAlterTableAlterColumnSetNotNullConvertor, PgAlterTableAlterColumnDropNotNullConvertor, SqliteAlterTableAlterColumnDropNotNullConvertor, PgCreateForeignKeyConvertor, SqliteCreateForeignKeyConvertor, MySqlCreateForeignKeyConvertor, PgAlterForeignKeyConvertor, SqliteAlterForeignKeyConvertor, PgDeleteForeignKeyConvertor, SqliteDeleteForeignKeyConvertor, MySqlDeleteForeignKeyConvertor, CreatePgIndexConvertor, CreateMySqlIndexConvertor, CreateSqliteIndexConvertor, PgDropIndexConvertor, PgCreateSchemaConvertor, PgRenameSchemaConvertor, PgDropSchemaConvertor, PgAlterTableSetSchemaConvertor, PgAlterTableSetNewSchemaConvertor, PgAlterTableRemoveFromSchemaConvertor, SqliteDropIndexConvertor, MysqlCreateSchemaConvertor, MysqlDropSchemaConvertor, MysqlAlterTableSetSchemaConvertor, MysqlAlterTableSetNewSchemaConvertor, MysqlAlterTableRemoveFromSchemaConvertor, MySqlDropIndexConvertor, convertors, fromJson;
13406
13424
  var init_sqlgenerator = __esm({
13407
13425
  "src/sqlgenerator.ts"() {
13408
13426
  init_mysqlSchema();
@@ -13500,25 +13518,24 @@ var init_sqlgenerator = __esm({
13500
13518
  `;
13501
13519
  for (let i = 0; i < columns.length; i++) {
13502
13520
  const column6 = columns[i];
13503
- const primaryKeyStatement = column6.primaryKey ? "PRIMARY KEY" : "";
13504
- const notNullStatement = column6.notNull ? "NOT NULL" : "";
13505
- const defaultStatement = column6.default !== void 0 ? `DEFAULT ${column6.default}` : "";
13506
- const onUpdateStatement = column6.onUpdate ? `ON UPDATE CURRENT_TIMESTAMP` : "";
13507
- const autoincrementStatement = column6.autoincrement ? "AUTO_INCREMENT" : "";
13508
- statement += " " + `\`${column6.name}\` ${column6.type} ${autoincrementStatement} ${primaryKeyStatement} ${notNullStatement} ${defaultStatement} ${onUpdateStatement}`.replace(/ +/g, " ").trim();
13509
- statement += (i === columns.length - 1 ? "" : ",") + "\n";
13521
+ const primaryKeyStatement = column6.primaryKey ? " PRIMARY KEY" : "";
13522
+ const notNullStatement = column6.notNull ? " NOT NULL" : "";
13523
+ const defaultStatement = column6.default !== void 0 ? ` DEFAULT ${column6.default}` : "";
13524
+ const onUpdateStatement = column6.onUpdate ? ` ON UPDATE CURRENT_TIMESTAMP` : "";
13525
+ const autoincrementStatement = column6.autoincrement ? " AUTO_INCREMENT" : "";
13526
+ statement += " " + `\`${column6.name}\` ${column6.type}${autoincrementStatement}${primaryKeyStatement}${notNullStatement}${defaultStatement}${onUpdateStatement}`.trim();
13527
+ statement += i === columns.length - 1 ? "" : ",\n";
13510
13528
  }
13511
- statement += `);`;
13512
- statement += `
13513
- `;
13514
13529
  if (typeof compositePKs !== "undefined" && compositePKs.length > 0) {
13530
+ statement += ",\n";
13515
13531
  const compositePK4 = MySqlSquasher.unsquashPK(compositePKs[0]);
13516
- statement += `ALTER TABLE ${tName} ADD PRIMARY KEY(\`${compositePK4.columns.join(
13517
- "`,`"
13518
- )}\`);`;
13532
+ statement += ` PRIMARY KEY(\`${compositePK4.columns.join("`,`")}\`)`;
13519
13533
  statement += `
13520
13534
  `;
13521
13535
  }
13536
+ statement += `);`;
13537
+ statement += `
13538
+ `;
13522
13539
  return statement;
13523
13540
  }
13524
13541
  };
@@ -13717,12 +13734,13 @@ var init_sqlgenerator = __esm({
13717
13734
  }
13718
13735
  convert(statement) {
13719
13736
  const { tableName, column: column6 } = statement;
13720
- const { name, type, notNull, primaryKey, autoincrement } = column6;
13721
- const defaultStatement = `${column6.default !== void 0 ? `DEFAULT ${column6.default}` : ""}`;
13722
- const notNullStatement = `${notNull ? "NOT NULL" : ""}`;
13723
- const primaryKeyStatement = `${primaryKey ? "PRIMARY KEY" : ""}`;
13724
- const autoincrementStatement = `${autoincrement ? "AUTO_INCREMENT" : ""}`;
13725
- return `ALTER TABLE ${tableName} ADD \`${name}\` ${type} ${primaryKeyStatement} ${autoincrementStatement} ${defaultStatement} ${notNullStatement}`.replace(/ +/g, " ").trim() + ";";
13737
+ const { name, type, notNull, primaryKey, autoincrement, onUpdate } = column6;
13738
+ const defaultStatement = `${column6.default !== void 0 ? ` DEFAULT ${column6.default}` : ""}`;
13739
+ const notNullStatement = `${notNull ? " NOT NULL" : ""}`;
13740
+ const primaryKeyStatement = `${primaryKey ? " PRIMARY KEY" : ""}`;
13741
+ const autoincrementStatement = `${autoincrement ? " AUTO_INCREMENT" : ""}`;
13742
+ const onUpdateStatement = `${onUpdate ? " ON UPDATE CURRENT_TIMESTAMP" : ""}`;
13743
+ return `ALTER TABLE ${tableName} ADD \`${name}\` ${type}${primaryKeyStatement}${autoincrementStatement}${defaultStatement}${notNullStatement}${onUpdateStatement};`;
13726
13744
  }
13727
13745
  };
13728
13746
  SQLiteAlterTableAddColumnConvertor = class extends Convertor {
@@ -13797,6 +13815,22 @@ var init_sqlgenerator = __esm({
13797
13815
  return `ALTER TABLE ${tableName} ALTER COLUMN "${columnName}" DROP DEFAULT;`;
13798
13816
  }
13799
13817
  };
13818
+ MySqlAlterTableAddPk = class extends Convertor {
13819
+ can(statement, dialect6) {
13820
+ return statement.type === "alter_table_alter_column_set_pk" && dialect6 === "mysql";
13821
+ }
13822
+ convert(statement) {
13823
+ return `ALTER TABLE \`${statement.tableName}\` ADD PRIMARY KEY (\`${statement.columnName}\`);`;
13824
+ }
13825
+ };
13826
+ MySqlAlterTableDropPk = class extends Convertor {
13827
+ can(statement, dialect6) {
13828
+ return statement.type === "alter_table_alter_column_drop_pk" && dialect6 === "mysql";
13829
+ }
13830
+ convert(statement) {
13831
+ return `ALTER TABLE \`${statement.tableName}\` DROP PRIMARY KEY`;
13832
+ }
13833
+ };
13800
13834
  MySqlModifyColumn = class extends Convertor {
13801
13835
  can(statement, dialect6) {
13802
13836
  return (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_on_update" || statement.type === "alter_table_alter_column_set_on_update" || statement.type === "alter_table_alter_column_set_autoincrement" || statement.type === "alter_table_alter_column_drop_autoincrement" || statement.type === "alter_table_alter_column_set_default" || statement.type === "alter_table_alter_column_drop_default") && dialect6 === "mysql";
@@ -13808,6 +13842,7 @@ var init_sqlgenerator = __esm({
13808
13842
  let columnNotNull = "";
13809
13843
  let columnOnUpdate = "";
13810
13844
  let columnAutoincrement = "";
13845
+ let primaryKey = statement.columnPk ? " PRIMARY KEY" : "";
13811
13846
  if (statement.type === "alter_table_alter_column_drop_notnull") {
13812
13847
  columnType = ` ${statement.newDataType}`;
13813
13848
  columnDefault = statement.columnDefault ? ` DEFAULT ${statement.columnDefault}` : "";
@@ -13837,7 +13872,7 @@ var init_sqlgenerator = __esm({
13837
13872
  columnOnUpdate = columnOnUpdate = statement.columnOnUpdate ? ` ON UPDATE CURRENT_TIMESTAMP` : "";
13838
13873
  columnType = ` ${statement.newDataType}`;
13839
13874
  columnDefault = statement.columnDefault ? ` DEFAULT ${statement.columnDefault}` : "";
13840
- columnAutoincrement = "AUTO_INCREMENT";
13875
+ columnAutoincrement = " AUTO_INCREMENT";
13841
13876
  } else if (statement.type === "alter_table_alter_column_drop_autoincrement") {
13842
13877
  columnNotNull = statement.columnNotNull ? ` NOT NULL` : "";
13843
13878
  columnOnUpdate = columnOnUpdate = statement.columnOnUpdate ? ` ON UPDATE CURRENT_TIMESTAMP` : "";
@@ -13861,7 +13896,7 @@ var init_sqlgenerator = __esm({
13861
13896
  columnNotNull = statement.columnNotNull ? ` NOT NULL` : "";
13862
13897
  columnOnUpdate = columnOnUpdate = statement.columnOnUpdate ? ` ON UPDATE CURRENT_TIMESTAMP` : "";
13863
13898
  columnDefault = statement.columnDefault ? ` DEFAULT ${statement.columnDefault}` : "";
13864
- columnAutoincrement = statement.columnAutoIncrement ? "AUTO_INCREMENT" : "";
13899
+ columnAutoincrement = statement.columnAutoIncrement ? " AUTO_INCREMENT" : "";
13865
13900
  }
13866
13901
  columnDefault = columnDefault instanceof Date ? columnDefault.toISOString() : columnDefault;
13867
13902
  return `ALTER TABLE ${tableName} MODIFY COLUMN \`${columnName}\`${columnType}${columnAutoincrement}${columnNotNull}${columnDefault}${columnOnUpdate};`;
@@ -14152,7 +14187,6 @@ ALTER TABLE "${statement.tableName}" ADD CONSTRAINT ${statement.newConstraintNam
14152
14187
  sql += " WHEN duplicate_object THEN null;\n";
14153
14188
  sql += "END $$;\n";
14154
14189
  return sql;
14155
- throw new Error("TODO");
14156
14190
  }
14157
14191
  };
14158
14192
  SqliteAlterForeignKeyConvertor = class extends Convertor {
@@ -14450,8 +14484,10 @@ ALTER TABLE "${statement.tableName}" ADD CONSTRAINT ${statement.newConstraintNam
14450
14484
  convertors.push(new PgAlterTableCreateCompositePrimaryKeyConvertor());
14451
14485
  convertors.push(new PgAlterTableDeleteCompositePrimaryKeyConvertor());
14452
14486
  convertors.push(new PgAlterTableAlterCompositePrimaryKeyConvertor());
14453
- convertors.push(new MySqlAlterTableCreateCompositePrimaryKeyConvertor());
14454
14487
  convertors.push(new MySqlAlterTableDeleteCompositePrimaryKeyConvertor());
14488
+ convertors.push(new MySqlAlterTableDropPk());
14489
+ convertors.push(new MySqlAlterTableCreateCompositePrimaryKeyConvertor());
14490
+ convertors.push(new MySqlAlterTableAddPk());
14455
14491
  convertors.push(new MySqlAlterTableAlterCompositePrimaryKeyConvertor());
14456
14492
  fromJson = (statements, dialect6) => {
14457
14493
  const result = statements.map((statement) => {
@@ -14461,10 +14497,10 @@ ALTER TABLE "${statement.tableName}" ADD CONSTRAINT ${statement.newConstraintNam
14461
14497
  const convertor = filtered.length === 1 ? filtered[0] : void 0;
14462
14498
  if (!convertor) {
14463
14499
  console.log("no convertor:", statement.type, dialect6);
14464
- return "dry run";
14500
+ return "";
14465
14501
  }
14466
14502
  return convertor.convert(statement);
14467
- });
14503
+ }).filter((it) => it !== "");
14468
14504
  return result;
14469
14505
  };
14470
14506
  https:
@@ -14663,7 +14699,7 @@ var init_jsonStatements = __esm({
14663
14699
  });
14664
14700
  };
14665
14701
  _prepareAlterColumns = (tableName, schema4, columns, json2) => {
14666
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
14702
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p;
14667
14703
  let statements = [];
14668
14704
  for (const column6 of columns) {
14669
14705
  const columnName = typeof column6.name !== "string" ? column6.name.new : column6.name;
@@ -14672,110 +14708,134 @@ var init_jsonStatements = __esm({
14672
14708
  const columnOnUpdate = json2.tables[tableName].columns[columnName].onUpdate;
14673
14709
  const columnNotNull = json2.tables[tableName].columns[columnName].notNull;
14674
14710
  const columnAutoIncrement = json2.tables[tableName].columns[columnName].autoincrement;
14675
- if (typeof column6.name !== "string") {
14676
- statements.push({
14677
- type: "alter_table_rename_column",
14678
- tableName,
14679
- oldColumnName: column6.name.old,
14680
- newColumnName: column6.name.new,
14681
- schema: schema4
14682
- });
14683
- }
14684
- if (((_a = column6.type) == null ? void 0 : _a.type) === "changed") {
14711
+ const columnPk = json2.tables[tableName].columns[columnName].primaryKey;
14712
+ if (((_a = column6.autoincrement) == null ? void 0 : _a.type) === "added") {
14685
14713
  statements.push({
14686
- type: "alter_table_alter_column_set_type",
14714
+ type: "alter_table_alter_column_set_autoincrement",
14687
14715
  tableName,
14688
14716
  columnName,
14689
- newDataType: column6.type.new,
14690
14717
  schema: schema4,
14718
+ newDataType: columnType,
14691
14719
  columnDefault,
14692
14720
  columnOnUpdate,
14693
14721
  columnNotNull,
14694
- columnAutoIncrement
14722
+ columnAutoIncrement,
14723
+ columnPk
14695
14724
  });
14696
14725
  }
14697
- if (((_b = column6.default) == null ? void 0 : _b.type) === "added") {
14726
+ if (((_b = column6.autoincrement) == null ? void 0 : _b.type) === "changed") {
14727
+ const type = column6.autoincrement.new ? "alter_table_alter_column_set_autoincrement" : "alter_table_alter_column_drop_autoincrement";
14698
14728
  statements.push({
14699
- type: "alter_table_alter_column_set_default",
14729
+ type,
14700
14730
  tableName,
14701
14731
  columnName,
14702
- newDefaultValue: column6.default.value,
14703
14732
  schema: schema4,
14733
+ newDataType: columnType,
14734
+ columnDefault,
14704
14735
  columnOnUpdate,
14705
14736
  columnNotNull,
14706
14737
  columnAutoIncrement,
14707
- newDataType: columnType
14738
+ columnPk
14708
14739
  });
14709
14740
  }
14710
- if (((_c = column6.default) == null ? void 0 : _c.type) === "changed") {
14741
+ if (((_c = column6.autoincrement) == null ? void 0 : _c.type) === "deleted") {
14711
14742
  statements.push({
14712
- type: "alter_table_alter_column_set_default",
14743
+ type: "alter_table_alter_column_drop_autoincrement",
14713
14744
  tableName,
14714
14745
  columnName,
14715
- newDefaultValue: column6.default.new,
14716
14746
  schema: schema4,
14747
+ newDataType: columnType,
14748
+ columnDefault,
14717
14749
  columnOnUpdate,
14718
14750
  columnNotNull,
14719
14751
  columnAutoIncrement,
14720
- newDataType: columnType
14752
+ columnPk
14753
+ });
14754
+ }
14755
+ }
14756
+ for (const column6 of columns) {
14757
+ const columnName = typeof column6.name !== "string" ? column6.name.new : column6.name;
14758
+ const columnType = json2.tables[tableName].columns[columnName].type;
14759
+ const columnDefault = json2.tables[tableName].columns[columnName].default;
14760
+ const columnOnUpdate = json2.tables[tableName].columns[columnName].onUpdate;
14761
+ const columnNotNull = json2.tables[tableName].columns[columnName].notNull;
14762
+ const columnAutoIncrement = json2.tables[tableName].columns[columnName].autoincrement;
14763
+ const columnPk = json2.tables[tableName].columns[columnName].primaryKey;
14764
+ if (typeof column6.name !== "string") {
14765
+ statements.push({
14766
+ type: "alter_table_rename_column",
14767
+ tableName,
14768
+ oldColumnName: column6.name.old,
14769
+ newColumnName: column6.name.new,
14770
+ schema: schema4
14721
14771
  });
14722
14772
  }
14723
- if (((_d = column6.default) == null ? void 0 : _d.type) === "deleted") {
14773
+ if (((_d = column6.type) == null ? void 0 : _d.type) === "changed") {
14724
14774
  statements.push({
14725
- type: "alter_table_alter_column_drop_default",
14775
+ type: "alter_table_alter_column_set_type",
14726
14776
  tableName,
14727
14777
  columnName,
14778
+ newDataType: column6.type.new,
14728
14779
  schema: schema4,
14729
14780
  columnDefault,
14730
14781
  columnOnUpdate,
14731
14782
  columnNotNull,
14732
14783
  columnAutoIncrement,
14733
- newDataType: columnType
14784
+ columnPk
14734
14785
  });
14735
14786
  }
14736
- if (((_e = column6.notNull) == null ? void 0 : _e.type) === "added") {
14787
+ if (((_e = column6.primaryKey) == null ? void 0 : _e.type) === "deleted" || ((_f = column6.primaryKey) == null ? void 0 : _f.type) === "changed" && !column6.primaryKey.new) {
14737
14788
  statements.push({
14738
- type: "alter_table_alter_column_set_notnull",
14789
+ type: "alter_table_alter_column_drop_pk",
14790
+ tableName,
14791
+ columnName
14792
+ });
14793
+ }
14794
+ if (((_g = column6.default) == null ? void 0 : _g.type) === "added") {
14795
+ statements.push({
14796
+ type: "alter_table_alter_column_set_default",
14739
14797
  tableName,
14740
14798
  columnName,
14799
+ newDefaultValue: column6.default.value,
14741
14800
  schema: schema4,
14742
- newDataType: columnType,
14743
- columnDefault,
14744
14801
  columnOnUpdate,
14745
14802
  columnNotNull,
14746
- columnAutoIncrement
14803
+ columnAutoIncrement,
14804
+ newDataType: columnType,
14805
+ columnPk
14747
14806
  });
14748
14807
  }
14749
- if (((_f = column6.notNull) == null ? void 0 : _f.type) === "changed") {
14750
- const type = column6.notNull.new ? "alter_table_alter_column_set_notnull" : "alter_table_alter_column_drop_notnull";
14808
+ if (((_h = column6.default) == null ? void 0 : _h.type) === "changed") {
14751
14809
  statements.push({
14752
- type,
14810
+ type: "alter_table_alter_column_set_default",
14753
14811
  tableName,
14754
14812
  columnName,
14813
+ newDefaultValue: column6.default.new,
14755
14814
  schema: schema4,
14756
- newDataType: columnType,
14757
- columnDefault,
14758
14815
  columnOnUpdate,
14759
14816
  columnNotNull,
14760
- columnAutoIncrement
14817
+ columnAutoIncrement,
14818
+ newDataType: columnType,
14819
+ columnPk
14761
14820
  });
14762
14821
  }
14763
- if (((_g = column6.notNull) == null ? void 0 : _g.type) === "deleted") {
14822
+ if (((_i = column6.default) == null ? void 0 : _i.type) === "deleted") {
14764
14823
  statements.push({
14765
- type: "alter_table_alter_column_drop_notnull",
14824
+ type: "alter_table_alter_column_drop_default",
14766
14825
  tableName,
14767
14826
  columnName,
14768
14827
  schema: schema4,
14769
- newDataType: columnType,
14770
14828
  columnDefault,
14771
14829
  columnOnUpdate,
14772
14830
  columnNotNull,
14773
- columnAutoIncrement
14831
+ columnAutoIncrement,
14832
+ newDataType: columnType,
14833
+ columnPk
14774
14834
  });
14775
14835
  }
14776
- if (((_h = column6.autoincrement) == null ? void 0 : _h.type) === "added") {
14836
+ if (((_j = column6.notNull) == null ? void 0 : _j.type) === "added") {
14777
14837
  statements.push({
14778
- type: "alter_table_alter_column_set_autoincrement",
14838
+ type: "alter_table_alter_column_set_notnull",
14779
14839
  tableName,
14780
14840
  columnName,
14781
14841
  schema: schema4,
@@ -14783,11 +14843,12 @@ var init_jsonStatements = __esm({
14783
14843
  columnDefault,
14784
14844
  columnOnUpdate,
14785
14845
  columnNotNull,
14786
- columnAutoIncrement
14846
+ columnAutoIncrement,
14847
+ columnPk
14787
14848
  });
14788
14849
  }
14789
- if (((_i = column6.autoincrement) == null ? void 0 : _i.type) === "changed") {
14790
- const type = column6.autoincrement.new ? "alter_table_alter_column_set_notnull" : "alter_table_alter_column_drop_notnull";
14850
+ if (((_k = column6.notNull) == null ? void 0 : _k.type) === "changed") {
14851
+ const type = column6.notNull.new ? "alter_table_alter_column_set_notnull" : "alter_table_alter_column_drop_notnull";
14791
14852
  statements.push({
14792
14853
  type,
14793
14854
  tableName,
@@ -14797,12 +14858,13 @@ var init_jsonStatements = __esm({
14797
14858
  columnDefault,
14798
14859
  columnOnUpdate,
14799
14860
  columnNotNull,
14800
- columnAutoIncrement
14861
+ columnAutoIncrement,
14862
+ columnPk
14801
14863
  });
14802
14864
  }
14803
- if (((_j = column6.autoincrement) == null ? void 0 : _j.type) === "deleted") {
14865
+ if (((_l = column6.notNull) == null ? void 0 : _l.type) === "deleted") {
14804
14866
  statements.push({
14805
- type: "alter_table_alter_column_drop_autoincrement",
14867
+ type: "alter_table_alter_column_drop_notnull",
14806
14868
  tableName,
14807
14869
  columnName,
14808
14870
  schema: schema4,
@@ -14810,10 +14872,23 @@ var init_jsonStatements = __esm({
14810
14872
  columnDefault,
14811
14873
  columnOnUpdate,
14812
14874
  columnNotNull,
14813
- columnAutoIncrement
14875
+ columnAutoIncrement,
14876
+ columnPk
14814
14877
  });
14815
14878
  }
14816
- if (((_k = column6.onUpdate) == null ? void 0 : _k.type) === "added") {
14879
+ if (((_m = column6.primaryKey) == null ? void 0 : _m.type) === "added" || ((_n = column6.primaryKey) == null ? void 0 : _n.type) === "changed" && column6.primaryKey.new) {
14880
+ const wasAutoincrement = statements.filter(
14881
+ (it) => it.type === "alter_table_alter_column_set_autoincrement"
14882
+ );
14883
+ if (wasAutoincrement.length === 0) {
14884
+ statements.push({
14885
+ type: "alter_table_alter_column_set_pk",
14886
+ tableName,
14887
+ columnName
14888
+ });
14889
+ }
14890
+ }
14891
+ if (((_o = column6.onUpdate) == null ? void 0 : _o.type) === "added") {
14817
14892
  statements.push({
14818
14893
  type: "alter_table_alter_column_set_on_update",
14819
14894
  tableName,
@@ -14823,10 +14898,11 @@ var init_jsonStatements = __esm({
14823
14898
  columnDefault,
14824
14899
  columnOnUpdate,
14825
14900
  columnNotNull,
14826
- columnAutoIncrement
14901
+ columnAutoIncrement,
14902
+ columnPk
14827
14903
  });
14828
14904
  }
14829
- if (((_l = column6.onUpdate) == null ? void 0 : _l.type) === "deleted") {
14905
+ if (((_p = column6.onUpdate) == null ? void 0 : _p.type) === "deleted") {
14830
14906
  statements.push({
14831
14907
  type: "alter_table_alter_column_drop_on_update",
14832
14908
  tableName,
@@ -14836,7 +14912,8 @@ var init_jsonStatements = __esm({
14836
14912
  columnDefault,
14837
14913
  columnOnUpdate,
14838
14914
  columnNotNull,
14839
- columnAutoIncrement
14915
+ columnAutoIncrement,
14916
+ columnPk
14840
14917
  });
14841
14918
  }
14842
14919
  }
@@ -15078,6 +15155,7 @@ var init_snapshotsDiffer = __esm({
15078
15155
  name: makeSelfOrChanged(stringType()),
15079
15156
  type: makeChanged(stringType()).optional(),
15080
15157
  default: makePatched(anyType()).optional(),
15158
+ primaryKey: makePatched(booleanType()).optional(),
15081
15159
  notNull: makePatched(booleanType()).optional(),
15082
15160
  onUpdate: makePatched(booleanType()).optional(),
15083
15161
  autoincrement: makePatched(booleanType()).optional()
@@ -15410,6 +15488,7 @@ var init_snapshotsDiffer = __esm({
15410
15488
  jsonStatements.push(...jsonDropTables);
15411
15489
  jsonStatements.push(...jsonRenameTables);
15412
15490
  jsonStatements.push(...jsonRenameColumnsStatements);
15491
+ jsonStatements.push(...jsonDeletedCompositePKs);
15413
15492
  jsonStatements.push(...jsonTableAlternations.alterColumns);
15414
15493
  jsonStatements.push(...jsonTableAlternations.createColumns);
15415
15494
  jsonStatements.push(...jsonAlterReferencesForAlteredTables);
@@ -15419,7 +15498,6 @@ var init_snapshotsDiffer = __esm({
15419
15498
  jsonStatements.push(...jsonDropIndexesForAllAlteredTables);
15420
15499
  jsonStatements.push(...jsonCreateIndexesForCreatedTables);
15421
15500
  jsonStatements.push(...jsonCreateIndexesForAllAlteredTables);
15422
- jsonStatements.push(...jsonDeletedCompositePKs);
15423
15501
  jsonStatements.push(...jsonAddedCompositePKs);
15424
15502
  jsonStatements.push(...jsonAlteredCompositePKs);
15425
15503
  jsonStatements.push(...jsonSetTableSchemas);
@@ -16832,11 +16910,11 @@ var init_pgUp = __esm({
16832
16910
  path: it,
16833
16911
  raw: report.rawMap[it]
16834
16912
  })).forEach((it) => {
16835
- const path2 = it.path;
16913
+ const path3 = it.path;
16836
16914
  const result = updateUpToV4(it.raw, prevId);
16837
16915
  prevId = result.id;
16838
- console.log(`[${source_default.green("\u2713")}] ${path2}`);
16839
- (0, import_fs.writeFileSync)(path2, JSON.stringify(result, null, 2));
16916
+ console.log(`[${source_default.green("\u2713")}] ${path3}`);
16917
+ (0, import_fs.writeFileSync)(path3, JSON.stringify(result, null, 2));
16840
16918
  });
16841
16919
  console.log("Everything's fine \u{1F436}\u{1F525}");
16842
16920
  };
@@ -17087,10 +17165,10 @@ var init_mysqlUp = __esm({
17087
17165
  path: it,
17088
17166
  raw: report.rawMap[it]
17089
17167
  })).forEach((it) => {
17090
- const path2 = it.path;
17168
+ const path3 = it.path;
17091
17169
  const result = updateToLatestV4(it.raw);
17092
- console.log(`[${source_default.green("\u2713")}] ${path2}`);
17093
- import_fs2.default.writeFileSync(path2, JSON.stringify(result, null, 2));
17170
+ console.log(`[${source_default.green("\u2713")}] ${path3}`);
17171
+ import_fs2.default.writeFileSync(path3, JSON.stringify(result, null, 2));
17094
17172
  });
17095
17173
  console.log("Everything's fine \u{1F436}\u{1F525}");
17096
17174
  };
@@ -17323,7 +17401,20 @@ var init_upFolders = __esm({
17323
17401
  const json1 = squashPgSchemeV4(a);
17324
17402
  const json2 = squashPgSchemeV4(b);
17325
17403
  const diffResult = applyJsonDiff(json1, json2);
17326
- const parseResult = diffResultScheme.safeParse(diffResult);
17404
+ const emptyDiff = Object.keys(diffResult).length === 0;
17405
+ const parseResult = emptyDiff ? {
17406
+ success: true,
17407
+ data: {
17408
+ addedTables: [],
17409
+ addedEnums: [],
17410
+ addedSchemas: [],
17411
+ deletedTables: [],
17412
+ deletedSchemas: [],
17413
+ deletedEnums: [],
17414
+ alteredEnums: [],
17415
+ alteredTablesWithColumns: []
17416
+ }
17417
+ } : diffResultScheme.safeParse(diffResult);
17327
17418
  if (!parseResult.success) {
17328
17419
  parseResult.error.errors.forEach((it) => {
17329
17420
  console.error(it);
@@ -17561,7 +17652,7 @@ var init_upFolders = __esm({
17561
17652
  date.setUTCMinutes(Number(it.substring(10, 12)));
17562
17653
  date.setUTCSeconds(Number(it.substring(12, 14)));
17563
17654
  date.setUTCMilliseconds(0);
17564
- const path2 = (0, import_path.join)(out, it);
17655
+ const path3 = (0, import_path.join)(out, it);
17565
17656
  const pathJson = (0, import_path.join)(out, it, "snapshot.json");
17566
17657
  const pathSQL = (0, import_path.join)(out, it, "migration.sql");
17567
17658
  const snapshot = JSON.parse((0, import_fs3.readFileSync)(pathJson).toString());
@@ -17572,7 +17663,7 @@ var init_upFolders = __esm({
17572
17663
  json: snapshot,
17573
17664
  date,
17574
17665
  sql,
17575
- path: path2
17666
+ path: path3
17576
17667
  });
17577
17668
  res2.idx += 1;
17578
17669
  return res2;
@@ -17828,14 +17919,14 @@ var require_ms = __commonJS({
17828
17919
  if (str.length > 100) {
17829
17920
  return;
17830
17921
  }
17831
- var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(
17922
+ var match2 = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(
17832
17923
  str
17833
17924
  );
17834
- if (!match) {
17925
+ if (!match2) {
17835
17926
  return;
17836
17927
  }
17837
- var n = parseFloat(match[1]);
17838
- var type = (match[2] || "ms").toLowerCase();
17928
+ var n = parseFloat(match2[1]);
17929
+ var type = (match2[2] || "ms").toLowerCase();
17839
17930
  switch (type) {
17840
17931
  case "years":
17841
17932
  case "year":
@@ -17966,19 +18057,19 @@ var require_common = __commonJS({
17966
18057
  args.unshift("%O");
17967
18058
  }
17968
18059
  let index4 = 0;
17969
- args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {
17970
- if (match === "%%") {
18060
+ args[0] = args[0].replace(/%([a-zA-Z%])/g, (match2, format) => {
18061
+ if (match2 === "%%") {
17971
18062
  return "%";
17972
18063
  }
17973
18064
  index4++;
17974
18065
  const formatter = createDebug.formatters[format];
17975
18066
  if (typeof formatter === "function") {
17976
18067
  const val = args[index4];
17977
- match = formatter.call(self2, val);
18068
+ match2 = formatter.call(self2, val);
17978
18069
  args.splice(index4, 1);
17979
18070
  index4--;
17980
18071
  }
17981
- return match;
18072
+ return match2;
17982
18073
  });
17983
18074
  createDebug.formatArgs.call(self2, args);
17984
18075
  const logFn = self2.log || createDebug.log;
@@ -18194,12 +18285,12 @@ var require_browser = __commonJS({
18194
18285
  args.splice(1, 0, c, "color: inherit");
18195
18286
  let index4 = 0;
18196
18287
  let lastC = 0;
18197
- args[0].replace(/%[a-zA-Z%]/g, (match) => {
18198
- if (match === "%%") {
18288
+ args[0].replace(/%[a-zA-Z%]/g, (match2) => {
18289
+ if (match2 === "%%") {
18199
18290
  return;
18200
18291
  }
18201
18292
  index4++;
18202
- if (match === "%c") {
18293
+ if (match2 === "%c") {
18203
18294
  lastC = index4;
18204
18295
  }
18205
18296
  });
@@ -18680,16 +18771,16 @@ var require_node2 = __commonJS({
18680
18771
  var urlRegexp = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/;
18681
18772
  var dataUrlRegexp = /^data:.+\,.+$/;
18682
18773
  function urlParse(aUrl) {
18683
- var match = aUrl.match(urlRegexp);
18684
- if (!match) {
18774
+ var match2 = aUrl.match(urlRegexp);
18775
+ if (!match2) {
18685
18776
  return null;
18686
18777
  }
18687
18778
  return {
18688
- scheme: match[1],
18689
- auth: match[2],
18690
- host: match[3],
18691
- port: match[4],
18692
- path: match[5]
18779
+ scheme: match2[1],
18780
+ auth: match2[2],
18781
+ host: match2[3],
18782
+ port: match2[4],
18783
+ path: match2[5]
18693
18784
  };
18694
18785
  }
18695
18786
  exports2.urlParse = urlParse;
@@ -18715,16 +18806,16 @@ var require_node2 = __commonJS({
18715
18806
  }
18716
18807
  exports2.urlGenerate = urlGenerate;
18717
18808
  function normalize(aPath) {
18718
- var path2 = aPath;
18809
+ var path3 = aPath;
18719
18810
  var url = urlParse(aPath);
18720
18811
  if (url) {
18721
18812
  if (!url.path) {
18722
18813
  return aPath;
18723
18814
  }
18724
- path2 = url.path;
18815
+ path3 = url.path;
18725
18816
  }
18726
- var isAbsolute = exports2.isAbsolute(path2);
18727
- var parts = path2.split(/\/+/);
18817
+ var isAbsolute = exports2.isAbsolute(path3);
18818
+ var parts = path3.split(/\/+/);
18728
18819
  for (var part, up = 0, i = parts.length - 1; i >= 0; i--) {
18729
18820
  part = parts[i];
18730
18821
  if (part === ".") {
@@ -18741,15 +18832,15 @@ var require_node2 = __commonJS({
18741
18832
  }
18742
18833
  }
18743
18834
  }
18744
- path2 = parts.join("/");
18745
- if (path2 === "") {
18746
- path2 = isAbsolute ? "/" : ".";
18835
+ path3 = parts.join("/");
18836
+ if (path3 === "") {
18837
+ path3 = isAbsolute ? "/" : ".";
18747
18838
  }
18748
18839
  if (url) {
18749
- url.path = path2;
18840
+ url.path = path3;
18750
18841
  return urlGenerate(url);
18751
18842
  }
18752
- return path2;
18843
+ return path3;
18753
18844
  }
18754
18845
  exports2.normalize = normalize;
18755
18846
  function join22(aRoot, aPath) {
@@ -20279,7 +20370,7 @@ var require_node2 = __commonJS({
20279
20370
  });
20280
20371
  var require_source_map_support = __commonJS2((exports2, module22) => {
20281
20372
  var SourceMapConsumer = require_source_map().SourceMapConsumer;
20282
- var path2 = require("path");
20373
+ var path3 = require("path");
20283
20374
  var fs32;
20284
20375
  try {
20285
20376
  fs32 = require("fs");
@@ -20352,15 +20443,15 @@ var require_node2 = __commonJS({
20352
20443
  function supportRelativeURL(file, url) {
20353
20444
  if (!file)
20354
20445
  return url;
20355
- var dir = path2.dirname(file);
20356
- var match = /^\w+:\/\/[^\/]*/.exec(dir);
20357
- var protocol = match ? match[0] : "";
20446
+ var dir = path3.dirname(file);
20447
+ var match2 = /^\w+:\/\/[^\/]*/.exec(dir);
20448
+ var protocol = match2 ? match2[0] : "";
20358
20449
  var startPath = dir.slice(protocol.length);
20359
20450
  if (protocol && /^\/\w\:/.test(startPath)) {
20360
20451
  protocol += "/";
20361
- return protocol + path2.resolve(dir.slice(protocol.length), url).replace(/\\/g, "/");
20452
+ return protocol + path3.resolve(dir.slice(protocol.length), url).replace(/\\/g, "/");
20362
20453
  }
20363
- return protocol + path2.resolve(dir.slice(protocol.length), url);
20454
+ return protocol + path3.resolve(dir.slice(protocol.length), url);
20364
20455
  }
20365
20456
  function retrieveSourceMapURL(source) {
20366
20457
  var fileData;
@@ -20379,9 +20470,9 @@ var require_node2 = __commonJS({
20379
20470
  }
20380
20471
  fileData = retrieveFile(source);
20381
20472
  var re = /(?:\/\/[@#][\s]*sourceMappingURL=([^\s'"]+)[\s]*$)|(?:\/\*[@#][\s]*sourceMappingURL=([^\s*'"]+)[\s]*(?:\*\/)[\s]*$)/mg;
20382
- var lastMatch, match;
20383
- while (match = re.exec(fileData))
20384
- lastMatch = match;
20473
+ var lastMatch, match2;
20474
+ while (match2 = re.exec(fileData))
20475
+ lastMatch = match2;
20385
20476
  if (!lastMatch)
20386
20477
  return null;
20387
20478
  return lastMatch[1];
@@ -20443,18 +20534,18 @@ var require_node2 = __commonJS({
20443
20534
  return position;
20444
20535
  }
20445
20536
  function mapEvalOrigin(origin) {
20446
- var match = /^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(origin);
20447
- if (match) {
20537
+ var match2 = /^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(origin);
20538
+ if (match2) {
20448
20539
  var position = mapSourcePosition({
20449
- source: match[2],
20450
- line: +match[3],
20451
- column: match[4] - 1
20540
+ source: match2[2],
20541
+ line: +match2[3],
20542
+ column: match2[4] - 1
20452
20543
  });
20453
- return "eval at " + match[1] + " (" + position.source + ":" + position.line + ":" + (position.column + 1) + ")";
20544
+ return "eval at " + match2[1] + " (" + position.source + ":" + position.line + ":" + (position.column + 1) + ")";
20454
20545
  }
20455
- match = /^eval at ([^(]+) \((.+)\)$/.exec(origin);
20456
- if (match) {
20457
- return "eval at " + match[1] + " (" + mapEvalOrigin(match[2]) + ")";
20546
+ match2 = /^eval at ([^(]+) \((.+)\)$/.exec(origin);
20547
+ if (match2) {
20548
+ return "eval at " + match2[1] + " (" + mapEvalOrigin(match2[2]) + ")";
20458
20549
  }
20459
20550
  return origin;
20460
20551
  }
@@ -20602,11 +20693,11 @@ var require_node2 = __commonJS({
20602
20693
  return errorString + processedStack.reverse().join("");
20603
20694
  }
20604
20695
  function getErrorSource(error2) {
20605
- var match = /\n at [^(]+ \((.*):(\d+):(\d+)\)/.exec(error2.stack);
20606
- if (match) {
20607
- var source = match[1];
20608
- var line = +match[2];
20609
- var column6 = +match[3];
20696
+ var match2 = /\n at [^(]+ \((.*):(\d+):(\d+)\)/.exec(error2.stack);
20697
+ if (match2) {
20698
+ var source = match2[1];
20699
+ var line = +match2[2];
20700
+ var column6 = +match2[3];
20610
20701
  var contents = fileContentsCache[source];
20611
20702
  if (!contents && fs32 && fs32.existsSync(source)) {
20612
20703
  try {
@@ -20764,13 +20855,13 @@ var require_node2 = __commonJS({
20764
20855
  if (!Array.isArray(exts)) {
20765
20856
  exts = [exts];
20766
20857
  }
20767
- exts.forEach((ext) => {
20768
- if (typeof ext !== "string") {
20769
- throw new TypeError(`Invalid Extension: ${ext}`);
20858
+ exts.forEach((ext2) => {
20859
+ if (typeof ext2 !== "string") {
20860
+ throw new TypeError(`Invalid Extension: ${ext2}`);
20770
20861
  }
20771
- const oldLoader = Module._extensions[ext] || originalJSLoader;
20772
- oldLoaders[ext] = oldLoader;
20773
- loaders[ext] = Module._extensions[ext] = function newLoader(mod, filename) {
20862
+ const oldLoader = Module._extensions[ext2] || originalJSLoader;
20863
+ oldLoaders[ext2] = oldLoader;
20864
+ loaders[ext2] = Module._extensions[ext2] = function newLoader(mod, filename) {
20774
20865
  let compile;
20775
20866
  if (!reverted) {
20776
20867
  if (shouldCompile(filename, exts, matcher, ignoreNodeModules)) {
@@ -20792,9 +20883,9 @@ var require_node2 = __commonJS({
20792
20883
  if (reverted)
20793
20884
  return;
20794
20885
  reverted = true;
20795
- exts.forEach((ext) => {
20796
- if (Module._extensions[ext] === loaders[ext]) {
20797
- Module._extensions[ext] = oldLoaders[ext];
20886
+ exts.forEach((ext2) => {
20887
+ if (Module._extensions[ext2] === loaders[ext2]) {
20888
+ Module._extensions[ext2] = oldLoaders[ext2];
20798
20889
  }
20799
20890
  });
20800
20891
  };
@@ -21155,9 +21246,9 @@ var require_node2 = __commonJS({
21155
21246
  "use strict";
21156
21247
  Object.defineProperty(exports2, "__esModule", { value: true });
21157
21248
  var fs32 = require("fs");
21158
- function fileExistsSync(path2) {
21249
+ function fileExistsSync(path3) {
21159
21250
  try {
21160
- var stats = fs32.statSync(path2);
21251
+ var stats = fs32.statSync(path3);
21161
21252
  return stats.isFile();
21162
21253
  } catch (err2) {
21163
21254
  return false;
@@ -21171,8 +21262,8 @@ var require_node2 = __commonJS({
21171
21262
  return require(packageJsonPath);
21172
21263
  }
21173
21264
  exports2.readJsonFromDiskSync = readJsonFromDiskSync;
21174
- function readJsonFromDiskAsync(path2, callback) {
21175
- fs32.readFile(path2, "utf8", function(err2, result) {
21265
+ function readJsonFromDiskAsync(path3, callback) {
21266
+ fs32.readFile(path3, "utf8", function(err2, result) {
21176
21267
  if (err2 || !result) {
21177
21268
  return callback();
21178
21269
  }
@@ -21181,8 +21272,8 @@ var require_node2 = __commonJS({
21181
21272
  });
21182
21273
  }
21183
21274
  exports2.readJsonFromDiskAsync = readJsonFromDiskAsync;
21184
- function fileExistsAsync(path2, callback2) {
21185
- fs32.stat(path2, function(err2, stats) {
21275
+ function fileExistsAsync(path22, callback2) {
21276
+ fs32.stat(path22, function(err2, stats) {
21186
21277
  if (err2) {
21187
21278
  return callback2(void 0, false);
21188
21279
  }
@@ -21190,15 +21281,15 @@ var require_node2 = __commonJS({
21190
21281
  });
21191
21282
  }
21192
21283
  exports2.fileExistsAsync = fileExistsAsync;
21193
- function removeExtension(path2) {
21194
- return path2.substring(0, path2.lastIndexOf(".")) || path2;
21284
+ function removeExtension(path3) {
21285
+ return path3.substring(0, path3.lastIndexOf(".")) || path3;
21195
21286
  }
21196
21287
  exports2.removeExtension = removeExtension;
21197
21288
  });
21198
21289
  var require_mapping_entry = __commonJS2((exports2) => {
21199
21290
  "use strict";
21200
21291
  Object.defineProperty(exports2, "__esModule", { value: true });
21201
- var path2 = require("path");
21292
+ var path3 = require("path");
21202
21293
  function getAbsoluteMappingEntries(absoluteBaseUrl, paths, addMatchAll) {
21203
21294
  var sortedKeys = sortByLongestPrefix(Object.keys(paths));
21204
21295
  var absolutePaths = [];
@@ -21207,7 +21298,7 @@ var require_node2 = __commonJS({
21207
21298
  absolutePaths.push({
21208
21299
  pattern: key,
21209
21300
  paths: paths[key].map(function(pathToResolve) {
21210
- return path2.join(absoluteBaseUrl, pathToResolve);
21301
+ return path3.join(absoluteBaseUrl, pathToResolve);
21211
21302
  })
21212
21303
  });
21213
21304
  }
@@ -21233,11 +21324,11 @@ var require_node2 = __commonJS({
21233
21324
  var require_try_path = __commonJS2((exports2) => {
21234
21325
  "use strict";
21235
21326
  Object.defineProperty(exports2, "__esModule", { value: true });
21236
- var path2 = require("path");
21327
+ var path3 = require("path");
21237
21328
  var path_1 = require("path");
21238
21329
  var filesystem_1 = require_filesystem();
21239
21330
  function getPathsToTry(extensions, absolutePathMappings, requestedModule) {
21240
- if (!absolutePathMappings || !requestedModule || requestedModule[0] === "." || requestedModule[0] === path2.sep) {
21331
+ if (!absolutePathMappings || !requestedModule || requestedModule[0] === "." || requestedModule[0] === path3.sep) {
21241
21332
  return void 0;
21242
21333
  }
21243
21334
  var pathsToTry = [];
@@ -21253,9 +21344,9 @@ var require_node2 = __commonJS({
21253
21344
  }));
21254
21345
  pathsToTry.push({
21255
21346
  type: "package",
21256
- path: path2.join(physicalPath, "/package.json")
21347
+ path: path3.join(physicalPath, "/package.json")
21257
21348
  });
21258
- var indexPath = path2.join(physicalPath, "/index");
21349
+ var indexPath = path3.join(physicalPath, "/index");
21259
21350
  pathsToTry.push.apply(pathsToTry, extensions.map(function(e) {
21260
21351
  return { type: "index", path: indexPath + e };
21261
21352
  }));
@@ -21284,25 +21375,25 @@ var require_node2 = __commonJS({
21284
21375
  if (pattern === "*") {
21285
21376
  return search;
21286
21377
  }
21287
- var star = pattern.indexOf("*");
21288
- if (star === -1) {
21378
+ var star2 = pattern.indexOf("*");
21379
+ if (star2 === -1) {
21289
21380
  return void 0;
21290
21381
  }
21291
- var part1 = pattern.substring(0, star);
21292
- var part2 = pattern.substring(star + 1);
21293
- if (search.substr(0, star) !== part1) {
21382
+ var part1 = pattern.substring(0, star2);
21383
+ var part2 = pattern.substring(star2 + 1);
21384
+ if (search.substr(0, star2) !== part1) {
21294
21385
  return void 0;
21295
21386
  }
21296
21387
  if (search.substr(search.length - part2.length) !== part2) {
21297
21388
  return void 0;
21298
21389
  }
21299
- return search.substr(star, search.length - part2.length);
21390
+ return search.substr(star2, search.length - part2.length);
21300
21391
  }
21301
21392
  });
21302
21393
  var require_match_path_sync = __commonJS2((exports2) => {
21303
21394
  "use strict";
21304
21395
  Object.defineProperty(exports2, "__esModule", { value: true });
21305
- var path2 = require("path");
21396
+ var path3 = require("path");
21306
21397
  var Filesystem = require_filesystem();
21307
21398
  var MappingEntry = require_mapping_entry();
21308
21399
  var TryPath = require_try_path();
@@ -21344,7 +21435,7 @@ var require_node2 = __commonJS({
21344
21435
  var mainFieldName = mainFields[index4];
21345
21436
  var candidateMapping = packageJson[mainFieldName];
21346
21437
  if (candidateMapping && typeof candidateMapping === "string") {
21347
- var candidateFilePath = path2.join(path2.dirname(packageJsonPath), candidateMapping);
21438
+ var candidateFilePath = path3.join(path3.dirname(packageJsonPath), candidateMapping);
21348
21439
  if (fileExists(candidateFilePath)) {
21349
21440
  return candidateFilePath;
21350
21441
  }
@@ -21383,7 +21474,7 @@ var require_node2 = __commonJS({
21383
21474
  var require_match_path_async = __commonJS2((exports2) => {
21384
21475
  "use strict";
21385
21476
  Object.defineProperty(exports2, "__esModule", { value: true });
21386
- var path2 = require("path");
21477
+ var path3 = require("path");
21387
21478
  var TryPath = require_try_path();
21388
21479
  var MappingEntry = require_mapping_entry();
21389
21480
  var Filesystem = require_filesystem();
@@ -21434,7 +21525,7 @@ var require_node2 = __commonJS({
21434
21525
  if (typeof mainFieldMapping !== "string") {
21435
21526
  return tryNext();
21436
21527
  }
21437
- var mappedFilePath = path2.join(path2.dirname(packageJsonPath), mainFieldMapping);
21528
+ var mappedFilePath = path3.join(path3.dirname(packageJsonPath), mainFieldMapping);
21438
21529
  fileExistsAsync(mappedFilePath, function(err2, exists) {
21439
21530
  if (err2) {
21440
21531
  return doneCallback(err2);
@@ -21981,7 +22072,7 @@ var require_node2 = __commonJS({
21981
22072
  switch (c) {
21982
22073
  case "\\":
21983
22074
  read();
21984
- buffer += escape();
22075
+ buffer += escape2();
21985
22076
  return;
21986
22077
  case '"':
21987
22078
  if (doubleQuote) {
@@ -22100,7 +22191,7 @@ var require_node2 = __commonJS({
22100
22191
  }
22101
22192
  }
22102
22193
  }
22103
- function escape() {
22194
+ function escape2() {
22104
22195
  var c2 = peek();
22105
22196
  switch (c2) {
22106
22197
  case "b":
@@ -22654,7 +22745,7 @@ var require_node2 = __commonJS({
22654
22745
  return t;
22655
22746
  };
22656
22747
  Object.defineProperty(exports2, "__esModule", { value: true });
22657
- var path2 = require("path");
22748
+ var path3 = require("path");
22658
22749
  var fs32 = require("fs");
22659
22750
  var JSON5 = require_lib32();
22660
22751
  var StripBom = require_strip_bom();
@@ -22684,24 +22775,24 @@ var require_node2 = __commonJS({
22684
22775
  }
22685
22776
  function resolveConfigPath(cwd, filename) {
22686
22777
  if (filename) {
22687
- var absolutePath = fs32.lstatSync(filename).isDirectory() ? path2.resolve(filename, "./tsconfig.json") : path2.resolve(cwd, filename);
22778
+ var absolutePath = fs32.lstatSync(filename).isDirectory() ? path3.resolve(filename, "./tsconfig.json") : path3.resolve(cwd, filename);
22688
22779
  return absolutePath;
22689
22780
  }
22690
22781
  if (fs32.statSync(cwd).isFile()) {
22691
- return path2.resolve(cwd);
22782
+ return path3.resolve(cwd);
22692
22783
  }
22693
22784
  var configAbsolutePath = walkForTsConfig(cwd);
22694
- return configAbsolutePath ? path2.resolve(configAbsolutePath) : void 0;
22785
+ return configAbsolutePath ? path3.resolve(configAbsolutePath) : void 0;
22695
22786
  }
22696
22787
  function walkForTsConfig(directory, existsSync4) {
22697
22788
  if (existsSync4 === void 0) {
22698
22789
  existsSync4 = fs32.existsSync;
22699
22790
  }
22700
- var configPath = path2.join(directory, "./tsconfig.json");
22791
+ var configPath = path3.join(directory, "./tsconfig.json");
22701
22792
  if (existsSync4(configPath)) {
22702
22793
  return configPath;
22703
22794
  }
22704
- var parentDirectory = path2.join(directory, "../");
22795
+ var parentDirectory = path3.join(directory, "../");
22705
22796
  if (directory === parentDirectory) {
22706
22797
  return void 0;
22707
22798
  }
@@ -22728,15 +22819,15 @@ var require_node2 = __commonJS({
22728
22819
  if (typeof extendedConfig === "string" && extendedConfig.indexOf(".json") === -1) {
22729
22820
  extendedConfig += ".json";
22730
22821
  }
22731
- var currentDir = path2.dirname(configFilePath);
22732
- var extendedConfigPath = path2.join(currentDir, extendedConfig);
22822
+ var currentDir = path3.dirname(configFilePath);
22823
+ var extendedConfigPath = path3.join(currentDir, extendedConfig);
22733
22824
  if (extendedConfig.indexOf("/") !== -1 && extendedConfig.indexOf(".") !== -1 && !existsSync4(extendedConfigPath)) {
22734
- extendedConfigPath = path2.join(currentDir, "node_modules", extendedConfig);
22825
+ extendedConfigPath = path3.join(currentDir, "node_modules", extendedConfig);
22735
22826
  }
22736
22827
  var base = loadTsconfig(extendedConfigPath, existsSync4, readFileSync4) || {};
22737
22828
  if (base.compilerOptions && base.compilerOptions.baseUrl) {
22738
- var extendsDir = path2.dirname(extendedConfig);
22739
- base.compilerOptions.baseUrl = path2.join(extendsDir, base.compilerOptions.baseUrl);
22829
+ var extendsDir = path3.dirname(extendedConfig);
22830
+ base.compilerOptions.baseUrl = path3.join(extendsDir, base.compilerOptions.baseUrl);
22740
22831
  }
22741
22832
  return __assign({}, base, config, { compilerOptions: __assign({}, base.compilerOptions, config.compilerOptions) });
22742
22833
  }
@@ -22774,10 +22865,10 @@ var require_node2 = __commonJS({
22774
22865
  flags.strings[aliases[key2]] = true;
22775
22866
  }
22776
22867
  });
22777
- var defaults = opts["default"] || {};
22868
+ var defaults2 = opts["default"] || {};
22778
22869
  var argv = { _: [] };
22779
22870
  Object.keys(flags.bools).forEach(function(key2) {
22780
- setArg(key2, defaults[key2] === void 0 ? false : defaults[key2]);
22871
+ setArg(key2, defaults2[key2] === void 0 ? false : defaults2[key2]);
22781
22872
  });
22782
22873
  var notFlags = [];
22783
22874
  if (args.indexOf("--") !== -1) {
@@ -22906,11 +22997,11 @@ var require_node2 = __commonJS({
22906
22997
  }
22907
22998
  }
22908
22999
  }
22909
- Object.keys(defaults).forEach(function(key2) {
23000
+ Object.keys(defaults2).forEach(function(key2) {
22910
23001
  if (!hasKey(argv, key2.split("."))) {
22911
- setKey(argv, key2.split("."), defaults[key2]);
23002
+ setKey(argv, key2.split("."), defaults2[key2]);
22912
23003
  (aliases[key2] || []).forEach(function(x) {
22913
- setKey(argv, x.split("."), defaults[key2]);
23004
+ setKey(argv, x.split("."), defaults2[key2]);
22914
23005
  });
22915
23006
  }
22916
23007
  });
@@ -22961,7 +23052,7 @@ var require_node2 = __commonJS({
22961
23052
  "use strict";
22962
23053
  Object.defineProperty(exports2, "__esModule", { value: true });
22963
23054
  var TsConfigLoader = require_tsconfig_loader();
22964
- var path2 = require("path");
23055
+ var path3 = require("path");
22965
23056
  var options_1 = require_options();
22966
23057
  function loadConfig2(cwd) {
22967
23058
  if (cwd === void 0) {
@@ -22973,7 +23064,7 @@ var require_node2 = __commonJS({
22973
23064
  function configLoader(_a) {
22974
23065
  var cwd = _a.cwd, explicitParams = _a.explicitParams, _b = _a.tsConfigLoader, tsConfigLoader = _b === void 0 ? TsConfigLoader.tsConfigLoader : _b;
22975
23066
  if (explicitParams) {
22976
- var absoluteBaseUrl_1 = path2.isAbsolute(explicitParams.baseUrl) ? explicitParams.baseUrl : path2.join(cwd, explicitParams.baseUrl);
23067
+ var absoluteBaseUrl_1 = path3.isAbsolute(explicitParams.baseUrl) ? explicitParams.baseUrl : path3.join(cwd, explicitParams.baseUrl);
22977
23068
  return {
22978
23069
  resultType: "success",
22979
23070
  configFileAbsolutePath: "",
@@ -23002,8 +23093,8 @@ var require_node2 = __commonJS({
23002
23093
  message: "Missing baseUrl in compilerOptions"
23003
23094
  };
23004
23095
  }
23005
- var tsConfigDir = path2.dirname(loadResult.tsConfigPath);
23006
- var absoluteBaseUrl = path2.join(tsConfigDir, loadResult.baseUrl);
23096
+ var tsConfigDir = path3.dirname(loadResult.tsConfigPath);
23097
+ var absoluteBaseUrl = path3.join(tsConfigDir, loadResult.baseUrl);
23007
23098
  return {
23008
23099
  resultType: "success",
23009
23100
  configFileAbsolutePath: loadResult.tsConfigPath,
@@ -23204,8 +23295,8 @@ var require_node2 = __commonJS({
23204
23295
  });
23205
23296
  var getOptions = (cwd) => {
23206
23297
  var _a, _b, _c, _d;
23207
- const { data, path: path2 } = joycon.loadSync(["tsconfig.json", "jsconfig.json"], cwd);
23208
- if (path2 && data) {
23298
+ const { data, path: path3 } = joycon.loadSync(["tsconfig.json", "jsconfig.json"], cwd);
23299
+ if (path3 && data) {
23209
23300
  return {
23210
23301
  jsxFactory: (_a = data.compilerOptions) == null ? void 0 : _a.jsxFactory,
23211
23302
  jsxFragment: (_b = data.compilerOptions) == null ? void 0 : _b.jsxFragmentFactory,
@@ -23754,7 +23845,7 @@ var require_brace_expansion = __commonJS({
23754
23845
  if (str.substr(0, 2) === "{}") {
23755
23846
  str = "\\{\\}" + str.substr(2);
23756
23847
  }
23757
- return expand(escapeBraces(str), true).map(unescapeBraces);
23848
+ return expand2(escapeBraces(str), true).map(unescapeBraces);
23758
23849
  }
23759
23850
  function embrace(str) {
23760
23851
  return "{" + str + "}";
@@ -23768,13 +23859,13 @@ var require_brace_expansion = __commonJS({
23768
23859
  function gte(i, y) {
23769
23860
  return i >= y;
23770
23861
  }
23771
- function expand(str, isTop) {
23862
+ function expand2(str, isTop) {
23772
23863
  var expansions = [];
23773
23864
  var m = balanced("{", "}", str);
23774
23865
  if (!m)
23775
23866
  return [str];
23776
23867
  var pre = m.pre;
23777
- var post = m.post.length ? expand(m.post, false) : [""];
23868
+ var post = m.post.length ? expand2(m.post, false) : [""];
23778
23869
  if (/\$$/.test(m.pre)) {
23779
23870
  for (var k = 0; k < post.length; k++) {
23780
23871
  var expansion = pre + "{" + m.body + "}" + post[k];
@@ -23788,7 +23879,7 @@ var require_brace_expansion = __commonJS({
23788
23879
  if (!isSequence && !isOptions) {
23789
23880
  if (m.post.match(/,.*\}/)) {
23790
23881
  str = m.pre + "{" + m.body + escClose + m.post;
23791
- return expand(str);
23882
+ return expand2(str);
23792
23883
  }
23793
23884
  return [str];
23794
23885
  }
@@ -23798,7 +23889,7 @@ var require_brace_expansion = __commonJS({
23798
23889
  } else {
23799
23890
  n = parseCommaParts(m.body);
23800
23891
  if (n.length === 1) {
23801
- n = expand(n[0], false).map(embrace);
23892
+ n = expand2(n[0], false).map(embrace);
23802
23893
  if (n.length === 1) {
23803
23894
  return post.map(function(p) {
23804
23895
  return m.pre + n[0] + p;
@@ -23844,7 +23935,7 @@ var require_brace_expansion = __commonJS({
23844
23935
  } else {
23845
23936
  N = [];
23846
23937
  for (var j = 0; j < n.length; j++) {
23847
- N.push.apply(N, expand(n[j], false));
23938
+ N.push.apply(N, expand2(n[j], false));
23848
23939
  }
23849
23940
  }
23850
23941
  for (var j = 0; j < N.length; j++) {
@@ -23863,97 +23954,97 @@ var require_brace_expansion = __commonJS({
23863
23954
  // node_modules/.pnpm/minimatch@5.1.6/node_modules/minimatch/minimatch.js
23864
23955
  var require_minimatch = __commonJS({
23865
23956
  "node_modules/.pnpm/minimatch@5.1.6/node_modules/minimatch/minimatch.js"(exports, module2) {
23866
- var minimatch = module2.exports = (p, pattern, options = {}) => {
23867
- assertValidPattern(pattern);
23957
+ var minimatch2 = module2.exports = (p, pattern, options = {}) => {
23958
+ assertValidPattern2(pattern);
23868
23959
  if (!options.nocomment && pattern.charAt(0) === "#") {
23869
23960
  return false;
23870
23961
  }
23871
- return new Minimatch(pattern, options).match(p);
23962
+ return new Minimatch2(pattern, options).match(p);
23872
23963
  };
23873
- module2.exports = minimatch;
23874
- var path2 = require_path();
23875
- minimatch.sep = path2.sep;
23876
- var GLOBSTAR = Symbol("globstar **");
23877
- minimatch.GLOBSTAR = GLOBSTAR;
23878
- var expand = require_brace_expansion();
23879
- var plTypes = {
23964
+ module2.exports = minimatch2;
23965
+ var path3 = require_path();
23966
+ minimatch2.sep = path3.sep;
23967
+ var GLOBSTAR2 = Symbol("globstar **");
23968
+ minimatch2.GLOBSTAR = GLOBSTAR2;
23969
+ var expand2 = require_brace_expansion();
23970
+ var plTypes2 = {
23880
23971
  "!": { open: "(?:(?!(?:", close: "))[^/]*?)" },
23881
23972
  "?": { open: "(?:", close: ")?" },
23882
23973
  "+": { open: "(?:", close: ")+" },
23883
23974
  "*": { open: "(?:", close: ")*" },
23884
23975
  "@": { open: "(?:", close: ")" }
23885
23976
  };
23886
- var qmark = "[^/]";
23887
- var star = qmark + "*?";
23888
- var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
23889
- var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
23890
- var charSet = (s) => s.split("").reduce((set, c) => {
23977
+ var qmark2 = "[^/]";
23978
+ var star2 = qmark2 + "*?";
23979
+ var twoStarDot2 = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
23980
+ var twoStarNoDot2 = "(?:(?!(?:\\/|^)\\.).)*?";
23981
+ var charSet2 = (s) => s.split("").reduce((set, c) => {
23891
23982
  set[c] = true;
23892
23983
  return set;
23893
23984
  }, {});
23894
- var reSpecials = charSet("().*{}+?[]^$\\!");
23895
- var addPatternStartSet = charSet("[.(");
23985
+ var reSpecials2 = charSet2("().*{}+?[]^$\\!");
23986
+ var addPatternStartSet2 = charSet2("[.(");
23896
23987
  var slashSplit = /\/+/;
23897
- minimatch.filter = (pattern, options = {}) => (p, i, list) => minimatch(p, pattern, options);
23898
- var ext = (a, b = {}) => {
23988
+ minimatch2.filter = (pattern, options = {}) => (p, i, list) => minimatch2(p, pattern, options);
23989
+ var ext2 = (a, b = {}) => {
23899
23990
  const t = {};
23900
23991
  Object.keys(a).forEach((k) => t[k] = a[k]);
23901
23992
  Object.keys(b).forEach((k) => t[k] = b[k]);
23902
23993
  return t;
23903
23994
  };
23904
- minimatch.defaults = (def) => {
23995
+ minimatch2.defaults = (def) => {
23905
23996
  if (!def || typeof def !== "object" || !Object.keys(def).length) {
23906
- return minimatch;
23997
+ return minimatch2;
23907
23998
  }
23908
- const orig = minimatch;
23909
- const m = (p, pattern, options) => orig(p, pattern, ext(def, options));
23999
+ const orig = minimatch2;
24000
+ const m = (p, pattern, options) => orig(p, pattern, ext2(def, options));
23910
24001
  m.Minimatch = class Minimatch extends orig.Minimatch {
23911
24002
  constructor(pattern, options) {
23912
- super(pattern, ext(def, options));
24003
+ super(pattern, ext2(def, options));
23913
24004
  }
23914
24005
  };
23915
- m.Minimatch.defaults = (options) => orig.defaults(ext(def, options)).Minimatch;
23916
- m.filter = (pattern, options) => orig.filter(pattern, ext(def, options));
23917
- m.defaults = (options) => orig.defaults(ext(def, options));
23918
- m.makeRe = (pattern, options) => orig.makeRe(pattern, ext(def, options));
23919
- m.braceExpand = (pattern, options) => orig.braceExpand(pattern, ext(def, options));
23920
- m.match = (list, pattern, options) => orig.match(list, pattern, ext(def, options));
24006
+ m.Minimatch.defaults = (options) => orig.defaults(ext2(def, options)).Minimatch;
24007
+ m.filter = (pattern, options) => orig.filter(pattern, ext2(def, options));
24008
+ m.defaults = (options) => orig.defaults(ext2(def, options));
24009
+ m.makeRe = (pattern, options) => orig.makeRe(pattern, ext2(def, options));
24010
+ m.braceExpand = (pattern, options) => orig.braceExpand(pattern, ext2(def, options));
24011
+ m.match = (list, pattern, options) => orig.match(list, pattern, ext2(def, options));
23921
24012
  return m;
23922
24013
  };
23923
- minimatch.braceExpand = (pattern, options) => braceExpand(pattern, options);
23924
- var braceExpand = (pattern, options = {}) => {
23925
- assertValidPattern(pattern);
24014
+ minimatch2.braceExpand = (pattern, options) => braceExpand2(pattern, options);
24015
+ var braceExpand2 = (pattern, options = {}) => {
24016
+ assertValidPattern2(pattern);
23926
24017
  if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
23927
24018
  return [pattern];
23928
24019
  }
23929
- return expand(pattern);
24020
+ return expand2(pattern);
23930
24021
  };
23931
- var MAX_PATTERN_LENGTH = 1024 * 64;
23932
- var assertValidPattern = (pattern) => {
24022
+ var MAX_PATTERN_LENGTH2 = 1024 * 64;
24023
+ var assertValidPattern2 = (pattern) => {
23933
24024
  if (typeof pattern !== "string") {
23934
24025
  throw new TypeError("invalid pattern");
23935
24026
  }
23936
- if (pattern.length > MAX_PATTERN_LENGTH) {
24027
+ if (pattern.length > MAX_PATTERN_LENGTH2) {
23937
24028
  throw new TypeError("pattern is too long");
23938
24029
  }
23939
24030
  };
23940
24031
  var SUBPARSE = Symbol("subparse");
23941
- minimatch.makeRe = (pattern, options) => new Minimatch(pattern, options || {}).makeRe();
23942
- minimatch.match = (list, pattern, options = {}) => {
23943
- const mm = new Minimatch(pattern, options);
24032
+ minimatch2.makeRe = (pattern, options) => new Minimatch2(pattern, options || {}).makeRe();
24033
+ minimatch2.match = (list, pattern, options = {}) => {
24034
+ const mm = new Minimatch2(pattern, options);
23944
24035
  list = list.filter((f) => mm.match(f));
23945
24036
  if (mm.options.nonull && !list.length) {
23946
24037
  list.push(pattern);
23947
24038
  }
23948
24039
  return list;
23949
24040
  };
23950
- var globUnescape = (s) => s.replace(/\\(.)/g, "$1");
24041
+ var globUnescape2 = (s) => s.replace(/\\(.)/g, "$1");
23951
24042
  var charUnescape = (s) => s.replace(/\\([^-\]])/g, "$1");
23952
- var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
24043
+ var regExpEscape2 = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
23953
24044
  var braExpEscape = (s) => s.replace(/[[\]\\]/g, "\\$&");
23954
- var Minimatch = class {
24045
+ var Minimatch2 = class {
23955
24046
  constructor(pattern, options) {
23956
- assertValidPattern(pattern);
24047
+ assertValidPattern2(pattern);
23957
24048
  if (!options)
23958
24049
  options = {};
23959
24050
  this.options = options;
@@ -24024,7 +24115,7 @@ var require_minimatch = __commonJS({
24024
24115
  this.debug(pattern, p, f);
24025
24116
  if (p === false)
24026
24117
  return false;
24027
- if (p === GLOBSTAR) {
24118
+ if (p === GLOBSTAR2) {
24028
24119
  this.debug("GLOBSTAR", [pattern, p, f]);
24029
24120
  var fr = fi;
24030
24121
  var pr = pi + 1;
@@ -24079,14 +24170,14 @@ var require_minimatch = __commonJS({
24079
24170
  throw new Error("wtf?");
24080
24171
  }
24081
24172
  braceExpand() {
24082
- return braceExpand(this.pattern, this.options);
24173
+ return braceExpand2(this.pattern, this.options);
24083
24174
  }
24084
24175
  parse(pattern, isSub) {
24085
- assertValidPattern(pattern);
24176
+ assertValidPattern2(pattern);
24086
24177
  const options = this.options;
24087
24178
  if (pattern === "**") {
24088
24179
  if (!options.noglobstar)
24089
- return GLOBSTAR;
24180
+ return GLOBSTAR2;
24090
24181
  else
24091
24182
  pattern = "*";
24092
24183
  }
@@ -24112,11 +24203,11 @@ var require_minimatch = __commonJS({
24112
24203
  if (stateChar) {
24113
24204
  switch (stateChar) {
24114
24205
  case "*":
24115
- re += star;
24206
+ re += star2;
24116
24207
  hasMagic = true;
24117
24208
  break;
24118
24209
  case "?":
24119
- re += qmark;
24210
+ re += qmark2;
24120
24211
  hasMagic = true;
24121
24212
  break;
24122
24213
  default:
@@ -24133,7 +24224,7 @@ var require_minimatch = __commonJS({
24133
24224
  if (c === "/") {
24134
24225
  return false;
24135
24226
  }
24136
- if (reSpecials[c]) {
24227
+ if (reSpecials2[c]) {
24137
24228
  re += "\\";
24138
24229
  }
24139
24230
  re += c;
@@ -24184,8 +24275,8 @@ var require_minimatch = __commonJS({
24184
24275
  type: stateChar,
24185
24276
  start: i - 1,
24186
24277
  reStart: re.length,
24187
- open: plTypes[stateChar].open,
24188
- close: plTypes[stateChar].close
24278
+ open: plTypes2[stateChar].open,
24279
+ close: plTypes2[stateChar].close
24189
24280
  };
24190
24281
  this.debug(this.pattern, " ", plEntry);
24191
24282
  patternListStack.push(plEntry);
@@ -24256,7 +24347,7 @@ var require_minimatch = __commonJS({
24256
24347
  continue;
24257
24348
  default:
24258
24349
  clearStateChar();
24259
- if (reSpecials[c] && !(c === "^" && inClass)) {
24350
+ if (reSpecials2[c] && !(c === "^" && inClass)) {
24260
24351
  re += "\\";
24261
24352
  }
24262
24353
  re += c;
@@ -24280,7 +24371,7 @@ var require_minimatch = __commonJS({
24280
24371
  return $1 + $1 + $2 + "|";
24281
24372
  });
24282
24373
  this.debug("tail=%j\n %s", tail, tail, pl, re);
24283
- const t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type;
24374
+ const t = pl.type === "*" ? star2 : pl.type === "?" ? qmark2 : "\\" + pl.type;
24284
24375
  hasMagic = true;
24285
24376
  re = re.slice(0, pl.reStart) + t + "\\(" + tail;
24286
24377
  }
@@ -24288,7 +24379,7 @@ var require_minimatch = __commonJS({
24288
24379
  if (escaping) {
24289
24380
  re += "\\\\";
24290
24381
  }
24291
- const addPatternStart = addPatternStartSet[re.charAt(0)];
24382
+ const addPatternStart = addPatternStartSet2[re.charAt(0)];
24292
24383
  for (let n = negativeLists.length - 1; n > -1; n--) {
24293
24384
  const nl = negativeLists[n];
24294
24385
  const nlBefore = re.slice(0, nl.reStart);
@@ -24318,7 +24409,7 @@ var require_minimatch = __commonJS({
24318
24409
  hasMagic = pattern.toUpperCase() !== pattern.toLowerCase();
24319
24410
  }
24320
24411
  if (!hasMagic) {
24321
- return globUnescape(pattern);
24412
+ return globUnescape2(pattern);
24322
24413
  }
24323
24414
  const flags = options.nocase ? "i" : "";
24324
24415
  try {
@@ -24339,19 +24430,19 @@ var require_minimatch = __commonJS({
24339
24430
  return this.regexp;
24340
24431
  }
24341
24432
  const options = this.options;
24342
- const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
24433
+ const twoStar = options.noglobstar ? star2 : options.dot ? twoStarDot2 : twoStarNoDot2;
24343
24434
  const flags = options.nocase ? "i" : "";
24344
24435
  let re = set.map((pattern) => {
24345
24436
  pattern = pattern.map(
24346
- (p) => typeof p === "string" ? regExpEscape(p) : p === GLOBSTAR ? GLOBSTAR : p._src
24437
+ (p) => typeof p === "string" ? regExpEscape2(p) : p === GLOBSTAR2 ? GLOBSTAR2 : p._src
24347
24438
  ).reduce((set2, p) => {
24348
- if (!(set2[set2.length - 1] === GLOBSTAR && p === GLOBSTAR)) {
24439
+ if (!(set2[set2.length - 1] === GLOBSTAR2 && p === GLOBSTAR2)) {
24349
24440
  set2.push(p);
24350
24441
  }
24351
24442
  return set2;
24352
24443
  }, []);
24353
24444
  pattern.forEach((p, i) => {
24354
- if (p !== GLOBSTAR || pattern[i - 1] === GLOBSTAR) {
24445
+ if (p !== GLOBSTAR2 || pattern[i - 1] === GLOBSTAR2) {
24355
24446
  return;
24356
24447
  }
24357
24448
  if (i === 0) {
@@ -24364,10 +24455,10 @@ var require_minimatch = __commonJS({
24364
24455
  pattern[i - 1] += "(?:\\/|" + twoStar + ")?";
24365
24456
  } else {
24366
24457
  pattern[i - 1] += "(?:\\/|\\/" + twoStar + "\\/)" + pattern[i + 1];
24367
- pattern[i + 1] = GLOBSTAR;
24458
+ pattern[i + 1] = GLOBSTAR2;
24368
24459
  }
24369
24460
  });
24370
- return pattern.filter((p) => p !== GLOBSTAR).join("/");
24461
+ return pattern.filter((p) => p !== GLOBSTAR2).join("/");
24371
24462
  }).join("|");
24372
24463
  re = "^(?:" + re + ")$";
24373
24464
  if (this.negate)
@@ -24388,8 +24479,8 @@ var require_minimatch = __commonJS({
24388
24479
  if (f === "/" && partial)
24389
24480
  return true;
24390
24481
  const options = this.options;
24391
- if (path2.sep !== "/") {
24392
- f = f.split(path2.sep).join("/");
24482
+ if (path3.sep !== "/") {
24483
+ f = f.split(path3.sep).join("/");
24393
24484
  }
24394
24485
  f = f.split(slashSplit);
24395
24486
  this.debug(this.pattern, "split", f);
@@ -24419,10 +24510,10 @@ var require_minimatch = __commonJS({
24419
24510
  return this.negate;
24420
24511
  }
24421
24512
  static defaults(def) {
24422
- return minimatch.defaults(def).Minimatch;
24513
+ return minimatch2.defaults(def).Minimatch;
24423
24514
  }
24424
24515
  };
24425
- minimatch.Minimatch = Minimatch;
24516
+ minimatch2.Minimatch = Minimatch2;
24426
24517
  }
24427
24518
  });
24428
24519
 
@@ -24487,10 +24578,10 @@ var require_common2 = __commonJS({
24487
24578
  return Object.prototype.hasOwnProperty.call(obj, field);
24488
24579
  }
24489
24580
  var fs7 = require("fs");
24490
- var path2 = require("path");
24491
- var minimatch = require_minimatch();
24581
+ var path3 = require("path");
24582
+ var minimatch2 = require_minimatch();
24492
24583
  var isAbsolute = require("path").isAbsolute;
24493
- var Minimatch = minimatch.Minimatch;
24584
+ var Minimatch2 = minimatch2.Minimatch;
24494
24585
  function alphasort(a, b) {
24495
24586
  return a.localeCompare(b, "en");
24496
24587
  }
@@ -24506,10 +24597,10 @@ var require_common2 = __commonJS({
24506
24597
  var gmatcher = null;
24507
24598
  if (pattern.slice(-3) === "/**") {
24508
24599
  var gpattern = pattern.replace(/(\/\*\*)+$/, "");
24509
- gmatcher = new Minimatch(gpattern, { dot: true });
24600
+ gmatcher = new Minimatch2(gpattern, { dot: true });
24510
24601
  }
24511
24602
  return {
24512
- matcher: new Minimatch(pattern, { dot: true }),
24603
+ matcher: new Minimatch2(pattern, { dot: true }),
24513
24604
  gmatcher
24514
24605
  };
24515
24606
  }
@@ -24554,13 +24645,13 @@ var require_common2 = __commonJS({
24554
24645
  self2.changedCwd = false;
24555
24646
  var cwd = process.cwd();
24556
24647
  if (!ownProp(options, "cwd"))
24557
- self2.cwd = path2.resolve(cwd);
24648
+ self2.cwd = path3.resolve(cwd);
24558
24649
  else {
24559
- self2.cwd = path2.resolve(options.cwd);
24650
+ self2.cwd = path3.resolve(options.cwd);
24560
24651
  self2.changedCwd = self2.cwd !== cwd;
24561
24652
  }
24562
- self2.root = options.root || path2.resolve(self2.cwd, "/");
24563
- self2.root = path2.resolve(self2.root);
24653
+ self2.root = options.root || path3.resolve(self2.cwd, "/");
24654
+ self2.root = path3.resolve(self2.root);
24564
24655
  self2.cwdAbs = isAbsolute(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd);
24565
24656
  self2.nomount = !!options.nomount;
24566
24657
  if (process.platform === "win32") {
@@ -24570,7 +24661,7 @@ var require_common2 = __commonJS({
24570
24661
  }
24571
24662
  options.nonegate = true;
24572
24663
  options.nocomment = true;
24573
- self2.minimatch = new Minimatch(pattern, options);
24664
+ self2.minimatch = new Minimatch2(pattern, options);
24574
24665
  self2.options = self2.minimatch.options;
24575
24666
  }
24576
24667
  function finish(self2) {
@@ -24642,30 +24733,30 @@ var require_common2 = __commonJS({
24642
24733
  function makeAbs(self2, f) {
24643
24734
  var abs = f;
24644
24735
  if (f.charAt(0) === "/") {
24645
- abs = path2.join(self2.root, f);
24736
+ abs = path3.join(self2.root, f);
24646
24737
  } else if (isAbsolute(f) || f === "") {
24647
24738
  abs = f;
24648
24739
  } else if (self2.changedCwd) {
24649
- abs = path2.resolve(self2.cwd, f);
24740
+ abs = path3.resolve(self2.cwd, f);
24650
24741
  } else {
24651
- abs = path2.resolve(f);
24742
+ abs = path3.resolve(f);
24652
24743
  }
24653
24744
  if (process.platform === "win32")
24654
24745
  abs = abs.replace(/\\/g, "/");
24655
24746
  return abs;
24656
24747
  }
24657
- function isIgnored(self2, path3) {
24748
+ function isIgnored(self2, path4) {
24658
24749
  if (!self2.ignore.length)
24659
24750
  return false;
24660
24751
  return self2.ignore.some(function(item) {
24661
- return item.matcher.match(path3) || !!(item.gmatcher && item.gmatcher.match(path3));
24752
+ return item.matcher.match(path4) || !!(item.gmatcher && item.gmatcher.match(path4));
24662
24753
  });
24663
24754
  }
24664
- function childrenIgnored(self2, path3) {
24755
+ function childrenIgnored(self2, path4) {
24665
24756
  if (!self2.ignore.length)
24666
24757
  return false;
24667
24758
  return self2.ignore.some(function(item) {
24668
- return !!(item.gmatcher && item.gmatcher.match(path3));
24759
+ return !!(item.gmatcher && item.gmatcher.match(path4));
24669
24760
  });
24670
24761
  }
24671
24762
  }
@@ -24677,11 +24768,11 @@ var require_sync = __commonJS({
24677
24768
  module2.exports = globSync;
24678
24769
  globSync.GlobSync = GlobSync;
24679
24770
  var rp = require_fs();
24680
- var minimatch = require_minimatch();
24681
- var Minimatch = minimatch.Minimatch;
24771
+ var minimatch2 = require_minimatch();
24772
+ var Minimatch2 = minimatch2.Minimatch;
24682
24773
  var Glob = require_glob().Glob;
24683
24774
  var util2 = require("util");
24684
- var path2 = require("path");
24775
+ var path3 = require("path");
24685
24776
  var assert = require("assert");
24686
24777
  var isAbsolute = require("path").isAbsolute;
24687
24778
  var common = require_common2();
@@ -24766,7 +24857,7 @@ var require_sync = __commonJS({
24766
24857
  var abs = this._makeAbs(read);
24767
24858
  if (childrenIgnored(this, read))
24768
24859
  return;
24769
- var isGlobStar = remain[0] === minimatch.GLOBSTAR;
24860
+ var isGlobStar = remain[0] === minimatch2.GLOBSTAR;
24770
24861
  if (isGlobStar)
24771
24862
  this._processGlobStar(prefix, read, abs, remain, index4, inGlobStar);
24772
24863
  else
@@ -24809,7 +24900,7 @@ var require_sync = __commonJS({
24809
24900
  e = prefix + e;
24810
24901
  }
24811
24902
  if (e.charAt(0) === "/" && !this.nomount) {
24812
- e = path2.join(this.root, e);
24903
+ e = path3.join(this.root, e);
24813
24904
  }
24814
24905
  this._emitMatch(index4, e);
24815
24906
  }
@@ -24958,9 +25049,9 @@ var require_sync = __commonJS({
24958
25049
  if (prefix && isAbsolute(prefix) && !this.nomount) {
24959
25050
  var trail = /[\/\\]$/.test(prefix);
24960
25051
  if (prefix.charAt(0) === "/") {
24961
- prefix = path2.join(this.root, prefix);
25052
+ prefix = path3.join(this.root, prefix);
24962
25053
  } else {
24963
- prefix = path2.resolve(this.root, prefix);
25054
+ prefix = path3.resolve(this.root, prefix);
24964
25055
  if (trail)
24965
25056
  prefix += "/";
24966
25057
  }
@@ -25151,11 +25242,11 @@ var require_glob = __commonJS({
25151
25242
  "node_modules/.pnpm/glob@8.1.0/node_modules/glob/glob.js"(exports, module2) {
25152
25243
  module2.exports = glob2;
25153
25244
  var rp = require_fs();
25154
- var minimatch = require_minimatch();
25155
- var Minimatch = minimatch.Minimatch;
25245
+ var minimatch2 = require_minimatch();
25246
+ var Minimatch2 = minimatch2.Minimatch;
25156
25247
  var inherits = require_inherits();
25157
25248
  var EE = require("events").EventEmitter;
25158
- var path2 = require("path");
25249
+ var path3 = require("path");
25159
25250
  var assert = require("assert");
25160
25251
  var isAbsolute = require("path").isAbsolute;
25161
25252
  var globSync = require_sync();
@@ -25390,7 +25481,7 @@ var require_glob = __commonJS({
25390
25481
  var abs = this._makeAbs(read);
25391
25482
  if (childrenIgnored(this, read))
25392
25483
  return cb();
25393
- var isGlobStar = remain[0] === minimatch.GLOBSTAR;
25484
+ var isGlobStar = remain[0] === minimatch2.GLOBSTAR;
25394
25485
  if (isGlobStar)
25395
25486
  this._processGlobStar(prefix, read, abs, remain, index4, inGlobStar, cb);
25396
25487
  else
@@ -25438,7 +25529,7 @@ var require_glob = __commonJS({
25438
25529
  e = prefix + e;
25439
25530
  }
25440
25531
  if (e.charAt(0) === "/" && !this.nomount) {
25441
- e = path2.join(this.root, e);
25532
+ e = path3.join(this.root, e);
25442
25533
  }
25443
25534
  this._emitMatch(index4, e);
25444
25535
  }
@@ -25625,9 +25716,9 @@ var require_glob = __commonJS({
25625
25716
  if (prefix && isAbsolute(prefix) && !this.nomount) {
25626
25717
  var trail = /[\/\\]$/.test(prefix);
25627
25718
  if (prefix.charAt(0) === "/") {
25628
- prefix = path2.join(this.root, prefix);
25719
+ prefix = path3.join(this.root, prefix);
25629
25720
  } else {
25630
- prefix = path2.resolve(this.root, prefix);
25721
+ prefix = path3.resolve(this.root, prefix);
25631
25722
  if (trail)
25632
25723
  prefix += "/";
25633
25724
  }
@@ -25829,7 +25920,7 @@ var init_mysqlSerializer = __esm({
25829
25920
  columnsObject[column6.name] = columnToSet;
25830
25921
  });
25831
25922
  primaryKeys.map((pk) => {
25832
- const columnNames = pk.columns.map((c) => c.name);
25923
+ const columnNames = pk.columns.map((c) => c.name).sort();
25833
25924
  primaryKeysObject[`${tableName}_${columnNames.join("_")}`] = {
25834
25925
  name: `${tableName}_${columnNames.join("_")}`,
25835
25926
  columns: columnNames
@@ -25902,7 +25993,7 @@ var init_mysqlSerializer = __esm({
25902
25993
  }
25903
25994
  };
25904
25995
  };
25905
- fromDatabase = async (db, inputSchema, progressCallback) => {
25996
+ fromDatabase = async (db, inputSchema, tablesFilter = (table4) => true, progressCallback) => {
25906
25997
  const result = {};
25907
25998
  const columns = await db.execute(`select * from information_schema.columns
25908
25999
  where table_schema = '${inputSchema}' and table_name != '__drizzle_migrations'
@@ -25915,6 +26006,8 @@ var init_mysqlSerializer = __esm({
25915
26006
  let foreignKeysCount = 0;
25916
26007
  const tableToPk = {};
25917
26008
  for (const column6 of response) {
26009
+ if (!tablesFilter(column6["TABLE_NAME"]))
26010
+ continue;
25918
26011
  columnsCount += 1;
25919
26012
  if (progressCallback) {
25920
26013
  progressCallback("columns", columnsCount, "fetching");
@@ -25930,11 +26023,16 @@ var init_mysqlSerializer = __esm({
25930
26023
  const dataType = column6["DATA_TYPE"];
25931
26024
  const columnType = column6["COLUMN_TYPE"];
25932
26025
  const isPrimary = column6["COLUMN_KEY"] === "PRI";
25933
- const isAutoincrement = column6["EXTRA"] === "auto_increment";
25934
- const isDefaultAnExpression = column6["EXTRA"] === "DEFAULT_GENERATED";
25935
26026
  const columnDefault = column6["COLUMN_DEFAULT"];
25936
26027
  const collation = column6["CHARACTER_SET_NAME"];
25937
- const columnExtra = column6["EXTRA"];
26028
+ let columnExtra = column6["EXTRA"];
26029
+ let isAutoincrement = false;
26030
+ let isDefaultAnExpression = false;
26031
+ if (typeof column6["EXTRA"] !== "undefined") {
26032
+ columnExtra = column6["EXTRA"];
26033
+ isAutoincrement = column6["EXTRA"] === "auto_increment";
26034
+ isDefaultAnExpression = column6["EXTRA"].includes("DEFAULT_GENERATED");
26035
+ }
25938
26036
  if (isPrimary) {
25939
26037
  if (typeof tableToPk[tableName] === "undefined") {
25940
26038
  tableToPk[tableName] = [columnName];
@@ -25951,7 +26049,7 @@ var init_mysqlSerializer = __esm({
25951
26049
  changedType = "tinyint";
25952
26050
  }
25953
26051
  let onUpdate = void 0;
25954
- if (columnType.startsWith("timestamp") && typeof columnExtra !== "undefined" && columnExtra.startsWith("on update") && columnExtra.substring("on update".length + 1, columnExtra.length) === "CURRENT_TIMESTAMP") {
26052
+ if (columnType.startsWith("timestamp") && typeof columnExtra !== "undefined" && columnExtra.includes("on update CURRENT_TIMESTAMP")) {
25955
26053
  onUpdate = true;
25956
26054
  }
25957
26055
  const newColumn = {
@@ -25981,9 +26079,9 @@ var init_mysqlSerializer = __esm({
25981
26079
  for (const [key, value] of Object.entries(tableToPk)) {
25982
26080
  if (value.length > 1) {
25983
26081
  result[key].compositePrimaryKeys = {
25984
- [`${key}_${value.join("_")}`]: {
26082
+ [`${key}_${value.sort().join("_")}`]: {
25985
26083
  name: `${key}_${value.join("_")}`,
25986
- columns: value
26084
+ columns: value.sort()
25987
26085
  }
25988
26086
  };
25989
26087
  } else if (value.length === 1) {
@@ -26046,7 +26144,6 @@ var init_mysqlSerializer = __esm({
26046
26144
  ];
26047
26145
  }
26048
26146
  } catch (e) {
26049
- console.log(`Can't proccess foreign keys`);
26050
26147
  }
26051
26148
  if (progressCallback) {
26052
26149
  progressCallback("fks", foreignKeysCount, "done");
@@ -26794,8 +26891,8 @@ var init_serializer = __esm({
26794
26891
  } };
26795
26892
  }
26796
26893
  };
26797
- serializeMySql = (path2) => {
26798
- const filenames = prepareFilenames(path2);
26894
+ serializeMySql = (path3) => {
26895
+ const filenames = prepareFilenames(path3);
26799
26896
  const { unregister } = safeRegister();
26800
26897
  const { prepareFromMySqlImports: prepareFromMySqlImports2 } = (init_mysqlImports(), __toCommonJS(mysqlImports_exports));
26801
26898
  const { generateMySqlSnapshot: generateMySqlSnapshot2 } = (init_mysqlSerializer(), __toCommonJS(mysqlSerializer_exports));
@@ -26803,8 +26900,8 @@ var init_serializer = __esm({
26803
26900
  unregister();
26804
26901
  return generateMySqlSnapshot2(tables, enums, schemas);
26805
26902
  };
26806
- serializePg = (path2) => {
26807
- const filenames = prepareFilenames(path2);
26903
+ serializePg = (path3) => {
26904
+ const filenames = prepareFilenames(path3);
26808
26905
  const { unregister } = safeRegister();
26809
26906
  const { prepareFromPgImports: prepareFromPgImports2 } = (init_pgImports(), __toCommonJS(pgImports_exports));
26810
26907
  const { generatePgSnapshot: generatePgSnapshot2 } = (init_pgSerializer(), __toCommonJS(pgSerializer_exports));
@@ -26812,8 +26909,8 @@ var init_serializer = __esm({
26812
26909
  unregister();
26813
26910
  return generatePgSnapshot2(tables, enums, schemas);
26814
26911
  };
26815
- serializeSQLite = (path2) => {
26816
- const filenames = prepareFilenames(path2);
26912
+ serializeSQLite = (path3) => {
26913
+ const filenames = prepareFilenames(path3);
26817
26914
  const { unregister } = safeRegister();
26818
26915
  const { prepareFromSqliteImports: prepareFromSqliteImports2 } = (init_sqliteImports(), __toCommonJS(sqliteImports_exports));
26819
26916
  const { generateSqliteSnapshot: generateSqliteSnapshot2 } = (init_sqliteSerializer(), __toCommonJS(sqliteSerializer_exports));
@@ -26821,11 +26918,11 @@ var init_serializer = __esm({
26821
26918
  unregister();
26822
26919
  return generateSqliteSnapshot2(tables, enums);
26823
26920
  };
26824
- prepareFilenames = (path2) => {
26825
- if (typeof path2 === "string") {
26826
- path2 = [path2];
26921
+ prepareFilenames = (path3) => {
26922
+ if (typeof path3 === "string") {
26923
+ path3 = [path3];
26827
26924
  }
26828
- const result = path2.reduce((result2, cur) => {
26925
+ const result = path3.reduce((result2, cur) => {
26829
26926
  const globbed = import_glob.default.sync(cur);
26830
26927
  globbed.forEach((it) => {
26831
26928
  const fileName = import_fs5.default.lstatSync(it).isDirectory() ? null : import_path3.default.resolve(it);
@@ -27426,7 +27523,7 @@ var require_SqlString = __commonJS({
27426
27523
  return "`" + String(val).replace(ID_GLOBAL_REGEXP, "``").replace(QUAL_GLOBAL_REGEXP, "`.`") + "`";
27427
27524
  }
27428
27525
  };
27429
- SqlString.escape = function escape(val, stringifyObjects, timeZone) {
27526
+ SqlString.escape = function escape2(val, stringifyObjects, timeZone) {
27430
27527
  if (val === void 0 || val === null) {
27431
27528
  return "NULL";
27432
27529
  }
@@ -27476,14 +27573,14 @@ var require_SqlString = __commonJS({
27476
27573
  var placeholdersRegex = /\?+/g;
27477
27574
  var result = "";
27478
27575
  var valuesIndex = 0;
27479
- var match;
27480
- while (valuesIndex < values.length && (match = placeholdersRegex.exec(sql))) {
27481
- var len = match[0].length;
27576
+ var match2;
27577
+ while (valuesIndex < values.length && (match2 = placeholdersRegex.exec(sql))) {
27578
+ var len = match2[0].length;
27482
27579
  if (len > 2) {
27483
27580
  continue;
27484
27581
  }
27485
27582
  var value = len === 2 ? SqlString.escapeId(values[valuesIndex]) : SqlString.escape(values[valuesIndex], stringifyObjects, timeZone);
27486
- result += sql.slice(chunkIndex, match.index) + value;
27583
+ result += sql.slice(chunkIndex, match2.index) + value;
27487
27584
  chunkIndex = placeholdersRegex.lastIndex;
27488
27585
  valuesIndex++;
27489
27586
  }
@@ -27558,9 +27655,9 @@ var require_SqlString = __commonJS({
27558
27655
  function escapeString(val) {
27559
27656
  var chunkIndex = CHARS_GLOBAL_REGEXP.lastIndex = 0;
27560
27657
  var escapedVal = "";
27561
- var match;
27562
- while (match = CHARS_GLOBAL_REGEXP.exec(val)) {
27563
- escapedVal += val.slice(chunkIndex, match.index) + CHARS_ESCAPE_MAP[match[0]];
27658
+ var match2;
27659
+ while (match2 = CHARS_GLOBAL_REGEXP.exec(val)) {
27660
+ escapedVal += val.slice(chunkIndex, match2.index) + CHARS_ESCAPE_MAP[match2[0]];
27564
27661
  chunkIndex = CHARS_GLOBAL_REGEXP.lastIndex;
27565
27662
  }
27566
27663
  if (chunkIndex === 0) {
@@ -39522,12 +39619,12 @@ var require_query2 = __commonJS({
39522
39619
  this._fields.push([]);
39523
39620
  return this.readField;
39524
39621
  }
39525
- _streamLocalInfile(connection, path2) {
39622
+ _streamLocalInfile(connection, path3) {
39526
39623
  if (this._streamFactory) {
39527
- this._localStream = this._streamFactory(path2);
39624
+ this._localStream = this._streamFactory(path3);
39528
39625
  } else {
39529
39626
  this._localStreamError = new Error(
39530
- `As a result of LOCAL INFILE command server wants to read ${path2} file, but as of v2.0 you must provide streamFactory option returning ReadStream.`
39627
+ `As a result of LOCAL INFILE command server wants to read ${path3} file, but as of v2.0 you must provide streamFactory option returning ReadStream.`
39531
39628
  );
39532
39629
  connection.writePacket(EmptyPacket);
39533
39630
  return this.infileOk;
@@ -41767,7 +41864,7 @@ var require_named_placeholders = __commonJS({
41767
41864
  let end;
41768
41865
  const parts = [];
41769
41866
  let inQuote = false;
41770
- let escape = false;
41867
+ let escape2 = false;
41771
41868
  let qchr;
41772
41869
  const tokens = [];
41773
41870
  let qcnt = 0;
@@ -41778,10 +41875,10 @@ var require_named_placeholders = __commonJS({
41778
41875
  for (i = curpos, end = ppos.index; i < end; ++i) {
41779
41876
  let chr = query.charCodeAt(i);
41780
41877
  if (chr === BSLASH)
41781
- escape = !escape;
41878
+ escape2 = !escape2;
41782
41879
  else {
41783
- if (escape) {
41784
- escape = false;
41880
+ if (escape2) {
41881
+ escape2 = false;
41785
41882
  continue;
41786
41883
  }
41787
41884
  if (inQuote && chr === qchr) {
@@ -44235,6 +44332,1038 @@ import { sql } from "drizzle-orm/sql"
44235
44332
  }
44236
44333
  });
44237
44334
 
44335
+ // node_modules/.pnpm/minimatch@7.4.3/node_modules/minimatch/dist/mjs/brace-expressions.js
44336
+ var posixClasses, braceEscape, regexpEscape, rangesToString, parseClass;
44337
+ var init_brace_expressions = __esm({
44338
+ "node_modules/.pnpm/minimatch@7.4.3/node_modules/minimatch/dist/mjs/brace-expressions.js"() {
44339
+ posixClasses = {
44340
+ "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
44341
+ "[:alpha:]": ["\\p{L}\\p{Nl}", true],
44342
+ "[:ascii:]": ["\\x00-\\x7f", false],
44343
+ "[:blank:]": ["\\p{Zs}\\t", true],
44344
+ "[:cntrl:]": ["\\p{Cc}", true],
44345
+ "[:digit:]": ["\\p{Nd}", true],
44346
+ "[:graph:]": ["\\p{Z}\\p{C}", true, true],
44347
+ "[:lower:]": ["\\p{Ll}", true],
44348
+ "[:print:]": ["\\p{C}", true],
44349
+ "[:punct:]": ["\\p{P}", true],
44350
+ "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true],
44351
+ "[:upper:]": ["\\p{Lu}", true],
44352
+ "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true],
44353
+ "[:xdigit:]": ["A-Fa-f0-9", false]
44354
+ };
44355
+ braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&");
44356
+ regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
44357
+ rangesToString = (ranges) => ranges.join("");
44358
+ parseClass = (glob2, position) => {
44359
+ const pos = position;
44360
+ if (glob2.charAt(pos) !== "[") {
44361
+ throw new Error("not in a brace expression");
44362
+ }
44363
+ const ranges = [];
44364
+ const negs = [];
44365
+ let i = pos + 1;
44366
+ let sawStart = false;
44367
+ let uflag = false;
44368
+ let escaping = false;
44369
+ let negate = false;
44370
+ let endPos = pos;
44371
+ let rangeStart = "";
44372
+ WHILE:
44373
+ while (i < glob2.length) {
44374
+ const c = glob2.charAt(i);
44375
+ if ((c === "!" || c === "^") && i === pos + 1) {
44376
+ negate = true;
44377
+ i++;
44378
+ continue;
44379
+ }
44380
+ if (c === "]" && sawStart && !escaping) {
44381
+ endPos = i + 1;
44382
+ break;
44383
+ }
44384
+ sawStart = true;
44385
+ if (c === "\\") {
44386
+ if (!escaping) {
44387
+ escaping = true;
44388
+ i++;
44389
+ continue;
44390
+ }
44391
+ }
44392
+ if (c === "[" && !escaping) {
44393
+ for (const [cls, [unip, u, neg]] of Object.entries(posixClasses)) {
44394
+ if (glob2.startsWith(cls, i)) {
44395
+ if (rangeStart) {
44396
+ return ["$.", false, glob2.length - pos, true];
44397
+ }
44398
+ i += cls.length;
44399
+ if (neg)
44400
+ negs.push(unip);
44401
+ else
44402
+ ranges.push(unip);
44403
+ uflag = uflag || u;
44404
+ continue WHILE;
44405
+ }
44406
+ }
44407
+ }
44408
+ escaping = false;
44409
+ if (rangeStart) {
44410
+ if (c > rangeStart) {
44411
+ ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c));
44412
+ } else if (c === rangeStart) {
44413
+ ranges.push(braceEscape(c));
44414
+ }
44415
+ rangeStart = "";
44416
+ i++;
44417
+ continue;
44418
+ }
44419
+ if (glob2.startsWith("-]", i + 1)) {
44420
+ ranges.push(braceEscape(c + "-"));
44421
+ i += 2;
44422
+ continue;
44423
+ }
44424
+ if (glob2.startsWith("-", i + 1)) {
44425
+ rangeStart = c;
44426
+ i += 2;
44427
+ continue;
44428
+ }
44429
+ ranges.push(braceEscape(c));
44430
+ i++;
44431
+ }
44432
+ if (endPos < i) {
44433
+ return ["", false, 0, false];
44434
+ }
44435
+ if (!ranges.length && !negs.length) {
44436
+ return ["$.", false, glob2.length - pos, true];
44437
+ }
44438
+ if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) {
44439
+ const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0];
44440
+ return [regexpEscape(r), false, endPos - pos, false];
44441
+ }
44442
+ const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]";
44443
+ const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]";
44444
+ const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs;
44445
+ return [comb, uflag, endPos - pos, true];
44446
+ };
44447
+ }
44448
+ });
44449
+
44450
+ // node_modules/.pnpm/minimatch@7.4.3/node_modules/minimatch/dist/mjs/escape.js
44451
+ var escape;
44452
+ var init_escape = __esm({
44453
+ "node_modules/.pnpm/minimatch@7.4.3/node_modules/minimatch/dist/mjs/escape.js"() {
44454
+ escape = (s, { windowsPathsNoEscape = false } = {}) => {
44455
+ return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&");
44456
+ };
44457
+ }
44458
+ });
44459
+
44460
+ // node_modules/.pnpm/minimatch@7.4.3/node_modules/minimatch/dist/mjs/unescape.js
44461
+ var unescape;
44462
+ var init_unescape = __esm({
44463
+ "node_modules/.pnpm/minimatch@7.4.3/node_modules/minimatch/dist/mjs/unescape.js"() {
44464
+ unescape = (s, { windowsPathsNoEscape = false } = {}) => {
44465
+ return windowsPathsNoEscape ? s.replace(/\[([^\/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^\/\\])\]/g, "$1$2").replace(/\\([^\/])/g, "$1");
44466
+ };
44467
+ }
44468
+ });
44469
+
44470
+ // node_modules/.pnpm/minimatch@7.4.3/node_modules/minimatch/dist/mjs/index.js
44471
+ var import_brace_expansion, minimatch, starDotExtRE, starDotExtTest, starDotExtTestDot, starDotExtTestNocase, starDotExtTestNocaseDot, starDotStarRE, starDotStarTest, starDotStarTestDot, dotStarRE, dotStarTest, starRE, starTest, starTestDot, qmarksRE, qmarksTestNocase, qmarksTestNocaseDot, qmarksTestDot, qmarksTest, qmarksTestNoExt, qmarksTestNoExtDot, defaultPlatform, path2, sep, GLOBSTAR, plTypes, qmark, star, twoStarDot, twoStarNoDot, charSet, reSpecials, addPatternStartSet, filter, ext, defaults, braceExpand, MAX_PATTERN_LENGTH, assertValidPattern, makeRe, match, globUnescape, globMagic, regExpEscape, Minimatch;
44472
+ var init_mjs = __esm({
44473
+ "node_modules/.pnpm/minimatch@7.4.3/node_modules/minimatch/dist/mjs/index.js"() {
44474
+ import_brace_expansion = __toESM(require_brace_expansion(), 1);
44475
+ init_brace_expressions();
44476
+ init_escape();
44477
+ init_unescape();
44478
+ init_escape();
44479
+ init_unescape();
44480
+ minimatch = (p, pattern, options = {}) => {
44481
+ assertValidPattern(pattern);
44482
+ if (!options.nocomment && pattern.charAt(0) === "#") {
44483
+ return false;
44484
+ }
44485
+ return new Minimatch(pattern, options).match(p);
44486
+ };
44487
+ starDotExtRE = /^\*+([^+@!?\*\[\(]*)$/;
44488
+ starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2);
44489
+ starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2);
44490
+ starDotExtTestNocase = (ext2) => {
44491
+ ext2 = ext2.toLowerCase();
44492
+ return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2);
44493
+ };
44494
+ starDotExtTestNocaseDot = (ext2) => {
44495
+ ext2 = ext2.toLowerCase();
44496
+ return (f) => f.toLowerCase().endsWith(ext2);
44497
+ };
44498
+ starDotStarRE = /^\*+\.\*+$/;
44499
+ starDotStarTest = (f) => !f.startsWith(".") && f.includes(".");
44500
+ starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes(".");
44501
+ dotStarRE = /^\.\*+$/;
44502
+ dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith(".");
44503
+ starRE = /^\*+$/;
44504
+ starTest = (f) => f.length !== 0 && !f.startsWith(".");
44505
+ starTestDot = (f) => f.length !== 0 && f !== "." && f !== "..";
44506
+ qmarksRE = /^\?+([^+@!?\*\[\(]*)?$/;
44507
+ qmarksTestNocase = ([$0, ext2 = ""]) => {
44508
+ const noext = qmarksTestNoExt([$0]);
44509
+ if (!ext2)
44510
+ return noext;
44511
+ ext2 = ext2.toLowerCase();
44512
+ return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
44513
+ };
44514
+ qmarksTestNocaseDot = ([$0, ext2 = ""]) => {
44515
+ const noext = qmarksTestNoExtDot([$0]);
44516
+ if (!ext2)
44517
+ return noext;
44518
+ ext2 = ext2.toLowerCase();
44519
+ return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
44520
+ };
44521
+ qmarksTestDot = ([$0, ext2 = ""]) => {
44522
+ const noext = qmarksTestNoExtDot([$0]);
44523
+ return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
44524
+ };
44525
+ qmarksTest = ([$0, ext2 = ""]) => {
44526
+ const noext = qmarksTestNoExt([$0]);
44527
+ return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
44528
+ };
44529
+ qmarksTestNoExt = ([$0]) => {
44530
+ const len = $0.length;
44531
+ return (f) => f.length === len && !f.startsWith(".");
44532
+ };
44533
+ qmarksTestNoExtDot = ([$0]) => {
44534
+ const len = $0.length;
44535
+ return (f) => f.length === len && f !== "." && f !== "..";
44536
+ };
44537
+ defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix";
44538
+ path2 = {
44539
+ win32: { sep: "\\" },
44540
+ posix: { sep: "/" }
44541
+ };
44542
+ sep = defaultPlatform === "win32" ? path2.win32.sep : path2.posix.sep;
44543
+ minimatch.sep = sep;
44544
+ GLOBSTAR = Symbol("globstar **");
44545
+ minimatch.GLOBSTAR = GLOBSTAR;
44546
+ plTypes = {
44547
+ "!": { open: "(?:(?!(?:", close: "))[^/]*?)" },
44548
+ "?": { open: "(?:", close: ")?" },
44549
+ "+": { open: "(?:", close: ")+" },
44550
+ "*": { open: "(?:", close: ")*" },
44551
+ "@": { open: "(?:", close: ")" }
44552
+ };
44553
+ qmark = "[^/]";
44554
+ star = qmark + "*?";
44555
+ twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
44556
+ twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
44557
+ charSet = (s) => s.split("").reduce((set, c) => {
44558
+ set[c] = true;
44559
+ return set;
44560
+ }, {});
44561
+ reSpecials = charSet("().*{}+?[]^$\\!");
44562
+ addPatternStartSet = charSet("[.(");
44563
+ filter = (pattern, options = {}) => (p) => minimatch(p, pattern, options);
44564
+ minimatch.filter = filter;
44565
+ ext = (a, b = {}) => Object.assign({}, a, b);
44566
+ defaults = (def) => {
44567
+ if (!def || typeof def !== "object" || !Object.keys(def).length) {
44568
+ return minimatch;
44569
+ }
44570
+ const orig = minimatch;
44571
+ const m = (p, pattern, options = {}) => orig(p, pattern, ext(def, options));
44572
+ return Object.assign(m, {
44573
+ Minimatch: class Minimatch extends orig.Minimatch {
44574
+ constructor(pattern, options = {}) {
44575
+ super(pattern, ext(def, options));
44576
+ }
44577
+ static defaults(options) {
44578
+ return orig.defaults(ext(def, options)).Minimatch;
44579
+ }
44580
+ },
44581
+ unescape: (s, options = {}) => orig.unescape(s, ext(def, options)),
44582
+ escape: (s, options = {}) => orig.escape(s, ext(def, options)),
44583
+ filter: (pattern, options = {}) => orig.filter(pattern, ext(def, options)),
44584
+ defaults: (options) => orig.defaults(ext(def, options)),
44585
+ makeRe: (pattern, options = {}) => orig.makeRe(pattern, ext(def, options)),
44586
+ braceExpand: (pattern, options = {}) => orig.braceExpand(pattern, ext(def, options)),
44587
+ match: (list, pattern, options = {}) => orig.match(list, pattern, ext(def, options)),
44588
+ sep: orig.sep,
44589
+ GLOBSTAR
44590
+ });
44591
+ };
44592
+ minimatch.defaults = defaults;
44593
+ braceExpand = (pattern, options = {}) => {
44594
+ assertValidPattern(pattern);
44595
+ if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
44596
+ return [pattern];
44597
+ }
44598
+ return (0, import_brace_expansion.default)(pattern);
44599
+ };
44600
+ minimatch.braceExpand = braceExpand;
44601
+ MAX_PATTERN_LENGTH = 1024 * 64;
44602
+ assertValidPattern = (pattern) => {
44603
+ if (typeof pattern !== "string") {
44604
+ throw new TypeError("invalid pattern");
44605
+ }
44606
+ if (pattern.length > MAX_PATTERN_LENGTH) {
44607
+ throw new TypeError("pattern is too long");
44608
+ }
44609
+ };
44610
+ makeRe = (pattern, options = {}) => new Minimatch(pattern, options).makeRe();
44611
+ minimatch.makeRe = makeRe;
44612
+ match = (list, pattern, options = {}) => {
44613
+ const mm = new Minimatch(pattern, options);
44614
+ list = list.filter((f) => mm.match(f));
44615
+ if (mm.options.nonull && !list.length) {
44616
+ list.push(pattern);
44617
+ }
44618
+ return list;
44619
+ };
44620
+ minimatch.match = match;
44621
+ globUnescape = (s) => s.replace(/\\(.)/g, "$1");
44622
+ globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
44623
+ regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
44624
+ Minimatch = class {
44625
+ constructor(pattern, options = {}) {
44626
+ __publicField(this, "options");
44627
+ __publicField(this, "set");
44628
+ __publicField(this, "pattern");
44629
+ __publicField(this, "windowsPathsNoEscape");
44630
+ __publicField(this, "nonegate");
44631
+ __publicField(this, "negate");
44632
+ __publicField(this, "comment");
44633
+ __publicField(this, "empty");
44634
+ __publicField(this, "preserveMultipleSlashes");
44635
+ __publicField(this, "partial");
44636
+ __publicField(this, "globSet");
44637
+ __publicField(this, "globParts");
44638
+ __publicField(this, "nocase");
44639
+ __publicField(this, "isWindows");
44640
+ __publicField(this, "platform");
44641
+ __publicField(this, "windowsNoMagicRoot");
44642
+ __publicField(this, "regexp");
44643
+ assertValidPattern(pattern);
44644
+ options = options || {};
44645
+ this.options = options;
44646
+ this.pattern = pattern;
44647
+ this.platform = options.platform || defaultPlatform;
44648
+ this.isWindows = this.platform === "win32";
44649
+ this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options.allowWindowsEscape === false;
44650
+ if (this.windowsPathsNoEscape) {
44651
+ this.pattern = this.pattern.replace(/\\/g, "/");
44652
+ }
44653
+ this.preserveMultipleSlashes = !!options.preserveMultipleSlashes;
44654
+ this.regexp = null;
44655
+ this.negate = false;
44656
+ this.nonegate = !!options.nonegate;
44657
+ this.comment = false;
44658
+ this.empty = false;
44659
+ this.partial = !!options.partial;
44660
+ this.nocase = !!this.options.nocase;
44661
+ this.windowsNoMagicRoot = options.windowsNoMagicRoot !== void 0 ? options.windowsNoMagicRoot : !!(this.isWindows && this.nocase);
44662
+ this.globSet = [];
44663
+ this.globParts = [];
44664
+ this.set = [];
44665
+ this.make();
44666
+ }
44667
+ hasMagic() {
44668
+ if (this.options.magicalBraces && this.set.length > 1) {
44669
+ return true;
44670
+ }
44671
+ for (const pattern of this.set) {
44672
+ for (const part of pattern) {
44673
+ if (typeof part !== "string")
44674
+ return true;
44675
+ }
44676
+ }
44677
+ return false;
44678
+ }
44679
+ debug(..._) {
44680
+ }
44681
+ make() {
44682
+ const pattern = this.pattern;
44683
+ const options = this.options;
44684
+ if (!options.nocomment && pattern.charAt(0) === "#") {
44685
+ this.comment = true;
44686
+ return;
44687
+ }
44688
+ if (!pattern) {
44689
+ this.empty = true;
44690
+ return;
44691
+ }
44692
+ this.parseNegate();
44693
+ this.globSet = [...new Set(this.braceExpand())];
44694
+ if (options.debug) {
44695
+ this.debug = (...args) => console.error(...args);
44696
+ }
44697
+ this.debug(this.pattern, this.globSet);
44698
+ const rawGlobParts = this.globSet.map((s) => this.slashSplit(s));
44699
+ this.globParts = this.preprocess(rawGlobParts);
44700
+ this.debug(this.pattern, this.globParts);
44701
+ let set = this.globParts.map((s, _, __) => {
44702
+ if (this.isWindows && this.windowsNoMagicRoot) {
44703
+ const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]);
44704
+ const isDrive = /^[a-z]:/i.test(s[0]);
44705
+ if (isUNC) {
44706
+ return [...s.slice(0, 4), ...s.slice(4).map((ss) => this.parse(ss))];
44707
+ } else if (isDrive) {
44708
+ return [s[0], ...s.slice(1).map((ss) => this.parse(ss))];
44709
+ }
44710
+ }
44711
+ return s.map((ss) => this.parse(ss));
44712
+ });
44713
+ this.debug(this.pattern, set);
44714
+ this.set = set.filter((s) => s.indexOf(false) === -1);
44715
+ if (this.isWindows) {
44716
+ for (let i = 0; i < this.set.length; i++) {
44717
+ const p = this.set[i];
44718
+ if (p[0] === "" && p[1] === "" && this.globParts[i][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) {
44719
+ p[2] = "?";
44720
+ }
44721
+ }
44722
+ }
44723
+ this.debug(this.pattern, this.set);
44724
+ }
44725
+ preprocess(globParts) {
44726
+ if (this.options.noglobstar) {
44727
+ for (let i = 0; i < globParts.length; i++) {
44728
+ for (let j = 0; j < globParts[i].length; j++) {
44729
+ if (globParts[i][j] === "**") {
44730
+ globParts[i][j] = "*";
44731
+ }
44732
+ }
44733
+ }
44734
+ }
44735
+ const { optimizationLevel = 1 } = this.options;
44736
+ if (optimizationLevel >= 2) {
44737
+ globParts = this.firstPhasePreProcess(globParts);
44738
+ globParts = this.secondPhasePreProcess(globParts);
44739
+ } else if (optimizationLevel >= 1) {
44740
+ globParts = this.levelOneOptimize(globParts);
44741
+ } else {
44742
+ globParts = this.adjascentGlobstarOptimize(globParts);
44743
+ }
44744
+ return globParts;
44745
+ }
44746
+ adjascentGlobstarOptimize(globParts) {
44747
+ return globParts.map((parts) => {
44748
+ let gs = -1;
44749
+ while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
44750
+ let i = gs;
44751
+ while (parts[i + 1] === "**") {
44752
+ i++;
44753
+ }
44754
+ if (i !== gs) {
44755
+ parts.splice(gs, i - gs);
44756
+ }
44757
+ }
44758
+ return parts;
44759
+ });
44760
+ }
44761
+ levelOneOptimize(globParts) {
44762
+ return globParts.map((parts) => {
44763
+ parts = parts.reduce((set, part) => {
44764
+ const prev = set[set.length - 1];
44765
+ if (part === "**" && prev === "**") {
44766
+ return set;
44767
+ }
44768
+ if (part === "..") {
44769
+ if (prev && prev !== ".." && prev !== "." && prev !== "**") {
44770
+ set.pop();
44771
+ return set;
44772
+ }
44773
+ }
44774
+ set.push(part);
44775
+ return set;
44776
+ }, []);
44777
+ return parts.length === 0 ? [""] : parts;
44778
+ });
44779
+ }
44780
+ levelTwoFileOptimize(parts) {
44781
+ if (!Array.isArray(parts)) {
44782
+ parts = this.slashSplit(parts);
44783
+ }
44784
+ let didSomething = false;
44785
+ do {
44786
+ didSomething = false;
44787
+ if (!this.preserveMultipleSlashes) {
44788
+ for (let i = 1; i < parts.length - 1; i++) {
44789
+ const p = parts[i];
44790
+ if (i === 1 && p === "" && parts[0] === "")
44791
+ continue;
44792
+ if (p === "." || p === "") {
44793
+ didSomething = true;
44794
+ parts.splice(i, 1);
44795
+ i--;
44796
+ }
44797
+ }
44798
+ if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
44799
+ didSomething = true;
44800
+ parts.pop();
44801
+ }
44802
+ }
44803
+ let dd = 0;
44804
+ while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
44805
+ const p = parts[dd - 1];
44806
+ if (p && p !== "." && p !== ".." && p !== "**") {
44807
+ didSomething = true;
44808
+ parts.splice(dd - 1, 2);
44809
+ dd -= 2;
44810
+ }
44811
+ }
44812
+ } while (didSomething);
44813
+ return parts.length === 0 ? [""] : parts;
44814
+ }
44815
+ firstPhasePreProcess(globParts) {
44816
+ let didSomething = false;
44817
+ do {
44818
+ didSomething = false;
44819
+ for (let parts of globParts) {
44820
+ let gs = -1;
44821
+ while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
44822
+ let gss = gs;
44823
+ while (parts[gss + 1] === "**") {
44824
+ gss++;
44825
+ }
44826
+ if (gss > gs) {
44827
+ parts.splice(gs + 1, gss - gs);
44828
+ }
44829
+ let next = parts[gs + 1];
44830
+ const p = parts[gs + 2];
44831
+ const p2 = parts[gs + 3];
44832
+ if (next !== "..")
44833
+ continue;
44834
+ if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
44835
+ continue;
44836
+ }
44837
+ didSomething = true;
44838
+ parts.splice(gs, 1);
44839
+ const other = parts.slice(0);
44840
+ other[gs] = "**";
44841
+ globParts.push(other);
44842
+ gs--;
44843
+ }
44844
+ if (!this.preserveMultipleSlashes) {
44845
+ for (let i = 1; i < parts.length - 1; i++) {
44846
+ const p = parts[i];
44847
+ if (i === 1 && p === "" && parts[0] === "")
44848
+ continue;
44849
+ if (p === "." || p === "") {
44850
+ didSomething = true;
44851
+ parts.splice(i, 1);
44852
+ i--;
44853
+ }
44854
+ }
44855
+ if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
44856
+ didSomething = true;
44857
+ parts.pop();
44858
+ }
44859
+ }
44860
+ let dd = 0;
44861
+ while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
44862
+ const p = parts[dd - 1];
44863
+ if (p && p !== "." && p !== ".." && p !== "**") {
44864
+ didSomething = true;
44865
+ const needDot = dd === 1 && parts[dd + 1] === "**";
44866
+ const splin = needDot ? ["."] : [];
44867
+ parts.splice(dd - 1, 2, ...splin);
44868
+ if (parts.length === 0)
44869
+ parts.push("");
44870
+ dd -= 2;
44871
+ }
44872
+ }
44873
+ }
44874
+ } while (didSomething);
44875
+ return globParts;
44876
+ }
44877
+ secondPhasePreProcess(globParts) {
44878
+ for (let i = 0; i < globParts.length - 1; i++) {
44879
+ for (let j = i + 1; j < globParts.length; j++) {
44880
+ const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
44881
+ if (!matched)
44882
+ continue;
44883
+ globParts[i] = matched;
44884
+ globParts[j] = [];
44885
+ }
44886
+ }
44887
+ return globParts.filter((gs) => gs.length);
44888
+ }
44889
+ partsMatch(a, b, emptyGSMatch = false) {
44890
+ let ai = 0;
44891
+ let bi = 0;
44892
+ let result = [];
44893
+ let which = "";
44894
+ while (ai < a.length && bi < b.length) {
44895
+ if (a[ai] === b[bi]) {
44896
+ result.push(which === "b" ? b[bi] : a[ai]);
44897
+ ai++;
44898
+ bi++;
44899
+ } else if (emptyGSMatch && a[ai] === "**" && b[bi] === a[ai + 1]) {
44900
+ result.push(a[ai]);
44901
+ ai++;
44902
+ } else if (emptyGSMatch && b[bi] === "**" && a[ai] === b[bi + 1]) {
44903
+ result.push(b[bi]);
44904
+ bi++;
44905
+ } else if (a[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
44906
+ if (which === "b")
44907
+ return false;
44908
+ which = "a";
44909
+ result.push(a[ai]);
44910
+ ai++;
44911
+ bi++;
44912
+ } else if (b[bi] === "*" && a[ai] && (this.options.dot || !a[ai].startsWith(".")) && a[ai] !== "**") {
44913
+ if (which === "a")
44914
+ return false;
44915
+ which = "b";
44916
+ result.push(b[bi]);
44917
+ ai++;
44918
+ bi++;
44919
+ } else {
44920
+ return false;
44921
+ }
44922
+ }
44923
+ return a.length === b.length && result;
44924
+ }
44925
+ parseNegate() {
44926
+ if (this.nonegate)
44927
+ return;
44928
+ const pattern = this.pattern;
44929
+ let negate = false;
44930
+ let negateOffset = 0;
44931
+ for (let i = 0; i < pattern.length && pattern.charAt(i) === "!"; i++) {
44932
+ negate = !negate;
44933
+ negateOffset++;
44934
+ }
44935
+ if (negateOffset)
44936
+ this.pattern = pattern.slice(negateOffset);
44937
+ this.negate = negate;
44938
+ }
44939
+ matchOne(file, pattern, partial = false) {
44940
+ const options = this.options;
44941
+ if (this.isWindows) {
44942
+ const fileUNC = file[0] === "" && file[1] === "" && file[2] === "?" && typeof file[3] === "string" && /^[a-z]:$/i.test(file[3]);
44943
+ const patternUNC = pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
44944
+ if (fileUNC && patternUNC) {
44945
+ const fd = file[3];
44946
+ const pd = pattern[3];
44947
+ if (fd.toLowerCase() === pd.toLowerCase()) {
44948
+ file[3] = pd;
44949
+ }
44950
+ } else if (patternUNC && typeof file[0] === "string") {
44951
+ const pd = pattern[3];
44952
+ const fd = file[0];
44953
+ if (pd.toLowerCase() === fd.toLowerCase()) {
44954
+ pattern[3] = fd;
44955
+ pattern = pattern.slice(3);
44956
+ }
44957
+ } else if (fileUNC && typeof pattern[0] === "string") {
44958
+ const fd = file[3];
44959
+ if (fd.toLowerCase() === pattern[0].toLowerCase()) {
44960
+ pattern[0] = fd;
44961
+ file = file.slice(3);
44962
+ }
44963
+ }
44964
+ }
44965
+ const { optimizationLevel = 1 } = this.options;
44966
+ if (optimizationLevel >= 2) {
44967
+ file = this.levelTwoFileOptimize(file);
44968
+ }
44969
+ this.debug("matchOne", this, { file, pattern });
44970
+ this.debug("matchOne", file.length, pattern.length);
44971
+ for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
44972
+ this.debug("matchOne loop");
44973
+ var p = pattern[pi];
44974
+ var f = file[fi];
44975
+ this.debug(pattern, p, f);
44976
+ if (p === false) {
44977
+ return false;
44978
+ }
44979
+ if (p === GLOBSTAR) {
44980
+ this.debug("GLOBSTAR", [pattern, p, f]);
44981
+ var fr = fi;
44982
+ var pr = pi + 1;
44983
+ if (pr === pl) {
44984
+ this.debug("** at the end");
44985
+ for (; fi < fl; fi++) {
44986
+ if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".")
44987
+ return false;
44988
+ }
44989
+ return true;
44990
+ }
44991
+ while (fr < fl) {
44992
+ var swallowee = file[fr];
44993
+ this.debug("\nglobstar while", file, fr, pattern, pr, swallowee);
44994
+ if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
44995
+ this.debug("globstar found match!", fr, fl, swallowee);
44996
+ return true;
44997
+ } else {
44998
+ if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") {
44999
+ this.debug("dot detected!", file, fr, pattern, pr);
45000
+ break;
45001
+ }
45002
+ this.debug("globstar swallow a segment, and continue");
45003
+ fr++;
45004
+ }
45005
+ }
45006
+ if (partial) {
45007
+ this.debug("\n>>> no match, partial?", file, fr, pattern, pr);
45008
+ if (fr === fl) {
45009
+ return true;
45010
+ }
45011
+ }
45012
+ return false;
45013
+ }
45014
+ let hit;
45015
+ if (typeof p === "string") {
45016
+ hit = f === p;
45017
+ this.debug("string match", p, f, hit);
45018
+ } else {
45019
+ hit = p.test(f);
45020
+ this.debug("pattern match", p, f, hit);
45021
+ }
45022
+ if (!hit)
45023
+ return false;
45024
+ }
45025
+ if (fi === fl && pi === pl) {
45026
+ return true;
45027
+ } else if (fi === fl) {
45028
+ return partial;
45029
+ } else if (pi === pl) {
45030
+ return fi === fl - 1 && file[fi] === "";
45031
+ } else {
45032
+ throw new Error("wtf?");
45033
+ }
45034
+ }
45035
+ braceExpand() {
45036
+ return braceExpand(this.pattern, this.options);
45037
+ }
45038
+ parse(pattern) {
45039
+ assertValidPattern(pattern);
45040
+ const options = this.options;
45041
+ if (pattern === "**")
45042
+ return GLOBSTAR;
45043
+ if (pattern === "")
45044
+ return "";
45045
+ let m;
45046
+ let fastTest = null;
45047
+ if (m = pattern.match(starRE)) {
45048
+ fastTest = options.dot ? starTestDot : starTest;
45049
+ } else if (m = pattern.match(starDotExtRE)) {
45050
+ fastTest = (options.nocase ? options.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
45051
+ } else if (m = pattern.match(qmarksRE)) {
45052
+ fastTest = (options.nocase ? options.dot ? qmarksTestNocaseDot : qmarksTestNocase : options.dot ? qmarksTestDot : qmarksTest)(m);
45053
+ } else if (m = pattern.match(starDotStarRE)) {
45054
+ fastTest = options.dot ? starDotStarTestDot : starDotStarTest;
45055
+ } else if (m = pattern.match(dotStarRE)) {
45056
+ fastTest = dotStarTest;
45057
+ }
45058
+ let re = "";
45059
+ let hasMagic = false;
45060
+ let escaping = false;
45061
+ const patternListStack = [];
45062
+ const negativeLists = [];
45063
+ let stateChar = false;
45064
+ let uflag = false;
45065
+ let pl;
45066
+ let dotTravAllowed = pattern.charAt(0) === ".";
45067
+ let dotFileAllowed = options.dot || dotTravAllowed;
45068
+ const patternStart = () => dotTravAllowed ? "" : dotFileAllowed ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)";
45069
+ const subPatternStart = (p) => p.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)";
45070
+ const clearStateChar = () => {
45071
+ if (stateChar) {
45072
+ switch (stateChar) {
45073
+ case "*":
45074
+ re += star;
45075
+ hasMagic = true;
45076
+ break;
45077
+ case "?":
45078
+ re += qmark;
45079
+ hasMagic = true;
45080
+ break;
45081
+ default:
45082
+ re += "\\" + stateChar;
45083
+ break;
45084
+ }
45085
+ this.debug("clearStateChar %j %j", stateChar, re);
45086
+ stateChar = false;
45087
+ }
45088
+ };
45089
+ for (let i = 0, c; i < pattern.length && (c = pattern.charAt(i)); i++) {
45090
+ this.debug("%s %s %s %j", pattern, i, re, c);
45091
+ if (escaping) {
45092
+ if (c === "/") {
45093
+ return false;
45094
+ }
45095
+ if (reSpecials[c]) {
45096
+ re += "\\";
45097
+ }
45098
+ re += c;
45099
+ escaping = false;
45100
+ continue;
45101
+ }
45102
+ switch (c) {
45103
+ case "/": {
45104
+ return false;
45105
+ }
45106
+ case "\\":
45107
+ clearStateChar();
45108
+ escaping = true;
45109
+ continue;
45110
+ case "?":
45111
+ case "*":
45112
+ case "+":
45113
+ case "@":
45114
+ case "!":
45115
+ this.debug("%s %s %s %j <-- stateChar", pattern, i, re, c);
45116
+ this.debug("call clearStateChar %j", stateChar);
45117
+ clearStateChar();
45118
+ stateChar = c;
45119
+ if (options.noext)
45120
+ clearStateChar();
45121
+ continue;
45122
+ case "(": {
45123
+ if (!stateChar) {
45124
+ re += "\\(";
45125
+ continue;
45126
+ }
45127
+ const plEntry = {
45128
+ type: stateChar,
45129
+ start: i - 1,
45130
+ reStart: re.length,
45131
+ open: plTypes[stateChar].open,
45132
+ close: plTypes[stateChar].close
45133
+ };
45134
+ this.debug(this.pattern, " ", plEntry);
45135
+ patternListStack.push(plEntry);
45136
+ re += plEntry.open;
45137
+ if (plEntry.start === 0 && plEntry.type !== "!") {
45138
+ dotTravAllowed = true;
45139
+ re += subPatternStart(pattern.slice(i + 1));
45140
+ }
45141
+ this.debug("plType %j %j", stateChar, re);
45142
+ stateChar = false;
45143
+ continue;
45144
+ }
45145
+ case ")": {
45146
+ const plEntry = patternListStack[patternListStack.length - 1];
45147
+ if (!plEntry) {
45148
+ re += "\\)";
45149
+ continue;
45150
+ }
45151
+ patternListStack.pop();
45152
+ clearStateChar();
45153
+ hasMagic = true;
45154
+ pl = plEntry;
45155
+ re += pl.close;
45156
+ if (pl.type === "!") {
45157
+ negativeLists.push(Object.assign(pl, { reEnd: re.length }));
45158
+ }
45159
+ continue;
45160
+ }
45161
+ case "|": {
45162
+ const plEntry = patternListStack[patternListStack.length - 1];
45163
+ if (!plEntry) {
45164
+ re += "\\|";
45165
+ continue;
45166
+ }
45167
+ clearStateChar();
45168
+ re += "|";
45169
+ if (plEntry.start === 0 && plEntry.type !== "!") {
45170
+ dotTravAllowed = true;
45171
+ re += subPatternStart(pattern.slice(i + 1));
45172
+ }
45173
+ continue;
45174
+ }
45175
+ case "[":
45176
+ clearStateChar();
45177
+ const [src, needUflag, consumed, magic] = parseClass(pattern, i);
45178
+ if (consumed) {
45179
+ re += src;
45180
+ uflag = uflag || needUflag;
45181
+ i += consumed - 1;
45182
+ hasMagic = hasMagic || magic;
45183
+ } else {
45184
+ re += "\\[";
45185
+ }
45186
+ continue;
45187
+ case "]":
45188
+ re += "\\" + c;
45189
+ continue;
45190
+ default:
45191
+ clearStateChar();
45192
+ re += regExpEscape(c);
45193
+ break;
45194
+ }
45195
+ }
45196
+ for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) {
45197
+ let tail;
45198
+ tail = re.slice(pl.reStart + pl.open.length);
45199
+ this.debug(this.pattern, "setting tail", re, pl);
45200
+ tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, (_, $1, $2) => {
45201
+ if (!$2) {
45202
+ $2 = "\\";
45203
+ }
45204
+ return $1 + $1 + $2 + "|";
45205
+ });
45206
+ this.debug("tail=%j\n %s", tail, tail, pl, re);
45207
+ const t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type;
45208
+ hasMagic = true;
45209
+ re = re.slice(0, pl.reStart) + t + "\\(" + tail;
45210
+ }
45211
+ clearStateChar();
45212
+ if (escaping) {
45213
+ re += "\\\\";
45214
+ }
45215
+ const addPatternStart = addPatternStartSet[re.charAt(0)];
45216
+ for (let n = negativeLists.length - 1; n > -1; n--) {
45217
+ const nl = negativeLists[n];
45218
+ const nlBefore = re.slice(0, nl.reStart);
45219
+ const nlFirst = re.slice(nl.reStart, nl.reEnd - 8);
45220
+ let nlAfter = re.slice(nl.reEnd);
45221
+ const nlLast = re.slice(nl.reEnd - 8, nl.reEnd) + nlAfter;
45222
+ const closeParensBefore = nlBefore.split(")").length;
45223
+ const openParensBefore = nlBefore.split("(").length - closeParensBefore;
45224
+ let cleanAfter = nlAfter;
45225
+ for (let i = 0; i < openParensBefore; i++) {
45226
+ cleanAfter = cleanAfter.replace(/\)[+*?]?/, "");
45227
+ }
45228
+ nlAfter = cleanAfter;
45229
+ const dollar = nlAfter === "" ? "(?:$|\\/)" : "";
45230
+ re = nlBefore + nlFirst + nlAfter + dollar + nlLast;
45231
+ }
45232
+ if (re !== "" && hasMagic) {
45233
+ re = "(?=.)" + re;
45234
+ }
45235
+ if (addPatternStart) {
45236
+ re = patternStart() + re;
45237
+ }
45238
+ if (options.nocase && !hasMagic && !options.nocaseMagicOnly) {
45239
+ hasMagic = pattern.toUpperCase() !== pattern.toLowerCase();
45240
+ }
45241
+ if (!hasMagic) {
45242
+ return globUnescape(re);
45243
+ }
45244
+ const flags = (options.nocase ? "i" : "") + (uflag ? "u" : "");
45245
+ try {
45246
+ const ext2 = fastTest ? {
45247
+ _glob: pattern,
45248
+ _src: re,
45249
+ test: fastTest
45250
+ } : {
45251
+ _glob: pattern,
45252
+ _src: re
45253
+ };
45254
+ return Object.assign(new RegExp("^" + re + "$", flags), ext2);
45255
+ } catch (er) {
45256
+ this.debug("invalid regexp", er);
45257
+ return new RegExp("$.");
45258
+ }
45259
+ }
45260
+ makeRe() {
45261
+ if (this.regexp || this.regexp === false)
45262
+ return this.regexp;
45263
+ const set = this.set;
45264
+ if (!set.length) {
45265
+ this.regexp = false;
45266
+ return this.regexp;
45267
+ }
45268
+ const options = this.options;
45269
+ const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
45270
+ const flags = options.nocase ? "i" : "";
45271
+ let re = set.map((pattern) => {
45272
+ const pp = pattern.map((p) => typeof p === "string" ? regExpEscape(p) : p === GLOBSTAR ? GLOBSTAR : p._src);
45273
+ pp.forEach((p, i) => {
45274
+ const next = pp[i + 1];
45275
+ const prev = pp[i - 1];
45276
+ if (p !== GLOBSTAR || prev === GLOBSTAR) {
45277
+ return;
45278
+ }
45279
+ if (prev === void 0) {
45280
+ if (next !== void 0 && next !== GLOBSTAR) {
45281
+ pp[i + 1] = "(?:\\/|" + twoStar + "\\/)?" + next;
45282
+ } else {
45283
+ pp[i] = twoStar;
45284
+ }
45285
+ } else if (next === void 0) {
45286
+ pp[i - 1] = prev + "(?:\\/|" + twoStar + ")?";
45287
+ } else if (next !== GLOBSTAR) {
45288
+ pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
45289
+ pp[i + 1] = GLOBSTAR;
45290
+ }
45291
+ });
45292
+ return pp.filter((p) => p !== GLOBSTAR).join("/");
45293
+ }).join("|");
45294
+ re = "^(?:" + re + ")$";
45295
+ if (this.negate)
45296
+ re = "^(?!" + re + ").*$";
45297
+ try {
45298
+ this.regexp = new RegExp(re, flags);
45299
+ } catch (ex) {
45300
+ this.regexp = false;
45301
+ }
45302
+ return this.regexp;
45303
+ }
45304
+ slashSplit(p) {
45305
+ if (this.preserveMultipleSlashes) {
45306
+ return p.split("/");
45307
+ } else if (this.isWindows && /^\/\/[^\/]+/.test(p)) {
45308
+ return ["", ...p.split(/\/+/)];
45309
+ } else {
45310
+ return p.split(/\/+/);
45311
+ }
45312
+ }
45313
+ match(f, partial = this.partial) {
45314
+ this.debug("match", f, this.pattern);
45315
+ if (this.comment) {
45316
+ return false;
45317
+ }
45318
+ if (this.empty) {
45319
+ return f === "";
45320
+ }
45321
+ if (f === "/" && partial) {
45322
+ return true;
45323
+ }
45324
+ const options = this.options;
45325
+ if (this.isWindows) {
45326
+ f = f.split("\\").join("/");
45327
+ }
45328
+ const ff = this.slashSplit(f);
45329
+ this.debug(this.pattern, "split", ff);
45330
+ const set = this.set;
45331
+ this.debug(this.pattern, "set", set);
45332
+ let filename = ff[ff.length - 1];
45333
+ if (!filename) {
45334
+ for (let i = ff.length - 2; !filename && i >= 0; i--) {
45335
+ filename = ff[i];
45336
+ }
45337
+ }
45338
+ for (let i = 0; i < set.length; i++) {
45339
+ const pattern = set[i];
45340
+ let file = ff;
45341
+ if (options.matchBase && pattern.length === 1) {
45342
+ file = [filename];
45343
+ }
45344
+ const hit = this.matchOne(file, pattern, partial);
45345
+ if (hit) {
45346
+ if (options.flipNegate) {
45347
+ return true;
45348
+ }
45349
+ return !this.negate;
45350
+ }
45351
+ }
45352
+ if (options.flipNegate) {
45353
+ return false;
45354
+ }
45355
+ return this.negate;
45356
+ }
45357
+ static defaults(def) {
45358
+ return minimatch.defaults(def).Minimatch;
45359
+ }
45360
+ };
45361
+ minimatch.Minimatch = Minimatch;
45362
+ minimatch.escape = escape;
45363
+ minimatch.unescape = unescape;
45364
+ }
45365
+ });
45366
+
44238
45367
  // src/cli/commands/mysqlIntrospect.ts
44239
45368
  var mysqlIntrospect_exports = {};
44240
45369
  __export(mysqlIntrospect_exports, {
@@ -44256,6 +45385,7 @@ var init_mysqlIntrospect = __esm({
44256
45385
  init_mysqlSerializer();
44257
45386
  init_mysql_introspect();
44258
45387
  init_global();
45388
+ init_mjs();
44259
45389
  MySQLConfig1 = objectType({
44260
45390
  host: stringType(),
44261
45391
  port: coerce.number().optional(),
@@ -44274,11 +45404,13 @@ var init_mysqlIntrospect = __esm({
44274
45404
  user: stringType().default("mysql"),
44275
45405
  password: stringType().optional(),
44276
45406
  database: stringType(),
44277
- schema: unionType([stringType(), stringType().array()])
45407
+ schema: unionType([stringType(), stringType().array()]),
45408
+ tablesFilter: unionType([stringType(), stringType().array()]).optional()
44278
45409
  }),
44279
45410
  objectType({
44280
45411
  connectionString: stringType(),
44281
- schema: unionType([stringType(), stringType().array()])
45412
+ schema: unionType([stringType(), stringType().array()]),
45413
+ tablesFilter: unionType([stringType(), stringType().array()]).optional()
44282
45414
  })
44283
45415
  ]);
44284
45416
  configIntrospectSchema = unionType([
@@ -44318,17 +45450,35 @@ var init_mysqlIntrospect = __esm({
44318
45450
  const progress = new IntrospectProgress();
44319
45451
  const res = await (0, import_hanji4.renderWithTask)(
44320
45452
  progress,
44321
- fromDatabase(client, databaseName, (stage, count, status) => {
44322
- progress.update(stage, count, status);
44323
- })
45453
+ fromDatabase(
45454
+ client,
45455
+ databaseName,
45456
+ (tableName) => true,
45457
+ (stage, count, status) => {
45458
+ progress.update(stage, count, status);
45459
+ }
45460
+ )
44324
45461
  );
44325
45462
  const schema4 = { id: originUUID, prevId: "", ...res };
44326
45463
  const ts = schemaToTypeScript(schema4);
44327
45464
  return { schema: schema4, ts };
44328
45465
  };
44329
- mysqlPushIntrospect = async (connection) => {
45466
+ mysqlPushIntrospect = async (connection, filters) => {
44330
45467
  const { client, databaseName } = connection;
44331
- const res = await fromDatabase(client, databaseName);
45468
+ const matchers = filters.map((it) => {
45469
+ return new Minimatch(it);
45470
+ });
45471
+ const filter2 = (tableName) => {
45472
+ if (matchers.length === 0)
45473
+ return true;
45474
+ for (let i = 0; i < matchers.length; i++) {
45475
+ const matcher = matchers[i];
45476
+ if (matcher.match(tableName))
45477
+ return true;
45478
+ }
45479
+ return false;
45480
+ };
45481
+ const res = await fromDatabase(client, databaseName, filter2);
44332
45482
  const schema4 = { id: originUUID, prevId: "", ...res };
44333
45483
  return { schema: schema4 };
44334
45484
  };
@@ -45325,7 +46475,7 @@ var require_utils2 = __commonJS({
45325
46475
  "node_modules/.pnpm/pg@8.9.0/node_modules/pg/lib/utils.js"(exports, module2) {
45326
46476
  "use strict";
45327
46477
  var crypto = require("crypto");
45328
- var defaults = require_defaults();
46478
+ var defaults2 = require_defaults();
45329
46479
  function escapeElement(elementRepresentation) {
45330
46480
  var escaped = elementRepresentation.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
45331
46481
  return '"' + escaped + '"';
@@ -45364,7 +46514,7 @@ var require_utils2 = __commonJS({
45364
46514
  return buf.slice(val.byteOffset, val.byteOffset + val.byteLength);
45365
46515
  }
45366
46516
  if (val instanceof Date) {
45367
- if (defaults.parseInputDatesAsUTC) {
46517
+ if (defaults2.parseInputDatesAsUTC) {
45368
46518
  return dateToStringUTC(val);
45369
46519
  } else {
45370
46520
  return dateToString(val);
@@ -45721,7 +46871,7 @@ var require_split2 = __commonJS({
45721
46871
  var require_helper = __commonJS({
45722
46872
  "node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/helper.js"(exports, module2) {
45723
46873
  "use strict";
45724
- var path2 = require("path");
46874
+ var path3 = require("path");
45725
46875
  var Stream = require("stream").Stream;
45726
46876
  var split = require_split2();
45727
46877
  var util2 = require("util");
@@ -45760,7 +46910,7 @@ var require_helper = __commonJS({
45760
46910
  };
45761
46911
  module2.exports.getFileName = function(rawEnv) {
45762
46912
  var env2 = rawEnv || process.env;
45763
- var file = env2.PGPASSFILE || (isWin ? path2.join(env2.APPDATA || "./", "postgresql", "pgpass.conf") : path2.join(env2.HOME || "./", ".pgpass"));
46913
+ var file = env2.PGPASSFILE || (isWin ? path3.join(env2.APPDATA || "./", "postgresql", "pgpass.conf") : path3.join(env2.HOME || "./", ".pgpass"));
45764
46914
  return file;
45765
46915
  };
45766
46916
  module2.exports.usePgPass = function(stats, fname) {
@@ -45887,7 +47037,7 @@ var require_helper = __commonJS({
45887
47037
  var require_lib3 = __commonJS({
45888
47038
  "node_modules/.pnpm/pgpass@1.0.5/node_modules/pgpass/lib/index.js"(exports, module2) {
45889
47039
  "use strict";
45890
- var path2 = require("path");
47040
+ var path3 = require("path");
45891
47041
  var fs7 = require("fs");
45892
47042
  var helper = require_helper();
45893
47043
  module2.exports = function(connInfo, cb) {
@@ -46029,7 +47179,7 @@ var require_connection_parameters = __commonJS({
46029
47179
  "node_modules/.pnpm/pg@8.9.0/node_modules/pg/lib/connection-parameters.js"(exports, module2) {
46030
47180
  "use strict";
46031
47181
  var dns = require("dns");
46032
- var defaults = require_defaults();
47182
+ var defaults2 = require_defaults();
46033
47183
  var parse = require_pg_connection_string().parse;
46034
47184
  var val = function(key, config, envVar) {
46035
47185
  if (envVar === void 0) {
@@ -46038,7 +47188,7 @@ var require_connection_parameters = __commonJS({
46038
47188
  } else {
46039
47189
  envVar = process.env[envVar];
46040
47190
  }
46041
- return config[key] || envVar || defaults[key];
47191
+ return config[key] || envVar || defaults2[key];
46042
47192
  };
46043
47193
  var readSSLConfigFromEnvironment = function() {
46044
47194
  switch (process.env.PGSSLMODE) {
@@ -46052,7 +47202,7 @@ var require_connection_parameters = __commonJS({
46052
47202
  case "no-verify":
46053
47203
  return { rejectUnauthorized: false };
46054
47204
  }
46055
- return defaults.ssl;
47205
+ return defaults2.ssl;
46056
47206
  };
46057
47207
  var quoteParamValue = function(value) {
46058
47208
  return "'" + ("" + value).replace(/\\/g, "\\\\").replace(/'/g, "\\'") + "'";
@@ -46185,19 +47335,19 @@ var require_result = __commonJS({
46185
47335
  }
46186
47336
  }
46187
47337
  addCommandComplete(msg) {
46188
- var match;
47338
+ var match2;
46189
47339
  if (msg.text) {
46190
- match = matchRegexp.exec(msg.text);
47340
+ match2 = matchRegexp.exec(msg.text);
46191
47341
  } else {
46192
- match = matchRegexp.exec(msg.command);
47342
+ match2 = matchRegexp.exec(msg.command);
46193
47343
  }
46194
- if (match) {
46195
- this.command = match[1];
46196
- if (match[3]) {
46197
- this.oid = parseInt(match[2], 10);
46198
- this.rowCount = parseInt(match[3], 10);
46199
- } else if (match[2]) {
46200
- this.rowCount = parseInt(match[2], 10);
47344
+ if (match2) {
47345
+ this.command = match2[1];
47346
+ if (match2[3]) {
47347
+ this.oid = parseInt(match2[2], 10);
47348
+ this.rowCount = parseInt(match2[3], 10);
47349
+ } else if (match2[2]) {
47350
+ this.rowCount = parseInt(match2[2], 10);
46201
47351
  }
46202
47352
  }
46203
47353
  }
@@ -47411,7 +48561,7 @@ var require_client2 = __commonJS({
47411
48561
  var TypeOverrides = require_type_overrides();
47412
48562
  var ConnectionParameters = require_connection_parameters();
47413
48563
  var Query = require_query3();
47414
- var defaults = require_defaults();
48564
+ var defaults2 = require_defaults();
47415
48565
  var Connection2 = require_connection2();
47416
48566
  var Client = class extends EventEmitter {
47417
48567
  constructor(config) {
@@ -47444,7 +48594,7 @@ var require_client2 = __commonJS({
47444
48594
  encoding: this.connectionParameters.client_encoding || "utf8"
47445
48595
  });
47446
48596
  this.queryQueue = [];
47447
- this.binary = c.binary || defaults.binary;
48597
+ this.binary = c.binary || defaults2.binary;
47448
48598
  this.processID = null;
47449
48599
  this.secretKey = null;
47450
48600
  this.ssl = this.connectionParameters.ssl || false;
@@ -48662,7 +49812,7 @@ var require_lib4 = __commonJS({
48662
49812
  "node_modules/.pnpm/pg@8.9.0/node_modules/pg/lib/index.js"(exports, module2) {
48663
49813
  "use strict";
48664
49814
  var Client = require_client2();
48665
- var defaults = require_defaults();
49815
+ var defaults2 = require_defaults();
48666
49816
  var Connection2 = require_connection2();
48667
49817
  var Pool2 = require_pg_pool();
48668
49818
  var { DatabaseError } = require_dist();
@@ -48674,7 +49824,7 @@ var require_lib4 = __commonJS({
48674
49824
  };
48675
49825
  };
48676
49826
  var PG = function(clientConstructor) {
48677
- this.defaults = defaults;
49827
+ this.defaults = defaults2;
48678
49828
  this.Client = clientConstructor;
48679
49829
  this.Query = this.Client.Query;
48680
49830
  this.Pool = poolFactory(this.Client);
@@ -49376,7 +50526,7 @@ var package_default = {
49376
50526
  "migrate:old:mysql": "drizzle-kit generate:mysql --out ./dev/migrations-mysql --schema ./dev/migrations-mysql/schema.ts",
49377
50527
  "start:pg": "node -r esbuild-register ./src/cli/index.ts generate:pg --out ./dev/migrations-pg --schema ./dev/migrations-pg/schema.ts",
49378
50528
  "start:sqlite": "node -r esbuild-register ./src/cli/index.ts generate:sqlite --out ./dev/migrations-sqlite --schema ./dev/migrations-sqlite/schema.ts",
49379
- "start:mysql": "node -r esbuild-register ./src/cli/index.ts generate:mysql --out ./dev/migrations-mysql --schema ./dev/migrations-mysql/schema.ts",
50529
+ "start:mysql": "node -r esbuild-register ./src/cli/index.ts generate:mysql --out ./dev/introspect-mysql --schema ./dev/introspect-mysql/schema.ts",
49380
50530
  "check:pg": "node -r esbuild-register ./src/cli/index.ts check --out ./dev/migrations --dialect pg",
49381
50531
  "introspect:mysql": "node -r esbuild-register ./src/cli/index.ts introspect:mysql",
49382
50532
  "introspect:pg": "node -r esbuild-register ./src/cli/index.ts introspect:pg --out ./dev/introspect-pg --connectionString=postgresql://postgres@localhost:5432/introspect",
@@ -49419,11 +50569,13 @@ var package_default = {
49419
50569
  glob: "^8.1.0",
49420
50570
  hanji: "^0.0.5",
49421
50571
  "json-diff": "0.9.0",
50572
+ minimatch: "^7.4.3",
49422
50573
  zod: "^3.20.2"
49423
50574
  },
49424
50575
  devDependencies: {
49425
50576
  "@types/dockerode": "^3.3.14",
49426
50577
  "@types/glob": "^8.1.0",
50578
+ "@types/minimatch": "^5.1.2",
49427
50579
  "@types/node": "^18.11.15",
49428
50580
  "@types/pg": "^8.6.5",
49429
50581
  "@typescript-eslint/eslint-plugin": "^5.46.1",
@@ -49468,10 +50620,10 @@ var upSqliteHandlerV4 = (out) => {
49468
50620
  path: it,
49469
50621
  raw: report.rawMap[it]
49470
50622
  })).forEach((it) => {
49471
- const path2 = it.path;
50623
+ const path3 = it.path;
49472
50624
  const result = updateToLatestV42(it.raw);
49473
- console.log(`[${source_default.green("\u2713")}] ${path2}`);
49474
- import_fs8.default.writeFileSync(path2, JSON.stringify(result, null, 2));
50625
+ console.log(`[${source_default.green("\u2713")}] ${path3}`);
50626
+ import_fs8.default.writeFileSync(path3, JSON.stringify(result, null, 2));
49475
50627
  });
49476
50628
  console.log("Everything's fine \u{1F436}\u{1F525}");
49477
50629
  };
@@ -49611,9 +50763,9 @@ var dbPushMysqlCommand = new Command("push:mysql").option(
49611
50763
  assertPackages("drizzle-orm");
49612
50764
  assertOrmCoreVersion();
49613
50765
  const { mysqlPushIntrospect: mysqlPushIntrospect2, connectToMySQL: connectToMySQL2, configPushSchema: configPushSchema2 } = (init_mysqlIntrospect(), __toCommonJS(mysqlIntrospect_exports));
49614
- const path2 = (_a = options.config) != null ? _a : "drizzle.config.json";
50766
+ const path3 = (_a = options.config) != null ? _a : "drizzle.config.json";
49615
50767
  const drizzleConfig = JSON.parse(
49616
- import_fs10.default.readFileSync(import_path6.default.join(import_path6.default.resolve(path2))).toString()
50768
+ import_fs10.default.readFileSync(import_path6.default.join(import_path6.default.resolve(path3))).toString()
49617
50769
  );
49618
50770
  const res = configPushSchema2.safeParse(drizzleConfig);
49619
50771
  if (!res.success) {
@@ -49621,7 +50773,12 @@ var dbPushMysqlCommand = new Command("push:mysql").option(
49621
50773
  return;
49622
50774
  }
49623
50775
  const connection = await connectToMySQL2(res.data);
49624
- const { schema: schema4 } = await mysqlPushIntrospect2(connection);
50776
+ const filterConfig = res.data.tablesFilter;
50777
+ const tablesFilter = filterConfig ? typeof filterConfig === "string" ? [filterConfig] : filterConfig : [];
50778
+ const { schema: schema4 } = await mysqlPushIntrospect2(
50779
+ connection,
50780
+ tablesFilter
50781
+ );
49625
50782
  const { prepareMySQLPush: prepareMySQLPush2 } = (init_migrate(), __toCommonJS(migrate_exports));
49626
50783
  const statements = await prepareMySQLPush2(
49627
50784
  { schema: res.data.schema },
@@ -49640,6 +50797,7 @@ var dbPushMysqlCommand = new Command("push:mysql").option(
49640
50797
  } catch (e) {
49641
50798
  console.log(e);
49642
50799
  }
50800
+ await connection.client.end();
49643
50801
  process.exit(0);
49644
50802
  });
49645
50803
  var generateSqliteCommand = new Command("generate:sqlite").option("--schema <schema...>", "Path to a schema file or folder").option("--out <out>", `Output folder, 'drizzle' by default`).option("--breakpoints", `Prepare SQL statements with breakpoints`).option(
@@ -49661,9 +50819,9 @@ var generateSqliteCommand = new Command("generate:sqlite").option("--schema <sch
49661
50819
  var prepareGenerateConfig = (options) => {
49662
50820
  const { schema: schema4, out, config, breakpoints } = options;
49663
50821
  if (!(schema4 || out)) {
49664
- const path2 = config != null ? config : "drizzle.config.json";
50822
+ const path3 = config != null ? config : "drizzle.config.json";
49665
50823
  const drizzleConfig = JSON.parse(
49666
- import_fs10.default.readFileSync(import_path6.default.join(import_path6.default.resolve(path2))).toString()
50824
+ import_fs10.default.readFileSync(import_path6.default.join(import_path6.default.resolve(path3))).toString()
49667
50825
  );
49668
50826
  return drizzleConfig;
49669
50827
  }
@@ -49818,9 +50976,9 @@ var introspectMySqlCommand = new Command("introspect:mysql").option(
49818
50976
  assertPackages("drizzle-orm");
49819
50977
  assertOrmCoreVersion();
49820
50978
  const { mysqlIntrospect: mysqlIntrospect2, configIntrospectSchema: configIntrospectSchema2 } = (init_mysqlIntrospect(), __toCommonJS(mysqlIntrospect_exports));
49821
- const path2 = (_a = options.config) != null ? _a : "drizzle.config.json";
50979
+ const path3 = (_a = options.config) != null ? _a : "drizzle.config.json";
49822
50980
  const drizzleConfig = JSON.parse(
49823
- import_fs10.default.readFileSync(import_path6.default.join(import_path6.default.resolve(path2))).toString()
50981
+ import_fs10.default.readFileSync(import_path6.default.join(import_path6.default.resolve(path3))).toString()
49824
50982
  );
49825
50983
  const res = configIntrospectSchema2.safeParse(drizzleConfig);
49826
50984
  if (!res.success) {