nexrall-code 0.5.90 → 0.5.92

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 (2) hide show
  1. package/dist/index.js +914 -573
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -982,7 +982,7 @@ var require_command = __commonJS({
982
982
  "../../node_modules/.pnpm/commander@12.1.0/node_modules/commander/lib/command.js"(exports2) {
983
983
  var EventEmitter4 = __require("node:events").EventEmitter;
984
984
  var childProcess = __require("node:child_process");
985
- var path6 = __require("node:path");
985
+ var path7 = __require("node:path");
986
986
  var fs9 = __require("node:fs");
987
987
  var process14 = __require("node:process");
988
988
  var { Argument: Argument2, humanReadableArgName } = require_argument();
@@ -1925,10 +1925,10 @@ Expecting one of '${allowedValues.join("', '")}'`);
1925
1925
  let launchWithNode = false;
1926
1926
  const sourceExt = [".js", ".ts", ".tsx", ".mjs", ".cjs"];
1927
1927
  function findFile(baseDir, baseName) {
1928
- const localBin = path6.resolve(baseDir, baseName);
1928
+ const localBin = path7.resolve(baseDir, baseName);
1929
1929
  if (fs9.existsSync(localBin))
1930
1930
  return localBin;
1931
- if (sourceExt.includes(path6.extname(baseName)))
1931
+ if (sourceExt.includes(path7.extname(baseName)))
1932
1932
  return void 0;
1933
1933
  const foundExt = sourceExt.find(
1934
1934
  (ext) => fs9.existsSync(`${localBin}${ext}`)
@@ -1948,17 +1948,17 @@ Expecting one of '${allowedValues.join("', '")}'`);
1948
1948
  } catch (err) {
1949
1949
  resolvedScriptPath = this._scriptPath;
1950
1950
  }
1951
- executableDir = path6.resolve(
1952
- path6.dirname(resolvedScriptPath),
1951
+ executableDir = path7.resolve(
1952
+ path7.dirname(resolvedScriptPath),
1953
1953
  executableDir
1954
1954
  );
1955
1955
  }
1956
1956
  if (executableDir) {
1957
1957
  let localFile = findFile(executableDir, executableFile);
1958
1958
  if (!localFile && !subcommand._executableFile && this._scriptPath) {
1959
- const legacyName = path6.basename(
1959
+ const legacyName = path7.basename(
1960
1960
  this._scriptPath,
1961
- path6.extname(this._scriptPath)
1961
+ path7.extname(this._scriptPath)
1962
1962
  );
1963
1963
  if (legacyName !== this._name) {
1964
1964
  localFile = findFile(
@@ -1969,7 +1969,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
1969
1969
  }
1970
1970
  executableFile = localFile || executableFile;
1971
1971
  }
1972
- launchWithNode = sourceExt.includes(path6.extname(executableFile));
1972
+ launchWithNode = sourceExt.includes(path7.extname(executableFile));
1973
1973
  let proc;
1974
1974
  if (process14.platform !== "win32") {
1975
1975
  if (launchWithNode) {
@@ -2826,7 +2826,7 @@ Expecting one of '${allowedValues.join("', '")}'`);
2826
2826
  * @return {Command}
2827
2827
  */
2828
2828
  nameFromFilename(filename) {
2829
- this._name = path6.basename(filename, path6.extname(filename));
2829
+ this._name = path7.basename(filename, path7.extname(filename));
2830
2830
  return this;
2831
2831
  }
2832
2832
  /**
@@ -2840,10 +2840,10 @@ Expecting one of '${allowedValues.join("', '")}'`);
2840
2840
  * @param {string} [path]
2841
2841
  * @return {(string|null|Command)}
2842
2842
  */
2843
- executableDir(path7) {
2844
- if (path7 === void 0)
2843
+ executableDir(path8) {
2844
+ if (path8 === void 0)
2845
2845
  return this._executableDir;
2846
- this._executableDir = path7;
2846
+ this._executableDir = path8;
2847
2847
  return this;
2848
2848
  }
2849
2849
  /**
@@ -3159,10 +3159,10 @@ var require_auth = __commonJS({
3159
3159
  exports2.getRefreshToken = getRefreshToken;
3160
3160
  exports2.updateTokens = updateTokens;
3161
3161
  var fs9 = __importStar(__require("fs"));
3162
- var path6 = __importStar(__require("path"));
3163
- var os5 = __importStar(__require("os"));
3164
- var CONFIG_DIR = path6.join(os5.homedir(), ".nexrall");
3165
- var CONFIG_FILE = path6.join(CONFIG_DIR, "config.json");
3162
+ var path7 = __importStar(__require("path"));
3163
+ var os6 = __importStar(__require("os"));
3164
+ var CONFIG_DIR = path7.join(os6.homedir(), ".nexrall");
3165
+ var CONFIG_FILE = path7.join(CONFIG_DIR, "config.json");
3166
3166
  function ensureConfigDir() {
3167
3167
  if (!fs9.existsSync(CONFIG_DIR)) {
3168
3168
  fs9.mkdirSync(CONFIG_DIR, { recursive: true });
@@ -8180,22 +8180,22 @@ var init_from = __esm({
8180
8180
  init_file();
8181
8181
  init_fetch_blob();
8182
8182
  ({ stat } = fs);
8183
- blobFromSync = (path6, type) => fromBlob(statSync(path6), path6, type);
8184
- blobFrom = (path6, type) => stat(path6).then((stat2) => fromBlob(stat2, path6, type));
8185
- fileFrom = (path6, type) => stat(path6).then((stat2) => fromFile(stat2, path6, type));
8186
- fileFromSync = (path6, type) => fromFile(statSync(path6), path6, type);
8187
- fromBlob = (stat2, path6, type = "") => new fetch_blob_default([new BlobDataItem({
8188
- path: path6,
8183
+ blobFromSync = (path7, type) => fromBlob(statSync(path7), path7, type);
8184
+ blobFrom = (path7, type) => stat(path7).then((stat2) => fromBlob(stat2, path7, type));
8185
+ fileFrom = (path7, type) => stat(path7).then((stat2) => fromFile(stat2, path7, type));
8186
+ fileFromSync = (path7, type) => fromFile(statSync(path7), path7, type);
8187
+ fromBlob = (stat2, path7, type = "") => new fetch_blob_default([new BlobDataItem({
8188
+ path: path7,
8189
8189
  size: stat2.size,
8190
8190
  lastModified: stat2.mtimeMs,
8191
8191
  start: 0
8192
8192
  })], { type });
8193
- fromFile = (stat2, path6, type = "") => new file_default([new BlobDataItem({
8194
- path: path6,
8193
+ fromFile = (stat2, path7, type = "") => new file_default([new BlobDataItem({
8194
+ path: path7,
8195
8195
  size: stat2.size,
8196
8196
  lastModified: stat2.mtimeMs,
8197
8197
  start: 0
8198
- })], basename(path6), { type, lastModified: stat2.mtimeMs });
8198
+ })], basename(path7), { type, lastModified: stat2.mtimeMs });
8199
8199
  BlobDataItem = class _BlobDataItem {
8200
8200
  #path;
8201
8201
  #start;
@@ -10780,7 +10780,7 @@ var require_sandbox = __commonJS({
10780
10780
  exports2.parseSandboxConfig = parseSandboxConfig;
10781
10781
  exports2.wrapCommandForSandbox = wrapCommandForSandbox;
10782
10782
  var child_process_1 = __require("child_process");
10783
- var os5 = __importStar(__require("os"));
10783
+ var os6 = __importStar(__require("os"));
10784
10784
  function parseSandboxConfig(raw) {
10785
10785
  if (raw === void 0 || raw === null || raw === false || raw === "off")
10786
10786
  return null;
@@ -10825,9 +10825,9 @@ var require_sandbox = __commonJS({
10825
10825
  return lines.join("\n");
10826
10826
  }
10827
10827
  function wrapCommandForSandbox(command, workDir, cfg) {
10828
- const platform3 = os5.platform();
10828
+ const platform3 = os6.platform();
10829
10829
  if (platform3 === "darwin") {
10830
- const writePaths = Array.from(/* @__PURE__ */ new Set([workDir, "/tmp", "/private/tmp", "/private/var/folders", os5.tmpdir(), ...cfg.writePaths]));
10830
+ const writePaths = Array.from(/* @__PURE__ */ new Set([workDir, "/tmp", "/private/tmp", "/private/var/folders", os6.tmpdir(), ...cfg.writePaths]));
10831
10831
  const profile = buildSeatbeltProfile(writePaths, cfg.network);
10832
10832
  return {
10833
10833
  command: `sandbox-exec -p ${shQuote(profile)} /bin/sh -c ${shQuote(command)}`,
@@ -11163,16 +11163,16 @@ var require_memory = __commonJS({
11163
11163
  exports2.agentMemoryPreamble = agentMemoryPreamble;
11164
11164
  exports2.compactMemoryIfNeeded = compactMemoryIfNeeded2;
11165
11165
  var fs9 = __importStar(__require("fs"));
11166
- var os5 = __importStar(__require("os"));
11167
- var path6 = __importStar(__require("path"));
11166
+ var os6 = __importStar(__require("os"));
11167
+ var path7 = __importStar(__require("path"));
11168
11168
  var crypto5 = __importStar(__require("crypto"));
11169
- var MEMORY_ROOT = process.env.NEXRALL_MEMORY_DIR || path6.join(os5.homedir(), ".nexrall", "memory");
11170
- var GLOBAL_FILE = path6.join(MEMORY_ROOT, "global.md");
11169
+ var MEMORY_ROOT = process.env.NEXRALL_MEMORY_DIR || path7.join(os6.homedir(), ".nexrall", "memory");
11170
+ var GLOBAL_FILE = path7.join(MEMORY_ROOT, "global.md");
11171
11171
  function memoryFilePath(scope, workDir) {
11172
11172
  if (scope === "global" || !workDir)
11173
11173
  return GLOBAL_FILE;
11174
- const key = crypto5.createHash("sha1").update(path6.resolve(workDir)).digest("hex").slice(0, 16);
11175
- return path6.join(MEMORY_ROOT, `project-${key}.md`);
11174
+ const key = crypto5.createHash("sha1").update(path7.resolve(workDir)).digest("hex").slice(0, 16);
11175
+ return path7.join(MEMORY_ROOT, `project-${key}.md`);
11176
11176
  }
11177
11177
  exports2.MEMORY_ENTRY_MAX_CHARS = 400;
11178
11178
  exports2.MEMORY_MAX_BYTES = 12e3;
@@ -11182,16 +11182,16 @@ var require_memory = __commonJS({
11182
11182
  var _locks = /* @__PURE__ */ new Map();
11183
11183
  async function withLock(key, fn) {
11184
11184
  const prev = _locks.get(key) ?? Promise.resolve();
11185
- let release2;
11185
+ let release3;
11186
11186
  const next = new Promise((res) => {
11187
- release2 = res;
11187
+ release3 = res;
11188
11188
  });
11189
11189
  _locks.set(key, prev.then(() => next));
11190
11190
  try {
11191
11191
  await prev;
11192
11192
  return await fn();
11193
11193
  } finally {
11194
- release2();
11194
+ release3();
11195
11195
  if (_locks.get(key) === next)
11196
11196
  _locks.delete(key);
11197
11197
  }
@@ -11204,7 +11204,7 @@ var require_memory = __commonJS({
11204
11204
  }
11205
11205
  }
11206
11206
  function writeMemoryFile(file, content) {
11207
- fs9.mkdirSync(path6.dirname(file), { recursive: true });
11207
+ fs9.mkdirSync(path7.dirname(file), { recursive: true });
11208
11208
  fs9.writeFileSync(file, content, "utf-8");
11209
11209
  }
11210
11210
  function evictOldest(content, maxBytes) {
@@ -11251,7 +11251,7 @@ ${globalMem}`);
11251
11251
  if (workDir) {
11252
11252
  const projMem = readMemory2("project", workDir);
11253
11253
  if (projMem)
11254
- parts.push(`[Project memories \u2014 ${path6.basename(path6.resolve(workDir))}]
11254
+ parts.push(`[Project memories \u2014 ${path7.basename(path7.resolve(workDir))}]
11255
11255
  ${projMem}`);
11256
11256
  }
11257
11257
  return parts.join("\n\n");
@@ -11280,15 +11280,15 @@ ${projMem}`);
11280
11280
  const file = `${agentName}.md`;
11281
11281
  let dir;
11282
11282
  if (scope === "user") {
11283
- dir = path6.join(MEMORY_ROOT, "agent-memory");
11283
+ dir = path7.join(MEMORY_ROOT, "agent-memory");
11284
11284
  } else {
11285
11285
  if (!workDir)
11286
11286
  return null;
11287
- dir = path6.join(path6.resolve(workDir), ".nexrall", scope === "local" ? "agent-memory-local" : "agent-memory");
11287
+ dir = path7.join(path7.resolve(workDir), ".nexrall", scope === "local" ? "agent-memory-local" : "agent-memory");
11288
11288
  }
11289
- const full = path6.join(dir, file);
11290
- const rel = path6.relative(dir, full);
11291
- if (rel.startsWith("..") || path6.isAbsolute(rel))
11289
+ const full = path7.join(dir, file);
11290
+ const rel = path7.relative(dir, full);
11291
+ if (rel.startsWith("..") || path7.isAbsolute(rel))
11292
11292
  return null;
11293
11293
  return full;
11294
11294
  }
@@ -11424,18 +11424,18 @@ var require_plugins = __commonJS({
11424
11424
  exports2.pluginHooks = pluginHooks;
11425
11425
  exports2.pluginMcpServers = pluginMcpServers;
11426
11426
  var fs9 = __importStar(__require("fs"));
11427
- var path6 = __importStar(__require("path"));
11428
- var os5 = __importStar(__require("os"));
11427
+ var path7 = __importStar(__require("path"));
11428
+ var os6 = __importStar(__require("os"));
11429
11429
  var DISABLED_MARKER = ".disabled";
11430
11430
  function isPluginDisabled(dir) {
11431
11431
  try {
11432
- return fs9.statSync(path6.join(dir, DISABLED_MARKER)).isFile();
11432
+ return fs9.statSync(path7.join(dir, DISABLED_MARKER)).isFile();
11433
11433
  } catch {
11434
11434
  return false;
11435
11435
  }
11436
11436
  }
11437
11437
  function setPluginDisabled(dir, disabled) {
11438
- const marker = path6.join(dir, DISABLED_MARKER);
11438
+ const marker = path7.join(dir, DISABLED_MARKER);
11439
11439
  if (disabled) {
11440
11440
  fs9.writeFileSync(marker, "");
11441
11441
  } else {
@@ -11446,13 +11446,13 @@ var require_plugins = __commonJS({
11446
11446
  }
11447
11447
  }
11448
11448
  exports2.FILE_CANDIDATES = {
11449
- manifest: ["plugin.json", path6.join(".claude-plugin", "plugin.json")],
11450
- hooks: ["hooks.json", path6.join("hooks", "hooks.json")],
11449
+ manifest: ["plugin.json", path7.join(".claude-plugin", "plugin.json")],
11450
+ hooks: ["hooks.json", path7.join("hooks", "hooks.json")],
11451
11451
  mcp: ["mcp.json", ".mcp.json"]
11452
11452
  };
11453
11453
  function resolvePluginFile(dir, kind) {
11454
11454
  for (const rel of exports2.FILE_CANDIDATES[kind]) {
11455
- const full = path6.join(dir, rel);
11455
+ const full = path7.join(dir, rel);
11456
11456
  try {
11457
11457
  if (fs9.statSync(full).isFile())
11458
11458
  return full;
@@ -11487,7 +11487,7 @@ var require_plugins = __commonJS({
11487
11487
  for (const entry of entries) {
11488
11488
  if (!entry.isDirectory() && !entry.isSymbolicLink())
11489
11489
  continue;
11490
- const dir = path6.join(root, entry.name);
11490
+ const dir = path7.join(root, entry.name);
11491
11491
  try {
11492
11492
  if (!fs9.statSync(dir).isDirectory())
11493
11493
  continue;
@@ -11503,18 +11503,18 @@ var require_plugins = __commonJS({
11503
11503
  }
11504
11504
  function loadPlugins3(workDir) {
11505
11505
  const out = /* @__PURE__ */ new Map();
11506
- scanRoot(path6.join(workDir, ".nexrall", "plugins"), "project", out);
11507
- scanRoot(path6.join(os5.homedir(), ".nexrall", "plugins"), "global", out);
11506
+ scanRoot(path7.join(workDir, ".nexrall", "plugins"), "project", out);
11507
+ scanRoot(path7.join(os6.homedir(), ".nexrall", "plugins"), "global", out);
11508
11508
  return [...out.values()];
11509
11509
  }
11510
11510
  function findPlugin(workDir, name, scope) {
11511
11511
  const out = /* @__PURE__ */ new Map();
11512
- const root = scope === "project" ? path6.join(workDir, ".nexrall", "plugins") : path6.join(os5.homedir(), ".nexrall", "plugins");
11512
+ const root = scope === "project" ? path7.join(workDir, ".nexrall", "plugins") : path7.join(os6.homedir(), ".nexrall", "plugins");
11513
11513
  scanRoot(root, scope, out);
11514
11514
  return out.get(name);
11515
11515
  }
11516
11516
  function pluginAssetDirs(workDir, kind) {
11517
- return loadPlugins3(workDir).filter((p) => !p.disabled).map((p) => path6.join(p.dir, kind)).filter((d) => {
11517
+ return loadPlugins3(workDir).filter((p) => !p.disabled).map((p) => path7.join(p.dir, kind)).filter((d) => {
11518
11518
  try {
11519
11519
  return fs9.statSync(d).isDirectory();
11520
11520
  } catch {
@@ -11643,8 +11643,8 @@ var require_loader = __commonJS({
11643
11643
  exports2.expandBody = expandBody;
11644
11644
  exports2.expandCommand = expandCommand;
11645
11645
  var fs9 = __importStar(__require("fs"));
11646
- var path6 = __importStar(__require("path"));
11647
- var os5 = __importStar(__require("os"));
11646
+ var path7 = __importStar(__require("path"));
11647
+ var os6 = __importStar(__require("os"));
11648
11648
  var child_process_1 = __require("child_process");
11649
11649
  var index_1 = require_plugins();
11650
11650
  var frontmatter_1 = require_frontmatter();
@@ -11691,9 +11691,9 @@ var require_loader = __commonJS({
11691
11691
  }
11692
11692
  for (const file of files) {
11693
11693
  try {
11694
- const raw = fs9.readFileSync(path6.join(dir, file), "utf-8");
11694
+ const raw = fs9.readFileSync(path7.join(dir, file), "utf-8");
11695
11695
  const { meta, body } = (0, frontmatter_1.parseFrontmatter)(raw);
11696
- const name = (meta.name || path6.basename(file, ".md")).trim().toLowerCase();
11696
+ const name = (meta.name || path7.basename(file, ".md")).trim().toLowerCase();
11697
11697
  if (!name)
11698
11698
  continue;
11699
11699
  if (source2 !== "project" && into.has(name))
@@ -11713,8 +11713,8 @@ var require_loader = __commonJS({
11713
11713
  }
11714
11714
  function loadSlashCommands(workDir) {
11715
11715
  const out = /* @__PURE__ */ new Map();
11716
- loadDir(path6.join(workDir, ".nexrall", "commands"), "project", out);
11717
- loadDir(path6.join(os5.homedir(), ".nexrall", "commands"), "global", out);
11716
+ loadDir(path7.join(workDir, ".nexrall", "commands"), "project", out);
11717
+ loadDir(path7.join(os6.homedir(), ".nexrall", "commands"), "global", out);
11718
11718
  for (const dir of (0, index_1.pluginAssetDirs)(workDir, "commands"))
11719
11719
  loadDir(dir, "plugin", out);
11720
11720
  for (const cmd of BUILTIN_COMMANDS) {
@@ -11740,7 +11740,7 @@ var require_loader = __commonJS({
11740
11740
  }
11741
11741
  });
11742
11742
  out = out.replace(/(^|\s)@([^\s]+)/g, (_m, lead, rel) => {
11743
- const abs = path6.isAbsolute(rel) ? rel : path6.join(workDir, rel);
11743
+ const abs = path7.isAbsolute(rel) ? rel : path7.join(workDir, rel);
11744
11744
  try {
11745
11745
  const content = fs9.readFileSync(abs, "utf-8").slice(0, 12e3);
11746
11746
  return `${lead}
@@ -11825,8 +11825,8 @@ var require_skills = __commonJS({
11825
11825
  exports2.summariseSkills = summariseSkills;
11826
11826
  exports2.expandSkill = expandSkill2;
11827
11827
  var fs9 = __importStar(__require("fs"));
11828
- var path6 = __importStar(__require("path"));
11829
- var os5 = __importStar(__require("os"));
11828
+ var path7 = __importStar(__require("path"));
11829
+ var os6 = __importStar(__require("os"));
11830
11830
  var index_1 = require_plugins();
11831
11831
  var loader_1 = require_loader();
11832
11832
  var frontmatter_1 = require_frontmatter();
@@ -11863,9 +11863,9 @@ var require_skills = __commonJS({
11863
11863
  }
11864
11864
  for (const file of files) {
11865
11865
  try {
11866
- const raw = fs9.readFileSync(path6.join(dir, file), "utf-8");
11866
+ const raw = fs9.readFileSync(path7.join(dir, file), "utf-8");
11867
11867
  const { meta, body } = (0, frontmatter_1.parseFrontmatter)(raw);
11868
- const name = (meta.name || path6.basename(file, ".md")).trim().toLowerCase();
11868
+ const name = (meta.name || path7.basename(file, ".md")).trim().toLowerCase();
11869
11869
  if (!name)
11870
11870
  continue;
11871
11871
  if (source2 !== "project" && into.has(name))
@@ -11885,8 +11885,8 @@ var require_skills = __commonJS({
11885
11885
  for (const entry of entries) {
11886
11886
  if (!entry.isDirectory() && !entry.isSymbolicLink())
11887
11887
  continue;
11888
- const skillDir = path6.join(root, entry.name);
11889
- const skillFile = path6.join(skillDir, "SKILL.md");
11888
+ const skillDir = path7.join(root, entry.name);
11889
+ const skillFile = path7.join(skillDir, "SKILL.md");
11890
11890
  try {
11891
11891
  if (!fs9.statSync(skillFile).isFile())
11892
11892
  continue;
@@ -11944,10 +11944,10 @@ var require_skills = __commonJS({
11944
11944
  ];
11945
11945
  function loadSkills2(workDir) {
11946
11946
  const out = /* @__PURE__ */ new Map();
11947
- loadFlatCommandDir(path6.join(workDir, ".nexrall", "commands"), "project", out);
11948
- loadSkillDir(path6.join(workDir, ".nexrall", "skills"), "project", out);
11949
- loadFlatCommandDir(path6.join(os5.homedir(), ".nexrall", "commands"), "global", out);
11950
- loadSkillDir(path6.join(os5.homedir(), ".nexrall", "skills"), "global", out);
11947
+ loadFlatCommandDir(path7.join(workDir, ".nexrall", "commands"), "project", out);
11948
+ loadSkillDir(path7.join(workDir, ".nexrall", "skills"), "project", out);
11949
+ loadFlatCommandDir(path7.join(os6.homedir(), ".nexrall", "commands"), "global", out);
11950
+ loadSkillDir(path7.join(os6.homedir(), ".nexrall", "skills"), "global", out);
11951
11951
  for (const dir of (0, index_1.pluginAssetDirs)(workDir, "commands"))
11952
11952
  loadFlatCommandDir(dir, "plugin", out);
11953
11953
  for (const dir of (0, index_1.pluginAssetDirs)(workDir, "skills"))
@@ -12004,10 +12004,10 @@ var require_testIntegrity = __commonJS({
12004
12004
  exports2.decodeTestIntegrityMarker = decodeTestIntegrityMarker;
12005
12005
  exports2.stripTestIntegrityMarker = stripTestIntegrityMarker;
12006
12006
  var TEST_PATH_RE = /(?:^|[\/\\])(?:tests?|spec|__tests__|testing)[\/\\]|(?:\.|_|-)(?:test|spec|tests)\.[a-z]+$|(?:^|[\/\\])test_[^\/\\]+\.py$|(?:^|[\/\\])[^\/\\]+_test\.(?:go|py|rb)$|Test[^\/\\]*\.(?:java|kt|cs)$|(?:^|[\/\\])[^\/\\]*Tests?\.(?:java|kt|cs)$/i;
12007
- function isTestFile(path6) {
12008
- if (!path6 || typeof path6 !== "string")
12007
+ function isTestFile(path7) {
12008
+ if (!path7 || typeof path7 !== "string")
12009
12009
  return false;
12010
- return TEST_PATH_RE.test(path6);
12010
+ return TEST_PATH_RE.test(path7);
12011
12011
  }
12012
12012
  var ASSERTION_RES = [
12013
12013
  /\bexpect\s*\(/g,
@@ -12097,8 +12097,8 @@ var require_testIntegrity = __commonJS({
12097
12097
  }
12098
12098
  return n;
12099
12099
  }
12100
- function analyzeTestEdit(path6, oldText, newText) {
12101
- if (!isTestFile(path6)) {
12100
+ function analyzeTestEdit(path7, oldText, newText) {
12101
+ if (!isTestFile(path7)) {
12102
12102
  return { isTestFile: false, suspicious: false, findings: [] };
12103
12103
  }
12104
12104
  const findings = [];
@@ -12146,23 +12146,23 @@ var require_testIntegrity = __commonJS({
12146
12146
  function analyzeWriteToolForTestIntegrity(toolName, input) {
12147
12147
  if (!input)
12148
12148
  return null;
12149
- const path6 = typeof input.path === "string" ? input.path : typeof input.file_path === "string" ? input.file_path : "";
12150
- if (!isTestFile(path6))
12149
+ const path7 = typeof input.path === "string" ? input.path : typeof input.file_path === "string" ? input.file_path : "";
12150
+ if (!isTestFile(path7))
12151
12151
  return null;
12152
12152
  if (toolName === "edit_file") {
12153
12153
  const oldText = typeof input.old_string === "string" ? input.old_string : "";
12154
12154
  const newText = typeof input.new_string === "string" ? input.new_string : "";
12155
- return analyzeTestEdit(path6, oldText, newText);
12155
+ return analyzeTestEdit(path7, oldText, newText);
12156
12156
  }
12157
12157
  if (toolName === "multi_edit" && Array.isArray(input.edits)) {
12158
12158
  const edits = input.edits;
12159
12159
  const oldText = edits.map((e2) => typeof e2.old_string === "string" ? e2.old_string : "").join("\n");
12160
12160
  const newText = edits.map((e2) => typeof e2.new_string === "string" ? e2.new_string : "").join("\n");
12161
- return analyzeTestEdit(path6, oldText, newText);
12161
+ return analyzeTestEdit(path7, oldText, newText);
12162
12162
  }
12163
12163
  if (toolName === "write_file") {
12164
12164
  const content = typeof input.content === "string" ? input.content : "";
12165
- return analyzeTestEdit(path6, "", content);
12165
+ return analyzeTestEdit(path7, "", content);
12166
12166
  }
12167
12167
  return null;
12168
12168
  }
@@ -12222,19 +12222,19 @@ var require_crossFile = __commonJS({
12222
12222
  { kind: "def", re: /^def\s+([A-Za-z_][\w]*)/gm },
12223
12223
  { kind: "class", re: /^class\s+([A-Za-z_][\w]*)/gm }
12224
12224
  ];
12225
- function isJsLike(path6) {
12226
- return /\.(?:m?[jt]sx?|cjs|cts|mts)$/.test(path6);
12225
+ function isJsLike(path7) {
12226
+ return /\.(?:m?[jt]sx?|cjs|cts|mts)$/.test(path7);
12227
12227
  }
12228
- function isPy(path6) {
12229
- return /\.py$/.test(path6);
12228
+ function isPy(path7) {
12229
+ return /\.py$/.test(path7);
12230
12230
  }
12231
- function extractExportedSymbols(path6, content) {
12231
+ function extractExportedSymbols(path7, content) {
12232
12232
  const out = /* @__PURE__ */ new Map();
12233
12233
  const add = (name, kind) => {
12234
12234
  if (name && !out.has(name))
12235
12235
  out.set(name, kind);
12236
12236
  };
12237
- if (isJsLike(path6)) {
12237
+ if (isJsLike(path7)) {
12238
12238
  for (const { kind, re } of JS_EXPORT_RES) {
12239
12239
  re.lastIndex = 0;
12240
12240
  let m2;
@@ -12254,7 +12254,7 @@ var require_crossFile = __commonJS({
12254
12254
  add(name, "export");
12255
12255
  }
12256
12256
  }
12257
- } else if (isPy(path6)) {
12257
+ } else if (isPy(path7)) {
12258
12258
  for (const { kind, re } of PY_DEF_RES) {
12259
12259
  re.lastIndex = 0;
12260
12260
  let m2;
@@ -12264,11 +12264,11 @@ var require_crossFile = __commonJS({
12264
12264
  }
12265
12265
  return [...out.entries()].map(([name, kind]) => ({ name, kind }));
12266
12266
  }
12267
- function findRemovedExports(path6, oldContent, newContent) {
12268
- const before = extractExportedSymbols(path6, oldContent);
12267
+ function findRemovedExports(path7, oldContent, newContent) {
12268
+ const before = extractExportedSymbols(path7, oldContent);
12269
12269
  if (before.length === 0)
12270
12270
  return [];
12271
- const afterNames = new Set(extractExportedSymbols(path6, newContent).map((s2) => s2.name));
12271
+ const afterNames = new Set(extractExportedSymbols(path7, newContent).map((s2) => s2.name));
12272
12272
  return before.filter((s2) => !afterNames.has(s2.name));
12273
12273
  }
12274
12274
  var NOISY_NAMES = /* @__PURE__ */ new Set(["default", "index", "main", "test", "get", "set", "run", "app", "data", "item", "value"]);
@@ -12336,7 +12336,7 @@ var require_symbols = __commonJS({
12336
12336
  exports2.getSymbols = getSymbols;
12337
12337
  exports2.getWorkspaceSymbols = getWorkspaceSymbols;
12338
12338
  var fs9 = __importStar(__require("fs"));
12339
- var path6 = __importStar(__require("path"));
12339
+ var path7 = __importStar(__require("path"));
12340
12340
  var LANGS = [
12341
12341
  {
12342
12342
  exts: [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs", ".mts", ".cts"],
@@ -12436,7 +12436,7 @@ var require_symbols = __commonJS({
12436
12436
  }
12437
12437
  var MAX_FILE_BYTES = 1024 * 1024;
12438
12438
  function extractSymbols(filePath, source2) {
12439
- const lang = EXT_TO_LANG.get(path6.extname(filePath).toLowerCase());
12439
+ const lang = EXT_TO_LANG.get(path7.extname(filePath).toLowerCase());
12440
12440
  if (!lang)
12441
12441
  return [];
12442
12442
  const hits = [];
@@ -12470,7 +12470,7 @@ var require_symbols = __commonJS({
12470
12470
  }
12471
12471
  function resolveIn(workDir, p) {
12472
12472
  const base = workDir ?? process.cwd();
12473
- return path6.isAbsolute(p) ? p : path6.resolve(base, p);
12473
+ return path7.isAbsolute(p) ? p : path7.resolve(base, p);
12474
12474
  }
12475
12475
  async function getSymbols(input, workDir) {
12476
12476
  const rel = typeof input.path === "string" ? input.path : "";
@@ -12488,8 +12488,8 @@ var require_symbols = __commonJS({
12488
12488
  } catch (err) {
12489
12489
  return { error: `Cannot read ${rel}: ${err.message}` };
12490
12490
  }
12491
- if (!EXT_TO_LANG.has(path6.extname(abs).toLowerCase())) {
12492
- return { output: `No symbol support for ${path6.extname(abs) || "this file type"} (regex-based scanner). Use search_files instead.` };
12491
+ if (!EXT_TO_LANG.has(path7.extname(abs).toLowerCase())) {
12492
+ return { output: `No symbol support for ${path7.extname(abs) || "this file type"} (regex-based scanner). Use search_files instead.` };
12493
12493
  }
12494
12494
  const hits = extractSymbols(abs, source2);
12495
12495
  if (!hits.length)
@@ -12522,12 +12522,12 @@ ${lines.join("\n")}` };
12522
12522
  for (const entry of entries) {
12523
12523
  if (results.length >= MAX_RESULTS || scanned >= MAX_FILES_SCANNED)
12524
12524
  return;
12525
- const full = path6.join(dir, entry.name);
12525
+ const full = path7.join(dir, entry.name);
12526
12526
  if (entry.isDirectory()) {
12527
12527
  if (SKIP_DIRS.has(entry.name) || entry.name.startsWith("."))
12528
12528
  continue;
12529
12529
  walk(full);
12530
- } else if (entry.isFile() && exts.has(path6.extname(entry.name).toLowerCase())) {
12530
+ } else if (entry.isFile() && exts.has(path7.extname(entry.name).toLowerCase())) {
12531
12531
  scanned++;
12532
12532
  try {
12533
12533
  const st = fs9.statSync(full);
@@ -12538,7 +12538,7 @@ ${lines.join("\n")}` };
12538
12538
  continue;
12539
12539
  for (const h2 of extractSymbols(full, source2)) {
12540
12540
  if (h2.name.toLowerCase().includes(q)) {
12541
- results.push({ ...h2, file: path6.relative(root, full) });
12541
+ results.push({ ...h2, file: path7.relative(root, full) });
12542
12542
  if (results.length >= MAX_RESULTS)
12543
12543
  break;
12544
12544
  }
@@ -12620,12 +12620,12 @@ var require_tsLangService = __commonJS({
12620
12620
  exports2.tsGetHover = tsGetHover;
12621
12621
  exports2.tsServiceAvailable = tsServiceAvailable;
12622
12622
  exports2._resetTsServiceCache = _resetTsServiceCache;
12623
- var path6 = __importStar(__require("path"));
12623
+ var path7 = __importStar(__require("path"));
12624
12624
  var fs9 = __importStar(__require("fs"));
12625
12625
  var module_1 = __require("module");
12626
12626
  var TS_EXTS = /* @__PURE__ */ new Set([".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs", ".mts", ".cts"]);
12627
12627
  function isTsLike(filePath) {
12628
- return TS_EXTS.has(path6.extname(filePath).toLowerCase());
12628
+ return TS_EXTS.has(path7.extname(filePath).toLowerCase());
12629
12629
  }
12630
12630
  var _tsResolveTried = false;
12631
12631
  var _ts = null;
@@ -12635,7 +12635,7 @@ var require_tsLangService = __commonJS({
12635
12635
  _tsResolveTried = true;
12636
12636
  const candidates = [];
12637
12637
  try {
12638
- const req = (0, module_1.createRequire)(path6.join(workDir, "package.json"));
12638
+ const req = (0, module_1.createRequire)(path7.join(workDir, "package.json"));
12639
12639
  candidates.push(req.resolve("typescript"));
12640
12640
  } catch {
12641
12641
  }
@@ -12681,7 +12681,7 @@ var require_tsLangService = __commonJS({
12681
12681
  const cfgPath = ts.findConfigFile(workDir, ts.sys.fileExists, "tsconfig.json");
12682
12682
  if (cfgPath) {
12683
12683
  const parsed = ts.readConfigFile(cfgPath, ts.sys.readFile);
12684
- const conf = ts.parseJsonConfigFileContent(parsed.config ?? {}, ts.sys, path6.dirname(cfgPath));
12684
+ const conf = ts.parseJsonConfigFileContent(parsed.config ?? {}, ts.sys, path7.dirname(cfgPath));
12685
12685
  if (conf.options)
12686
12686
  options = { ...conf.options, allowJs: true };
12687
12687
  }
@@ -12742,7 +12742,7 @@ var require_tsLangService = __commonJS({
12742
12742
  return { line, character: offset - last + 1 };
12743
12743
  }
12744
12744
  function relOf(root, abs) {
12745
- const r2 = path6.relative(root, abs);
12745
+ const r2 = path7.relative(root, abs);
12746
12746
  return r2.startsWith("..") ? abs : r2;
12747
12747
  }
12748
12748
  function tsGoToDefinition(deps) {
@@ -17029,7 +17029,7 @@ var require_dist2 = __commonJS({
17029
17029
  },
17030
17030
  {
17031
17031
  key: "join",
17032
- value: function join4(s2) {
17032
+ value: function join5(s2) {
17033
17033
  if (this.length === 0)
17034
17034
  return "";
17035
17035
  var p = this.head;
@@ -35116,16 +35116,16 @@ var require_dist2 = __commonJS({
35116
35116
  didFindOccurrence: true
35117
35117
  };
35118
35118
  };
35119
- var goToElementFromPath = (json, path6) => {
35119
+ var goToElementFromPath = (json, path7) => {
35120
35120
  let element = json;
35121
- for (let i2 = 1; i2 < path6.length; i2++) {
35122
- const index = path6[i2];
35121
+ for (let i2 = 1; i2 < path7.length; i2++) {
35122
+ const index = path7[i2];
35123
35123
  element = element.elements[index];
35124
35124
  }
35125
35125
  return element;
35126
35126
  };
35127
- var goToParentElementFromPath = (json, path6) => goToElementFromPath(json, path6.slice(0, path6.length - 1));
35128
- var getLastElementIndexFromPath = (path6) => path6[path6.length - 1];
35127
+ var goToParentElementFromPath = (json, path7) => goToElementFromPath(json, path7.slice(0, path7.length - 1));
35128
+ var getLastElementIndexFromPath = (path7) => path7[path7.length - 1];
35129
35129
  var PatchType = {
35130
35130
  /** Replace entire file-level elements (e.g., whole paragraphs) */
35131
35131
  DOCUMENT: "file",
@@ -39962,7 +39962,7 @@ var require_BufferList = __commonJS({
39962
39962
  this.head = this.tail = null;
39963
39963
  this.length = 0;
39964
39964
  };
39965
- BufferList.prototype.join = function join4(s2) {
39965
+ BufferList.prototype.join = function join5(s2) {
39966
39966
  if (this.length === 0)
39967
39967
  return "";
39968
39968
  var p = this.head;
@@ -42687,8 +42687,8 @@ var require_utils = __commonJS({
42687
42687
  var result = transform[inputType][outputType](input);
42688
42688
  return result;
42689
42689
  };
42690
- exports2.resolve = function(path6) {
42691
- var parts = path6.split("/");
42690
+ exports2.resolve = function(path7) {
42691
+ var parts = path7.split("/");
42692
42692
  var result = [];
42693
42693
  for (var index = 0; index < parts.length; index++) {
42694
42694
  var part = parts[index];
@@ -48520,18 +48520,18 @@ var require_object = __commonJS({
48520
48520
  var object = new ZipObject(name, zipObjectContent, o);
48521
48521
  this.files[name] = object;
48522
48522
  };
48523
- var parentFolder = function(path6) {
48524
- if (path6.slice(-1) === "/") {
48525
- path6 = path6.substring(0, path6.length - 1);
48523
+ var parentFolder = function(path7) {
48524
+ if (path7.slice(-1) === "/") {
48525
+ path7 = path7.substring(0, path7.length - 1);
48526
48526
  }
48527
- var lastSlash = path6.lastIndexOf("/");
48528
- return lastSlash > 0 ? path6.substring(0, lastSlash) : "";
48527
+ var lastSlash = path7.lastIndexOf("/");
48528
+ return lastSlash > 0 ? path7.substring(0, lastSlash) : "";
48529
48529
  };
48530
- var forceTrailingSlash = function(path6) {
48531
- if (path6.slice(-1) !== "/") {
48532
- path6 += "/";
48530
+ var forceTrailingSlash = function(path7) {
48531
+ if (path7.slice(-1) !== "/") {
48532
+ path7 += "/";
48533
48533
  }
48534
- return path6;
48534
+ return path7;
48535
48535
  };
48536
48536
  var folderAdd = function(name, createFolders) {
48537
48537
  createFolders = typeof createFolders !== "undefined" ? createFolders : defaults.createFolders;
@@ -49455,14 +49455,14 @@ var require_load = __commonJS({
49455
49455
  zipEntries.load(data2);
49456
49456
  return zipEntries;
49457
49457
  }).then(function checkCRC32(zipEntries) {
49458
- var promises = [external.Promise.resolve(zipEntries)];
49458
+ var promises2 = [external.Promise.resolve(zipEntries)];
49459
49459
  var files = zipEntries.files;
49460
49460
  if (options.checkCRC32) {
49461
49461
  for (var i2 = 0; i2 < files.length; i2++) {
49462
- promises.push(checkEntryCRC32(files[i2]));
49462
+ promises2.push(checkEntryCRC32(files[i2]));
49463
49463
  }
49464
49464
  }
49465
- return external.Promise.all(promises);
49465
+ return external.Promise.all(promises2);
49466
49466
  }).then(function addFiles(results) {
49467
49467
  var zipEntries = results.shift();
49468
49468
  var files = zipEntries.files;
@@ -49672,7 +49672,7 @@ var require_buffer_list = __commonJS({
49672
49672
  }
49673
49673
  }, {
49674
49674
  key: "join",
49675
- value: function join4(s2) {
49675
+ value: function join5(s2) {
49676
49676
  if (this.length === 0)
49677
49677
  return "";
49678
49678
  var p = this.head;
@@ -52452,8 +52452,8 @@ var require_utils2 = __commonJS({
52452
52452
  };
52453
52453
  },
52454
52454
  getRelsPath(filepath) {
52455
- const path6 = utils.parsePath(filepath);
52456
- return `${path6.path}/_rels/${path6.name}.rels`;
52455
+ const path7 = utils.parsePath(filepath);
52456
+ return `${path7.path}/_rels/${path7.name}.rels`;
52457
52457
  },
52458
52458
  xmlEncode(text) {
52459
52459
  const regexResult = xmlDecodeRegex.exec(text);
@@ -52534,9 +52534,9 @@ var require_utils2 = __commonJS({
52534
52534
  return result;
52535
52535
  },
52536
52536
  fs: {
52537
- exists(path6) {
52537
+ exists(path7) {
52538
52538
  return new Promise((resolve3) => {
52539
- fs9.access(path6, fs9.constants.F_OK, (err) => {
52539
+ fs9.access(path7, fs9.constants.F_OK, (err) => {
52540
52540
  resolve3(!err);
52541
52541
  });
52542
52542
  });
@@ -64747,11 +64747,11 @@ var require_xlsx = __commonJS({
64747
64747
  delete model.drawingRels;
64748
64748
  delete model.vmlDrawings;
64749
64749
  }
64750
- async _processWorksheetEntry(stream, model, sheetNo, options, path6) {
64750
+ async _processWorksheetEntry(stream, model, sheetNo, options, path7) {
64751
64751
  const xform = new WorksheetXform(options);
64752
64752
  const worksheet = await xform.parseStream(stream);
64753
64753
  worksheet.sheetNo = sheetNo;
64754
- model.worksheetHash[path6] = worksheet;
64754
+ model.worksheetHash[path7] = worksheet;
64755
64755
  model.worksheets.push(worksheet);
64756
64756
  }
64757
64757
  async _processCommentEntry(stream, model, name) {
@@ -65047,8 +65047,8 @@ var require_xlsx = __commonJS({
65047
65047
  const themes = model.themes || { theme1: theme1Xml };
65048
65048
  Object.keys(themes).forEach((name) => {
65049
65049
  const xml = themes[name];
65050
- const path6 = `xl/theme/${name}.xml`;
65051
- zip.append(xml, { name: path6 });
65050
+ const path7 = `xl/theme/${name}.xml`;
65051
+ zip.append(xml, { name: path7 });
65052
65052
  });
65053
65053
  }
65054
65054
  async addOfficeRels(zip) {
@@ -66478,8 +66478,8 @@ var require_src = __commonJS({
66478
66478
  });
66479
66479
  };
66480
66480
  exports2.writeToString = (rows, options) => exports2.writeToBuffer(rows, options).then((buffer) => buffer.toString());
66481
- exports2.writeToPath = (path6, rows, options) => {
66482
- const stream = fs9.createWriteStream(path6, { encoding: "utf8" });
66481
+ exports2.writeToPath = (path7, rows, options) => {
66482
+ const stream = fs9.createWriteStream(path7, { encoding: "utf8" });
66483
66483
  return exports2.write(rows, options).pipe(stream);
66484
66484
  };
66485
66485
  }
@@ -67337,11 +67337,11 @@ var require_lodash8 = __commonJS({
67337
67337
  function baseForOwn(object, iteratee) {
67338
67338
  return object && baseFor(object, iteratee, keys);
67339
67339
  }
67340
- function baseGet(object, path6) {
67341
- path6 = isKey(path6, object) ? [path6] : castPath(path6);
67342
- var index = 0, length = path6.length;
67340
+ function baseGet(object, path7) {
67341
+ path7 = isKey(path7, object) ? [path7] : castPath(path7);
67342
+ var index = 0, length = path7.length;
67343
67343
  while (object != null && index < length) {
67344
- object = object[toKey(path6[index++])];
67344
+ object = object[toKey(path7[index++])];
67345
67345
  }
67346
67346
  return index && index == length ? object : void 0;
67347
67347
  }
@@ -67463,18 +67463,18 @@ var require_lodash8 = __commonJS({
67463
67463
  return object === source2 || baseIsMatch(object, source2, matchData);
67464
67464
  };
67465
67465
  }
67466
- function baseMatchesProperty(path6, srcValue) {
67467
- if (isKey(path6) && isStrictComparable(srcValue)) {
67468
- return matchesStrictComparable(toKey(path6), srcValue);
67466
+ function baseMatchesProperty(path7, srcValue) {
67467
+ if (isKey(path7) && isStrictComparable(srcValue)) {
67468
+ return matchesStrictComparable(toKey(path7), srcValue);
67469
67469
  }
67470
67470
  return function(object) {
67471
- var objValue = get3(object, path6);
67472
- return objValue === void 0 && objValue === srcValue ? hasIn(object, path6) : baseIsEqual(srcValue, objValue, void 0, UNORDERED_COMPARE_FLAG | PARTIAL_COMPARE_FLAG);
67471
+ var objValue = get3(object, path7);
67472
+ return objValue === void 0 && objValue === srcValue ? hasIn(object, path7) : baseIsEqual(srcValue, objValue, void 0, UNORDERED_COMPARE_FLAG | PARTIAL_COMPARE_FLAG);
67473
67473
  };
67474
67474
  }
67475
- function basePropertyDeep(path6) {
67475
+ function basePropertyDeep(path7) {
67476
67476
  return function(object) {
67477
- return baseGet(object, path6);
67477
+ return baseGet(object, path7);
67478
67478
  };
67479
67479
  }
67480
67480
  function baseToString(value) {
@@ -67692,11 +67692,11 @@ var require_lodash8 = __commonJS({
67692
67692
  return result;
67693
67693
  };
67694
67694
  }
67695
- function hasPath(object, path6, hasFunc) {
67696
- path6 = isKey(path6, object) ? [path6] : castPath(path6);
67697
- var result, index = -1, length = path6.length;
67695
+ function hasPath(object, path7, hasFunc) {
67696
+ path7 = isKey(path7, object) ? [path7] : castPath(path7);
67697
+ var result, index = -1, length = path7.length;
67698
67698
  while (++index < length) {
67699
- var key = toKey(path6[index]);
67699
+ var key = toKey(path7[index]);
67700
67700
  if (!(result = object != null && hasFunc(object, key))) {
67701
67701
  break;
67702
67702
  }
@@ -67833,12 +67833,12 @@ var require_lodash8 = __commonJS({
67833
67833
  function toString(value) {
67834
67834
  return value == null ? "" : baseToString(value);
67835
67835
  }
67836
- function get3(object, path6, defaultValue2) {
67837
- var result = object == null ? void 0 : baseGet(object, path6);
67836
+ function get3(object, path7, defaultValue2) {
67837
+ var result = object == null ? void 0 : baseGet(object, path7);
67838
67838
  return result === void 0 ? defaultValue2 : result;
67839
67839
  }
67840
- function hasIn(object, path6) {
67841
- return object != null && hasPath(object, path6, baseHasIn);
67840
+ function hasIn(object, path7) {
67841
+ return object != null && hasPath(object, path7, baseHasIn);
67842
67842
  }
67843
67843
  function keys(object) {
67844
67844
  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
@@ -67846,8 +67846,8 @@ var require_lodash8 = __commonJS({
67846
67846
  function identity(value) {
67847
67847
  return value;
67848
67848
  }
67849
- function property(path6) {
67850
- return isKey(path6) ? baseProperty(toKey(path6)) : basePropertyDeep(path6);
67849
+ function property(path7) {
67850
+ return isKey(path7) ? baseProperty(toKey(path7)) : basePropertyDeep(path7);
67851
67851
  }
67852
67852
  module2.exports = groupBy;
67853
67853
  }
@@ -70002,8 +70002,8 @@ var require_minimatch = __commonJS({
70002
70002
  return new Minimatch(pattern, options).match(p);
70003
70003
  };
70004
70004
  module2.exports = minimatch;
70005
- var path6 = require_path();
70006
- minimatch.sep = path6.sep;
70005
+ var path7 = require_path();
70006
+ minimatch.sep = path7.sep;
70007
70007
  var GLOBSTAR = Symbol("globstar **");
70008
70008
  minimatch.GLOBSTAR = GLOBSTAR;
70009
70009
  var expand = require_brace_expansion();
@@ -70621,8 +70621,8 @@ var require_minimatch = __commonJS({
70621
70621
  if (f3 === "/" && partial)
70622
70622
  return true;
70623
70623
  const options = this.options;
70624
- if (path6.sep !== "/") {
70625
- f3 = f3.split(path6.sep).join("/");
70624
+ if (path7.sep !== "/") {
70625
+ f3 = f3.split(path7.sep).join("/");
70626
70626
  }
70627
70627
  f3 = f3.split(slashSplit);
70628
70628
  this.debug(this.pattern, "split", f3);
@@ -70719,8 +70719,8 @@ var require_readdir_glob = __commonJS({
70719
70719
  });
70720
70720
  });
70721
70721
  }
70722
- async function* exploreWalkAsync(dir, path6, followSymlinks, useStat, shouldSkip, strict) {
70723
- let files = await readdir(path6 + dir, strict);
70722
+ async function* exploreWalkAsync(dir, path7, followSymlinks, useStat, shouldSkip, strict) {
70723
+ let files = await readdir(path7 + dir, strict);
70724
70724
  for (const file of files) {
70725
70725
  let name = file.name;
70726
70726
  if (name === void 0) {
@@ -70729,7 +70729,7 @@ var require_readdir_glob = __commonJS({
70729
70729
  }
70730
70730
  const filename = dir + "/" + name;
70731
70731
  const relative2 = filename.slice(1);
70732
- const absolute = path6 + "/" + relative2;
70732
+ const absolute = path7 + "/" + relative2;
70733
70733
  let stats = null;
70734
70734
  if (useStat || followSymlinks) {
70735
70735
  stats = await stat2(absolute, followSymlinks);
@@ -70743,15 +70743,15 @@ var require_readdir_glob = __commonJS({
70743
70743
  if (stats.isDirectory()) {
70744
70744
  if (!shouldSkip(relative2)) {
70745
70745
  yield { relative: relative2, absolute, stats };
70746
- yield* exploreWalkAsync(filename, path6, followSymlinks, useStat, shouldSkip, false);
70746
+ yield* exploreWalkAsync(filename, path7, followSymlinks, useStat, shouldSkip, false);
70747
70747
  }
70748
70748
  } else {
70749
70749
  yield { relative: relative2, absolute, stats };
70750
70750
  }
70751
70751
  }
70752
70752
  }
70753
- async function* explore(path6, followSymlinks, useStat, shouldSkip) {
70754
- yield* exploreWalkAsync("", path6, followSymlinks, useStat, shouldSkip, true);
70753
+ async function* explore(path7, followSymlinks, useStat, shouldSkip) {
70754
+ yield* exploreWalkAsync("", path7, followSymlinks, useStat, shouldSkip, true);
70755
70755
  }
70756
70756
  function readOptions(options) {
70757
70757
  return {
@@ -72865,7 +72865,7 @@ var require_polyfills = __commonJS({
72865
72865
  fs9.fstatSync = statFixSync(fs9.fstatSync);
72866
72866
  fs9.lstatSync = statFixSync(fs9.lstatSync);
72867
72867
  if (fs9.chmod && !fs9.lchmod) {
72868
- fs9.lchmod = function(path6, mode, cb) {
72868
+ fs9.lchmod = function(path7, mode, cb) {
72869
72869
  if (cb)
72870
72870
  process.nextTick(cb);
72871
72871
  };
@@ -72873,7 +72873,7 @@ var require_polyfills = __commonJS({
72873
72873
  };
72874
72874
  }
72875
72875
  if (fs9.chown && !fs9.lchown) {
72876
- fs9.lchown = function(path6, uid, gid, cb) {
72876
+ fs9.lchown = function(path7, uid, gid, cb) {
72877
72877
  if (cb)
72878
72878
  process.nextTick(cb);
72879
72879
  };
@@ -72944,9 +72944,9 @@ var require_polyfills = __commonJS({
72944
72944
  };
72945
72945
  }(fs9.readSync);
72946
72946
  function patchLchmod(fs10) {
72947
- fs10.lchmod = function(path6, mode, callback) {
72947
+ fs10.lchmod = function(path7, mode, callback) {
72948
72948
  fs10.open(
72949
- path6,
72949
+ path7,
72950
72950
  constants2.O_WRONLY | constants2.O_SYMLINK,
72951
72951
  mode,
72952
72952
  function(err, fd) {
@@ -72964,8 +72964,8 @@ var require_polyfills = __commonJS({
72964
72964
  }
72965
72965
  );
72966
72966
  };
72967
- fs10.lchmodSync = function(path6, mode) {
72968
- var fd = fs10.openSync(path6, constants2.O_WRONLY | constants2.O_SYMLINK, mode);
72967
+ fs10.lchmodSync = function(path7, mode) {
72968
+ var fd = fs10.openSync(path7, constants2.O_WRONLY | constants2.O_SYMLINK, mode);
72969
72969
  var threw = true;
72970
72970
  var ret2;
72971
72971
  try {
@@ -72986,8 +72986,8 @@ var require_polyfills = __commonJS({
72986
72986
  }
72987
72987
  function patchLutimes(fs10) {
72988
72988
  if (constants2.hasOwnProperty("O_SYMLINK") && fs10.futimes) {
72989
- fs10.lutimes = function(path6, at, mt, cb) {
72990
- fs10.open(path6, constants2.O_SYMLINK, function(er, fd) {
72989
+ fs10.lutimes = function(path7, at, mt, cb) {
72990
+ fs10.open(path7, constants2.O_SYMLINK, function(er, fd) {
72991
72991
  if (er) {
72992
72992
  if (cb)
72993
72993
  cb(er);
@@ -73001,8 +73001,8 @@ var require_polyfills = __commonJS({
73001
73001
  });
73002
73002
  });
73003
73003
  };
73004
- fs10.lutimesSync = function(path6, at, mt) {
73005
- var fd = fs10.openSync(path6, constants2.O_SYMLINK);
73004
+ fs10.lutimesSync = function(path7, at, mt) {
73005
+ var fd = fs10.openSync(path7, constants2.O_SYMLINK);
73006
73006
  var ret2;
73007
73007
  var threw = true;
73008
73008
  try {
@@ -73138,12 +73138,12 @@ var require_legacy_streams = __commonJS({
73138
73138
  ReadStream,
73139
73139
  WriteStream
73140
73140
  };
73141
- function ReadStream(path6, options) {
73141
+ function ReadStream(path7, options) {
73142
73142
  if (!(this instanceof ReadStream))
73143
- return new ReadStream(path6, options);
73143
+ return new ReadStream(path7, options);
73144
73144
  Stream4.call(this);
73145
73145
  var self2 = this;
73146
- this.path = path6;
73146
+ this.path = path7;
73147
73147
  this.fd = null;
73148
73148
  this.readable = true;
73149
73149
  this.paused = false;
@@ -73189,11 +73189,11 @@ var require_legacy_streams = __commonJS({
73189
73189
  self2._read();
73190
73190
  });
73191
73191
  }
73192
- function WriteStream(path6, options) {
73192
+ function WriteStream(path7, options) {
73193
73193
  if (!(this instanceof WriteStream))
73194
- return new WriteStream(path6, options);
73194
+ return new WriteStream(path7, options);
73195
73195
  Stream4.call(this);
73196
- this.path = path6;
73196
+ this.path = path7;
73197
73197
  this.fd = null;
73198
73198
  this.writable = true;
73199
73199
  this.flags = "w";
@@ -73336,14 +73336,14 @@ var require_graceful_fs = __commonJS({
73336
73336
  fs10.createWriteStream = createWriteStream;
73337
73337
  var fs$readFile = fs10.readFile;
73338
73338
  fs10.readFile = readFile;
73339
- function readFile(path6, options, cb) {
73339
+ function readFile(path7, options, cb) {
73340
73340
  if (typeof options === "function")
73341
73341
  cb = options, options = null;
73342
- return go$readFile(path6, options, cb);
73343
- function go$readFile(path7, options2, cb2, startTime) {
73344
- return fs$readFile(path7, options2, function(err) {
73342
+ return go$readFile(path7, options, cb);
73343
+ function go$readFile(path8, options2, cb2, startTime) {
73344
+ return fs$readFile(path8, options2, function(err) {
73345
73345
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
73346
- enqueue([go$readFile, [path7, options2, cb2], err, startTime || Date.now(), Date.now()]);
73346
+ enqueue([go$readFile, [path8, options2, cb2], err, startTime || Date.now(), Date.now()]);
73347
73347
  else {
73348
73348
  if (typeof cb2 === "function")
73349
73349
  cb2.apply(this, arguments);
@@ -73353,14 +73353,14 @@ var require_graceful_fs = __commonJS({
73353
73353
  }
73354
73354
  var fs$writeFile = fs10.writeFile;
73355
73355
  fs10.writeFile = writeFile;
73356
- function writeFile(path6, data, options, cb) {
73356
+ function writeFile(path7, data, options, cb) {
73357
73357
  if (typeof options === "function")
73358
73358
  cb = options, options = null;
73359
- return go$writeFile(path6, data, options, cb);
73360
- function go$writeFile(path7, data2, options2, cb2, startTime) {
73361
- return fs$writeFile(path7, data2, options2, function(err) {
73359
+ return go$writeFile(path7, data, options, cb);
73360
+ function go$writeFile(path8, data2, options2, cb2, startTime) {
73361
+ return fs$writeFile(path8, data2, options2, function(err) {
73362
73362
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
73363
- enqueue([go$writeFile, [path7, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
73363
+ enqueue([go$writeFile, [path8, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
73364
73364
  else {
73365
73365
  if (typeof cb2 === "function")
73366
73366
  cb2.apply(this, arguments);
@@ -73371,14 +73371,14 @@ var require_graceful_fs = __commonJS({
73371
73371
  var fs$appendFile = fs10.appendFile;
73372
73372
  if (fs$appendFile)
73373
73373
  fs10.appendFile = appendFile;
73374
- function appendFile(path6, data, options, cb) {
73374
+ function appendFile(path7, data, options, cb) {
73375
73375
  if (typeof options === "function")
73376
73376
  cb = options, options = null;
73377
- return go$appendFile(path6, data, options, cb);
73378
- function go$appendFile(path7, data2, options2, cb2, startTime) {
73379
- return fs$appendFile(path7, data2, options2, function(err) {
73377
+ return go$appendFile(path7, data, options, cb);
73378
+ function go$appendFile(path8, data2, options2, cb2, startTime) {
73379
+ return fs$appendFile(path8, data2, options2, function(err) {
73380
73380
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
73381
- enqueue([go$appendFile, [path7, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
73381
+ enqueue([go$appendFile, [path8, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
73382
73382
  else {
73383
73383
  if (typeof cb2 === "function")
73384
73384
  cb2.apply(this, arguments);
@@ -73409,31 +73409,31 @@ var require_graceful_fs = __commonJS({
73409
73409
  var fs$readdir = fs10.readdir;
73410
73410
  fs10.readdir = readdir;
73411
73411
  var noReaddirOptionVersions = /^v[0-5]\./;
73412
- function readdir(path6, options, cb) {
73412
+ function readdir(path7, options, cb) {
73413
73413
  if (typeof options === "function")
73414
73414
  cb = options, options = null;
73415
- var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path7, options2, cb2, startTime) {
73416
- return fs$readdir(path7, fs$readdirCallback(
73417
- path7,
73415
+ var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path8, options2, cb2, startTime) {
73416
+ return fs$readdir(path8, fs$readdirCallback(
73417
+ path8,
73418
73418
  options2,
73419
73419
  cb2,
73420
73420
  startTime
73421
73421
  ));
73422
- } : function go$readdir2(path7, options2, cb2, startTime) {
73423
- return fs$readdir(path7, options2, fs$readdirCallback(
73424
- path7,
73422
+ } : function go$readdir2(path8, options2, cb2, startTime) {
73423
+ return fs$readdir(path8, options2, fs$readdirCallback(
73424
+ path8,
73425
73425
  options2,
73426
73426
  cb2,
73427
73427
  startTime
73428
73428
  ));
73429
73429
  };
73430
- return go$readdir(path6, options, cb);
73431
- function fs$readdirCallback(path7, options2, cb2, startTime) {
73430
+ return go$readdir(path7, options, cb);
73431
+ function fs$readdirCallback(path8, options2, cb2, startTime) {
73432
73432
  return function(err, files) {
73433
73433
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
73434
73434
  enqueue([
73435
73435
  go$readdir,
73436
- [path7, options2, cb2],
73436
+ [path8, options2, cb2],
73437
73437
  err,
73438
73438
  startTime || Date.now(),
73439
73439
  Date.now()
@@ -73504,7 +73504,7 @@ var require_graceful_fs = __commonJS({
73504
73504
  enumerable: true,
73505
73505
  configurable: true
73506
73506
  });
73507
- function ReadStream(path6, options) {
73507
+ function ReadStream(path7, options) {
73508
73508
  if (this instanceof ReadStream)
73509
73509
  return fs$ReadStream.apply(this, arguments), this;
73510
73510
  else
@@ -73524,7 +73524,7 @@ var require_graceful_fs = __commonJS({
73524
73524
  }
73525
73525
  });
73526
73526
  }
73527
- function WriteStream(path6, options) {
73527
+ function WriteStream(path7, options) {
73528
73528
  if (this instanceof WriteStream)
73529
73529
  return fs$WriteStream.apply(this, arguments), this;
73530
73530
  else
@@ -73542,22 +73542,22 @@ var require_graceful_fs = __commonJS({
73542
73542
  }
73543
73543
  });
73544
73544
  }
73545
- function createReadStream2(path6, options) {
73546
- return new fs10.ReadStream(path6, options);
73545
+ function createReadStream2(path7, options) {
73546
+ return new fs10.ReadStream(path7, options);
73547
73547
  }
73548
- function createWriteStream(path6, options) {
73549
- return new fs10.WriteStream(path6, options);
73548
+ function createWriteStream(path7, options) {
73549
+ return new fs10.WriteStream(path7, options);
73550
73550
  }
73551
73551
  var fs$open = fs10.open;
73552
73552
  fs10.open = open;
73553
- function open(path6, flags, mode, cb) {
73553
+ function open(path7, flags, mode, cb) {
73554
73554
  if (typeof mode === "function")
73555
73555
  cb = mode, mode = null;
73556
- return go$open(path6, flags, mode, cb);
73557
- function go$open(path7, flags2, mode2, cb2, startTime) {
73558
- return fs$open(path7, flags2, mode2, function(err, fd) {
73556
+ return go$open(path7, flags, mode, cb);
73557
+ function go$open(path8, flags2, mode2, cb2, startTime) {
73558
+ return fs$open(path8, flags2, mode2, function(err, fd) {
73559
73559
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
73560
- enqueue([go$open, [path7, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
73560
+ enqueue([go$open, [path8, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
73561
73561
  else {
73562
73562
  if (typeof cb2 === "function")
73563
73563
  cb2.apply(this, arguments);
@@ -73675,24 +73675,24 @@ var require_lazystream = __commonJS({
73675
73675
  // ../../node_modules/.pnpm/normalize-path@3.0.0/node_modules/normalize-path/index.js
73676
73676
  var require_normalize_path = __commonJS({
73677
73677
  "../../node_modules/.pnpm/normalize-path@3.0.0/node_modules/normalize-path/index.js"(exports2, module2) {
73678
- module2.exports = function(path6, stripTrailing) {
73679
- if (typeof path6 !== "string") {
73678
+ module2.exports = function(path7, stripTrailing) {
73679
+ if (typeof path7 !== "string") {
73680
73680
  throw new TypeError("expected path to be a string");
73681
73681
  }
73682
- if (path6 === "\\" || path6 === "/")
73682
+ if (path7 === "\\" || path7 === "/")
73683
73683
  return "/";
73684
- var len = path6.length;
73684
+ var len = path7.length;
73685
73685
  if (len <= 1)
73686
- return path6;
73686
+ return path7;
73687
73687
  var prefix = "";
73688
- if (len > 4 && path6[3] === "\\") {
73689
- var ch = path6[2];
73690
- if ((ch === "?" || ch === ".") && path6.slice(0, 2) === "\\\\") {
73691
- path6 = path6.slice(2);
73688
+ if (len > 4 && path7[3] === "\\") {
73689
+ var ch = path7[2];
73690
+ if ((ch === "?" || ch === ".") && path7.slice(0, 2) === "\\\\") {
73691
+ path7 = path7.slice(2);
73692
73692
  prefix = "//";
73693
73693
  }
73694
73694
  }
73695
- var segs = path6.split(/[/\\]+/);
73695
+ var segs = path7.split(/[/\\]+/);
73696
73696
  if (stripTrailing !== false && segs[segs.length - 1] === "") {
73697
73697
  segs.pop();
73698
73698
  }
@@ -75249,7 +75249,7 @@ var require_minimatch2 = __commonJS({
75249
75249
  "../../node_modules/.pnpm/minimatch@3.1.5/node_modules/minimatch/minimatch.js"(exports2, module2) {
75250
75250
  module2.exports = minimatch;
75251
75251
  minimatch.Minimatch = Minimatch;
75252
- var path6 = function() {
75252
+ var path7 = function() {
75253
75253
  try {
75254
75254
  return __require("path");
75255
75255
  } catch (e2) {
@@ -75257,7 +75257,7 @@ var require_minimatch2 = __commonJS({
75257
75257
  }() || {
75258
75258
  sep: "/"
75259
75259
  };
75260
- minimatch.sep = path6.sep;
75260
+ minimatch.sep = path7.sep;
75261
75261
  var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {};
75262
75262
  var expand = require_brace_expansion2();
75263
75263
  var plTypes = {
@@ -75348,8 +75348,8 @@ var require_minimatch2 = __commonJS({
75348
75348
  if (!options)
75349
75349
  options = {};
75350
75350
  pattern = pattern.trim();
75351
- if (!options.allowWindowsEscape && path6.sep !== "/") {
75352
- pattern = pattern.split(path6.sep).join("/");
75351
+ if (!options.allowWindowsEscape && path7.sep !== "/") {
75352
+ pattern = pattern.split(path7.sep).join("/");
75353
75353
  }
75354
75354
  this.options = options;
75355
75355
  this.maxGlobstarRecursion = options.maxGlobstarRecursion !== void 0 ? options.maxGlobstarRecursion : 200;
@@ -75729,8 +75729,8 @@ var require_minimatch2 = __commonJS({
75729
75729
  if (f3 === "/" && partial)
75730
75730
  return true;
75731
75731
  var options = this.options;
75732
- if (path6.sep !== "/") {
75733
- f3 = f3.split(path6.sep).join("/");
75732
+ if (path7.sep !== "/") {
75733
+ f3 = f3.split(path7.sep).join("/");
75734
75734
  }
75735
75735
  f3 = f3.split(slashSplit);
75736
75736
  this.debug(this.pattern, "split", f3);
@@ -75937,12 +75937,12 @@ var require_minimatch2 = __commonJS({
75937
75937
  var require_path_is_absolute = __commonJS({
75938
75938
  "../../node_modules/.pnpm/path-is-absolute@1.0.1/node_modules/path-is-absolute/index.js"(exports2, module2) {
75939
75939
  "use strict";
75940
- function posix(path6) {
75941
- return path6.charAt(0) === "/";
75940
+ function posix(path7) {
75941
+ return path7.charAt(0) === "/";
75942
75942
  }
75943
- function win32(path6) {
75943
+ function win32(path7) {
75944
75944
  var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;
75945
- var result = splitDeviceRe.exec(path6);
75945
+ var result = splitDeviceRe.exec(path7);
75946
75946
  var device = result[1] || "";
75947
75947
  var isUnc = Boolean(device && device.charAt(1) !== ":");
75948
75948
  return Boolean(result[2] || isUnc);
@@ -75967,7 +75967,7 @@ var require_common2 = __commonJS({
75967
75967
  return Object.prototype.hasOwnProperty.call(obj2, field);
75968
75968
  }
75969
75969
  var fs9 = __require("fs");
75970
- var path6 = __require("path");
75970
+ var path7 = __require("path");
75971
75971
  var minimatch = require_minimatch2();
75972
75972
  var isAbsolute2 = require_path_is_absolute();
75973
75973
  var Minimatch = minimatch.Minimatch;
@@ -76032,11 +76032,11 @@ var require_common2 = __commonJS({
76032
76032
  if (!ownProp(options, "cwd"))
76033
76033
  self2.cwd = cwd2;
76034
76034
  else {
76035
- self2.cwd = path6.resolve(options.cwd);
76035
+ self2.cwd = path7.resolve(options.cwd);
76036
76036
  self2.changedCwd = self2.cwd !== cwd2;
76037
76037
  }
76038
- self2.root = options.root || path6.resolve(self2.cwd, "/");
76039
- self2.root = path6.resolve(self2.root);
76038
+ self2.root = options.root || path7.resolve(self2.cwd, "/");
76039
+ self2.root = path7.resolve(self2.root);
76040
76040
  if (process.platform === "win32")
76041
76041
  self2.root = self2.root.replace(/\\/g, "/");
76042
76042
  self2.cwdAbs = isAbsolute2(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd);
@@ -76118,30 +76118,30 @@ var require_common2 = __commonJS({
76118
76118
  function makeAbs(self2, f3) {
76119
76119
  var abs = f3;
76120
76120
  if (f3.charAt(0) === "/") {
76121
- abs = path6.join(self2.root, f3);
76121
+ abs = path7.join(self2.root, f3);
76122
76122
  } else if (isAbsolute2(f3) || f3 === "") {
76123
76123
  abs = f3;
76124
76124
  } else if (self2.changedCwd) {
76125
- abs = path6.resolve(self2.cwd, f3);
76125
+ abs = path7.resolve(self2.cwd, f3);
76126
76126
  } else {
76127
- abs = path6.resolve(f3);
76127
+ abs = path7.resolve(f3);
76128
76128
  }
76129
76129
  if (process.platform === "win32")
76130
76130
  abs = abs.replace(/\\/g, "/");
76131
76131
  return abs;
76132
76132
  }
76133
- function isIgnored(self2, path7) {
76133
+ function isIgnored(self2, path8) {
76134
76134
  if (!self2.ignore.length)
76135
76135
  return false;
76136
76136
  return self2.ignore.some(function(item) {
76137
- return item.matcher.match(path7) || !!(item.gmatcher && item.gmatcher.match(path7));
76137
+ return item.matcher.match(path8) || !!(item.gmatcher && item.gmatcher.match(path8));
76138
76138
  });
76139
76139
  }
76140
- function childrenIgnored(self2, path7) {
76140
+ function childrenIgnored(self2, path8) {
76141
76141
  if (!self2.ignore.length)
76142
76142
  return false;
76143
76143
  return self2.ignore.some(function(item) {
76144
- return !!(item.gmatcher && item.gmatcher.match(path7));
76144
+ return !!(item.gmatcher && item.gmatcher.match(path8));
76145
76145
  });
76146
76146
  }
76147
76147
  }
@@ -76157,7 +76157,7 @@ var require_sync = __commonJS({
76157
76157
  var Minimatch = minimatch.Minimatch;
76158
76158
  var Glob = require_glob().Glob;
76159
76159
  var util = __require("util");
76160
- var path6 = __require("path");
76160
+ var path7 = __require("path");
76161
76161
  var assert = __require("assert");
76162
76162
  var isAbsolute2 = require_path_is_absolute();
76163
76163
  var common = require_common2();
@@ -76285,7 +76285,7 @@ var require_sync = __commonJS({
76285
76285
  e2 = prefix + e2;
76286
76286
  }
76287
76287
  if (e2.charAt(0) === "/" && !this.nomount) {
76288
- e2 = path6.join(this.root, e2);
76288
+ e2 = path7.join(this.root, e2);
76289
76289
  }
76290
76290
  this._emitMatch(index, e2);
76291
76291
  }
@@ -76434,9 +76434,9 @@ var require_sync = __commonJS({
76434
76434
  if (prefix && isAbsolute2(prefix) && !this.nomount) {
76435
76435
  var trail = /[\/\\]$/.test(prefix);
76436
76436
  if (prefix.charAt(0) === "/") {
76437
- prefix = path6.join(this.root, prefix);
76437
+ prefix = path7.join(this.root, prefix);
76438
76438
  } else {
76439
- prefix = path6.resolve(this.root, prefix);
76439
+ prefix = path7.resolve(this.root, prefix);
76440
76440
  if (trail)
76441
76441
  prefix += "/";
76442
76442
  }
@@ -76631,7 +76631,7 @@ var require_glob = __commonJS({
76631
76631
  var Minimatch = minimatch.Minimatch;
76632
76632
  var inherits2 = require_inherits();
76633
76633
  var EE = __require("events").EventEmitter;
76634
- var path6 = __require("path");
76634
+ var path7 = __require("path");
76635
76635
  var assert = __require("assert");
76636
76636
  var isAbsolute2 = require_path_is_absolute();
76637
76637
  var globSync = require_sync();
@@ -76914,7 +76914,7 @@ var require_glob = __commonJS({
76914
76914
  e2 = prefix + e2;
76915
76915
  }
76916
76916
  if (e2.charAt(0) === "/" && !this.nomount) {
76917
- e2 = path6.join(this.root, e2);
76917
+ e2 = path7.join(this.root, e2);
76918
76918
  }
76919
76919
  this._emitMatch(index, e2);
76920
76920
  }
@@ -77101,9 +77101,9 @@ var require_glob = __commonJS({
77101
77101
  if (prefix && isAbsolute2(prefix) && !this.nomount) {
77102
77102
  var trail = /[\/\\]$/.test(prefix);
77103
77103
  if (prefix.charAt(0) === "/") {
77104
- prefix = path6.join(this.root, prefix);
77104
+ prefix = path7.join(this.root, prefix);
77105
77105
  } else {
77106
- prefix = path6.resolve(this.root, prefix);
77106
+ prefix = path7.resolve(this.root, prefix);
77107
77107
  if (trail)
77108
77108
  prefix += "/";
77109
77109
  }
@@ -77181,7 +77181,7 @@ var require_glob = __commonJS({
77181
77181
  var require_file = __commonJS({
77182
77182
  "../../node_modules/.pnpm/archiver-utils@2.1.0/node_modules/archiver-utils/file.js"(exports2, module2) {
77183
77183
  var fs9 = require_graceful_fs();
77184
- var path6 = __require("path");
77184
+ var path7 = __require("path");
77185
77185
  var flatten = require_lodash10();
77186
77186
  var difference = require_lodash11();
77187
77187
  var union = require_lodash12();
@@ -77206,7 +77206,7 @@ var require_file = __commonJS({
77206
77206
  return result;
77207
77207
  };
77208
77208
  file.exists = function() {
77209
- var filepath = path6.join.apply(path6, arguments);
77209
+ var filepath = path7.join.apply(path7, arguments);
77210
77210
  return fs9.existsSync(filepath);
77211
77211
  };
77212
77212
  file.expand = function(...args) {
@@ -77220,7 +77220,7 @@ var require_file = __commonJS({
77220
77220
  });
77221
77221
  if (options.filter) {
77222
77222
  matches = matches.filter(function(filepath) {
77223
- filepath = path6.join(options.cwd || "", filepath);
77223
+ filepath = path7.join(options.cwd || "", filepath);
77224
77224
  try {
77225
77225
  if (typeof options.filter === "function") {
77226
77226
  return options.filter(filepath);
@@ -77237,7 +77237,7 @@ var require_file = __commonJS({
77237
77237
  file.expandMapping = function(patterns, destBase, options) {
77238
77238
  options = Object.assign({
77239
77239
  rename: function(destBase2, destPath) {
77240
- return path6.join(destBase2 || "", destPath);
77240
+ return path7.join(destBase2 || "", destPath);
77241
77241
  }
77242
77242
  }, options);
77243
77243
  var files = [];
@@ -77245,14 +77245,14 @@ var require_file = __commonJS({
77245
77245
  file.expand(options, patterns).forEach(function(src) {
77246
77246
  var destPath = src;
77247
77247
  if (options.flatten) {
77248
- destPath = path6.basename(destPath);
77248
+ destPath = path7.basename(destPath);
77249
77249
  }
77250
77250
  if (options.ext) {
77251
77251
  destPath = destPath.replace(/(\.[^\/]*)?$/, options.ext);
77252
77252
  }
77253
77253
  var dest = options.rename(destBase, destPath, options);
77254
77254
  if (options.cwd) {
77255
- src = path6.join(options.cwd, src);
77255
+ src = path7.join(options.cwd, src);
77256
77256
  }
77257
77257
  dest = dest.replace(pathSeparatorRe, "/");
77258
77258
  src = src.replace(pathSeparatorRe, "/");
@@ -77334,7 +77334,7 @@ var require_file = __commonJS({
77334
77334
  var require_archiver_utils = __commonJS({
77335
77335
  "../../node_modules/.pnpm/archiver-utils@2.1.0/node_modules/archiver-utils/index.js"(exports2, module2) {
77336
77336
  var fs9 = require_graceful_fs();
77337
- var path6 = __require("path");
77337
+ var path7 = __require("path");
77338
77338
  var nutil = __require("util");
77339
77339
  var lazystream = require_lazystream();
77340
77340
  var normalizePath = require_normalize_path();
@@ -77424,11 +77424,11 @@ var require_archiver_utils = __commonJS({
77424
77424
  if (!file) {
77425
77425
  return callback(null, results);
77426
77426
  }
77427
- filepath = path6.join(dirpath, file);
77427
+ filepath = path7.join(dirpath, file);
77428
77428
  fs9.stat(filepath, function(err2, stats) {
77429
77429
  results.push({
77430
77430
  path: filepath,
77431
- relative: path6.relative(base, filepath).replace(/\\/g, "/"),
77431
+ relative: path7.relative(base, filepath).replace(/\\/g, "/"),
77432
77432
  stats
77433
77433
  });
77434
77434
  if (stats && stats.isDirectory()) {
@@ -77487,7 +77487,7 @@ var require_core = __commonJS({
77487
77487
  var fs9 = __require("fs");
77488
77488
  var glob = require_readdir_glob();
77489
77489
  var async = require_async();
77490
- var path6 = __require("path");
77490
+ var path7 = __require("path");
77491
77491
  var util = require_archiver_utils();
77492
77492
  var inherits2 = __require("util").inherits;
77493
77493
  var ArchiverError = require_error2();
@@ -77763,9 +77763,9 @@ var require_core = __commonJS({
77763
77763
  task.source = Buffer.concat([]);
77764
77764
  } else if (stats.isSymbolicLink() && this._moduleSupports("symlink")) {
77765
77765
  var linkPath = fs9.readlinkSync(task.filepath);
77766
- var dirName = path6.dirname(task.filepath);
77766
+ var dirName = path7.dirname(task.filepath);
77767
77767
  task.data.type = "symlink";
77768
- task.data.linkname = path6.relative(dirName, path6.resolve(dirName, linkPath));
77768
+ task.data.linkname = path7.relative(dirName, path7.resolve(dirName, linkPath));
77769
77769
  task.data.sourceType = "buffer";
77770
77770
  task.source = Buffer.concat([]);
77771
77771
  } else {
@@ -79389,7 +79389,7 @@ var require_compress_commons = __commonJS({
79389
79389
  var require_file2 = __commonJS({
79390
79390
  "../../node_modules/.pnpm/archiver-utils@3.0.4/node_modules/archiver-utils/file.js"(exports2, module2) {
79391
79391
  var fs9 = require_graceful_fs();
79392
- var path6 = __require("path");
79392
+ var path7 = __require("path");
79393
79393
  var flatten = require_lodash10();
79394
79394
  var difference = require_lodash11();
79395
79395
  var union = require_lodash12();
@@ -79414,7 +79414,7 @@ var require_file2 = __commonJS({
79414
79414
  return result;
79415
79415
  };
79416
79416
  file.exists = function() {
79417
- var filepath = path6.join.apply(path6, arguments);
79417
+ var filepath = path7.join.apply(path7, arguments);
79418
79418
  return fs9.existsSync(filepath);
79419
79419
  };
79420
79420
  file.expand = function(...args) {
@@ -79428,7 +79428,7 @@ var require_file2 = __commonJS({
79428
79428
  });
79429
79429
  if (options.filter) {
79430
79430
  matches = matches.filter(function(filepath) {
79431
- filepath = path6.join(options.cwd || "", filepath);
79431
+ filepath = path7.join(options.cwd || "", filepath);
79432
79432
  try {
79433
79433
  if (typeof options.filter === "function") {
79434
79434
  return options.filter(filepath);
@@ -79445,7 +79445,7 @@ var require_file2 = __commonJS({
79445
79445
  file.expandMapping = function(patterns, destBase, options) {
79446
79446
  options = Object.assign({
79447
79447
  rename: function(destBase2, destPath) {
79448
- return path6.join(destBase2 || "", destPath);
79448
+ return path7.join(destBase2 || "", destPath);
79449
79449
  }
79450
79450
  }, options);
79451
79451
  var files = [];
@@ -79453,14 +79453,14 @@ var require_file2 = __commonJS({
79453
79453
  file.expand(options, patterns).forEach(function(src) {
79454
79454
  var destPath = src;
79455
79455
  if (options.flatten) {
79456
- destPath = path6.basename(destPath);
79456
+ destPath = path7.basename(destPath);
79457
79457
  }
79458
79458
  if (options.ext) {
79459
79459
  destPath = destPath.replace(/(\.[^\/]*)?$/, options.ext);
79460
79460
  }
79461
79461
  var dest = options.rename(destBase, destPath, options);
79462
79462
  if (options.cwd) {
79463
- src = path6.join(options.cwd, src);
79463
+ src = path7.join(options.cwd, src);
79464
79464
  }
79465
79465
  dest = dest.replace(pathSeparatorRe, "/");
79466
79466
  src = src.replace(pathSeparatorRe, "/");
@@ -79542,7 +79542,7 @@ var require_file2 = __commonJS({
79542
79542
  var require_archiver_utils2 = __commonJS({
79543
79543
  "../../node_modules/.pnpm/archiver-utils@3.0.4/node_modules/archiver-utils/index.js"(exports2, module2) {
79544
79544
  var fs9 = require_graceful_fs();
79545
- var path6 = __require("path");
79545
+ var path7 = __require("path");
79546
79546
  var lazystream = require_lazystream();
79547
79547
  var normalizePath = require_normalize_path();
79548
79548
  var defaults = require_lodash9();
@@ -79629,11 +79629,11 @@ var require_archiver_utils2 = __commonJS({
79629
79629
  if (!file) {
79630
79630
  return callback(null, results);
79631
79631
  }
79632
- filepath = path6.join(dirpath, file);
79632
+ filepath = path7.join(dirpath, file);
79633
79633
  fs9.stat(filepath, function(err2, stats) {
79634
79634
  results.push({
79635
79635
  path: filepath,
79636
- relative: path6.relative(base, filepath).replace(/\\/g, "/"),
79636
+ relative: path7.relative(base, filepath).replace(/\\/g, "/"),
79637
79637
  stats
79638
79638
  });
79639
79639
  if (stats && stats.isDirectory()) {
@@ -82021,9 +82021,9 @@ var require_workbook_writer = __commonJS({
82021
82021
  get definedNames() {
82022
82022
  return this._definedNames;
82023
82023
  }
82024
- _openStream(path6) {
82024
+ _openStream(path7) {
82025
82025
  const stream = new StreamBuf({ bufSize: 65536, batch: true });
82026
- this.zip.append(stream, { name: path6 });
82026
+ this.zip.append(stream, { name: path7 });
82027
82027
  stream.on("finish", () => {
82028
82028
  stream.emit("zipped");
82029
82029
  });
@@ -82041,9 +82041,9 @@ var require_workbook_writer = __commonJS({
82041
82041
  }
82042
82042
  return Promise.resolve();
82043
82043
  };
82044
- const promises = this._worksheets.map(commitWorksheet);
82045
- if (promises.length) {
82046
- return Promise.all(promises);
82044
+ const promises2 = this._worksheets.map(commitWorksheet);
82045
+ if (promises2.length) {
82046
+ return Promise.all(promises2);
82047
82047
  }
82048
82048
  return Promise.resolve();
82049
82049
  }
@@ -82515,7 +82515,7 @@ var require_traverse = __commonJS({
82515
82515
  }(this.value);
82516
82516
  };
82517
82517
  function walk(root, cb, immutable) {
82518
- var path6 = [];
82518
+ var path7 = [];
82519
82519
  var parents = [];
82520
82520
  var alive = true;
82521
82521
  return function walker(node_) {
@@ -82524,11 +82524,11 @@ var require_traverse = __commonJS({
82524
82524
  var state = {
82525
82525
  node,
82526
82526
  node_,
82527
- path: [].concat(path6),
82527
+ path: [].concat(path7),
82528
82528
  parent: parents.slice(-1)[0],
82529
- key: path6.slice(-1)[0],
82530
- isRoot: path6.length === 0,
82531
- level: path6.length,
82529
+ key: path7.slice(-1)[0],
82530
+ isRoot: path7.length === 0,
82531
+ level: path7.length,
82532
82532
  circular: null,
82533
82533
  update: function(x2) {
82534
82534
  if (!state.isRoot) {
@@ -82586,7 +82586,7 @@ var require_traverse = __commonJS({
82586
82586
  parents.push(state);
82587
82587
  var keys = Object.keys(state.node);
82588
82588
  keys.forEach(function(key, i3) {
82589
- path6.push(key);
82589
+ path7.push(key);
82590
82590
  if (modifiers.pre)
82591
82591
  modifiers.pre.call(state, state.node[key], key);
82592
82592
  var child = walker(state.node[key]);
@@ -82597,7 +82597,7 @@ var require_traverse = __commonJS({
82597
82597
  child.isFirst = i3 == 0;
82598
82598
  if (modifiers.post)
82599
82599
  modifiers.post.call(state, child);
82600
- path6.pop();
82600
+ path7.pop();
82601
82601
  });
82602
82602
  parents.pop();
82603
82603
  }
@@ -86124,8 +86124,8 @@ var require_map = __commonJS({
86124
86124
  var tryCatch2 = util.tryCatch;
86125
86125
  var errorObj2 = util.errorObj;
86126
86126
  var async = Promise2._async;
86127
- function MappingPromiseArray(promises, fn, limit, _filter) {
86128
- this.constructor$(promises);
86127
+ function MappingPromiseArray(promises2, fn, limit, _filter) {
86128
+ this.constructor$(promises2);
86129
86129
  this._promise._captureStackTrace();
86130
86130
  var domain = getDomain();
86131
86131
  this._callback = domain === null ? fn : util.domainBind(domain, fn);
@@ -86238,7 +86238,7 @@ var require_map = __commonJS({
86238
86238
  MappingPromiseArray.prototype.preservedValues = function() {
86239
86239
  return this._preservedValues;
86240
86240
  };
86241
- function map(promises, fn, options, _filter) {
86241
+ function map(promises2, fn, options, _filter) {
86242
86242
  if (typeof fn !== "function") {
86243
86243
  return apiRejection("expecting a function but got " + util.classString(fn));
86244
86244
  }
@@ -86258,13 +86258,13 @@ var require_map = __commonJS({
86258
86258
  }
86259
86259
  }
86260
86260
  limit = typeof limit === "number" && isFinite(limit) && limit >= 1 ? limit : 0;
86261
- return new MappingPromiseArray(promises, fn, limit, _filter).promise();
86261
+ return new MappingPromiseArray(promises2, fn, limit, _filter).promise();
86262
86262
  }
86263
86263
  Promise2.prototype.map = function(fn, options) {
86264
86264
  return map(this, fn, options, null);
86265
86265
  };
86266
- Promise2.map = function(promises, fn, options, _filter) {
86267
- return map(promises, fn, options, _filter);
86266
+ Promise2.map = function(promises2, fn, options, _filter) {
86267
+ return map(promises2, fn, options, _filter);
86268
86268
  };
86269
86269
  };
86270
86270
  }
@@ -87336,9 +87336,9 @@ var require_props = __commonJS({
87336
87336
  PropertiesPromiseArray.prototype.getActualLength = function(len) {
87337
87337
  return len >> 1;
87338
87338
  };
87339
- function props(promises) {
87339
+ function props(promises2) {
87340
87340
  var ret2;
87341
- var castValue = tryConvertToPromise(promises);
87341
+ var castValue = tryConvertToPromise(promises2);
87342
87342
  if (!isObject2(castValue)) {
87343
87343
  return apiRejection("cannot await properties of a non-object\n\n See http://goo.gl/MqrFmX\n");
87344
87344
  } else if (castValue instanceof Promise2) {
@@ -87360,8 +87360,8 @@ var require_props = __commonJS({
87360
87360
  Promise2.prototype.props = function() {
87361
87361
  return props(this);
87362
87362
  };
87363
- Promise2.props = function(promises) {
87364
- return props(promises);
87363
+ Promise2.props = function(promises2) {
87364
+ return props(promises2);
87365
87365
  };
87366
87366
  };
87367
87367
  }
@@ -87378,14 +87378,14 @@ var require_race = __commonJS({
87378
87378
  return race(array, promise);
87379
87379
  });
87380
87380
  };
87381
- function race(promises, parent) {
87382
- var maybePromise = tryConvertToPromise(promises);
87381
+ function race(promises2, parent) {
87382
+ var maybePromise = tryConvertToPromise(promises2);
87383
87383
  if (maybePromise instanceof Promise2) {
87384
87384
  return raceLater(maybePromise);
87385
87385
  } else {
87386
- promises = util.asArray(promises);
87387
- if (promises === null)
87388
- return apiRejection("expecting an array or an iterable object but got " + util.classString(promises));
87386
+ promises2 = util.asArray(promises2);
87387
+ if (promises2 === null)
87388
+ return apiRejection("expecting an array or an iterable object but got " + util.classString(promises2));
87389
87389
  }
87390
87390
  var ret2 = new Promise2(INTERNAL);
87391
87391
  if (parent !== void 0) {
@@ -87393,17 +87393,17 @@ var require_race = __commonJS({
87393
87393
  }
87394
87394
  var fulfill = ret2._fulfill;
87395
87395
  var reject = ret2._reject;
87396
- for (var i2 = 0, len = promises.length; i2 < len; ++i2) {
87397
- var val = promises[i2];
87398
- if (val === void 0 && !(i2 in promises)) {
87396
+ for (var i2 = 0, len = promises2.length; i2 < len; ++i2) {
87397
+ var val = promises2[i2];
87398
+ if (val === void 0 && !(i2 in promises2)) {
87399
87399
  continue;
87400
87400
  }
87401
87401
  Promise2.cast(val)._then(fulfill, reject, void 0, ret2, null);
87402
87402
  }
87403
87403
  return ret2;
87404
87404
  }
87405
- Promise2.race = function(promises) {
87406
- return race(promises, void 0);
87405
+ Promise2.race = function(promises2) {
87406
+ return race(promises2, void 0);
87407
87407
  };
87408
87408
  Promise2.prototype.race = function() {
87409
87409
  return race(this, void 0);
@@ -87420,8 +87420,8 @@ var require_reduce = __commonJS({
87420
87420
  var getDomain = Promise2._getDomain;
87421
87421
  var util = require_util4();
87422
87422
  var tryCatch2 = util.tryCatch;
87423
- function ReductionPromiseArray(promises, fn, initialValue, _each) {
87424
- this.constructor$(promises);
87423
+ function ReductionPromiseArray(promises2, fn, initialValue, _each) {
87424
+ this.constructor$(promises2);
87425
87425
  var domain = getDomain();
87426
87426
  this._fn = domain === null ? fn : util.domainBind(domain, fn);
87427
87427
  if (initialValue !== void 0) {
@@ -87510,8 +87510,8 @@ var require_reduce = __commonJS({
87510
87510
  Promise2.prototype.reduce = function(fn, initialValue) {
87511
87511
  return reduce(this, fn, initialValue, null);
87512
87512
  };
87513
- Promise2.reduce = function(promises, fn, initialValue, _each) {
87514
- return reduce(promises, fn, initialValue, _each);
87513
+ Promise2.reduce = function(promises2, fn, initialValue, _each) {
87514
+ return reduce(promises2, fn, initialValue, _each);
87515
87515
  };
87516
87516
  function completed(valueOrReason, array) {
87517
87517
  if (this.isFulfilled()) {
@@ -87520,11 +87520,11 @@ var require_reduce = __commonJS({
87520
87520
  array._reject(valueOrReason);
87521
87521
  }
87522
87522
  }
87523
- function reduce(promises, fn, initialValue, _each) {
87523
+ function reduce(promises2, fn, initialValue, _each) {
87524
87524
  if (typeof fn !== "function") {
87525
87525
  return apiRejection("expecting a function but got " + util.classString(fn));
87526
87526
  }
87527
- var array = new ReductionPromiseArray(promises, fn, initialValue, _each);
87527
+ var array = new ReductionPromiseArray(promises2, fn, initialValue, _each);
87528
87528
  return array.promise();
87529
87529
  }
87530
87530
  function gotAccum(accum) {
@@ -87603,9 +87603,9 @@ var require_settle = __commonJS({
87603
87603
  ret2._settledValueField = reason;
87604
87604
  return this._promiseResolved(index, ret2);
87605
87605
  };
87606
- Promise2.settle = function(promises) {
87606
+ Promise2.settle = function(promises2) {
87607
87607
  debug.deprecated(".settle()", ".reflect()");
87608
- return new SettledPromiseArray(promises).promise();
87608
+ return new SettledPromiseArray(promises2).promise();
87609
87609
  };
87610
87610
  Promise2.prototype.settle = function() {
87611
87611
  return Promise2.settle(this);
@@ -87721,18 +87721,18 @@ var require_some = __commonJS({
87721
87721
  SomePromiseArray.prototype._resolveEmptyArray = function() {
87722
87722
  this._reject(this._getRangeError(0));
87723
87723
  };
87724
- function some(promises, howMany) {
87724
+ function some(promises2, howMany) {
87725
87725
  if ((howMany | 0) !== howMany || howMany < 0) {
87726
87726
  return apiRejection("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n");
87727
87727
  }
87728
- var ret2 = new SomePromiseArray(promises);
87728
+ var ret2 = new SomePromiseArray(promises2);
87729
87729
  var promise = ret2.promise();
87730
87730
  ret2.setHowMany(howMany);
87731
87731
  ret2.init();
87732
87732
  return promise;
87733
87733
  }
87734
- Promise2.some = function(promises, howMany) {
87735
- return some(promises, howMany);
87734
+ Promise2.some = function(promises2, howMany) {
87735
+ return some(promises2, howMany);
87736
87736
  };
87737
87737
  Promise2.prototype.some = function(howMany) {
87738
87738
  return some(this, howMany);
@@ -87751,8 +87751,8 @@ var require_filter = __commonJS({
87751
87751
  Promise2.prototype.filter = function(fn, options) {
87752
87752
  return PromiseMap(this, fn, options, INTERNAL);
87753
87753
  };
87754
- Promise2.filter = function(promises, fn, options) {
87755
- return PromiseMap(promises, fn, options, INTERNAL);
87754
+ Promise2.filter = function(promises2, fn, options) {
87755
+ return PromiseMap(promises2, fn, options, INTERNAL);
87756
87756
  };
87757
87757
  };
87758
87758
  }
@@ -87768,8 +87768,8 @@ var require_each = __commonJS({
87768
87768
  function promiseAllThis() {
87769
87769
  return PromiseAll(this);
87770
87770
  }
87771
- function PromiseMapSeries(promises, fn) {
87772
- return PromiseReduce(promises, fn, INTERNAL, INTERNAL);
87771
+ function PromiseMapSeries(promises2, fn) {
87772
+ return PromiseReduce(promises2, fn, INTERNAL, INTERNAL);
87773
87773
  }
87774
87774
  Promise2.prototype.each = function(fn) {
87775
87775
  return PromiseReduce(this, fn, INTERNAL, 0)._then(promiseAllThis, void 0, void 0, this, void 0);
@@ -87777,8 +87777,8 @@ var require_each = __commonJS({
87777
87777
  Promise2.prototype.mapSeries = function(fn) {
87778
87778
  return PromiseReduce(this, fn, INTERNAL, INTERNAL);
87779
87779
  };
87780
- Promise2.each = function(promises, fn) {
87781
- return PromiseReduce(promises, fn, INTERNAL, 0)._then(promiseAllThis, void 0, void 0, promises, void 0);
87780
+ Promise2.each = function(promises2, fn) {
87781
+ return PromiseReduce(promises2, fn, INTERNAL, 0)._then(promiseAllThis, void 0, void 0, promises2, void 0);
87782
87782
  };
87783
87783
  Promise2.mapSeries = PromiseMapSeries;
87784
87784
  };
@@ -87791,16 +87791,16 @@ var require_any = __commonJS({
87791
87791
  "use strict";
87792
87792
  module2.exports = function(Promise2) {
87793
87793
  var SomePromiseArray = Promise2._SomePromiseArray;
87794
- function any(promises) {
87795
- var ret2 = new SomePromiseArray(promises);
87794
+ function any(promises2) {
87795
+ var ret2 = new SomePromiseArray(promises2);
87796
87796
  var promise = ret2.promise();
87797
87797
  ret2.setHowMany(1);
87798
87798
  ret2.setUnwrap();
87799
87799
  ret2.init();
87800
87800
  return promise;
87801
87801
  }
87802
- Promise2.any = function(promises) {
87803
- return any(promises);
87802
+ Promise2.any = function(promises2) {
87803
+ return any(promises2);
87804
87804
  };
87805
87805
  Promise2.prototype.any = function() {
87806
87806
  return any(this);
@@ -87986,8 +87986,8 @@ var require_promise = __commonJS({
87986
87986
  ret2._setAsyncGuaranteed();
87987
87987
  return ret2;
87988
87988
  };
87989
- Promise2.all = function(promises) {
87990
- return new PromiseArray(promises).promise();
87989
+ Promise2.all = function(promises2) {
87990
+ return new PromiseArray(promises2).promise();
87991
87991
  };
87992
87992
  Promise2.cast = function(obj2) {
87993
87993
  var ret2 = tryConvertToPromise(obj2);
@@ -89226,7 +89226,7 @@ var require_dir_reader = __commonJS({
89226
89226
  module2.exports = DirReader;
89227
89227
  var fs9 = require_graceful_fs();
89228
89228
  var inherits2 = require_inherits();
89229
- var path6 = __require("path");
89229
+ var path7 = __require("path");
89230
89230
  var Reader = require_reader();
89231
89231
  var assert = __require("assert").ok;
89232
89232
  inherits2(DirReader, Reader);
@@ -89286,7 +89286,7 @@ var require_dir_reader = __commonJS({
89286
89286
  }
89287
89287
  return;
89288
89288
  }
89289
- var p = path6.resolve(self2._path, self2.entries[self2._index]);
89289
+ var p = path7.resolve(self2._path, self2.entries[self2._index]);
89290
89290
  assert(p !== self2._path);
89291
89291
  assert(self2.entries[self2._index]);
89292
89292
  self2._currentEntry = p;
@@ -89295,12 +89295,12 @@ var require_dir_reader = __commonJS({
89295
89295
  return self2.error(er);
89296
89296
  var who = self2._proxy || self2;
89297
89297
  stat2.path = p;
89298
- stat2.basename = path6.basename(p);
89299
- stat2.dirname = path6.dirname(p);
89298
+ stat2.basename = path7.basename(p);
89299
+ stat2.dirname = path7.dirname(p);
89300
89300
  var childProps = self2.getChildProps.call(who, stat2);
89301
89301
  childProps.path = p;
89302
- childProps.basename = path6.basename(p);
89303
- childProps.dirname = path6.dirname(p);
89302
+ childProps.basename = path7.basename(p);
89303
+ childProps.dirname = path7.dirname(p);
89304
89304
  var entry = Reader(childProps, stat2);
89305
89305
  self2._currentEntry = entry;
89306
89306
  entry.on("pause", function(who2) {
@@ -89650,7 +89650,7 @@ var require_reader = __commonJS({
89650
89650
  var fs9 = require_graceful_fs();
89651
89651
  var Stream4 = __require("stream").Stream;
89652
89652
  var inherits2 = require_inherits();
89653
- var path6 = __require("path");
89653
+ var path7 = __require("path");
89654
89654
  var getType = require_get_type();
89655
89655
  var hardLinks = Reader.hardLinks = {};
89656
89656
  var Abstract = require_abstract();
@@ -89709,7 +89709,7 @@ var require_reader = __commonJS({
89709
89709
  self2.depth = props.depth = props.depth || 0;
89710
89710
  self2.parent = props.parent || null;
89711
89711
  self2.root = props.root || props.parent && props.parent.root || self2;
89712
- self2._path = self2.path = path6.resolve(props.path);
89712
+ self2._path = self2.path = path7.resolve(props.path);
89713
89713
  if (process.platform === "win32") {
89714
89714
  self2.path = self2._path = self2.path.replace(/\?/g, "_");
89715
89715
  if (self2._path.length >= 260) {
@@ -89717,8 +89717,8 @@ var require_reader = __commonJS({
89717
89717
  self2._path = "\\\\?\\" + self2.path.replace(/\//g, "\\");
89718
89718
  }
89719
89719
  }
89720
- self2.basename = props.basename = path6.basename(self2.path);
89721
- self2.dirname = props.dirname = path6.dirname(self2.path);
89720
+ self2.basename = props.basename = path7.basename(self2.path);
89721
+ self2.dirname = props.dirname = path7.dirname(self2.path);
89722
89722
  props.parent = props.root = null;
89723
89723
  self2.size = props.size;
89724
89724
  self2.filter = typeof props.filter === "function" ? props.filter : null;
@@ -89834,7 +89834,7 @@ var require_rimraf = __commonJS({
89834
89834
  module2.exports = rimraf;
89835
89835
  rimraf.sync = rimrafSync;
89836
89836
  var assert = __require("assert");
89837
- var path6 = __require("path");
89837
+ var path7 = __require("path");
89838
89838
  var fs9 = __require("fs");
89839
89839
  var glob = void 0;
89840
89840
  try {
@@ -90026,7 +90026,7 @@ var require_rimraf = __commonJS({
90026
90026
  return options.rmdir(p, cb);
90027
90027
  var errState;
90028
90028
  files.forEach(function(f3) {
90029
- rimraf(path6.join(p, f3), options, function(er2) {
90029
+ rimraf(path7.join(p, f3), options, function(er2) {
90030
90030
  if (errState)
90031
90031
  return;
90032
90032
  if (er2)
@@ -90103,7 +90103,7 @@ var require_rimraf = __commonJS({
90103
90103
  assert(p);
90104
90104
  assert(options);
90105
90105
  options.readdirSync(p).forEach(function(f3) {
90106
- rimrafSync(path6.join(p, f3), options);
90106
+ rimrafSync(path7.join(p, f3), options);
90107
90107
  });
90108
90108
  var retries = isWindows3 ? 100 : 1;
90109
90109
  var i2 = 0;
@@ -90125,7 +90125,7 @@ var require_rimraf = __commonJS({
90125
90125
  // ../../node_modules/.pnpm/mkdirp@0.5.6/node_modules/mkdirp/index.js
90126
90126
  var require_mkdirp = __commonJS({
90127
90127
  "../../node_modules/.pnpm/mkdirp@0.5.6/node_modules/mkdirp/index.js"(exports2, module2) {
90128
- var path6 = __require("path");
90128
+ var path7 = __require("path");
90129
90129
  var fs9 = __require("fs");
90130
90130
  var _0777 = parseInt("0777", 8);
90131
90131
  module2.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP;
@@ -90146,7 +90146,7 @@ var require_mkdirp = __commonJS({
90146
90146
  var cb = f3 || /* istanbul ignore next */
90147
90147
  function() {
90148
90148
  };
90149
- p = path6.resolve(p);
90149
+ p = path7.resolve(p);
90150
90150
  xfs.mkdir(p, mode, function(er) {
90151
90151
  if (!er) {
90152
90152
  made = made || p;
@@ -90154,9 +90154,9 @@ var require_mkdirp = __commonJS({
90154
90154
  }
90155
90155
  switch (er.code) {
90156
90156
  case "ENOENT":
90157
- if (path6.dirname(p) === p)
90157
+ if (path7.dirname(p) === p)
90158
90158
  return cb(er);
90159
- mkdirP(path6.dirname(p), opts, function(er2, made2) {
90159
+ mkdirP(path7.dirname(p), opts, function(er2, made2) {
90160
90160
  if (er2)
90161
90161
  cb(er2, made2);
90162
90162
  else
@@ -90185,14 +90185,14 @@ var require_mkdirp = __commonJS({
90185
90185
  }
90186
90186
  if (!made)
90187
90187
  made = null;
90188
- p = path6.resolve(p);
90188
+ p = path7.resolve(p);
90189
90189
  try {
90190
90190
  xfs.mkdirSync(p, mode);
90191
90191
  made = made || p;
90192
90192
  } catch (err0) {
90193
90193
  switch (err0.code) {
90194
90194
  case "ENOENT":
90195
- made = sync(path6.dirname(p), opts, made);
90195
+ made = sync(path7.dirname(p), opts, made);
90196
90196
  sync(p, opts, made);
90197
90197
  break;
90198
90198
  default:
@@ -90285,7 +90285,7 @@ var require_dir_writer = __commonJS({
90285
90285
  var Writer = require_writer();
90286
90286
  var inherits2 = require_inherits();
90287
90287
  var mkdir = require_mkdirp();
90288
- var path6 = __require("path");
90288
+ var path7 = __require("path");
90289
90289
  var collect = require_collect();
90290
90290
  inherits2(DirWriter, Writer);
90291
90291
  function DirWriter(props) {
@@ -90364,7 +90364,7 @@ var require_dir_writer = __commonJS({
90364
90364
  if (entry.parent) {
90365
90365
  pp = pp.substr(entry.parent._path.length + 1);
90366
90366
  }
90367
- props.path = path6.join(self2.path, path6.join("/", pp));
90367
+ props.path = path7.join(self2.path, path7.join("/", pp));
90368
90368
  props.filter = self2.filter;
90369
90369
  Object.keys(entry.props).forEach(function(k) {
90370
90370
  if (!props.hasOwnProperty(k)) {
@@ -90406,7 +90406,7 @@ var require_link_writer = __commonJS({
90406
90406
  var fs9 = require_graceful_fs();
90407
90407
  var Writer = require_writer();
90408
90408
  var inherits2 = require_inherits();
90409
- var path6 = __require("path");
90409
+ var path7 = __require("path");
90410
90410
  var rimraf = require_rimraf();
90411
90411
  inherits2(LinkWriter, Writer);
90412
90412
  function LinkWriter(props) {
@@ -90428,7 +90428,7 @@ var require_link_writer = __commonJS({
90428
90428
  var self2 = this;
90429
90429
  var hard = self2.type === "Link" || process.platform === "win32";
90430
90430
  var link2 = hard ? "link" : "symlink";
90431
- var lp = hard ? path6.resolve(self2.dirname, self2.linkpath) : self2.linkpath;
90431
+ var lp = hard ? path7.resolve(self2.dirname, self2.linkpath) : self2.linkpath;
90432
90432
  if (hard)
90433
90433
  return clobber(self2, lp, link2);
90434
90434
  fs9.readlink(self2._path, function(er, p) {
@@ -90664,7 +90664,7 @@ var require_writer = __commonJS({
90664
90664
  var inherits2 = require_inherits();
90665
90665
  var rimraf = require_rimraf();
90666
90666
  var mkdir = require_mkdirp();
90667
- var path6 = __require("path");
90667
+ var path7 = __require("path");
90668
90668
  var umask = process.platform === "win32" ? 0 : process.umask();
90669
90669
  var getType = require_get_type();
90670
90670
  var Abstract = require_abstract();
@@ -90709,7 +90709,7 @@ var require_writer = __commonJS({
90709
90709
  self2.clobber = props.clobber === false ? props.clobber : true;
90710
90710
  self2.parent = props.parent || null;
90711
90711
  self2.root = props.root || props.parent && props.parent.root || self2;
90712
- self2._path = self2.path = path6.resolve(props.path);
90712
+ self2._path = self2.path = path7.resolve(props.path);
90713
90713
  if (process.platform === "win32") {
90714
90714
  self2.path = self2._path = self2.path.replace(/\?/g, "_");
90715
90715
  if (self2._path.length >= 260) {
@@ -90717,8 +90717,8 @@ var require_writer = __commonJS({
90717
90717
  self2._path = "\\\\?\\" + self2.path.replace(/\//g, "\\");
90718
90718
  }
90719
90719
  }
90720
- self2.basename = path6.basename(props.path);
90721
- self2.dirname = path6.dirname(props.path);
90720
+ self2.basename = path7.basename(props.path);
90721
+ self2.dirname = path7.dirname(props.path);
90722
90722
  self2.linkpath = props.linkpath || null;
90723
90723
  props.parent = props.root = null;
90724
90724
  self2.size = props.size;
@@ -90774,14 +90774,14 @@ var require_writer = __commonJS({
90774
90774
  }
90775
90775
  };
90776
90776
  function create3(self2) {
90777
- mkdir(path6.dirname(self2._path), Writer.dirmode, function(er, made) {
90777
+ mkdir(path7.dirname(self2._path), Writer.dirmode, function(er, made) {
90778
90778
  if (er)
90779
90779
  return self2.error(er);
90780
90780
  self2._madeDir = made;
90781
90781
  return self2._create();
90782
90782
  });
90783
90783
  }
90784
- function endChmod(self2, want, current, path7, cb) {
90784
+ function endChmod(self2, want, current, path8, cb) {
90785
90785
  var wantMode = want.mode;
90786
90786
  var chmod = want.follow || self2.type !== "SymbolicLink" ? "chmod" : "lchmod";
90787
90787
  if (!fs9[chmod])
@@ -90792,9 +90792,9 @@ var require_writer = __commonJS({
90792
90792
  wantMode = wantMode & parseInt("0777", 8);
90793
90793
  if (wantMode === curMode)
90794
90794
  return cb();
90795
- fs9[chmod](path7, wantMode, cb);
90795
+ fs9[chmod](path8, wantMode, cb);
90796
90796
  }
90797
- function endChown(self2, want, current, path7, cb) {
90797
+ function endChown(self2, want, current, path8, cb) {
90798
90798
  if (process.platform === "win32")
90799
90799
  return cb();
90800
90800
  if (!process.getuid || process.getuid() !== 0)
@@ -90810,9 +90810,9 @@ var require_writer = __commonJS({
90810
90810
  want.uid = current.uid;
90811
90811
  if (typeof want.gid !== "number")
90812
90812
  want.gid = current.gid;
90813
- fs9[chown](path7, want.uid, want.gid, cb);
90813
+ fs9[chown](path8, want.uid, want.gid, cb);
90814
90814
  }
90815
- function endUtimes(self2, want, current, path7, cb) {
90815
+ function endUtimes(self2, want, current, path8, cb) {
90816
90816
  if (!fs9.utimes || process.platform === "win32")
90817
90817
  return cb();
90818
90818
  var utimes = want.follow || self2.type !== "SymbolicLink" ? "utimes" : "lutimes";
@@ -90835,7 +90835,7 @@ var require_writer = __commonJS({
90835
90835
  meA = new Date(meM);
90836
90836
  if (meA.getTime() === curA.getTime() && meM.getTime() === curM.getTime())
90837
90837
  return cb();
90838
- fs9[utimes](path7, meA, meM, cb);
90838
+ fs9[utimes](path8, meA, meM, cb);
90839
90839
  }
90840
90840
  Writer.prototype._finish = function() {
90841
90841
  var self2 = this;
@@ -90904,7 +90904,7 @@ var require_writer = __commonJS({
90904
90904
  };
90905
90905
  function endMadeDir(self2, p, cb) {
90906
90906
  var made = self2._madeDir;
90907
- var d = path6.dirname(p);
90907
+ var d = path7.dirname(p);
90908
90908
  endMadeDir_(self2, d, function(er) {
90909
90909
  if (er)
90910
90910
  return cb(er);
@@ -90998,18 +90998,18 @@ var require_extract2 = __commonJS({
90998
90998
  module2.exports = Extract;
90999
90999
  var Parse = require_parse();
91000
91000
  var Writer = require_fstream().Writer;
91001
- var path6 = __require("path");
91001
+ var path7 = __require("path");
91002
91002
  var stream = __require("stream");
91003
91003
  var duplexer2 = require_duplexer2();
91004
91004
  var Promise2 = require_bluebird();
91005
91005
  function Extract(opts) {
91006
- opts.path = path6.resolve(path6.normalize(opts.path));
91006
+ opts.path = path7.resolve(path7.normalize(opts.path));
91007
91007
  var parser = new Parse(opts);
91008
91008
  var outStream = new stream.Writable({ objectMode: true });
91009
91009
  outStream._write = function(entry, encoding, cb) {
91010
91010
  if (entry.type == "Directory")
91011
91011
  return cb();
91012
- var extractPath = path6.join(opts.path, entry.path);
91012
+ var extractPath = path7.join(opts.path, entry.path);
91013
91013
  if (extractPath.indexOf(opts.path) != 0) {
91014
91014
  return cb();
91015
91015
  }
@@ -92547,7 +92547,7 @@ var require_directory = __commonJS({
92547
92547
  var BufferStream = require_BufferStream();
92548
92548
  var parseExtraField = require_parseExtraField();
92549
92549
  var Buffer4 = require_Buffer();
92550
- var path6 = __require("path");
92550
+ var path7 = __require("path");
92551
92551
  var Writer = require_fstream().Writer;
92552
92552
  var parseDateTime = require_parseDateTime();
92553
92553
  var signature = Buffer4.alloc(4);
@@ -92626,12 +92626,12 @@ var require_directory = __commonJS({
92626
92626
  vars.extract = function(opts) {
92627
92627
  if (!opts || !opts.path)
92628
92628
  throw new Error("PATH_MISSING");
92629
- opts.path = path6.resolve(path6.normalize(opts.path));
92629
+ opts.path = path7.resolve(path7.normalize(opts.path));
92630
92630
  return vars.files.then(function(files) {
92631
92631
  return Promise2.map(files, function(entry) {
92632
92632
  if (entry.type == "Directory")
92633
92633
  return;
92634
- var extractPath = path6.join(opts.path, entry.path);
92634
+ var extractPath = path7.join(opts.path, entry.path);
92635
92635
  if (extractPath.indexOf(opts.path) != 0) {
92636
92636
  return;
92637
92637
  }
@@ -92790,15 +92790,15 @@ var require_unzip2 = __commonJS({
92790
92790
  var require_tmp = __commonJS({
92791
92791
  "../../node_modules/.pnpm/tmp@0.2.7/node_modules/tmp/lib/tmp.js"(exports2, module2) {
92792
92792
  var fs9 = __require("fs");
92793
- var os5 = __require("os");
92794
- var path6 = __require("path");
92793
+ var os6 = __require("os");
92794
+ var path7 = __require("path");
92795
92795
  var crypto5 = __require("crypto");
92796
- var _c = { fs: fs9.constants, os: os5.constants };
92796
+ var _c = { fs: fs9.constants, os: os6.constants };
92797
92797
  var RANDOM_CHARS = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
92798
92798
  var TEMPLATE_PATTERN = /XXXXXX/;
92799
92799
  var DEFAULT_TRIES = 3;
92800
92800
  var CREATE_FLAGS = (_c.O_CREAT || _c.fs.O_CREAT) | (_c.O_EXCL || _c.fs.O_EXCL) | (_c.O_RDWR || _c.fs.O_RDWR);
92801
- var IS_WIN32 = os5.platform() === "win32";
92801
+ var IS_WIN32 = os6.platform() === "win32";
92802
92802
  var EBADF = _c.EBADF || _c.os.errno.EBADF;
92803
92803
  var ENOENT = _c.ENOENT || _c.os.errno.ENOENT;
92804
92804
  var DIR_MODE = 448;
@@ -93012,13 +93012,13 @@ var require_tmp = __commonJS({
93012
93012
  return [actualOptions, callback];
93013
93013
  }
93014
93014
  function _resolvePath(name, tmpDir, cb) {
93015
- const pathToResolve = path6.isAbsolute(name) ? name : path6.join(tmpDir, name);
93015
+ const pathToResolve = path7.isAbsolute(name) ? name : path7.join(tmpDir, name);
93016
93016
  fs9.stat(pathToResolve, function(err) {
93017
93017
  if (err) {
93018
- fs9.realpath(path6.dirname(pathToResolve), function(err2, parentDir) {
93018
+ fs9.realpath(path7.dirname(pathToResolve), function(err2, parentDir) {
93019
93019
  if (err2)
93020
93020
  return cb(err2);
93021
- cb(null, path6.join(parentDir, path6.basename(pathToResolve)));
93021
+ cb(null, path7.join(parentDir, path7.basename(pathToResolve)));
93022
93022
  });
93023
93023
  } else {
93024
93024
  fs9.realpath(pathToResolve, cb);
@@ -93026,22 +93026,22 @@ var require_tmp = __commonJS({
93026
93026
  });
93027
93027
  }
93028
93028
  function _resolvePathSync(name, tmpDir) {
93029
- const pathToResolve = path6.isAbsolute(name) ? name : path6.join(tmpDir, name);
93029
+ const pathToResolve = path7.isAbsolute(name) ? name : path7.join(tmpDir, name);
93030
93030
  try {
93031
93031
  fs9.statSync(pathToResolve);
93032
93032
  return fs9.realpathSync(pathToResolve);
93033
93033
  } catch (_err) {
93034
- const parentDir = fs9.realpathSync(path6.dirname(pathToResolve));
93035
- return path6.join(parentDir, path6.basename(pathToResolve));
93034
+ const parentDir = fs9.realpathSync(path7.dirname(pathToResolve));
93035
+ return path7.join(parentDir, path7.basename(pathToResolve));
93036
93036
  }
93037
93037
  }
93038
93038
  function _generateTmpName(opts) {
93039
93039
  const tmpDir = opts.tmpdir;
93040
93040
  if (!_isUndefined(opts.name)) {
93041
- return path6.join(tmpDir, opts.dir, opts.name);
93041
+ return path7.join(tmpDir, opts.dir, opts.name);
93042
93042
  }
93043
93043
  if (!_isUndefined(opts.template)) {
93044
- return path6.join(tmpDir, opts.dir, opts.template).replace(TEMPLATE_PATTERN, _randomChars(6));
93044
+ return path7.join(tmpDir, opts.dir, opts.template).replace(TEMPLATE_PATTERN, _randomChars(6));
93045
93045
  }
93046
93046
  const name = [
93047
93047
  opts.prefix ? opts.prefix : "tmp",
@@ -93051,7 +93051,7 @@ var require_tmp = __commonJS({
93051
93051
  _randomChars(12),
93052
93052
  opts.postfix ? "-" + opts.postfix : ""
93053
93053
  ].join("");
93054
- return path6.join(tmpDir, opts.dir, name);
93054
+ return path7.join(tmpDir, opts.dir, name);
93055
93055
  }
93056
93056
  function _assertPath(option, value) {
93057
93057
  if (typeof value !== "string") {
@@ -93065,9 +93065,9 @@ var require_tmp = __commonJS({
93065
93065
  function _assertOptionsBase(options) {
93066
93066
  if (!_isUndefined(options.name)) {
93067
93067
  const name = options.name;
93068
- if (path6.isAbsolute(name))
93068
+ if (path7.isAbsolute(name))
93069
93069
  throw new Error(`name option must not contain an absolute path, found "${name}".`);
93070
- const basename2 = path6.basename(name);
93070
+ const basename2 = path7.basename(name);
93071
93071
  if (basename2 === ".." || basename2 === "." || basename2 !== name) {
93072
93072
  throw new Error(`name option must not contain a path, found "${name}".`);
93073
93073
  }
@@ -93098,8 +93098,8 @@ var require_tmp = __commonJS({
93098
93098
  _resolvePath(name, tmpDir, function(err, resolvedPath) {
93099
93099
  if (err)
93100
93100
  return cb(err);
93101
- const relativePath = path6.relative(tmpDir, resolvedPath);
93102
- if (relativePath.startsWith("..") || path6.isAbsolute(relativePath)) {
93101
+ const relativePath = path7.relative(tmpDir, resolvedPath);
93102
+ if (relativePath.startsWith("..") || path7.isAbsolute(relativePath)) {
93103
93103
  return cb(new Error(`${option} option must be relative to "${tmpDir}", found "${relativePath}".`));
93104
93104
  }
93105
93105
  cb(null, relativePath);
@@ -93109,8 +93109,8 @@ var require_tmp = __commonJS({
93109
93109
  if (_isUndefined(name))
93110
93110
  return;
93111
93111
  const resolvedPath = _resolvePathSync(name, tmpDir);
93112
- const relativePath = path6.relative(tmpDir, resolvedPath);
93113
- if (relativePath.startsWith("..") || path6.isAbsolute(relativePath)) {
93112
+ const relativePath = path7.relative(tmpDir, resolvedPath);
93113
+ if (relativePath.startsWith("..") || path7.isAbsolute(relativePath)) {
93114
93114
  throw new Error(`${option} option must be relative to "${tmpDir}", found "${relativePath}".`);
93115
93115
  }
93116
93116
  return relativePath;
@@ -93159,10 +93159,10 @@ var require_tmp = __commonJS({
93159
93159
  _gracefulCleanup = true;
93160
93160
  }
93161
93161
  function _getTmpDir(options, cb) {
93162
- return fs9.realpath(options && options.tmpdir || os5.tmpdir(), cb);
93162
+ return fs9.realpath(options && options.tmpdir || os6.tmpdir(), cb);
93163
93163
  }
93164
93164
  function _getTmpDirSync(options) {
93165
- return fs9.realpathSync(options && options.tmpdir || os5.tmpdir());
93165
+ return fs9.realpathSync(options && options.tmpdir || os6.tmpdir());
93166
93166
  }
93167
93167
  process.addListener(EXIT, _garbageCollector);
93168
93168
  Object.defineProperty(module2.exports, "tmpdir", {
@@ -93747,12 +93747,12 @@ var require_workbook_reader = __commonJS({
93747
93747
  yield* this._parseWorksheet(iterateStream(entry), sheetNo);
93748
93748
  } else {
93749
93749
  await new Promise((resolve3, reject) => {
93750
- tmp.file((err, path6, fd, tempFileCleanupCallback) => {
93750
+ tmp.file((err, path7, fd, tempFileCleanupCallback) => {
93751
93751
  if (err) {
93752
93752
  return reject(err);
93753
93753
  }
93754
- waitingWorkSheets.push({ sheetNo, path: path6, tempFileCleanupCallback });
93755
- const tempStream = fs9.createWriteStream(path6);
93754
+ waitingWorkSheets.push({ sheetNo, path: path7, tempFileCleanupCallback });
93755
+ const tempStream = fs9.createWriteStream(path7);
93756
93756
  tempStream.on("error", reject);
93757
93757
  entry.pipe(tempStream);
93758
93758
  return tempStream.on("finish", () => {
@@ -93770,8 +93770,8 @@ var require_workbook_reader = __commonJS({
93770
93770
  }
93771
93771
  entry.autodrain();
93772
93772
  }
93773
- for (const { sheetNo, path: path6, tempFileCleanupCallback } of waitingWorkSheets) {
93774
- let fileStream = fs9.createReadStream(path6);
93773
+ for (const { sheetNo, path: path7, tempFileCleanupCallback } of waitingWorkSheets) {
93774
+ let fileStream = fs9.createReadStream(path7);
93775
93775
  if (!fileStream[Symbol.asyncIterator]) {
93776
93776
  fileStream = fileStream.pipe(new PassThrough4());
93777
93777
  }
@@ -99360,8 +99360,8 @@ var require_executor = __commonJS({
99360
99360
  Object.defineProperty(exports2, "__esModule", { value: true });
99361
99361
  exports2.executeTool = executeTool;
99362
99362
  var fs9 = __importStar(__require("fs"));
99363
- var path6 = __importStar(__require("path"));
99364
- var os5 = __importStar(__require("os"));
99363
+ var path7 = __importStar(__require("path"));
99364
+ var os6 = __importStar(__require("os"));
99365
99365
  var https3 = __importStar(__require("https"));
99366
99366
  var http3 = __importStar(__require("http"));
99367
99367
  var dns = __importStar(__require("dns"));
@@ -99387,7 +99387,7 @@ var require_executor = __commonJS({
99387
99387
  var READ_CHARS_PER_TOKEN = 4;
99388
99388
  var MAX_READ_CHARS = MAX_READ_TOKENS * READ_CHARS_PER_TOKEN;
99389
99389
  var MAX_SPILL_BYTES = 20 * 1024 * 1024;
99390
- var SPILL_DIR = path6.join(os5.tmpdir(), "nexrall-code", "bash-output");
99390
+ var SPILL_DIR = path7.join(os6.tmpdir(), "nexrall-code", "bash-output");
99391
99391
  var BLOCKED_REGEXES = [
99392
99392
  // Filesystem destruction — match rm/chmod with any whitespace between flags.
99393
99393
  // Only root itself and BARE top-level system dirs are blocked; ordinary
@@ -99447,9 +99447,9 @@ var require_executor = __commonJS({
99447
99447
  }
99448
99448
  function resolvePath(inputPath, workDir) {
99449
99449
  const base = workDir ?? process.cwd();
99450
- const resolved = path6.isAbsolute(inputPath) ? inputPath : path6.resolve(base, inputPath);
99451
- if (!path6.isAbsolute(inputPath)) {
99452
- const rel = path6.relative(base, resolved);
99450
+ const resolved = path7.isAbsolute(inputPath) ? inputPath : path7.resolve(base, inputPath);
99451
+ if (!path7.isAbsolute(inputPath)) {
99452
+ const rel = path7.relative(base, resolved);
99453
99453
  if (rel.startsWith("..")) {
99454
99454
  throw new Error(`Path traversal denied: "${inputPath}" escapes the workspace root.`);
99455
99455
  }
@@ -99575,7 +99575,7 @@ ${numbered}` });
99575
99575
  const resolved = resolvePath(filePath, workDir);
99576
99576
  fs9.statSync(resolved);
99577
99577
  if (isBinaryFile(resolved)) {
99578
- const ext = path6.extname(resolved).toLowerCase();
99578
+ const ext = path7.extname(resolved).toLowerCase();
99579
99579
  return { error: `Cannot read binary file: ${resolved} (${ext || "no extension"}). Use a text-based tool or convert it first.` };
99580
99580
  }
99581
99581
  return await readFileWindowed(resolved, offset, limit);
@@ -99592,7 +99592,7 @@ ${numbered}` });
99592
99592
  return { error: "Missing required parameter: content (must be a string)" };
99593
99593
  try {
99594
99594
  const resolved = resolvePath(filePath, workDir);
99595
- const dir = path6.dirname(resolved);
99595
+ const dir = path7.dirname(resolved);
99596
99596
  fs9.mkdirSync(dir, { recursive: true });
99597
99597
  const isNew = !fs9.existsSync(resolved);
99598
99598
  if (!isNew && content === "") {
@@ -99641,9 +99641,9 @@ Resolve the conflict (remove <<<<<<< / ======= / >>>>>>> markers and keep the in
99641
99641
  }
99642
99642
  }
99643
99643
  function atomicWriteBuffer(resolved, data) {
99644
- const dir = path6.dirname(resolved);
99644
+ const dir = path7.dirname(resolved);
99645
99645
  fs9.mkdirSync(dir, { recursive: true });
99646
- const tmp = path6.join(dir, `.${path6.basename(resolved)}.nexrall-tmp-${process.pid}-${Date.now()}`);
99646
+ const tmp = path7.join(dir, `.${path7.basename(resolved)}.nexrall-tmp-${process.pid}-${Date.now()}`);
99647
99647
  fs9.writeFileSync(tmp, data);
99648
99648
  fs9.renameSync(tmp, resolved);
99649
99649
  }
@@ -99770,7 +99770,7 @@ Resolve the conflict (remove <<<<<<< / ======= / >>>>>>> markers and keep the in
99770
99770
  }
99771
99771
  const resolved = resolvePath(filePath, workDir);
99772
99772
  const isNew = !fs9.existsSync(resolved);
99773
- fs9.mkdirSync(path6.dirname(resolved), { recursive: true });
99773
+ fs9.mkdirSync(path7.dirname(resolved), { recursive: true });
99774
99774
  const buffer = await pres.write({ outputType: "nodebuffer" });
99775
99775
  atomicWriteBuffer(resolved, buffer);
99776
99776
  return { output: `${isNew ? "Created" : "Overwrote"} ${resolved} (${slidesRaw.length} slide(s), ${buffer.length} bytes)` };
@@ -99800,7 +99800,7 @@ Resolve the conflict (remove <<<<<<< / ======= / >>>>>>> markers and keep the in
99800
99800
  }
99801
99801
  for (const f3 of files) {
99802
99802
  try {
99803
- const stat3 = fs9.statSync(path6.join(resolved, f3.name));
99803
+ const stat3 = fs9.statSync(path7.join(resolved, f3.name));
99804
99804
  const size = formatBytes(stat3.size);
99805
99805
  lines.push(`\u{1F4C4} ${f3.name} (${size})`);
99806
99806
  } catch {
@@ -99848,7 +99848,7 @@ Resolve the conflict (remove <<<<<<< / ======= / >>>>>>> markers and keep the in
99848
99848
  if (!shell.spillPath && !shell.spillFull) {
99849
99849
  try {
99850
99850
  fs9.mkdirSync(SPILL_DIR, { recursive: true });
99851
- shell.spillPath = path6.join(SPILL_DIR, `${id}-${Date.now()}.log`);
99851
+ shell.spillPath = path7.join(SPILL_DIR, `${id}-${Date.now()}.log`);
99852
99852
  shell.spillFd = fs9.openSync(shell.spillPath, "w");
99853
99853
  fs9.writeSync(shell.spillFd, shell.output);
99854
99854
  } catch {
@@ -100020,7 +100020,7 @@ ${r2.output}`;
100020
100020
  return;
100021
100021
  try {
100022
100022
  fs9.mkdirSync(SPILL_DIR, { recursive: true });
100023
- spillPath = path6.join(SPILL_DIR, `bash-${Date.now()}-${Math.random().toString(36).slice(2, 8)}.log`);
100023
+ spillPath = path7.join(SPILL_DIR, `bash-${Date.now()}-${Math.random().toString(36).slice(2, 8)}.log`);
100024
100024
  spillFd = fs9.openSync(spillPath, "w");
100025
100025
  } catch {
100026
100026
  spillPath = null;
@@ -100242,7 +100242,7 @@ Update these call-sites (or restore the symbol), then run a build/typecheck to c
100242
100242
  }
100243
100243
  const rel = [];
100244
100244
  for (const f3 of files) {
100245
- const abs = path6.isAbsolute(f3) ? f3 : path6.join(workDir, f3);
100245
+ const abs = path7.isAbsolute(f3) ? f3 : path7.join(workDir, f3);
100246
100246
  let real = abs;
100247
100247
  try {
100248
100248
  real = fs9.realpathSync(abs);
@@ -100250,7 +100250,7 @@ Update these call-sites (or restore the symbol), then run a build/typecheck to c
100250
100250
  }
100251
100251
  if (real === excludeRealPath)
100252
100252
  continue;
100253
- rel.push(path6.relative(workDir, abs) || f3);
100253
+ rel.push(path7.relative(workDir, abs) || f3);
100254
100254
  }
100255
100255
  return rel;
100256
100256
  }
@@ -100269,9 +100269,9 @@ Update these call-sites (or restore the symbol), then run a build/typecheck to c
100269
100269
  const matches = [];
100270
100270
  const patternLower = pattern.toLowerCase();
100271
100271
  walkDir(resolved, (filePath) => {
100272
- const name = path6.basename(filePath);
100272
+ const name = path7.basename(filePath);
100273
100273
  const nameLower = name.toLowerCase();
100274
- const rel = path6.relative(resolved, filePath).replace(/\\/g, "/");
100274
+ const rel = path7.relative(resolved, filePath).replace(/\\/g, "/");
100275
100275
  const relLower = rel.toLowerCase();
100276
100276
  if (nameLower.includes(patternLower) || matchesGlob(name, pattern) || matchesPattern(name, pattern) || relLower.includes(patternLower) || matchesGlob(rel, pattern) || matchesPattern(rel, pattern)) {
100277
100277
  matches.push(filePath);
@@ -100383,7 +100383,7 @@ ${globalCapMatches(output)}` : "";
100383
100383
  _visited.add(real);
100384
100384
  const entries = fs9.readdirSync(dirPath, { withFileTypes: true });
100385
100385
  for (const entry of entries) {
100386
- const fullPath = path6.join(dirPath, entry.name);
100386
+ const fullPath = path7.join(dirPath, entry.name);
100387
100387
  const isDir = entry.isDirectory() || entry.isSymbolicLink() && (() => {
100388
100388
  try {
100389
100389
  return fs9.statSync(fullPath).isDirectory();
@@ -100425,7 +100425,7 @@ ${globalCapMatches(output)}` : "";
100425
100425
  try {
100426
100426
  const resolvedSource = resolvePath(source2, workDir);
100427
100427
  const resolvedDest = resolvePath(dest, workDir);
100428
- fs9.mkdirSync(path6.dirname(resolvedDest), { recursive: true });
100428
+ fs9.mkdirSync(path7.dirname(resolvedDest), { recursive: true });
100429
100429
  try {
100430
100430
  fs9.renameSync(resolvedSource, resolvedDest);
100431
100431
  } catch (e2) {
@@ -100580,7 +100580,7 @@ ${diff3}${xfile}${sec}` };
100580
100580
  if (fs9.existsSync(resolvedDest) && fs9.statSync(resolvedDest).isDirectory()) {
100581
100581
  return { error: `Destination is a directory: ${resolvedDest}. Provide a full file path including the filename.` };
100582
100582
  }
100583
- fs9.mkdirSync(path6.dirname(resolvedDest), { recursive: true });
100583
+ fs9.mkdirSync(path7.dirname(resolvedDest), { recursive: true });
100584
100584
  fs9.copyFileSync(resolvedSrc, resolvedDest);
100585
100585
  return { output: `Copied: ${resolvedSrc} \u2192 ${resolvedDest}` };
100586
100586
  } catch (err) {
@@ -100905,9 +100905,9 @@ ${d}`).join("\n") + xfile + sec
100905
100905
  };
100906
100906
  const regex2 = toRegex(pattern);
100907
100907
  walkDir(resolved, (filePath) => {
100908
- const rel = path6.relative(resolved, filePath).replace(/\\/g, "/");
100908
+ const rel = path7.relative(resolved, filePath).replace(/\\/g, "/");
100909
100909
  const useBasename = !pattern.includes("/") && !pattern.includes("**");
100910
- if (regex2.test(rel) || useBasename && regex2.test(path6.basename(filePath))) {
100910
+ if (regex2.test(rel) || useBasename && regex2.test(path7.basename(filePath))) {
100911
100911
  matches.push(filePath);
100912
100912
  }
100913
100913
  });
@@ -101216,7 +101216,7 @@ ${lines.join("\n")}`;
101216
101216
  }
101217
101217
  const destPath = resolvePath(relPath, workDir);
101218
101218
  try {
101219
- fs9.mkdirSync(path6.dirname(destPath), { recursive: true });
101219
+ fs9.mkdirSync(path7.dirname(destPath), { recursive: true });
101220
101220
  } catch (_2) {
101221
101221
  }
101222
101222
  try {
@@ -101272,7 +101272,7 @@ ${lines.join("\n")}`;
101272
101272
  return { error: "No usable photo URL returned from Unsplash." };
101273
101273
  const destPath = resolvePath(relPath, workDir);
101274
101274
  try {
101275
- fs9.mkdirSync(path6.dirname(destPath), { recursive: true });
101275
+ fs9.mkdirSync(path7.dirname(destPath), { recursive: true });
101276
101276
  } catch (_2) {
101277
101277
  }
101278
101278
  try {
@@ -101376,7 +101376,7 @@ ${expanded}` };
101376
101376
  return { ok: false, err: { error: e2.message } };
101377
101377
  }
101378
101378
  if (!(0, tsLangService_1.isTsLike)(resolved)) {
101379
- return { ok: false, err: { error: `Semantic navigation currently supports TypeScript/JavaScript only. For ${path6.extname(resolved) || "this file type"} use get_symbols / get_workspace_symbols (regex-based).` } };
101379
+ return { ok: false, err: { error: `Semantic navigation currently supports TypeScript/JavaScript only. For ${path7.extname(resolved) || "this file type"} use get_symbols / get_workspace_symbols (regex-based).` } };
101380
101380
  }
101381
101381
  return { ok: true, args: { workDir: workDir ?? process.cwd(), filePath: resolved, line, character } };
101382
101382
  }
@@ -101550,8 +101550,8 @@ var require_agentTypes = __commonJS({
101550
101550
  exports2.summariseAgents = summariseAgents;
101551
101551
  exports2.findAgentType = findAgentType;
101552
101552
  var fs9 = __importStar(__require("fs"));
101553
- var path6 = __importStar(__require("path"));
101554
- var os5 = __importStar(__require("os"));
101553
+ var path7 = __importStar(__require("path"));
101554
+ var os6 = __importStar(__require("os"));
101555
101555
  var index_1 = require_plugins();
101556
101556
  var VALID_MEMORY_SCOPES = ["project", "user", "local"];
101557
101557
  function parseMemoryScope(v) {
@@ -101944,7 +101944,7 @@ var require_agentTypes = __commonJS({
101944
101944
  return;
101945
101945
  }
101946
101946
  for (const entry of entries) {
101947
- const full = path6.join(dir, entry.name);
101947
+ const full = path7.join(dir, entry.name);
101948
101948
  if (entry.isDirectory()) {
101949
101949
  loadDir(full, source2, into, warnings);
101950
101950
  continue;
@@ -101955,11 +101955,11 @@ var require_agentTypes = __commonJS({
101955
101955
  try {
101956
101956
  raw = fs9.readFileSync(full, "utf-8");
101957
101957
  } catch (err) {
101958
- warnings.push({ file: full, agent: path6.basename(entry.name, ".md"), message: `could not be read (${err.message}) \u2014 this agent was skipped` });
101958
+ warnings.push({ file: full, agent: path7.basename(entry.name, ".md"), message: `could not be read (${err.message}) \u2014 this agent was skipped` });
101959
101959
  continue;
101960
101960
  }
101961
101961
  const { meta, body, ok } = parseFrontmatter(raw);
101962
- const name = (meta.name || path6.basename(entry.name, ".md")).trim();
101962
+ const name = (meta.name || path7.basename(entry.name, ".md")).trim();
101963
101963
  if (!name)
101964
101964
  continue;
101965
101965
  if (source2 !== "project" && into.has(name))
@@ -102054,8 +102054,8 @@ var require_agentTypes = __commonJS({
102054
102054
  function loadAgentTypesWithWarnings2(workDir) {
102055
102055
  const out = /* @__PURE__ */ new Map();
102056
102056
  const warnings = [];
102057
- loadDir(path6.join(workDir, ".nexrall", "agents"), "project", out, warnings);
102058
- loadDir(path6.join(os5.homedir(), ".nexrall", "agents"), "global", out, warnings);
102057
+ loadDir(path7.join(workDir, ".nexrall", "agents"), "project", out, warnings);
102058
+ loadDir(path7.join(os6.homedir(), ".nexrall", "agents"), "global", out, warnings);
102059
102059
  for (const dir of (0, index_1.pluginAssetDirs)(workDir, "agents"))
102060
102060
  loadDir(dir, "plugin", out, warnings);
102061
102061
  for (const agent of BUILTIN_AGENTS) {
@@ -102165,13 +102165,13 @@ var require_rules = __commonJS({
102165
102165
  exports2.loadSettings = loadSettings2;
102166
102166
  exports2.evaluatePermission = evaluatePermission2;
102167
102167
  var fs9 = __importStar(__require("fs"));
102168
- var path6 = __importStar(__require("path"));
102169
- var os5 = __importStar(__require("os"));
102168
+ var path7 = __importStar(__require("path"));
102169
+ var os6 = __importStar(__require("os"));
102170
102170
  function managedSettingsPath() {
102171
102171
  if (process.platform === "darwin")
102172
102172
  return "/Library/Application Support/Nexrall/managed-settings.json";
102173
102173
  if (process.platform === "win32")
102174
- return path6.join(process.env.PROGRAMDATA ?? "C:\\ProgramData", "Nexrall", "managed-settings.json");
102174
+ return path7.join(process.env.PROGRAMDATA ?? "C:\\ProgramData", "Nexrall", "managed-settings.json");
102175
102175
  return "/etc/nexrall/managed-settings.json";
102176
102176
  }
102177
102177
  function readJson(file) {
@@ -102189,9 +102189,9 @@ var require_rules = __commonJS({
102189
102189
  function loadSettings2(workDir) {
102190
102190
  const tiers = [
102191
102191
  managedSettingsPath(),
102192
- path6.join(os5.homedir(), ".nexrall", "settings.json"),
102193
- path6.join(workDir, ".nexrall", "settings.json"),
102194
- path6.join(workDir, ".nexrall", "settings.local.json")
102192
+ path7.join(os6.homedir(), ".nexrall", "settings.json"),
102193
+ path7.join(workDir, ".nexrall", "settings.json"),
102194
+ path7.join(workDir, ".nexrall", "settings.local.json")
102195
102195
  ];
102196
102196
  const merged = { allow: [], ask: [], deny: [] };
102197
102197
  const raw = {};
@@ -102259,10 +102259,10 @@ var require_rules = __commonJS({
102259
102259
  if (!p)
102260
102260
  return;
102261
102261
  vals.push(p);
102262
- if (path6.isAbsolute(p))
102263
- vals.push(path6.relative(workDir, p));
102262
+ if (path7.isAbsolute(p))
102263
+ vals.push(path7.relative(workDir, p));
102264
102264
  else
102265
- vals.push(path6.resolve(workDir, p));
102265
+ vals.push(path7.resolve(workDir, p));
102266
102266
  };
102267
102267
  switch (tool) {
102268
102268
  case "bash":
@@ -102970,12 +102970,12 @@ var require_loop = __commonJS({
102970
102970
  var memory_1 = require_memory();
102971
102971
  var safeSlice_1 = require_safeSlice();
102972
102972
  var fs9 = __importStar(__require("fs"));
102973
- var path6 = __importStar(__require("path"));
102973
+ var path7 = __importStar(__require("path"));
102974
102974
  var child_process_1 = __require("child_process");
102975
102975
  function loadHooks(workDir) {
102976
102976
  let fromSettings = {};
102977
102977
  try {
102978
- const p = path6.join(workDir, ".nexrall", "settings.json");
102978
+ const p = path7.join(workDir, ".nexrall", "settings.json");
102979
102979
  if (fs9.existsSync(p))
102980
102980
  fromSettings = JSON.parse(fs9.readFileSync(p, "utf-8")).hooks ?? {};
102981
102981
  } catch {
@@ -103205,7 +103205,7 @@ ${ctx.repeatError}
103205
103205
  if (!WRITE_TOOLS.has(name))
103206
103206
  return [];
103207
103207
  const raw = [input.path, input.source, input.destination, input.dest].filter((p) => typeof p === "string" && p.length > 0);
103208
- const abs = raw.map((p) => workDir ? path6.resolve(workDir, p) : p);
103208
+ const abs = raw.map((p) => workDir ? path7.resolve(workDir, p) : p);
103209
103209
  return abs.length ? abs : [name];
103210
103210
  }
103211
103211
  var DEFAULT_MAX_CONCURRENT_SUBTASKS = 4;
@@ -103233,7 +103233,7 @@ ${ctx.repeatError}
103233
103233
  function createLimiter(max) {
103234
103234
  let active = 0;
103235
103235
  const queue = [];
103236
- const release2 = () => {
103236
+ const release3 = () => {
103237
103237
  active--;
103238
103238
  queue.shift()?.();
103239
103239
  };
@@ -103244,7 +103244,7 @@ ${ctx.repeatError}
103244
103244
  try {
103245
103245
  return await fn();
103246
103246
  } finally {
103247
- release2();
103247
+ release3();
103248
103248
  }
103249
103249
  };
103250
103250
  }
@@ -105227,8 +105227,8 @@ var require_manager = __commonJS({
105227
105227
  Object.defineProperty(exports2, "__esModule", { value: true });
105228
105228
  exports2.McpManager = void 0;
105229
105229
  var fs9 = __importStar(__require("fs"));
105230
- var path6 = __importStar(__require("path"));
105231
- var os5 = __importStar(__require("os"));
105230
+ var path7 = __importStar(__require("path"));
105231
+ var os6 = __importStar(__require("os"));
105232
105232
  var client_1 = require_client2();
105233
105233
  var httpClient_1 = require_httpClient();
105234
105234
  var sseClient_1 = require_sseClient();
@@ -105256,8 +105256,8 @@ var require_manager = __commonJS({
105256
105256
  } catch {
105257
105257
  }
105258
105258
  const locations = [
105259
- path6.join(os5.homedir(), ".nexrall", "mcp.json"),
105260
- path6.join(workDir, ".nexrall", "mcp.json")
105259
+ path7.join(os6.homedir(), ".nexrall", "mcp.json"),
105260
+ path7.join(workDir, ".nexrall", "mcp.json")
105261
105261
  ];
105262
105262
  for (const loc of locations) {
105263
105263
  try {
@@ -105391,7 +105391,7 @@ var require_manager = __commonJS({
105391
105391
  // ─── Config file persistence (for the management UI) ──────────────────────────
105392
105392
  /** Path to an mcp.json for the given scope. */
105393
105393
  static configPath(workDir, scope) {
105394
- return scope === "user" ? path6.join(os5.homedir(), ".nexrall", "mcp.json") : path6.join(workDir, ".nexrall", "mcp.json");
105394
+ return scope === "user" ? path7.join(os6.homedir(), ".nexrall", "mcp.json") : path7.join(workDir, ".nexrall", "mcp.json");
105395
105395
  }
105396
105396
  static readConfigFile(p) {
105397
105397
  try {
@@ -105402,7 +105402,7 @@ var require_manager = __commonJS({
105402
105402
  }
105403
105403
  }
105404
105404
  static writeConfigFile(p, cfg) {
105405
- fs9.mkdirSync(path6.dirname(p), { recursive: true });
105405
+ fs9.mkdirSync(path7.dirname(p), { recursive: true });
105406
105406
  fs9.writeFileSync(p, JSON.stringify(cfg, null, 2) + "\n", "utf-8");
105407
105407
  }
105408
105408
  /** Add (or overwrite) a server in the given scope's mcp.json. */
@@ -105493,8 +105493,8 @@ var require_manager2 = __commonJS({
105493
105493
  exports2.isMutatingTool = isMutatingTool;
105494
105494
  exports2.isPotentiallyMutatingBash = isPotentiallyMutatingBash;
105495
105495
  var fs9 = __importStar(__require("fs"));
105496
- var os5 = __importStar(__require("os"));
105497
- var path6 = __importStar(__require("path"));
105496
+ var os6 = __importStar(__require("os"));
105497
+ var path7 = __importStar(__require("path"));
105498
105498
  var crypto5 = __importStar(__require("crypto"));
105499
105499
  var child_process_1 = __require("child_process");
105500
105500
  var MAX_SNAPSHOT_BYTES = 2 * 1024 * 1024;
@@ -105557,13 +105557,13 @@ var require_manager2 = __commonJS({
105557
105557
  this.turns = [];
105558
105558
  this.current = null;
105559
105559
  this.nextId = 1;
105560
- const key = crypto5.createHash("sha1").update(path6.resolve(workDir) + "\0" + (scope ?? "")).digest("hex").slice(0, 16);
105561
- const base = process.env.NEXRALL_CHECKPOINT_DIR || path6.join(os5.homedir(), ".nexrall", "checkpoints");
105562
- this.storeDir = path6.join(base, key);
105560
+ const key = crypto5.createHash("sha1").update(path7.resolve(workDir) + "\0" + (scope ?? "")).digest("hex").slice(0, 16);
105561
+ const base = process.env.NEXRALL_CHECKPOINT_DIR || path7.join(os6.homedir(), ".nexrall", "checkpoints");
105562
+ this.storeDir = path7.join(base, key);
105563
105563
  this.loadFromDisk();
105564
105564
  }
105565
105565
  resolve(p) {
105566
- return path6.isAbsolute(p) ? p : path6.resolve(this.workDir, p);
105566
+ return path7.isAbsolute(p) ? p : path7.resolve(this.workDir, p);
105567
105567
  }
105568
105568
  /**
105569
105569
  * Open a new turn. `label` is a short description (usually the user prompt),
@@ -105719,7 +105719,7 @@ var require_manager2 = __commonJS({
105719
105719
  }
105720
105720
  }
105721
105721
  } else if (snap.content !== null) {
105722
- fs9.mkdirSync(path6.dirname(snap.absPath), { recursive: true });
105722
+ fs9.mkdirSync(path7.dirname(snap.absPath), { recursive: true });
105723
105723
  fs9.writeFileSync(snap.absPath, snap.content);
105724
105724
  }
105725
105725
  } catch {
@@ -105727,7 +105727,7 @@ var require_manager2 = __commonJS({
105727
105727
  }
105728
105728
  // ─── Disk persistence (best-effort — checkpointing must never crash the agent) ──
105729
105729
  turnFile(id) {
105730
- return path6.join(this.storeDir, `turn-${id}.json`);
105730
+ return path7.join(this.storeDir, `turn-${id}.json`);
105731
105731
  }
105732
105732
  persistTurn(turn) {
105733
105733
  try {
@@ -105757,13 +105757,13 @@ var require_manager2 = __commonJS({
105757
105757
  fs9.mkdirSync(this.storeDir, { recursive: true });
105758
105758
  const index = {
105759
105759
  version: 1,
105760
- workDir: path6.resolve(this.workDir),
105760
+ workDir: path7.resolve(this.workDir),
105761
105761
  nextId: this.nextId,
105762
105762
  turnIds: this.turns.map((t2) => t2.id)
105763
105763
  };
105764
- const tmp = path6.join(this.storeDir, "index.json.tmp");
105764
+ const tmp = path7.join(this.storeDir, "index.json.tmp");
105765
105765
  fs9.writeFileSync(tmp, JSON.stringify(index));
105766
- fs9.renameSync(tmp, path6.join(this.storeDir, "index.json"));
105766
+ fs9.renameSync(tmp, path7.join(this.storeDir, "index.json"));
105767
105767
  } catch {
105768
105768
  }
105769
105769
  }
@@ -105781,7 +105781,7 @@ var require_manager2 = __commonJS({
105781
105781
  }
105782
105782
  loadFromDisk() {
105783
105783
  try {
105784
- const raw = fs9.readFileSync(path6.join(this.storeDir, "index.json"), "utf-8");
105784
+ const raw = fs9.readFileSync(path7.join(this.storeDir, "index.json"), "utf-8");
105785
105785
  const index = JSON.parse(raw);
105786
105786
  if (index.version !== 1 || !Array.isArray(index.turnIds))
105787
105787
  return;
@@ -106166,13 +106166,13 @@ var require_sources = __commonJS({
106166
106166
  exports2.removeDeclaredSource = removeDeclaredSource2;
106167
106167
  exports2.sourcesFileFor = sourcesFileFor2;
106168
106168
  var fs9 = __importStar(__require("fs"));
106169
- var path6 = __importStar(__require("path"));
106170
- var os5 = __importStar(__require("os"));
106169
+ var path7 = __importStar(__require("path"));
106170
+ var os6 = __importStar(__require("os"));
106171
106171
  function managedSettingsPath() {
106172
106172
  if (process.platform === "darwin")
106173
106173
  return "/Library/Application Support/Nexrall/managed-settings.json";
106174
106174
  if (process.platform === "win32")
106175
- return path6.join(process.env.PROGRAMDATA ?? "C:\\ProgramData", "Nexrall", "managed-settings.json");
106175
+ return path7.join(process.env.PROGRAMDATA ?? "C:\\ProgramData", "Nexrall", "managed-settings.json");
106176
106176
  return "/etc/nexrall/managed-settings.json";
106177
106177
  }
106178
106178
  function readJson(file) {
@@ -106218,10 +106218,10 @@ var require_sources = __commonJS({
106218
106218
  function loadDeclaredSources2(workDir, opts = {}) {
106219
106219
  const out = /* @__PURE__ */ new Map();
106220
106220
  collect(managedSettingsPath(), "managed", out);
106221
- collect(path6.join(os5.homedir(), ".nexrall", "settings.json"), "user", out);
106221
+ collect(path7.join(os6.homedir(), ".nexrall", "settings.json"), "user", out);
106222
106222
  if (opts.includeProject) {
106223
- collect(path6.join(workDir, ".nexrall", "settings.json"), "project", out);
106224
- collect(path6.join(workDir, ".nexrall", "settings.local.json"), "project", out);
106223
+ collect(path7.join(workDir, ".nexrall", "settings.json"), "project", out);
106224
+ collect(path7.join(workDir, ".nexrall", "settings.local.json"), "project", out);
106225
106225
  }
106226
106226
  return [...out.values()];
106227
106227
  }
@@ -106258,7 +106258,7 @@ var require_sources = __commonJS({
106258
106258
  const obj2 = readJson(file) ?? {};
106259
106259
  const existing = obj2.pluginSources && typeof obj2.pluginSources === "object" && !Array.isArray(obj2.pluginSources) ? obj2.pluginSources : {};
106260
106260
  obj2.pluginSources = { ...existing, [name]: spec };
106261
- fs9.mkdirSync(path6.dirname(file), { recursive: true });
106261
+ fs9.mkdirSync(path7.dirname(file), { recursive: true });
106262
106262
  fs9.writeFileSync(file, JSON.stringify(obj2, null, 2) + "\n", "utf-8");
106263
106263
  }
106264
106264
  function removeDeclaredSource2(file, name) {
@@ -106273,7 +106273,7 @@ var require_sources = __commonJS({
106273
106273
  return true;
106274
106274
  }
106275
106275
  function sourcesFileFor2(scope, workDir) {
106276
- return scope === "user" ? path6.join(os5.homedir(), ".nexrall", "settings.json") : path6.join(workDir, ".nexrall", "settings.json");
106276
+ return scope === "user" ? path7.join(os6.homedir(), ".nexrall", "settings.json") : path7.join(workDir, ".nexrall", "settings.json");
106277
106277
  }
106278
106278
  }
106279
106279
  });
@@ -106339,8 +106339,8 @@ var require_installer = __commonJS({
106339
106339
  exports2.removePlugin = removePlugin2;
106340
106340
  exports2.updatePlugin = updatePlugin2;
106341
106341
  var fs9 = __importStar(__require("fs"));
106342
- var path6 = __importStar(__require("path"));
106343
- var os5 = __importStar(__require("os"));
106342
+ var path7 = __importStar(__require("path"));
106343
+ var os6 = __importStar(__require("os"));
106344
106344
  var child_process_1 = __require("child_process");
106345
106345
  var client_1 = require_client();
106346
106346
  var index_1 = require_plugins();
@@ -106380,7 +106380,7 @@ var require_installer = __commonJS({
106380
106380
  if (!raw)
106381
106381
  throw new Error("Empty plugin source.");
106382
106382
  if (raw.startsWith("./") || raw.startsWith("../") || raw.startsWith("/") || raw.startsWith("~/")) {
106383
- const abs = path6.resolve(raw.replace(/^~(?=\/)/, os5.homedir()));
106383
+ const abs = path7.resolve(raw.replace(/^~(?=\/)/, os6.homedir()));
106384
106384
  return { kind: "local", repo: abs, raw };
106385
106385
  }
106386
106386
  let rest = raw;
@@ -106437,8 +106437,8 @@ var require_installer = __commonJS({
106437
106437
  }
106438
106438
  }
106439
106439
  return {
106440
- commands: listMd(path6.join(dir, "commands")),
106441
- agents: listMd(path6.join(dir, "agents")),
106440
+ commands: listMd(path7.join(dir, "commands")),
106441
+ agents: listMd(path7.join(dir, "agents")),
106442
106442
  hasHooks: (0, index_1.resolvePluginFile)(dir, "hooks") !== null,
106443
106443
  hasMcp: (0, index_1.resolvePluginFile)(dir, "mcp") !== null,
106444
106444
  meta
@@ -106455,7 +106455,7 @@ var require_installer = __commonJS({
106455
106455
  for (const file of files) {
106456
106456
  const name = file.replace(/\.md$/, "");
106457
106457
  try {
106458
- const raw = fs9.readFileSync(path6.join(dir, file), "utf-8");
106458
+ const raw = fs9.readFileSync(path7.join(dir, file), "utf-8");
106459
106459
  const { meta } = (0, frontmatter_1.parseFrontmatter)(raw);
106460
106460
  out.push({ name, description: meta.description || "" });
106461
106461
  } catch {
@@ -106475,7 +106475,7 @@ var require_installer = __commonJS({
106475
106475
  for (const entry of entries) {
106476
106476
  if (!entry.isDirectory() && !entry.isSymbolicLink())
106477
106477
  continue;
106478
- const skillFile = path6.join(dir, entry.name, "SKILL.md");
106478
+ const skillFile = path7.join(dir, entry.name, "SKILL.md");
106479
106479
  try {
106480
106480
  if (!fs9.statSync(skillFile).isFile())
106481
106481
  continue;
@@ -106518,9 +106518,9 @@ var require_installer = __commonJS({
106518
106518
  }
106519
106519
  }
106520
106520
  return {
106521
- commands: listMdWithDescription(path6.join(dir, "commands")),
106522
- skills: listSkillsWithDescription(path6.join(dir, "skills")),
106523
- agents: listMdWithDescription(path6.join(dir, "agents")),
106521
+ commands: listMdWithDescription(path7.join(dir, "commands")),
106522
+ skills: listSkillsWithDescription(path7.join(dir, "skills")),
106523
+ agents: listMdWithDescription(path7.join(dir, "agents")),
106524
106524
  mcpServers,
106525
106525
  hasHooks: (0, index_1.resolvePluginFile)(dir, "hooks") !== null
106526
106526
  };
@@ -106535,7 +106535,7 @@ var require_installer = __commonJS({
106535
106535
  for (const file of files) {
106536
106536
  if (file.replace(/\.md$/, "") !== name)
106537
106537
  continue;
106538
- const filePath = path6.join(dir, file);
106538
+ const filePath = path7.join(dir, file);
106539
106539
  try {
106540
106540
  const raw = fs9.readFileSync(filePath, "utf-8");
106541
106541
  const { meta, body } = (0, frontmatter_1.parseFrontmatter)(raw);
@@ -106556,7 +106556,7 @@ var require_installer = __commonJS({
106556
106556
  for (const entry of entries) {
106557
106557
  if (!entry.isDirectory() && !entry.isSymbolicLink())
106558
106558
  continue;
106559
- const skillFile = path6.join(skillsDir, entry.name, "SKILL.md");
106559
+ const skillFile = path7.join(skillsDir, entry.name, "SKILL.md");
106560
106560
  try {
106561
106561
  if (!fs9.statSync(skillFile).isFile())
106562
106562
  continue;
@@ -106573,8 +106573,8 @@ var require_installer = __commonJS({
106573
106573
  }
106574
106574
  function pluginItemDetail(dir, kind, name) {
106575
106575
  if (kind === "skills")
106576
- return readPluginSkill(path6.join(dir, "skills"), name);
106577
- return readPluginItemFromFlatDir(path6.join(dir, kind), name);
106576
+ return readPluginSkill(path7.join(dir, "skills"), name);
106577
+ return readPluginItemFromFlatDir(path7.join(dir, kind), name);
106578
106578
  }
106579
106579
  function looksLikePlugin(dir) {
106580
106580
  const i2 = inspectPluginDir2(dir);
@@ -106613,14 +106613,14 @@ var require_installer = __commonJS({
106613
106613
  (0, child_process_1.execFileSync)("tar", ["-xzf", tarFile, "-C", destDir], { stdio: "pipe" });
106614
106614
  const entries = fs9.readdirSync(destDir).filter((e2) => {
106615
106615
  try {
106616
- return fs9.statSync(path6.join(destDir, e2)).isDirectory();
106616
+ return fs9.statSync(path7.join(destDir, e2)).isDirectory();
106617
106617
  } catch {
106618
106618
  return false;
106619
106619
  }
106620
106620
  });
106621
106621
  if (entries.length !== 1)
106622
106622
  throw new Error("Unexpected tarball layout.");
106623
- return path6.join(destDir, entries[0]);
106623
+ return path7.join(destDir, entries[0]);
106624
106624
  }
106625
106625
  function copyPluginDir(src, dest) {
106626
106626
  const SKIP = /* @__PURE__ */ new Set([".git", "node_modules", ".github", ".DS_Store", RECEIPT_FILE]);
@@ -106628,8 +106628,8 @@ var require_installer = __commonJS({
106628
106628
  for (const entry of fs9.readdirSync(src, { withFileTypes: true })) {
106629
106629
  if (SKIP.has(entry.name))
106630
106630
  continue;
106631
- const s2 = path6.join(src, entry.name);
106632
- const d = path6.join(dest, entry.name);
106631
+ const s2 = path7.join(src, entry.name);
106632
+ const d = path7.join(dest, entry.name);
106633
106633
  if (entry.isSymbolicLink())
106634
106634
  continue;
106635
106635
  if (entry.isDirectory()) {
@@ -106640,7 +106640,7 @@ var require_installer = __commonJS({
106640
106640
  }
106641
106641
  }
106642
106642
  function pluginsRoot(scope, workDir) {
106643
- return scope === "project" ? path6.join(workDir || process.cwd(), ".nexrall", "plugins") : path6.join(os5.homedir(), ".nexrall", "plugins");
106643
+ return scope === "project" ? path7.join(workDir || process.cwd(), ".nexrall", "plugins") : path7.join(os6.homedir(), ".nexrall", "plugins");
106644
106644
  }
106645
106645
  async function installPlugin2(spec, opts = {}) {
106646
106646
  const source2 = parsePluginSource2(spec);
@@ -106649,7 +106649,7 @@ var require_installer = __commonJS({
106649
106649
  if (patterns && source2.kind === "github" && !(0, sources_1.isSourceAllowed)(source2.raw, patterns)) {
106650
106650
  throw new Error(`Blocked by your organisation's policy: plugins may only be installed from ${patterns.join(", ")}.`);
106651
106651
  }
106652
- const tmpBase = fs9.mkdtempSync(path6.join(os5.tmpdir(), "nexrall-plugin-"));
106652
+ const tmpBase = fs9.mkdtempSync(path7.join(os6.tmpdir(), "nexrall-plugin-"));
106653
106653
  try {
106654
106654
  let repoRoot;
106655
106655
  if (source2.kind === "local") {
@@ -106658,21 +106658,21 @@ var require_installer = __commonJS({
106658
106658
  }
106659
106659
  repoRoot = source2.repo;
106660
106660
  } else {
106661
- const tarFile = path6.join(tmpBase, "plugin.tar.gz");
106661
+ const tarFile = path7.join(tmpBase, "plugin.tar.gz");
106662
106662
  await downloadTarball(source2.repo, source2.ref, tarFile);
106663
- repoRoot = extractTarball(tarFile, path6.join(tmpBase, "x"));
106663
+ repoRoot = extractTarball(tarFile, path7.join(tmpBase, "x"));
106664
106664
  }
106665
106665
  const sha = source2.kind === "github" ? await resolveCommitSha(source2.repo, source2.ref) : null;
106666
- let pluginRoot = source2.subdir ? path6.join(repoRoot, source2.subdir) : repoRoot;
106667
- pluginRoot = path6.resolve(pluginRoot);
106668
- if (!path6.resolve(pluginRoot).startsWith(path6.resolve(repoRoot))) {
106666
+ let pluginRoot = source2.subdir ? path7.join(repoRoot, source2.subdir) : repoRoot;
106667
+ pluginRoot = path7.resolve(pluginRoot);
106668
+ if (!path7.resolve(pluginRoot).startsWith(path7.resolve(repoRoot))) {
106669
106669
  throw new Error("Plugin subdirectory escapes the repository \u2014 refusing.");
106670
106670
  }
106671
106671
  if (!fs9.existsSync(pluginRoot) || !fs9.statSync(pluginRoot).isDirectory()) {
106672
106672
  throw new Error(`Subdirectory not found in repo: ${source2.subdir}`);
106673
106673
  }
106674
106674
  if (!looksLikePlugin(pluginRoot)) {
106675
- const candidates = ["plugin", ".nexrall-plugin"].map((c) => path6.join(pluginRoot, c));
106675
+ const candidates = ["plugin", ".nexrall-plugin"].map((c) => path7.join(pluginRoot, c));
106676
106676
  const found = candidates.find((c) => fs9.existsSync(c) && looksLikePlugin(c));
106677
106677
  if (found) {
106678
106678
  pluginRoot = found;
@@ -106681,7 +106681,7 @@ var require_installer = __commonJS({
106681
106681
  }
106682
106682
  }
106683
106683
  const inspection = inspectPluginDir2(pluginRoot);
106684
- const name = opts.name || inspection.meta.name || (source2.subdir ? path6.basename(source2.subdir) : void 0) || (source2.kind === "github" ? source2.repo.split("/")[1] : path6.basename(source2.repo));
106684
+ const name = opts.name || inspection.meta.name || (source2.subdir ? path7.basename(source2.subdir) : void 0) || (source2.kind === "github" ? source2.repo.split("/")[1] : path7.basename(source2.repo));
106685
106685
  if (!/^[\w.-]+$/.test(name))
106686
106686
  throw new Error(`Invalid plugin name "${name}".`);
106687
106687
  if (opts.confirm) {
@@ -106694,7 +106694,7 @@ var require_installer = __commonJS({
106694
106694
  throw new Error("Installation cancelled.");
106695
106695
  }
106696
106696
  const root = pluginsRoot(scope, opts.workDir);
106697
- const dest = path6.join(root, name);
106697
+ const dest = path7.join(root, name);
106698
106698
  if (fs9.existsSync(dest)) {
106699
106699
  if (!opts.force)
106700
106700
  throw new Error(`Plugin "${name}" is already installed. Use --force to overwrite or 'nex plugin update ${name}'.`);
@@ -106709,7 +106709,7 @@ var require_installer = __commonJS({
106709
106709
  installedAt: (/* @__PURE__ */ new Date()).toISOString(),
106710
106710
  ...sha ? { sha } : {}
106711
106711
  };
106712
- fs9.writeFileSync(path6.join(dest, RECEIPT_FILE), JSON.stringify(receipt, null, 2));
106712
+ fs9.writeFileSync(path7.join(dest, RECEIPT_FILE), JSON.stringify(receipt, null, 2));
106713
106713
  return { name, dir: dest, scope, inspection, sha: sha ?? void 0, previousSha: opts._previousSha };
106714
106714
  } finally {
106715
106715
  fs9.rmSync(tmpBase, { recursive: true, force: true });
@@ -106717,7 +106717,7 @@ var require_installer = __commonJS({
106717
106717
  }
106718
106718
  function readReceipt2(pluginDir) {
106719
106719
  try {
106720
- const j = JSON.parse(fs9.readFileSync(path6.join(pluginDir, RECEIPT_FILE), "utf-8"));
106720
+ const j = JSON.parse(fs9.readFileSync(path7.join(pluginDir, RECEIPT_FILE), "utf-8"));
106721
106721
  return typeof j.source === "string" ? j : null;
106722
106722
  } catch {
106723
106723
  return null;
@@ -106728,7 +106728,7 @@ var require_installer = __commonJS({
106728
106728
  throw new Error(`Invalid plugin name "${name}".`);
106729
106729
  const scopes = opts.scope ? [opts.scope] : ["project", "global"];
106730
106730
  for (const s2 of scopes) {
106731
- const dir = path6.join(pluginsRoot(s2, opts.workDir), name);
106731
+ const dir = path7.join(pluginsRoot(s2, opts.workDir), name);
106732
106732
  if (fs9.existsSync(dir)) {
106733
106733
  fs9.rmSync(dir, { recursive: true, force: true });
106734
106734
  return dir;
@@ -106739,7 +106739,7 @@ var require_installer = __commonJS({
106739
106739
  async function updatePlugin2(name, opts = {}) {
106740
106740
  const scopes = opts.scope ? [opts.scope] : ["project", "global"];
106741
106741
  for (const s2 of scopes) {
106742
- const dir = path6.join(pluginsRoot(s2, opts.workDir), name);
106742
+ const dir = path7.join(pluginsRoot(s2, opts.workDir), name);
106743
106743
  if (!fs9.existsSync(dir))
106744
106744
  continue;
106745
106745
  const receipt = readReceipt2(dir);
@@ -106814,10 +106814,10 @@ var require_trust = __commonJS({
106814
106814
  Object.defineProperty(exports2, "__esModule", { value: true });
106815
106815
  exports2.detectTrustSignals = detectTrustSignals2;
106816
106816
  var fs9 = __importStar(__require("fs"));
106817
- var path6 = __importStar(__require("path"));
106817
+ var path7 = __importStar(__require("path"));
106818
106818
  function declaresPluginSources2(dir) {
106819
106819
  try {
106820
- const raw = fs9.readFileSync(path6.join(dir, ".nexrall", "settings.json"), "utf-8");
106820
+ const raw = fs9.readFileSync(path7.join(dir, ".nexrall", "settings.json"), "utf-8");
106821
106821
  const obj2 = JSON.parse(raw);
106822
106822
  const s2 = obj2.pluginSources;
106823
106823
  return Boolean(s2 && typeof s2 === "object" && !Array.isArray(s2) && Object.keys(s2).length > 0);
@@ -106829,7 +106829,7 @@ var require_trust = __commonJS({
106829
106829
  const signals = [];
106830
106830
  const exists = (...p) => {
106831
106831
  try {
106832
- return fs9.existsSync(path6.join(dir, ...p));
106832
+ return fs9.existsSync(path7.join(dir, ...p));
106833
106833
  } catch {
106834
106834
  return false;
106835
106835
  }
@@ -106846,7 +106846,7 @@ var require_trust = __commonJS({
106846
106846
  if (exists(".nexrall", "settings.json")) {
106847
106847
  let hasHooks = false;
106848
106848
  try {
106849
- const raw = fs9.readFileSync(path6.join(dir, ".nexrall", "settings.json"), "utf-8");
106849
+ const raw = fs9.readFileSync(path7.join(dir, ".nexrall", "settings.json"), "utf-8");
106850
106850
  const obj2 = JSON.parse(raw);
106851
106851
  hasHooks = Boolean(obj2.hooks && typeof obj2.hooks === "object" && Object.keys(obj2.hooks).length > 0);
106852
106852
  } catch {
@@ -117532,11 +117532,11 @@ var require_react_reconciler_development = __commonJS({
117532
117532
  fiber = fiber.next, id--;
117533
117533
  return fiber;
117534
117534
  }
117535
- function copyWithSetImpl(obj2, path6, index, value) {
117536
- if (index >= path6.length)
117535
+ function copyWithSetImpl(obj2, path7, index, value) {
117536
+ if (index >= path7.length)
117537
117537
  return value;
117538
- var key = path6[index], updated = isArrayImpl(obj2) ? obj2.slice() : assign({}, obj2);
117539
- updated[key] = copyWithSetImpl(obj2[key], path6, index + 1, value);
117538
+ var key = path7[index], updated = isArrayImpl(obj2) ? obj2.slice() : assign({}, obj2);
117539
+ updated[key] = copyWithSetImpl(obj2[key], path7, index + 1, value);
117540
117540
  return updated;
117541
117541
  }
117542
117542
  function copyWithRename(obj2, oldPath, newPath) {
@@ -117563,11 +117563,11 @@ var require_react_reconciler_development = __commonJS({
117563
117563
  );
117564
117564
  return updated;
117565
117565
  }
117566
- function copyWithDeleteImpl(obj2, path6, index) {
117567
- var key = path6[index], updated = isArrayImpl(obj2) ? obj2.slice() : assign({}, obj2);
117568
- if (index + 1 === path6.length)
117566
+ function copyWithDeleteImpl(obj2, path7, index) {
117567
+ var key = path7[index], updated = isArrayImpl(obj2) ? obj2.slice() : assign({}, obj2);
117568
+ if (index + 1 === path7.length)
117569
117569
  return isArrayImpl(updated) ? updated.splice(key, 1) : delete updated[key], updated;
117570
- updated[key] = copyWithDeleteImpl(obj2[key], path6, index + 1);
117570
+ updated[key] = copyWithDeleteImpl(obj2[key], path7, index + 1);
117571
117571
  return updated;
117572
117572
  }
117573
117573
  function shouldSuspendImpl() {
@@ -130993,29 +130993,29 @@ var require_react_reconciler_development = __commonJS({
130993
130993
  var didWarnAboutNestedUpdates = false;
130994
130994
  var didWarnAboutFindNodeInStrictMode = {};
130995
130995
  var overrideHookState = null, overrideHookStateDeletePath = null, overrideHookStateRenamePath = null, overrideProps = null, overridePropsDeletePath = null, overridePropsRenamePath = null, scheduleUpdate = null, scheduleRetry = null, setErrorHandler = null, setSuspenseHandler = null;
130996
- overrideHookState = function(fiber, id, path6, value) {
130996
+ overrideHookState = function(fiber, id, path7, value) {
130997
130997
  id = findHook(fiber, id);
130998
- null !== id && (path6 = copyWithSetImpl(id.memoizedState, path6, 0, value), id.memoizedState = path6, id.baseState = path6, fiber.memoizedProps = assign({}, fiber.memoizedProps), path6 = enqueueConcurrentRenderForLane(fiber, 2), null !== path6 && scheduleUpdateOnFiber(path6, fiber, 2));
130998
+ null !== id && (path7 = copyWithSetImpl(id.memoizedState, path7, 0, value), id.memoizedState = path7, id.baseState = path7, fiber.memoizedProps = assign({}, fiber.memoizedProps), path7 = enqueueConcurrentRenderForLane(fiber, 2), null !== path7 && scheduleUpdateOnFiber(path7, fiber, 2));
130999
130999
  };
131000
- overrideHookStateDeletePath = function(fiber, id, path6) {
131000
+ overrideHookStateDeletePath = function(fiber, id, path7) {
131001
131001
  id = findHook(fiber, id);
131002
- null !== id && (path6 = copyWithDeleteImpl(id.memoizedState, path6, 0), id.memoizedState = path6, id.baseState = path6, fiber.memoizedProps = assign({}, fiber.memoizedProps), path6 = enqueueConcurrentRenderForLane(fiber, 2), null !== path6 && scheduleUpdateOnFiber(path6, fiber, 2));
131002
+ null !== id && (path7 = copyWithDeleteImpl(id.memoizedState, path7, 0), id.memoizedState = path7, id.baseState = path7, fiber.memoizedProps = assign({}, fiber.memoizedProps), path7 = enqueueConcurrentRenderForLane(fiber, 2), null !== path7 && scheduleUpdateOnFiber(path7, fiber, 2));
131003
131003
  };
131004
131004
  overrideHookStateRenamePath = function(fiber, id, oldPath, newPath) {
131005
131005
  id = findHook(fiber, id);
131006
131006
  null !== id && (oldPath = copyWithRename(id.memoizedState, oldPath, newPath), id.memoizedState = oldPath, id.baseState = oldPath, fiber.memoizedProps = assign({}, fiber.memoizedProps), oldPath = enqueueConcurrentRenderForLane(fiber, 2), null !== oldPath && scheduleUpdateOnFiber(oldPath, fiber, 2));
131007
131007
  };
131008
- overrideProps = function(fiber, path6, value) {
131009
- fiber.pendingProps = copyWithSetImpl(fiber.memoizedProps, path6, 0, value);
131008
+ overrideProps = function(fiber, path7, value) {
131009
+ fiber.pendingProps = copyWithSetImpl(fiber.memoizedProps, path7, 0, value);
131010
131010
  fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
131011
- path6 = enqueueConcurrentRenderForLane(fiber, 2);
131012
- null !== path6 && scheduleUpdateOnFiber(path6, fiber, 2);
131011
+ path7 = enqueueConcurrentRenderForLane(fiber, 2);
131012
+ null !== path7 && scheduleUpdateOnFiber(path7, fiber, 2);
131013
131013
  };
131014
- overridePropsDeletePath = function(fiber, path6) {
131015
- fiber.pendingProps = copyWithDeleteImpl(fiber.memoizedProps, path6, 0);
131014
+ overridePropsDeletePath = function(fiber, path7) {
131015
+ fiber.pendingProps = copyWithDeleteImpl(fiber.memoizedProps, path7, 0);
131016
131016
  fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
131017
- path6 = enqueueConcurrentRenderForLane(fiber, 2);
131018
- null !== path6 && scheduleUpdateOnFiber(path6, fiber, 2);
131017
+ path7 = enqueueConcurrentRenderForLane(fiber, 2);
131018
+ null !== path7 && scheduleUpdateOnFiber(path7, fiber, 2);
131019
131019
  };
131020
131020
  overridePropsRenamePath = function(fiber, oldPath, newPath) {
131021
131021
  fiber.pendingProps = copyWithRename(
@@ -140752,7 +140752,7 @@ var {
140752
140752
  } = import_index.default;
140753
140753
 
140754
140754
  // src/index.ts
140755
- import * as path5 from "path";
140755
+ import * as path6 from "path";
140756
140756
  import { createRequire as createRequire2 } from "module";
140757
140757
 
140758
140758
  // ../../node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/ansi-styles/index.js
@@ -141377,13 +141377,13 @@ function stopSpinner(handle2) {
141377
141377
 
141378
141378
  // src/commands/chat.ts
141379
141379
  import * as readline3 from "readline";
141380
- import * as path4 from "path";
141380
+ import * as path5 from "path";
141381
141381
  import * as fs8 from "fs";
141382
- import * as os4 from "os";
141382
+ import * as os5 from "os";
141383
141383
  import * as crypto4 from "crypto";
141384
141384
  import { createRequire } from "module";
141385
141385
  import { fileURLToPath as fileURLToPath2 } from "url";
141386
- import { execSync } from "child_process";
141386
+ import { execSync, execFileSync as execFileSync2 } from "child_process";
141387
141387
  var import_code_core3 = __toESM(require_dist3(), 1);
141388
141388
 
141389
141389
  // ../../node_modules/.pnpm/ansi-regex@6.2.2/node_modules/ansi-regex/index.js
@@ -141916,11 +141916,11 @@ Diff.prototype = {
141916
141916
  }
141917
141917
  }
141918
141918
  },
141919
- addToPath: function addToPath(path6, added, removed, oldPosInc) {
141920
- var last = path6.lastComponent;
141919
+ addToPath: function addToPath(path7, added, removed, oldPosInc) {
141920
+ var last = path7.lastComponent;
141921
141921
  if (last && last.added === added && last.removed === removed) {
141922
141922
  return {
141923
- oldPos: path6.oldPos + oldPosInc,
141923
+ oldPos: path7.oldPos + oldPosInc,
141924
141924
  lastComponent: {
141925
141925
  count: last.count + 1,
141926
141926
  added,
@@ -141930,7 +141930,7 @@ Diff.prototype = {
141930
141930
  };
141931
141931
  } else {
141932
141932
  return {
141933
- oldPos: path6.oldPos + oldPosInc,
141933
+ oldPos: path7.oldPos + oldPosInc,
141934
141934
  lastComponent: {
141935
141935
  count: 1,
141936
141936
  added,
@@ -142637,12 +142637,243 @@ function lastSession() {
142637
142637
  return all.length ? all[0] : null;
142638
142638
  }
142639
142639
 
142640
+ // src/terminal/terminalSetup.ts
142641
+ import * as os3 from "os";
142642
+ import * as path2 from "path";
142643
+ var SHIFT_ENTER_SEQUENCE = "\x1B\r";
142644
+ var NATIVE_SHIFT_ENTER = {
142645
+ ghostty: "Ghostty",
142646
+ "iTerm.app": "iTerm2",
142647
+ WezTerm: "WezTerm",
142648
+ WarpTerminal: "Warp"
142649
+ // Kitty sets TERM=xterm-kitty rather than TERM_PROGRAM; handled below.
142650
+ };
142651
+ var EDITOR_TERM_PROGRAMS = {
142652
+ vscode: "VS Code",
142653
+ cursor: "Cursor",
142654
+ windsurf: "Windsurf",
142655
+ vscodium: "VSCodium"
142656
+ };
142657
+ var MACOS_NATIVE_SHIFT_RETURN_MAJOR = 27;
142658
+ function decideTerminalSetup(input) {
142659
+ const termProgram = input.env.TERM_PROGRAM ?? null;
142660
+ const term = input.env.TERM ?? null;
142661
+ if (term && term.includes("kitty"))
142662
+ return { kind: "already-native", terminal: "Kitty" };
142663
+ if (input.env.WT_SESSION)
142664
+ return { kind: "already-native", terminal: "Windows Terminal" };
142665
+ if (termProgram) {
142666
+ const native = NATIVE_SHIFT_ENTER[termProgram];
142667
+ if (native)
142668
+ return { kind: "already-native", terminal: native };
142669
+ const editor = EDITOR_TERM_PROGRAMS[termProgram];
142670
+ if (editor)
142671
+ return { kind: "editor", editor };
142672
+ if (termProgram === "Apple_Terminal") {
142673
+ if (input.macOSMajor !== null && input.macOSMajor >= MACOS_NATIVE_SHIFT_RETURN_MAJOR) {
142674
+ return { kind: "already-native", terminal: "Apple Terminal" };
142675
+ }
142676
+ return { kind: "apple-terminal", macOSMajor: input.macOSMajor };
142677
+ }
142678
+ }
142679
+ if (input.env.VSCODE_PID || input.env.VSCODE_IPC_HOOK || input.env.VSCODE_CWD) {
142680
+ return { kind: "editor", editor: editorFromBundleId(input.env.__CFBundleIdentifier) };
142681
+ }
142682
+ return { kind: "unsupported", terminal: termProgram };
142683
+ }
142684
+ function editorFromBundleId(bundleId) {
142685
+ switch (bundleId) {
142686
+ case "com.todesktop.230313mzl4w4u92":
142687
+ case "com.cursor.Cursor":
142688
+ return "Cursor";
142689
+ case "com.exafunction.windsurf":
142690
+ return "Windsurf";
142691
+ case "com.vscodium":
142692
+ case "com.visualstudio.code.oss":
142693
+ return "VSCodium";
142694
+ default:
142695
+ return "VS Code";
142696
+ }
142697
+ }
142698
+ function detectMacOSMajor(platform3 = process.platform, release3 = os3.release()) {
142699
+ if (platform3 !== "darwin")
142700
+ return null;
142701
+ const darwinMajor = Number.parseInt(release3.split(".")[0] ?? "", 10);
142702
+ if (!Number.isFinite(darwinMajor))
142703
+ return null;
142704
+ return darwinMajor + 1;
142705
+ }
142706
+ var EDITOR_CONFIG_DIR = {
142707
+ "VS Code": "Code",
142708
+ Cursor: "Cursor",
142709
+ Windsurf: "Windsurf",
142710
+ VSCodium: "VSCodium"
142711
+ };
142712
+ function keybindingsPath(editor, platform3 = process.platform, home = os3.homedir()) {
142713
+ const dir = EDITOR_CONFIG_DIR[editor];
142714
+ const userDir = platform3 === "win32" ? path2.join(home, "AppData", "Roaming", dir, "User") : platform3 === "darwin" ? path2.join(home, "Library", "Application Support", dir, "User") : path2.join(home, ".config", dir, "User");
142715
+ return path2.join(userDir, "keybindings.json");
142716
+ }
142717
+ var SHIFT_ENTER_KEYBINDING = {
142718
+ key: "shift+enter",
142719
+ command: "workbench.action.terminal.sendSequence",
142720
+ args: { text: SHIFT_ENTER_SEQUENCE },
142721
+ when: "terminalFocus"
142722
+ };
142723
+ function mergeKeybinding(parsed, binding = SHIFT_ENTER_KEYBINDING) {
142724
+ if (parsed === void 0 || parsed === null)
142725
+ return { kind: "insert", next: [binding] };
142726
+ if (!Array.isArray(parsed))
142727
+ return { kind: "not-an-array" };
142728
+ const existing = parsed.find(
142729
+ (entry) => typeof entry === "object" && entry !== null && entry.key === binding.key && entry.command === binding.command && entry.when === binding.when
142730
+ );
142731
+ if (existing) {
142732
+ if (existing.args?.text === binding.args?.text)
142733
+ return { kind: "already-configured" };
142734
+ return { kind: "conflict", existingText: existing.args?.text };
142735
+ }
142736
+ return { kind: "insert", next: [...parsed, binding] };
142737
+ }
142738
+ function parseKeybindingsFile(body) {
142739
+ const withoutComments = stripJsonComments(body).trim();
142740
+ if (withoutComments === "")
142741
+ return void 0;
142742
+ return JSON.parse(withoutComments);
142743
+ }
142744
+ function stripJsonComments(input) {
142745
+ let out = "";
142746
+ let inString = false;
142747
+ let inLineComment = false;
142748
+ let inBlockComment = false;
142749
+ for (let i2 = 0; i2 < input.length; i2++) {
142750
+ const ch = input[i2];
142751
+ const next = input[i2 + 1];
142752
+ if (inLineComment) {
142753
+ if (ch === "\n") {
142754
+ inLineComment = false;
142755
+ out += ch;
142756
+ }
142757
+ continue;
142758
+ }
142759
+ if (inBlockComment) {
142760
+ if (ch === "*" && next === "/") {
142761
+ inBlockComment = false;
142762
+ i2++;
142763
+ }
142764
+ continue;
142765
+ }
142766
+ if (inString) {
142767
+ out += ch;
142768
+ if (ch === "\\" && next !== void 0) {
142769
+ out += next;
142770
+ i2++;
142771
+ } else if (ch === '"') {
142772
+ inString = false;
142773
+ }
142774
+ continue;
142775
+ }
142776
+ if (ch === '"') {
142777
+ inString = true;
142778
+ out += ch;
142779
+ continue;
142780
+ }
142781
+ if (ch === "/" && next === "/") {
142782
+ inLineComment = true;
142783
+ i2++;
142784
+ continue;
142785
+ }
142786
+ if (ch === "/" && next === "*") {
142787
+ inBlockComment = true;
142788
+ i2++;
142789
+ continue;
142790
+ }
142791
+ out += ch;
142792
+ }
142793
+ return out;
142794
+ }
142795
+ async function installEditorKeybinding(editor, deps) {
142796
+ const filePath = keybindingsPath(editor, deps.platform ?? process.platform, deps.home ?? os3.homedir());
142797
+ let body;
142798
+ try {
142799
+ body = await deps.readFile(filePath);
142800
+ } catch (err) {
142801
+ if (err.code !== "ENOENT") {
142802
+ return { kind: "failed", filePath, reason: describeErr(err) };
142803
+ }
142804
+ }
142805
+ let parsed;
142806
+ try {
142807
+ parsed = body === void 0 ? void 0 : parseKeybindingsFile(body);
142808
+ } catch (err) {
142809
+ return {
142810
+ kind: "failed",
142811
+ filePath,
142812
+ reason: `it isn't valid JSON (${describeErr(err)}) \u2014 fix or move it, then retry`
142813
+ };
142814
+ }
142815
+ const merge = mergeKeybinding(parsed);
142816
+ if (merge.kind === "already-configured")
142817
+ return { kind: "already-configured", filePath };
142818
+ if (merge.kind === "conflict")
142819
+ return { kind: "conflict", filePath, existingText: merge.existingText };
142820
+ if (merge.kind === "not-an-array") {
142821
+ return { kind: "failed", filePath, reason: "it isn't a JSON array \u2014 fix or move it, then retry" };
142822
+ }
142823
+ if (body !== void 0) {
142824
+ try {
142825
+ await deps.copyFile(filePath, `${filePath}.${deps.randomSuffix()}.bak`);
142826
+ } catch (err) {
142827
+ return { kind: "failed", filePath, reason: `couldn't back it up first (${describeErr(err)})` };
142828
+ }
142829
+ }
142830
+ try {
142831
+ await deps.mkdir(path2.dirname(filePath));
142832
+ await deps.writeFile(filePath, `${JSON.stringify(merge.next, null, 2)}
142833
+ `);
142834
+ } catch (err) {
142835
+ return { kind: "failed", filePath, reason: describeErr(err) };
142836
+ }
142837
+ return { kind: "installed", filePath };
142838
+ }
142839
+ function describeErr(err) {
142840
+ return err instanceof Error ? err.message : String(err);
142841
+ }
142842
+ async function enableAppleTerminalOptionAsMeta(deps) {
142843
+ const profiles = [];
142844
+ for (const which of ["Default Window Settings", "Startup Window Settings"]) {
142845
+ const res = await deps.run("defaults", ["read", "com.apple.Terminal", which]);
142846
+ const name = res.stdout.trim();
142847
+ if (res.code === 0 && name && !profiles.includes(name))
142848
+ profiles.push(name);
142849
+ }
142850
+ if (profiles.length === 0) {
142851
+ return { ok: false, profiles: [], reason: "couldn't read Terminal.app's active profile" };
142852
+ }
142853
+ let changed = false;
142854
+ for (const profile of profiles) {
142855
+ const key = `:'Window Settings':'${profile}':useOptionAsMetaKey`;
142856
+ const add = await deps.run("/usr/libexec/PlistBuddy", ["-c", `Add ${key} bool true`, deps.plistPath]);
142857
+ if (add.code === 0) {
142858
+ changed = true;
142859
+ continue;
142860
+ }
142861
+ const set = await deps.run("/usr/libexec/PlistBuddy", ["-c", `Set ${key} true`, deps.plistPath]);
142862
+ if (set.code === 0)
142863
+ changed = true;
142864
+ }
142865
+ if (!changed)
142866
+ return { ok: false, profiles, reason: "PlistBuddy rejected every profile" };
142867
+ await deps.run("killall", ["cfprefsd"]);
142868
+ return { ok: true, profiles };
142869
+ }
142870
+
142640
142871
  // src/commands/update.ts
142641
142872
  import * as fs4 from "fs";
142642
142873
  import * as https2 from "https";
142643
- import * as path2 from "path";
142874
+ import * as path3 from "path";
142644
142875
  import { fileURLToPath } from "url";
142645
- var __dirname = path2.dirname(fileURLToPath(import.meta.url));
142876
+ var __dirname = path3.dirname(fileURLToPath(import.meta.url));
142646
142877
  var NPM_REGISTRY_LATEST = "https://registry.npmjs.org/nexrall-code/latest";
142647
142878
  function get2(url) {
142648
142879
  return new Promise((resolve3, reject) => {
@@ -142662,7 +142893,7 @@ function get2(url) {
142662
142893
  }
142663
142894
  function getCurrentVersion() {
142664
142895
  try {
142665
- const pkg = path2.resolve(__dirname, "../package.json");
142896
+ const pkg = path3.resolve(__dirname, "../package.json");
142666
142897
  return JSON.parse(fs4.readFileSync(pkg, "utf-8")).version ?? "0.0.0";
142667
142898
  } catch {
142668
142899
  return "0.0.0";
@@ -142972,7 +143203,7 @@ function wrapText(text, width) {
142972
143203
 
142973
143204
  // src/trust.ts
142974
143205
  import fs5 from "fs";
142975
- import path3 from "path";
143206
+ import path4 from "path";
142976
143207
  var TRUST_ENV_VAR = "NEXRALL_TRUST_WORKSPACE";
142977
143208
  function trustGrantedByEnv() {
142978
143209
  const v = process.env[TRUST_ENV_VAR];
@@ -142980,7 +143211,7 @@ function trustGrantedByEnv() {
142980
143211
  }
142981
143212
  function declaresPluginSources(dir) {
142982
143213
  try {
142983
- const raw = fs5.readFileSync(path3.join(dir, ".nexrall", "settings.json"), "utf-8");
143214
+ const raw = fs5.readFileSync(path4.join(dir, ".nexrall", "settings.json"), "utf-8");
142984
143215
  const obj2 = JSON.parse(raw);
142985
143216
  const s2 = obj2.pluginSources;
142986
143217
  return Boolean(s2 && typeof s2 === "object" && !Array.isArray(s2) && Object.keys(s2).length > 0);
@@ -142992,7 +143223,7 @@ function detectTrustSignals(dir) {
142992
143223
  const signals = [];
142993
143224
  const exists = (...p) => {
142994
143225
  try {
142995
- return fs5.existsSync(path3.join(dir, ...p));
143226
+ return fs5.existsSync(path4.join(dir, ...p));
142996
143227
  } catch {
142997
143228
  return false;
142998
143229
  }
@@ -143187,7 +143418,7 @@ __export(base_exports, {
143187
143418
  synchronizedOutput: () => synchronizedOutput
143188
143419
  });
143189
143420
  import process3 from "node:process";
143190
- import os3 from "node:os";
143421
+ import os4 from "node:os";
143191
143422
 
143192
143423
  // ../../node_modules/.pnpm/environment@1.1.0/node_modules/environment/index.js
143193
143424
  var isBrowser = globalThis.window?.document !== void 0;
@@ -143286,7 +143517,7 @@ var isOldWindows = () => {
143286
143517
  if (isBrowser || !isWindows2) {
143287
143518
  return false;
143288
143519
  }
143289
- const parts = os3.release().split(".");
143520
+ const parts = os4.release().split(".");
143290
143521
  const major = Number(parts[0]);
143291
143522
  const build = Number(parts[2] ?? 0);
143292
143523
  if (major < 10) {
@@ -149630,8 +149861,8 @@ function Text({ color, backgroundColor, dimColor = false, bold = false, italic =
149630
149861
  }
149631
149862
 
149632
149863
  // ../../node_modules/.pnpm/ink@7.1.1_@types+react@19.2.18_react@19.2.8/node_modules/ink/build/components/ErrorOverview.js
149633
- var cleanupPath = (path6) => {
149634
- return path6?.replace(`file://${cwd()}/`, "");
149864
+ var cleanupPath = (path7) => {
149865
+ return path7?.replace(`file://${cwd()}/`, "");
149635
149866
  };
149636
149867
  var stackUtils = new import_stack_utils.default({
149637
149868
  cwd: cwd(),
@@ -151889,7 +152120,7 @@ function createResizeDebouncer(settleMs, onSettle, deps = defaultDeps) {
151889
152120
  // src/ui/inkTerminal.tsx
151890
152121
  function footerText(info) {
151891
152122
  const modeLabel = info.autoApprove ? "yolo mode on" : info.mode === "plan" ? "plan mode on" : info.mode === "edit" ? "edit mode on" : info.mode === "ask" ? "ask mode on" : "auto mode on";
151892
- return `${modeLabel} \xB7 /help for shortcuts \xB7 /agents for agents`;
152123
+ return `${modeLabel} \xB7 /help for shortcuts \xB7 Ctrl+J for newline`;
151893
152124
  }
151894
152125
  function fillerContent(rows) {
151895
152126
  if (rows <= 0)
@@ -151971,6 +152202,17 @@ function caretPosition(opts) {
151971
152202
  y: opts.inputRowTop + rowsAboveCaretLine + Math.floor(widthBeforeCaret / columns)
151972
152203
  };
151973
152204
  }
152205
+ function decideEnterKey(char, key) {
152206
+ if (char === "\n" && !key.meta && !key.return)
152207
+ return { kind: "newline" };
152208
+ if ((key.return || char === "\r" || char === "\n") && (key.meta || key.shift)) {
152209
+ return { kind: "newline" };
152210
+ }
152211
+ const newlineIdx = char.search(/[\r\n]/);
152212
+ if (key.return || newlineIdx !== -1)
152213
+ return { kind: "submit", splitAt: newlineIdx };
152214
+ return { kind: "text" };
152215
+ }
151974
152216
  var CTRL_C_QUIT_WINDOW_MS = 3e3;
151975
152217
  var CTRL_C_HINT = "Press Ctrl+C again to exit";
151976
152218
  function decideCtrlC(state) {
@@ -152144,15 +152386,15 @@ var App2 = ({ onReady }) => {
152144
152386
  if (key.upArrow || key.downArrow || key.tab) {
152145
152387
  return;
152146
152388
  }
152147
- const newlineIdx = char.search(/[\r\n]/);
152148
- const hasNewline = key.return || newlineIdx !== -1;
152149
- if (hasNewline && key.shift) {
152389
+ const enterAction = decideEnterKey(char, key);
152390
+ if (enterAction.kind === "newline") {
152150
152391
  const pos = cursorRef.current;
152151
152392
  setLine((s2) => s2.slice(0, pos) + "\n" + s2.slice(pos));
152152
152393
  setCursorPos(pos + 1);
152153
152394
  return;
152154
152395
  }
152155
- if (hasNewline) {
152396
+ if (enterAction.kind === "submit") {
152397
+ const newlineIdx = enterAction.splitAt;
152156
152398
  const before = newlineIdx === -1 ? char : char.slice(0, newlineIdx);
152157
152399
  const after = newlineIdx === -1 ? "" : char.slice(newlineIdx + 1).replace(/^[\r\n]/, "");
152158
152400
  const pos = cursorRef.current;
@@ -152422,9 +152664,9 @@ var InkReadlineAdapter = class extends EventEmitter3 {
152422
152664
  // src/commands/chat.ts
152423
152665
  var require2 = createRequire(import.meta.url);
152424
152666
  var CLI_VERSION = (() => {
152425
- let dir = path4.dirname(fileURLToPath2(import.meta.url));
152667
+ let dir = path5.dirname(fileURLToPath2(import.meta.url));
152426
152668
  for (let i2 = 0; i2 < 6; i2++) {
152427
- const candidate = path4.join(dir, "package.json");
152669
+ const candidate = path5.join(dir, "package.json");
152428
152670
  if (fs8.existsSync(candidate)) {
152429
152671
  try {
152430
152672
  const v = require2(candidate).version;
@@ -152433,7 +152675,7 @@ var CLI_VERSION = (() => {
152433
152675
  } catch {
152434
152676
  }
152435
152677
  }
152436
- const parent = path4.dirname(dir);
152678
+ const parent = path5.dirname(dir);
152437
152679
  if (parent === dir)
152438
152680
  break;
152439
152681
  dir = parent;
@@ -152530,7 +152772,7 @@ function printBalanceNotice(balance, zero) {
152530
152772
  }
152531
152773
  function currentUserLabel() {
152532
152774
  try {
152533
- const u = os4.userInfo().username;
152775
+ const u = os5.userInfo().username;
152534
152776
  return u ? u.charAt(0).toUpperCase() + u.slice(1) : "there";
152535
152777
  } catch {
152536
152778
  return "there";
@@ -152539,7 +152781,7 @@ function currentUserLabel() {
152539
152781
  function collectEnv(workDir) {
152540
152782
  return {
152541
152783
  cwd: workDir,
152542
- platform: `${os4.platform()} ${os4.release()}`,
152784
+ platform: `${os5.platform()} ${os5.release()}`,
152543
152785
  shell: process.env.SHELL ?? process.env.ComSpec ?? "unknown",
152544
152786
  date: (/* @__PURE__ */ new Date()).toISOString().slice(0, 10),
152545
152787
  gitBranch: tryExec("git branch --show-current", workDir),
@@ -152566,12 +152808,12 @@ function readNexrallMd(workDir) {
152566
152808
  const memContent = (0, import_code_core3.readAllMemory)(workDir);
152567
152809
  if (memContent)
152568
152810
  parts.push(memContent);
152569
- const globalContent = tryRead(path4.join(os4.homedir(), ".nexrall", "nexrall.md"));
152811
+ const globalContent = tryRead(path5.join(os5.homedir(), ".nexrall", "nexrall.md"));
152570
152812
  if (globalContent)
152571
152813
  parts.push(`[Global instructions]
152572
152814
  ${globalContent}`);
152573
152815
  for (const candidate of NEXRALL_MD_CANDIDATES) {
152574
- const content = tryRead(path4.join(workDir, candidate));
152816
+ const content = tryRead(path5.join(workDir, candidate));
152575
152817
  if (content) {
152576
152818
  parts.push(`[Project instructions \u2014 ${candidate}]
152577
152819
  ${content}`);
@@ -153043,12 +153285,27 @@ function printHelp() {
153043
153285
  ["/mcp", "Show MCP server connection status"],
153044
153286
  ["/agents", "List available sub-agent types (for the task tool)"],
153045
153287
  ["/context", "Show context window usage for this conversation"],
153288
+ ["/terminal-setup", "Configure this terminal so Shift+Enter inserts a newline"],
153046
153289
  ["/update", "Update nex to the latest version"]
153047
153290
  ];
153048
153291
  for (const [cmd, desc] of cmds) {
153049
153292
  console.log(" " + source_default.cyan(cmd.padEnd(35)) + source_default.dim(desc));
153050
153293
  }
153051
153294
  console.log();
153295
+ console.log(source_default.bold(" Keys:"));
153296
+ const keys = [
153297
+ ["Enter", "Send the message"],
153298
+ ["Ctrl+J", "Insert a newline \u2014 works in every terminal, no setup"],
153299
+ ["\\ then Enter", "Continue on the next line"],
153300
+ ["Shift+Enter", "Insert a newline (run /terminal-setup once if it sends instead)"],
153301
+ ["Option+Enter", "Insert a newline (macOS; /terminal-setup enables it)"],
153302
+ ["Ctrl+C", "Stop the current turn, or press twice to exit"],
153303
+ ["\u2190/\u2192", "Move the cursor within the line"]
153304
+ ];
153305
+ for (const [key, desc] of keys) {
153306
+ console.log(" " + source_default.cyan(key.padEnd(35)) + source_default.dim(desc));
153307
+ }
153308
+ console.log();
153052
153309
  }
153053
153310
  function printSessions() {
153054
153311
  const sessions = listSessions().slice(0, 20);
@@ -153440,7 +153697,7 @@ ${text}` : "");
153440
153697
  messages = messages.slice(0, res.messageIndex);
153441
153698
  console.log(source_default.green(` Rewound to #${id}: restored ${res.restored.length} file(s), ${messages.length} messages kept.`));
153442
153699
  for (const p of res.restored)
153443
- console.log(source_default.dim(" \u21A9 " + path4.relative(workDir, p)));
153700
+ console.log(source_default.dim(" \u21A9 " + path5.relative(workDir, p)));
153444
153701
  if (res.bashCount > 0) {
153445
153702
  console.log(source_default.yellow(` \u26A0 ${res.bashCount} shell command(s) ran in the rewound turns \u2014 their side effects were NOT undone.`));
153446
153703
  for (const h2 of res.gitStashHashes) {
@@ -153501,7 +153758,7 @@ ${summaryText}` }] },
153501
153758
  return;
153502
153759
  }
153503
153760
  case "/init": {
153504
- const nexrallMdPath = path4.join(workDir, "nexrall.md");
153761
+ const nexrallMdPath = path5.join(workDir, "nexrall.md");
153505
153762
  if (fs8.existsSync(nexrallMdPath)) {
153506
153763
  const answer = await new Promise((resolve3) => rl.question(source_default.yellow(" nexrall.md already exists. Overwrite? [y/n] "), (a) => resolve3(a.trim())));
153507
153764
  if (answer !== "y" && answer !== "yes") {
@@ -153510,8 +153767,8 @@ ${summaryText}` }] },
153510
153767
  return;
153511
153768
  }
153512
153769
  }
153513
- const readme = tryRead(path4.join(workDir, "README.md"))?.slice(0, 2e3) ?? "";
153514
- const pkgJson = tryRead(path4.join(workDir, "package.json"))?.slice(0, 1e3) ?? "";
153770
+ const readme = tryRead(path5.join(workDir, "README.md"))?.slice(0, 2e3) ?? "";
153771
+ const pkgJson = tryRead(path5.join(workDir, "package.json"))?.slice(0, 1e3) ?? "";
153515
153772
  const dirList = tryExec("ls -la", workDir)?.slice(0, 500) ?? "";
153516
153773
  const initPrompt = `Analyze this project and write a concise nexrall.md (project-specific instructions for an AI coding assistant).
153517
153774
  Include: project overview, tech stack, coding conventions, important files/folders, what to avoid.
@@ -153668,10 +153925,10 @@ ${dirList}`;
153668
153925
  rl.prompt();
153669
153926
  return;
153670
153927
  }
153671
- const filePath = path4.isAbsolute(arg) ? arg : path4.join(workDir, arg);
153928
+ const filePath = path5.isAbsolute(arg) ? arg : path5.join(workDir, arg);
153672
153929
  try {
153673
153930
  const content = fs8.readFileSync(filePath, "utf-8");
153674
- const rel = path4.relative(workDir, filePath);
153931
+ const rel = path5.relative(workDir, filePath);
153675
153932
  messages.push(
153676
153933
  { role: "user", content: [{ type: "text", text: `Content of \`${rel}\`:
153677
153934
  \`\`\`
@@ -153699,8 +153956,8 @@ ${content}
153699
153956
  }
153700
153957
  const [rawPath, ...captionParts] = arg.split(/\s+/);
153701
153958
  const caption = captionParts.join(" ").trim();
153702
- const filePath = path4.isAbsolute(rawPath) ? rawPath : path4.join(workDir, rawPath);
153703
- const ext = path4.extname(filePath).toLowerCase();
153959
+ const filePath = path5.isAbsolute(rawPath) ? rawPath : path5.join(workDir, rawPath);
153960
+ const ext = path5.extname(filePath).toLowerCase();
153704
153961
  const IMAGE_MIME = {
153705
153962
  ".png": "image/png",
153706
153963
  ".jpg": "image/jpeg",
@@ -153730,7 +153987,7 @@ ${content}
153730
153987
  rl.prompt();
153731
153988
  return;
153732
153989
  }
153733
- const rel = path4.relative(workDir, filePath);
153990
+ const rel = path5.relative(workDir, filePath);
153734
153991
  const data = buf.toString("base64");
153735
153992
  const label = caption ? `[Attached: ${rel}]
153736
153993
  ${caption}` : `[Attached: ${rel}]`;
@@ -153830,6 +154087,90 @@ ${text}
153830
154087
  rl.prompt();
153831
154088
  return;
153832
154089
  }
154090
+ case "/terminal-setup": {
154091
+ console.log();
154092
+ console.log(source_default.bold(" Terminal setup \u2014 Shift+Enter for a newline:"));
154093
+ console.log();
154094
+ const target = decideTerminalSetup({
154095
+ env: process.env,
154096
+ platform: process.platform,
154097
+ macOSMajor: detectMacOSMajor()
154098
+ });
154099
+ if (target.kind === "already-native") {
154100
+ console.log(source_default.green(` \u2713 ${target.terminal} already sends Shift+Enter as a newline.`));
154101
+ console.log(source_default.dim(" Nothing to install."));
154102
+ } else if (target.kind === "editor") {
154103
+ const outcome = await installEditorKeybinding(target.editor, {
154104
+ readFile: (p) => fs8.promises.readFile(p, "utf-8"),
154105
+ writeFile: (p, body) => fs8.promises.writeFile(p, body, "utf-8"),
154106
+ copyFile: (from, to) => fs8.promises.copyFile(from, to),
154107
+ mkdir: async (p) => {
154108
+ await fs8.promises.mkdir(p, { recursive: true });
154109
+ },
154110
+ randomSuffix: () => crypto4.randomBytes(4).toString("hex")
154111
+ });
154112
+ switch (outcome.kind) {
154113
+ case "installed":
154114
+ console.log(source_default.green(` \u2713 Installed the ${target.editor} Shift+Enter keybinding.`));
154115
+ console.log(source_default.dim(` ${outcome.filePath}`));
154116
+ console.log(source_default.dim(" Takes effect immediately \u2014 no reload needed."));
154117
+ break;
154118
+ case "already-configured":
154119
+ console.log(source_default.green(` \u2713 ${target.editor} already has this keybinding.`));
154120
+ console.log(source_default.dim(` ${outcome.filePath}`));
154121
+ break;
154122
+ case "conflict":
154123
+ console.log(source_default.yellow(` ! ${target.editor} already binds shift+enter to a different sequence.`));
154124
+ console.log(source_default.dim(` Existing: ${JSON.stringify(outcome.existingText)}`));
154125
+ console.log(source_default.dim(` Left as-is. Change it to ${JSON.stringify(SHIFT_ENTER_SEQUENCE)} to use it here.`));
154126
+ console.log(source_default.dim(` ${outcome.filePath}`));
154127
+ break;
154128
+ case "failed":
154129
+ console.log(source_default.red(` \u2717 Couldn't update ${target.editor}'s keybindings: ${outcome.reason}`));
154130
+ console.log(source_default.dim(` ${outcome.filePath}`));
154131
+ break;
154132
+ }
154133
+ } else if (target.kind === "apple-terminal") {
154134
+ const res = await enableAppleTerminalOptionAsMeta({
154135
+ run: async (cmd2, args) => {
154136
+ try {
154137
+ const stdout = execFileSync2(cmd2, args, { encoding: "utf-8", stdio: ["ignore", "pipe", "ignore"] });
154138
+ return { code: 0, stdout };
154139
+ } catch (err) {
154140
+ const e2 = err;
154141
+ return { code: e2.status ?? 1, stdout: e2.stdout ?? "" };
154142
+ }
154143
+ },
154144
+ plistPath: path5.join(os5.homedir(), "Library", "Preferences", "com.apple.Terminal.plist")
154145
+ });
154146
+ if (res.ok) {
154147
+ console.log(source_default.green(' \u2713 Enabled "Use Option as Meta Key" in Apple Terminal.'));
154148
+ console.log(source_default.dim(` Profiles: ${res.profiles.join(", ")}`));
154149
+ console.log(source_default.dim(" Option+Enter now inserts a newline. Restart Terminal to apply."));
154150
+ console.log(
154151
+ source_default.dim(
154152
+ ` Apple Terminal only gained Shift+Return in macOS ${MACOS_NATIVE_SHIFT_RETURN_MAJOR}; until then Option+Enter is the equivalent.`
154153
+ )
154154
+ );
154155
+ } else {
154156
+ console.log(source_default.red(` \u2717 Couldn't configure Apple Terminal: ${res.reason}`));
154157
+ }
154158
+ } else {
154159
+ console.log(
154160
+ source_default.yellow(
154161
+ ` ! Not sure how to configure this terminal${target.terminal ? ` (${target.terminal})` : ""}.`
154162
+ )
154163
+ );
154164
+ console.log(source_default.dim(" Bind Shift+Enter to send ESC then CR, if your terminal supports it."));
154165
+ }
154166
+ console.log();
154167
+ console.log(source_default.dim(" Works in every terminal, no setup required:"));
154168
+ console.log(source_default.dim(" \u2022 Ctrl+J \u2014 insert a newline"));
154169
+ console.log(source_default.dim(" \u2022 \\ then Enter \u2014 continue on the next line"));
154170
+ console.log();
154171
+ rl.prompt();
154172
+ return;
154173
+ }
153833
154174
  case "/agents": {
153834
154175
  console.log();
153835
154176
  console.log(source_default.bold(" Sub-agent types (used by the `task` tool):"));
@@ -154323,7 +154664,7 @@ program2.option("-p, --pro", "Use Claude Opus 5 (most capable)").option("-t, --t
154323
154664
  process.exit(1);
154324
154665
  }
154325
154666
  const model = options.model ? options.model : options.ultra ? "claude-fable-5" : options.pro ? "claude-opus-5" : options.turbo ? "claude-sonnet-5" : "claude-sonnet-5";
154326
- const workDir = options.dir ? path5.resolve(options.dir) : process.cwd();
154667
+ const workDir = options.dir ? path6.resolve(options.dir) : process.cwd();
154327
154668
  if (options.yolo)
154328
154669
  setAutoApprove("all");
154329
154670
  const resume = options.resume === true ? "last" : typeof options.resume === "string" ? options.resume : void 0;