@atlashub/smartstack-cli 4.39.0 → 4.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -4953,7 +4953,7 @@ var require_jsonfile = __commonJS({
4953
4953
  await universalify.fromCallback(fs21.writeFile)(file, str, options);
4954
4954
  }
4955
4955
  var writeFile = universalify.fromPromise(_writeFile);
4956
- function writeFileSync3(file, obj, options = {}) {
4956
+ function writeFileSync4(file, obj, options = {}) {
4957
4957
  const fs21 = options.fs || _fs;
4958
4958
  const str = stringify2(obj, options);
4959
4959
  return fs21.writeFileSync(file, str, options);
@@ -4962,7 +4962,7 @@ var require_jsonfile = __commonJS({
4962
4962
  readFile,
4963
4963
  readFileSync: readFileSync5,
4964
4964
  writeFile,
4965
- writeFileSync: writeFileSync3
4965
+ writeFileSync: writeFileSync4
4966
4966
  };
4967
4967
  }
4968
4968
  });
@@ -127382,6 +127382,7 @@ var import_mssql = __toESM(require_mssql());
127382
127382
  var import_bcryptjs = __toESM(require_bcryptjs());
127383
127383
  var import_fs4 = require("fs");
127384
127384
  var import_path14 = require("path");
127385
+ var import_os6 = require("os");
127385
127386
  var import_child_process9 = require("child_process");
127386
127387
  function tryLoadNativeDriver() {
127387
127388
  try {
@@ -127437,8 +127438,17 @@ function parseConnectionString(connStr) {
127437
127438
  function executeSqlCmd(server, database, query, sqlAuth) {
127438
127439
  const sqlServer = server === "(local)" ? "." : server;
127439
127440
  const authFlag = sqlAuth ? `-U "${sqlAuth.user}" -P "${sqlAuth.password}"` : "-E";
127440
- const cmd = `sqlcmd -S "${sqlServer}" -d "${database}" ${authFlag} -I -C -Q "${query.replace(/"/g, '\\"')}" -h -1 -W`;
127441
- return (0, import_child_process9.execSync)(cmd, { encoding: "utf-8", timeout: 15e3 }).trim();
127441
+ const tmpFile = (0, import_path14.join)((0, import_os6.tmpdir)(), `ss-sqlcmd-${Date.now()}-${Math.random().toString(36).slice(2)}.sql`);
127442
+ try {
127443
+ (0, import_fs4.writeFileSync)(tmpFile, query, "utf-8");
127444
+ const cmd = `sqlcmd -S "${sqlServer}" -d "${database}" ${authFlag} -I -C -i "${tmpFile}" -h -1 -W`;
127445
+ return (0, import_child_process9.execSync)(cmd, { encoding: "utf-8", timeout: 15e3 }).trim();
127446
+ } finally {
127447
+ try {
127448
+ (0, import_fs4.unlinkSync)(tmpFile);
127449
+ } catch {
127450
+ }
127451
+ }
127442
127452
  }
127443
127453
  function isLoginFailure(error) {
127444
127454
  const msg = error instanceof Error ? error.message : String(error);
@@ -127582,9 +127592,9 @@ adminCommand.command("reset").description("Reset the localAdmin account password
127582
127592
  }
127583
127593
  spinner.text = "Generating new password...";
127584
127594
  const newPassword = generatePassword();
127585
- const passwordHash = await import_bcryptjs.default.hash(newPassword, 10);
127595
+ const passwordHash = await import_bcryptjs.default.hash(newPassword, 12);
127586
127596
  spinner.text = "Updating password...";
127587
- const updateQuery = `UPDATE [core].[auth_Users] SET PasswordHash = '${passwordHash}', UpdatedAt = GETUTCDATE() WHERE Email = '${adminEmail}'`;
127597
+ const updateQuery = `UPDATE [core].[auth_Users] SET PasswordHash = '${passwordHash}', MustChangePassword = 0, UpdatedAt = GETUTCDATE() WHERE Email = '${adminEmail}'`;
127588
127598
  executeSqlCmd(connInfo.server, connInfo.database, updateQuery, sqlAuth);
127589
127599
  spinner.succeed("Password reset successfully!");
127590
127600
  displayPasswordResult(adminEmail, newPassword);
@@ -127630,11 +127640,12 @@ adminCommand.command("reset").description("Reset the localAdmin account password
127630
127640
  }
127631
127641
  spinner.text = "Generating new password...";
127632
127642
  const newPassword = generatePassword();
127633
- const passwordHash = await import_bcryptjs.default.hash(newPassword, 10);
127643
+ const passwordHash = await import_bcryptjs.default.hash(newPassword, 12);
127634
127644
  spinner.text = "Updating password...";
127635
127645
  await sqlModule.query`
127636
127646
  UPDATE [core].[auth_Users]
127637
127647
  SET PasswordHash = ${passwordHash},
127648
+ MustChangePassword = ${false},
127638
127649
  UpdatedAt = ${/* @__PURE__ */ new Date()}
127639
127650
  WHERE Email = ${adminEmail}
127640
127651
  `;
@@ -127731,7 +127742,7 @@ adminCommand.command("reset").description("Reset the localAdmin account password
127731
127742
  // src/commands/mcp.ts
127732
127743
  var import_cli_table35 = __toESM(require_cli_table3());
127733
127744
  var import_child_process10 = require("child_process");
127734
- var import_os6 = require("os");
127745
+ var import_os7 = require("os");
127735
127746
  var mcpCommand = new Command("mcp").description("MCP server management (CLI + VS Code)").action(() => {
127736
127747
  console.log(source_default.cyan(`
127737
127748
  \u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557
@@ -127761,7 +127772,7 @@ mcpCommand.command("install").description("Register MCP servers in Claude Code C
127761
127772
  }));
127762
127773
  currentStep++;
127763
127774
  logger.step(currentStep, totalSteps, "Registering in ~/.claude/settings.json...");
127764
- logger.debug(`Home directory: ${(0, import_os6.homedir)()}`);
127775
+ logger.debug(`Home directory: ${(0, import_os7.homedir)()}`);
127765
127776
  logger.debug(`Target: ${getClaudeSettingsPath()}`);
127766
127777
  const claudeResult = await registerMcpInClaudeSettings(servers);
127767
127778
  if (claudeResult.success) {