@sourcegraph/amp 0.0.1749153691-g1c99f8 → 0.0.1749168111-g4b82d4

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 (44) hide show
  1. package/dist/amp.js +3 -3
  2. package/dist/{client-dO78YbLg.js → client-DQvLVO0y.js} +2 -2
  3. package/dist/{client-dO78YbLg.js.map → client-DQvLVO0y.js.map} +1 -1
  4. package/dist/{console-EbqtUVJ9.js → console-B2SF1aqQ.js} +43 -39
  5. package/dist/{console-EbqtUVJ9.js.map → console-B2SF1aqQ.js.map} +1 -1
  6. package/dist/{create_file.node-BpunqjQ6.js → create_file.node-CTYL8XSm.js} +2 -2
  7. package/dist/{create_file.node-BpunqjQ6.js.map → create_file.node-CTYL8XSm.js.map} +1 -1
  8. package/dist/{edit_file.node-oKoJ5BpY.js → edit_file.node-Bsj3aCak.js} +3 -3
  9. package/dist/{edit_file.node-oKoJ5BpY.js.map → edit_file.node-Bsj3aCak.js.map} +1 -1
  10. package/dist/{executable-CKMskaIA.js → executable-DdVPivLU.js} +2 -2
  11. package/dist/{executable-CKMskaIA.js.map → executable-DdVPivLU.js.map} +1 -1
  12. package/dist/{files-D78rHDQ4.js → files-DgmPJSHS.js} +2 -2
  13. package/dist/{files-D78rHDQ4.js.map → files-DgmPJSHS.js.map} +1 -1
  14. package/dist/{glob.node-BpueriDu.js → glob.node-CvxhbXXV.js} +4 -4
  15. package/dist/{glob.node-BpueriDu.js.map → glob.node-CvxhbXXV.js.map} +1 -1
  16. package/dist/{index-Dvd3Q7dO.js → index-DG5uxXfG.js} +2 -2
  17. package/dist/{index-Dvd3Q7dO.js.map → index-DG5uxXfG.js.map} +1 -1
  18. package/dist/{list_directory.node-s3KvW0rS.js → list_directory.node-D7kWIPfS.js} +2 -2
  19. package/dist/{list_directory.node-s3KvW0rS.js.map → list_directory.node-D7kWIPfS.js.map} +1 -1
  20. package/dist/{load-profile-DJQRaG_k.js → load-profile-DD55GCpN.js} +2 -2
  21. package/dist/{load-profile-DJQRaG_k.js.map → load-profile-DD55GCpN.js.map} +1 -1
  22. package/dist/{main-DhAGJJRG.js → main-B2k3Zpl9.js} +21 -16
  23. package/dist/main-B2k3Zpl9.js.map +1 -0
  24. package/dist/{node-D7VCphID.js → node-BHadfrnF.js} +2 -2
  25. package/dist/{node-D7VCphID.js.map → node-BHadfrnF.js.map} +1 -1
  26. package/dist/{node-D3CcwlrL.js → node-BcF9KV_p.js} +3 -3
  27. package/dist/{node-D3CcwlrL.js.map → node-BcF9KV_p.js.map} +1 -1
  28. package/dist/{node-C3AfReqE.js → node-CBGz4YST.js} +4 -4
  29. package/dist/{node-C3AfReqE.js.map → node-CBGz4YST.js.map} +1 -1
  30. package/dist/{node-DrdEtfaD.js → node-CDbBRzSe.js} +3 -3
  31. package/dist/{node-DrdEtfaD.js.map → node-CDbBRzSe.js.map} +1 -1
  32. package/dist/{node-CPIVh6Ki.js → node-CmvXwfyv.js} +3 -3
  33. package/dist/{node-CPIVh6Ki.js.map → node-CmvXwfyv.js.map} +1 -1
  34. package/dist/{node-oFExutic.js → node-DExO0xPV.js} +2 -2
  35. package/dist/{node-oFExutic.js.map → node-DExO0xPV.js.map} +1 -1
  36. package/dist/{read_file.node-DlqCZQPO.js → read_file.node-CpfHdJYY.js} +2 -2
  37. package/dist/{read_file.node-DlqCZQPO.js.map → read_file.node-CpfHdJYY.js.map} +1 -1
  38. package/dist/{stdio-CVzWTt_v.js → stdio-BBqbZueR.js} +3 -3
  39. package/dist/{stdio-CVzWTt_v.js.map → stdio-BBqbZueR.js.map} +1 -1
  40. package/dist/storybook.js +1 -1
  41. package/dist/{undo_edit.node-sSSReN3p.js → undo_edit.node-DDFebFdr.js} +2 -2
  42. package/dist/{undo_edit.node-sSSReN3p.js.map → undo_edit.node-DDFebFdr.js.map} +1 -1
  43. package/package.json +1 -1
  44. package/dist/main-DhAGJJRG.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
- import { i as a, F as c, f as i } from "./client-dO78YbLg.js";
3
- import { p as m, aR as l } from "./console-EbqtUVJ9.js";
2
+ import { i as a, F as c, f as i } from "./client-DQvLVO0y.js";
3
+ import { p as m, aR as l } from "./console-B2SF1aqQ.js";
4
4
  const h = ({ args: e }, { threadID: o }) => m(async (s) => {
5
5
  try {
6
6
  const r = await a.webSearch(
@@ -40,4 +40,4 @@ const h = ({ args: e }, { threadID: o }) => m(async (s) => {
40
40
  export {
41
41
  h as nodeWebSearchTool
42
42
  };
43
- //# sourceMappingURL=node-D3CcwlrL.js.map
43
+ //# sourceMappingURL=node-BcF9KV_p.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-D3CcwlrL.js","sources":["../../core/src/tools/builtin/web_search/node.ts"],"sourcesContent":["import { promiseFactoryToObservable } from '@sourcegraph/observable'\nimport { fetchFromAmpServer } from '../../../server-api/client'\nimport { HEADER_KEY_THREAD_ID } from '../../../server-api/headers'\nimport {\n\tFALLBACK_TO_OLD_INTERNAL_API,\n\tinternalAPIClient,\n} from '../../../server-api/internal-api-client'\nimport type { webSearchToolReg } from './common'\n\nexport const nodeWebSearchTool: NonNullable<(typeof webSearchToolReg)['fn']> = (\n\t{ args },\n\t{ threadID },\n) => {\n\treturn promiseFactoryToObservable(async (signal) => {\n\t\ttry {\n\t\t\tconst resp = await internalAPIClient.webSearch(\n\t\t\t\t{\n\t\t\t\t\tquery: args.query,\n\t\t\t\t\tnumResults: args.num_results || 5,\n\t\t\t\t\tthread: threadID,\n\t\t\t\t},\n\t\t\t\t{ signal },\n\t\t\t)\n\t\t\tif (!resp.ok) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Failed to perform web search: ${resp.error.message || 'Unknown error'}`,\n\t\t\t\t)\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tstatus: 'done' as const,\n\t\t\t\tresult: resp.result,\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tif (FALLBACK_TO_OLD_INTERNAL_API) {\n\t\t\t\t// Fallback to old API\n\t\t\t\tconst url = `/api/web-search?query=${encodeURIComponent(args.query)}&numResults=${args.num_results || 5}`\n\t\t\t\tconst response = await fetchFromAmpServer(url, {\n\t\t\t\t\tmethod: 'GET',\n\t\t\t\t\tsignal,\n\t\t\t\t\theaders: threadID ? { [HEADER_KEY_THREAD_ID]: threadID } : undefined,\n\t\t\t\t})\n\n\t\t\t\tif (!response.ok) {\n\t\t\t\t\tconst errorText = await response.text()\n\t\t\t\t\tthrow new Error(`Server returned ${response.status}: ${errorText}`)\n\t\t\t\t}\n\n\t\t\t\tconst results = await response.json()\n\t\t\t\treturn {\n\t\t\t\t\tstatus: 'done' as const,\n\t\t\t\t\tresult: results,\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthrow error\n\t\t\t}\n\t\t}\n\t})\n}\n"],"names":["nodeWebSearchTool","args","threadID","promiseFactoryToObservable","signal","resp","internalAPIClient","FALLBACK_TO_OLD_INTERNAL_API","url","response","fetchFromAmpServer","HEADER_KEY_THREAD_ID","errorText"],"mappings":";;;AASO,MAAMA,IAAkE,CAC9E,EAAE,MAAAC,KACF,EAAE,UAAAC,QAEKC,EAA2B,OAAOC,MAAW;AAC/C,MAAA;AACG,UAAAC,IAAO,MAAMC,EAAkB;AAAA,MACpC;AAAA,QACC,OAAOL,EAAK;AAAA,QACZ,YAAYA,EAAK,eAAe;AAAA,QAChC,QAAQC;AAAA,MACT;AAAA,MACA,EAAE,QAAAE,EAAO;AAAA,IACV;AACI,QAAA,CAACC,EAAK;AACT,YAAM,IAAI;AAAA,QACT,iCAAiCA,EAAK,MAAM,WAAW,eAAe;AAAA,MACvE;AAGM,WAAA;AAAA,MACN,QAAQ;AAAA,MACR,QAAQA,EAAK;AAAA,IACd;AAAA,UACe;AACf,QAAIE,GAA8B;AAE3B,YAAAC,IAAM,yBAAyB,mBAAmBP,EAAK,KAAK,CAAC,eAAeA,EAAK,eAAe,CAAC,IACjGQ,IAAW,MAAMC,EAAmBF,GAAK;AAAA,QAC9C,QAAQ;AAAA,QACR,QAAAJ;AAAA,QACA,SAASF,IAAW,EAAE,CAACS,CAAoB,GAAGT,EAAa,IAAA;AAAA,MAAA,CAC3D;AAEG,UAAA,CAACO,EAAS,IAAI;AACX,cAAAG,IAAY,MAAMH,EAAS,KAAK;AACtC,cAAM,IAAI,MAAM,mBAAmBA,EAAS,MAAM,KAAKG,CAAS,EAAE;AAAA,MAAA;AAI5D,aAAA;AAAA,QACN,QAAQ;AAAA,QACR,QAHe,MAAMH,EAAS,KAAK;AAAA,MAIpC;AAAA,IAAA;AAAA,EAGD;AACD,CACA;"}
1
+ {"version":3,"file":"node-BcF9KV_p.js","sources":["../../core/src/tools/builtin/web_search/node.ts"],"sourcesContent":["import { promiseFactoryToObservable } from '@sourcegraph/observable'\nimport { fetchFromAmpServer } from '../../../server-api/client'\nimport { HEADER_KEY_THREAD_ID } from '../../../server-api/headers'\nimport {\n\tFALLBACK_TO_OLD_INTERNAL_API,\n\tinternalAPIClient,\n} from '../../../server-api/internal-api-client'\nimport type { webSearchToolReg } from './common'\n\nexport const nodeWebSearchTool: NonNullable<(typeof webSearchToolReg)['fn']> = (\n\t{ args },\n\t{ threadID },\n) => {\n\treturn promiseFactoryToObservable(async (signal) => {\n\t\ttry {\n\t\t\tconst resp = await internalAPIClient.webSearch(\n\t\t\t\t{\n\t\t\t\t\tquery: args.query,\n\t\t\t\t\tnumResults: args.num_results || 5,\n\t\t\t\t\tthread: threadID,\n\t\t\t\t},\n\t\t\t\t{ signal },\n\t\t\t)\n\t\t\tif (!resp.ok) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Failed to perform web search: ${resp.error.message || 'Unknown error'}`,\n\t\t\t\t)\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tstatus: 'done' as const,\n\t\t\t\tresult: resp.result,\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tif (FALLBACK_TO_OLD_INTERNAL_API) {\n\t\t\t\t// Fallback to old API\n\t\t\t\tconst url = `/api/web-search?query=${encodeURIComponent(args.query)}&numResults=${args.num_results || 5}`\n\t\t\t\tconst response = await fetchFromAmpServer(url, {\n\t\t\t\t\tmethod: 'GET',\n\t\t\t\t\tsignal,\n\t\t\t\t\theaders: threadID ? { [HEADER_KEY_THREAD_ID]: threadID } : undefined,\n\t\t\t\t})\n\n\t\t\t\tif (!response.ok) {\n\t\t\t\t\tconst errorText = await response.text()\n\t\t\t\t\tthrow new Error(`Server returned ${response.status}: ${errorText}`)\n\t\t\t\t}\n\n\t\t\t\tconst results = await response.json()\n\t\t\t\treturn {\n\t\t\t\t\tstatus: 'done' as const,\n\t\t\t\t\tresult: results,\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthrow error\n\t\t\t}\n\t\t}\n\t})\n}\n"],"names":["nodeWebSearchTool","args","threadID","promiseFactoryToObservable","signal","resp","internalAPIClient","FALLBACK_TO_OLD_INTERNAL_API","url","response","fetchFromAmpServer","HEADER_KEY_THREAD_ID","errorText"],"mappings":";;;AASO,MAAMA,IAAkE,CAC9E,EAAE,MAAAC,KACF,EAAE,UAAAC,QAEKC,EAA2B,OAAOC,MAAW;AAC/C,MAAA;AACG,UAAAC,IAAO,MAAMC,EAAkB;AAAA,MACpC;AAAA,QACC,OAAOL,EAAK;AAAA,QACZ,YAAYA,EAAK,eAAe;AAAA,QAChC,QAAQC;AAAA,MACT;AAAA,MACA,EAAE,QAAAE,EAAO;AAAA,IACV;AACI,QAAA,CAACC,EAAK;AACT,YAAM,IAAI;AAAA,QACT,iCAAiCA,EAAK,MAAM,WAAW,eAAe;AAAA,MACvE;AAGM,WAAA;AAAA,MACN,QAAQ;AAAA,MACR,QAAQA,EAAK;AAAA,IACd;AAAA,UACe;AACf,QAAIE,GAA8B;AAE3B,YAAAC,IAAM,yBAAyB,mBAAmBP,EAAK,KAAK,CAAC,eAAeA,EAAK,eAAe,CAAC,IACjGQ,IAAW,MAAMC,EAAmBF,GAAK;AAAA,QAC9C,QAAQ;AAAA,QACR,QAAAJ;AAAA,QACA,SAASF,IAAW,EAAE,CAACS,CAAoB,GAAGT,EAAa,IAAA;AAAA,MAAA,CAC3D;AAEG,UAAA,CAACO,EAAS,IAAI;AACX,cAAAG,IAAY,MAAMH,EAAS,KAAK;AACtC,cAAM,IAAI,MAAM,mBAAmBA,EAAS,MAAM,KAAKG,CAAS,EAAE;AAAA,MAAA;AAI5D,aAAA;AAAA,QACN,QAAQ;AAAA,QACR,QAHe,MAAMH,EAAS,KAAK;AAAA,MAIpC;AAAA,IAAA;AAAA,EAGD;AACD,CACA;"}
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
- import { p as f } from "./index-Dvd3Q7dO.js";
3
- import { aC as m, g, m as c, aN as h, aO as d, aP as b, aQ as E, c as S, O as _ } from "./console-EbqtUVJ9.js";
4
- import { r as v } from "./executable-CKMskaIA.js";
2
+ import { p as f } from "./index-DG5uxXfG.js";
3
+ import { aC as m, g, m as c, aN as h, aO as d, aP as b, aQ as E, c as S, O as _ } from "./console-B2SF1aqQ.js";
4
+ import { r as v } from "./executable-DdVPivLU.js";
5
5
  const O = ({ args: a }, { dirs: s }) => {
6
6
  for (const e of s)
7
7
  m(e);
@@ -82,4 +82,4 @@ export {
82
82
  O as nodeGrepTool,
83
83
  P as ripgrepFiles
84
84
  };
85
- //# sourceMappingURL=node-C3AfReqE.js.map
85
+ //# sourceMappingURL=node-CBGz4YST.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-C3AfReqE.js","sources":["../../core/src/tools/builtin/grep/node.ts"],"sourcesContent":["import { catchError, combineLatest, map, Observable } from '@sourcegraph/observable'\nimport pm from 'picomatch'\nimport type { ToolRun } from '../../tool-service'\nimport { checkArgSafety, checkDirURIIsFile, spawnAndObserveChildProcess } from '../node-helpers'\nimport type { GrepToolArgs } from './common'\nimport {\n\tGREP_MAX_COLUMN_LENGTH,\n\tGREP_MAX_RESULTS_PER_FILE,\n\ttype GrepToolDef,\n\ttype grepToolReg,\n} from './common'\nimport { ripgrepExecutable } from './executable'\n\nexport const nodeGrepTool: NonNullable<(typeof grepToolReg)['fn']> = ({ args }, { dirs }) => {\n\tfor (const dir of dirs) {\n\t\tcheckDirURIIsFile(dir)\n\t}\n\treturn combineLatest(...dirs.map((dir) => ripgrepFiles(dir.fsPath, args))).pipe(\n\t\tmap<ToolRun<GrepToolDef>[], ToolRun<GrepToolDef>>((results) => {\n\t\t\tconst progress: string[] = []\n\t\t\tfor (const result of results) {\n\t\t\t\tif (result.status === 'in-progress') {\n\t\t\t\t\tprogress.push(...(result?.progress ?? []))\n\t\t\t\t} else if (result.status === 'done') {\n\t\t\t\t\tprogress.push(...result.result)\n\t\t\t\t} else if (result.status === 'cancelled') {\n\t\t\t\t\tprogress.push(...(result.progress ?? []))\n\t\t\t\t} else if (result.status === 'error') {\n\t\t\t\t\tprogress.push(...(result.progress ?? []))\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst errors = results.filter((result) => result.status === 'error')\n\t\t\tif (errors.length > 0) {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: 'error',\n\t\t\t\t\tprogress,\n\t\t\t\t\terror: {\n\t\t\t\t\t\tmessage: errors\n\t\t\t\t\t\t\t.map<string>((error) => error?.error?.message ?? '')\n\t\t\t\t\t\t\t.join('\\n'),\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst status = results.every((result) => result.status === 'done')\n\t\t\t\t? 'done'\n\t\t\t\t: results.some((result) => result.status === 'cancelled')\n\t\t\t\t\t? 'cancelled'\n\t\t\t\t\t: 'in-progress'\n\t\t\treturn {\n\t\t\t\tstatus,\n\t\t\t\tprogress,\n\t\t\t\tresult: progress,\n\t\t\t}\n\t\t}),\n\t)\n}\n\nexport function ripgrepFiles(dir: string, args: GrepToolArgs): Observable<ToolRun<GrepToolDef>> {\n\tconst ripgrepArgs: string[] = [\n\t\t'--with-filename',\n\t\t'--line-number',\n\t\t'--no-heading',\n\t\t'--no-require-git',\n\t\t'--max-columns',\n\t\tGREP_MAX_COLUMN_LENGTH.toString(),\n\t\t'--trim',\n\t\t'--max-count',\n\t\tGREP_MAX_RESULTS_PER_FILE.toString(),\n\t]\n\tif (!args.caseSensitive) {\n\t\tripgrepArgs.push('-i')\n\t}\n\tripgrepArgs.push('--regexp', args.pattern)\n\tif (args.path) {\n\t\tcheckArgSafety(args.path)\n\t\tripgrepArgs.push(args.path)\n\t}\n\n\t// Interpret the `glob` property in TypeScript instead of using the ripgrep\n\t// option `--glob` because using `--glob` disables the built-in gitignore\n\t// feature. We do the same thing in the Glob tool.\n\tconst matchesGlobPattern = args?.glob\n\t\t? pm(args.glob, { nocase: !args.caseSensitive, dot: true })\n\t\t: undefined\n\n\treturn spawnAndObserveChildProcess(ripgrepExecutable(), ripgrepArgs, {\n\t\tcwd: dir,\n\t\tstdio: ['ignore', 'pipe', 'pipe'],\n\t}).pipe(\n\t\tmap(({ stdout, stderr: _stderr, exitCode, exited }): ToolRun<GrepToolDef> => {\n\t\t\tconst matches = stdout\n\t\t\t\t.trim()\n\t\t\t\t.split('\\n')\n\t\t\t\t.filter((line) => {\n\t\t\t\t\tif (line.length === 0) {\n\t\t\t\t\t\treturn false\n\t\t\t\t\t}\n\t\t\t\t\tif (matchesGlobPattern) {\n\t\t\t\t\t\tconst [filename] = line.split(':', 1)\n\t\t\t\t\t\tif (filename && !matchesGlobPattern(filename)) {\n\t\t\t\t\t\t\treturn false\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn true\n\t\t\t\t})\n\n\t\t\tif (!exited) {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: 'in-progress',\n\t\t\t\t\tprogress: matches,\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// ripgrep exit code 1 means \"no matches found\"\n\t\t\tif (exited && exitCode && exitCode >= 2) {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: 'error',\n\t\t\t\t\tprogress: matches,\n\t\t\t\t\terror: { message: `ripgrep exited with code ${exitCode}` },\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tstatus: 'done',\n\t\t\t\tprogress: matches,\n\t\t\t\tresult: matches,\n\t\t\t}\n\t\t}),\n\t\tcatchError((error) =>\n\t\t\tObservable.of({\n\t\t\t\tstatus: 'error',\n\t\t\t\tprogress: [],\n\t\t\t\terror: { message: String(error) },\n\t\t\t}),\n\t\t),\n\t)\n}\n"],"names":["nodeGrepTool","args","dirs","dir","checkDirURIIsFile","combineLatest","ripgrepFiles","map","results","progress","result","errors","error","ripgrepArgs","GREP_MAX_COLUMN_LENGTH","GREP_MAX_RESULTS_PER_FILE","checkArgSafety","matchesGlobPattern","pm","spawnAndObserveChildProcess","ripgrepExecutable","stdout","_stderr","exitCode","exited","matches","line","filename","catchError","Observable"],"mappings":"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"}
1
+ {"version":3,"file":"node-CBGz4YST.js","sources":["../../core/src/tools/builtin/grep/node.ts"],"sourcesContent":["import { catchError, combineLatest, map, Observable } from '@sourcegraph/observable'\nimport pm from 'picomatch'\nimport type { ToolRun } from '../../tool-service'\nimport { checkArgSafety, checkDirURIIsFile, spawnAndObserveChildProcess } from '../node-helpers'\nimport type { GrepToolArgs } from './common'\nimport {\n\tGREP_MAX_COLUMN_LENGTH,\n\tGREP_MAX_RESULTS_PER_FILE,\n\ttype GrepToolDef,\n\ttype grepToolReg,\n} from './common'\nimport { ripgrepExecutable } from './executable'\n\nexport const nodeGrepTool: NonNullable<(typeof grepToolReg)['fn']> = ({ args }, { dirs }) => {\n\tfor (const dir of dirs) {\n\t\tcheckDirURIIsFile(dir)\n\t}\n\treturn combineLatest(...dirs.map((dir) => ripgrepFiles(dir.fsPath, args))).pipe(\n\t\tmap<ToolRun<GrepToolDef>[], ToolRun<GrepToolDef>>((results) => {\n\t\t\tconst progress: string[] = []\n\t\t\tfor (const result of results) {\n\t\t\t\tif (result.status === 'in-progress') {\n\t\t\t\t\tprogress.push(...(result?.progress ?? []))\n\t\t\t\t} else if (result.status === 'done') {\n\t\t\t\t\tprogress.push(...result.result)\n\t\t\t\t} else if (result.status === 'cancelled') {\n\t\t\t\t\tprogress.push(...(result.progress ?? []))\n\t\t\t\t} else if (result.status === 'error') {\n\t\t\t\t\tprogress.push(...(result.progress ?? []))\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst errors = results.filter((result) => result.status === 'error')\n\t\t\tif (errors.length > 0) {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: 'error',\n\t\t\t\t\tprogress,\n\t\t\t\t\terror: {\n\t\t\t\t\t\tmessage: errors\n\t\t\t\t\t\t\t.map<string>((error) => error?.error?.message ?? '')\n\t\t\t\t\t\t\t.join('\\n'),\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst status = results.every((result) => result.status === 'done')\n\t\t\t\t? 'done'\n\t\t\t\t: results.some((result) => result.status === 'cancelled')\n\t\t\t\t\t? 'cancelled'\n\t\t\t\t\t: 'in-progress'\n\t\t\treturn {\n\t\t\t\tstatus,\n\t\t\t\tprogress,\n\t\t\t\tresult: progress,\n\t\t\t}\n\t\t}),\n\t)\n}\n\nexport function ripgrepFiles(dir: string, args: GrepToolArgs): Observable<ToolRun<GrepToolDef>> {\n\tconst ripgrepArgs: string[] = [\n\t\t'--with-filename',\n\t\t'--line-number',\n\t\t'--no-heading',\n\t\t'--no-require-git',\n\t\t'--max-columns',\n\t\tGREP_MAX_COLUMN_LENGTH.toString(),\n\t\t'--trim',\n\t\t'--max-count',\n\t\tGREP_MAX_RESULTS_PER_FILE.toString(),\n\t]\n\tif (!args.caseSensitive) {\n\t\tripgrepArgs.push('-i')\n\t}\n\tripgrepArgs.push('--regexp', args.pattern)\n\tif (args.path) {\n\t\tcheckArgSafety(args.path)\n\t\tripgrepArgs.push(args.path)\n\t}\n\n\t// Interpret the `glob` property in TypeScript instead of using the ripgrep\n\t// option `--glob` because using `--glob` disables the built-in gitignore\n\t// feature. We do the same thing in the Glob tool.\n\tconst matchesGlobPattern = args?.glob\n\t\t? pm(args.glob, { nocase: !args.caseSensitive, dot: true })\n\t\t: undefined\n\n\treturn spawnAndObserveChildProcess(ripgrepExecutable(), ripgrepArgs, {\n\t\tcwd: dir,\n\t\tstdio: ['ignore', 'pipe', 'pipe'],\n\t}).pipe(\n\t\tmap(({ stdout, stderr: _stderr, exitCode, exited }): ToolRun<GrepToolDef> => {\n\t\t\tconst matches = stdout\n\t\t\t\t.trim()\n\t\t\t\t.split('\\n')\n\t\t\t\t.filter((line) => {\n\t\t\t\t\tif (line.length === 0) {\n\t\t\t\t\t\treturn false\n\t\t\t\t\t}\n\t\t\t\t\tif (matchesGlobPattern) {\n\t\t\t\t\t\tconst [filename] = line.split(':', 1)\n\t\t\t\t\t\tif (filename && !matchesGlobPattern(filename)) {\n\t\t\t\t\t\t\treturn false\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn true\n\t\t\t\t})\n\n\t\t\tif (!exited) {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: 'in-progress',\n\t\t\t\t\tprogress: matches,\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// ripgrep exit code 1 means \"no matches found\"\n\t\t\tif (exited && exitCode && exitCode >= 2) {\n\t\t\t\treturn {\n\t\t\t\t\tstatus: 'error',\n\t\t\t\t\tprogress: matches,\n\t\t\t\t\terror: { message: `ripgrep exited with code ${exitCode}` },\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tstatus: 'done',\n\t\t\t\tprogress: matches,\n\t\t\t\tresult: matches,\n\t\t\t}\n\t\t}),\n\t\tcatchError((error) =>\n\t\t\tObservable.of({\n\t\t\t\tstatus: 'error',\n\t\t\t\tprogress: [],\n\t\t\t\terror: { message: String(error) },\n\t\t\t}),\n\t\t),\n\t)\n}\n"],"names":["nodeGrepTool","args","dirs","dir","checkDirURIIsFile","combineLatest","ripgrepFiles","map","results","progress","result","errors","error","ripgrepArgs","GREP_MAX_COLUMN_LENGTH","GREP_MAX_RESULTS_PER_FILE","checkArgSafety","matchesGlobPattern","pm","spawnAndObserveChildProcess","ripgrepExecutable","stdout","_stderr","exitCode","exited","matches","line","filename","catchError","Observable"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import * as ce from "node:os";
3
3
  import ee, { resolve as ue } from "node:path";
4
- import { aT as fe, aU as de, C as _e, aV as ne, aW as pe, aX as ge, aI as ae, aQ as ve, aH as me, aC as be, O as se } from "./console-EbqtUVJ9.js";
5
- import { loadProfileEnvironmentVariables as Se } from "./load-profile-DJQRaG_k.js";
4
+ import { aT as fe, aU as de, C as _e, aV as ne, aW as pe, aX as ge, aI as ae, aQ as ve, aH as me, aC as be, O as se } from "./console-B2SF1aqQ.js";
5
+ import { loadProfileEnvironmentVariables as Se } from "./load-profile-DD55GCpN.js";
6
6
  const Ce = [
7
7
  "ls",
8
8
  "dir",
@@ -3769,4 +3769,4 @@ function Me(x) {
3769
3769
  export {
3770
3770
  We as nodeBashTool
3771
3771
  };
3772
- //# sourceMappingURL=node-DrdEtfaD.js.map
3772
+ //# sourceMappingURL=node-CDbBRzSe.js.map