@mesadev/sdk 0.48.0 → 0.48.1

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.
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Translate a grep pattern into the regex dialect the search endpoint speaks.
3
+ *
4
+ * The dialect being matched is the one the sandbox's own grep implements,
5
+ * which compiles a Basic Regular Expression into RE2 syntax with a small state
6
+ * machine. Every rule here mirrors that machine rather than POSIX, so a served
7
+ * search selects the same lines the built-in would have.
8
+ *
9
+ * Anything that cannot be expressed returns `null`, and the caller falls back
10
+ * to the built-in rather than approximating.
11
+ */
12
+ /**
13
+ * Rewrite a Basic Regular Expression as a Rust regex.
14
+ *
15
+ * Returns `null` for anything with no equivalent: a backreference, an
16
+ * unterminated bracket, or a trailing backslash.
17
+ */
18
+ export declare function breToRustRegex(pattern: string): string | null;
19
+ /**
20
+ * Rewrite an Extended Regular Expression as a Rust regex.
21
+ *
22
+ * The two dialects agree on structure, so the pattern passes through almost
23
+ * unchanged. Only the escapes need attention: a backreference cannot be
24
+ * expressed at all, and `\<` and `\>` are literal angle brackets here but word
25
+ * boundaries in Rust's regex.
26
+ */
27
+ export declare function ereToRustRegex(pattern: string): string | null;
28
+ //# sourceMappingURL=grep-pattern.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grep-pattern.d.ts","sourceRoot":"","sources":["../../src/fs/grep-pattern.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAsDH;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAsE7D;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmB7D"}
@@ -0,0 +1,172 @@
1
+ /**
2
+ * Translate a grep pattern into the regex dialect the search endpoint speaks.
3
+ *
4
+ * The dialect being matched is the one the sandbox's own grep implements,
5
+ * which compiles a Basic Regular Expression into RE2 syntax with a small state
6
+ * machine. Every rule here mirrors that machine rather than POSIX, so a served
7
+ * search selects the same lines the built-in would have.
8
+ *
9
+ * Anything that cannot be expressed returns `null`, and the caller falls back
10
+ * to the built-in rather than approximating.
11
+ */
12
+ /** Characters that are literal in a BRE but syntax in Rust's regex. */
13
+ const LITERAL_UNESCAPED = new Set(['+', '?', '(', ')', '{', '}', '|']);
14
+ /**
15
+ * Escapes that mean a literal character here and a word boundary in Rust's
16
+ * regex. Left alone they would silently match somewhere else.
17
+ */
18
+ const LITERAL_WHEN_ESCAPED = new Set(['<', '>']);
19
+ /**
20
+ * Copy a bracket expression, or return `null` if it never closes.
21
+ *
22
+ * `[...]` means the same thing in both dialects, including POSIX classes like
23
+ * `[:alpha:]`. Two spellings need attention: a leading `!` negates like `^`,
24
+ * and a leading `]` is a literal member rather than the close.
25
+ */
26
+ function readBracket(pattern, start) {
27
+ let index = start + 1;
28
+ let text = '[';
29
+ if (pattern[index] === '^' || pattern[index] === '!') {
30
+ text += '^';
31
+ index += 1;
32
+ }
33
+ if (pattern[index] === ']') {
34
+ text += '\\]';
35
+ index += 1;
36
+ }
37
+ while (index < pattern.length) {
38
+ const char = pattern[index];
39
+ if (char === ']') {
40
+ return { text: `${text}]`, next: index + 1 };
41
+ }
42
+ if (char === '[' && pattern[index + 1] === ':') {
43
+ const close = pattern.indexOf(':]', index);
44
+ if (close === -1)
45
+ return null;
46
+ text += pattern.slice(index, close + 2);
47
+ index = close + 2;
48
+ continue;
49
+ }
50
+ if (char === '\\' && index + 1 < pattern.length) {
51
+ text += pattern.slice(index, index + 2);
52
+ index += 2;
53
+ continue;
54
+ }
55
+ text += char;
56
+ index += 1;
57
+ }
58
+ // The built-in rejects an unterminated bracket outright; falling back lets
59
+ // it produce that error itself.
60
+ return null;
61
+ }
62
+ /**
63
+ * Rewrite a Basic Regular Expression as a Rust regex.
64
+ *
65
+ * Returns `null` for anything with no equivalent: a backreference, an
66
+ * unterminated bracket, or a trailing backslash.
67
+ */
68
+ export function breToRustRegex(pattern) {
69
+ let out = '';
70
+ let index = 0;
71
+ // `*` is a quantifier only after something to repeat. At the start of the
72
+ // pattern, after `\(` or `\|`, or after a `^` anchor or a literal `*`, it is
73
+ // a literal asterisk.
74
+ let atStart = true;
75
+ while (index < pattern.length) {
76
+ const char = pattern[index];
77
+ if (char === '\\') {
78
+ const next = pattern[index + 1];
79
+ if (next === undefined)
80
+ return null;
81
+ // Rust's regex crate has no backreferences, by design.
82
+ if (next >= '1' && next <= '9')
83
+ return null;
84
+ index += 2;
85
+ if (next === '(' || next === '|') {
86
+ out += next;
87
+ atStart = true;
88
+ continue;
89
+ }
90
+ atStart = false;
91
+ if (next === ')') {
92
+ out += ')';
93
+ }
94
+ else if (next === '{') {
95
+ // `\{n\}` and `\{n,m\}` are intervals; any other `\{` is a literal.
96
+ const interval = /^(\d+)(,(\d*))?\\\}/.exec(pattern.slice(index));
97
+ if (interval) {
98
+ out += interval[2] === undefined ? `{${interval[1]}}` : `{${interval[1]},${interval[3]}}`;
99
+ index += interval[0].length;
100
+ }
101
+ else {
102
+ out += '\\{';
103
+ }
104
+ }
105
+ else if (LITERAL_WHEN_ESCAPED.has(next)) {
106
+ out += next;
107
+ }
108
+ else {
109
+ // Everything else keeps its escape: `\.`, `\+` and `\?` are literals
110
+ // in both dialects, and `\w`, `\s`, `\b` already agree.
111
+ out += `\\${next}`;
112
+ }
113
+ continue;
114
+ }
115
+ if (char === '[') {
116
+ const bracket = readBracket(pattern, index);
117
+ if (!bracket)
118
+ return null;
119
+ out += bracket.text;
120
+ index = bracket.next;
121
+ atStart = false;
122
+ continue;
123
+ }
124
+ index += 1;
125
+ if (char === '*' && atStart) {
126
+ out += '\\*';
127
+ }
128
+ else if (char === '^') {
129
+ out += atStart ? '^' : '\\^';
130
+ }
131
+ else if (char === '$') {
132
+ // An anchor at the end of the pattern or of a group; a literal elsewhere.
133
+ const closesGroup = pattern[index] === '\\' && pattern[index + 1] === ')';
134
+ out += index === pattern.length || closesGroup ? '$' : '\\$';
135
+ atStart = false;
136
+ }
137
+ else {
138
+ out += LITERAL_UNESCAPED.has(char) ? `\\${char}` : char;
139
+ atStart = false;
140
+ }
141
+ }
142
+ return out;
143
+ }
144
+ /**
145
+ * Rewrite an Extended Regular Expression as a Rust regex.
146
+ *
147
+ * The two dialects agree on structure, so the pattern passes through almost
148
+ * unchanged. Only the escapes need attention: a backreference cannot be
149
+ * expressed at all, and `\<` and `\>` are literal angle brackets here but word
150
+ * boundaries in Rust's regex.
151
+ */
152
+ export function ereToRustRegex(pattern) {
153
+ let out = '';
154
+ let index = 0;
155
+ while (index < pattern.length) {
156
+ const char = pattern[index];
157
+ if (char !== '\\') {
158
+ out += char;
159
+ index += 1;
160
+ continue;
161
+ }
162
+ const next = pattern[index + 1];
163
+ if (next === undefined)
164
+ return null;
165
+ if (next >= '1' && next <= '9')
166
+ return null;
167
+ out += LITERAL_WHEN_ESCAPED.has(next) ? next : `\\${next}`;
168
+ index += 2;
169
+ }
170
+ return out;
171
+ }
172
+ //# sourceMappingURL=grep-pattern.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grep-pattern.js","sourceRoot":"","sources":["../../src/fs/grep-pattern.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,uEAAuE;AACvE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAEvE;;;GAGG;AACH,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAEjD;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,OAAe,EAAE,KAAa;IACjD,IAAI,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;IACtB,IAAI,IAAI,GAAG,GAAG,CAAC;IACf,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;QACrD,IAAI,IAAI,GAAG,CAAC;QACZ,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;QAC3B,IAAI,IAAI,KAAK,CAAC;QACd,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IACD,OAAO,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAW,CAAC;QACtC,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC;QAC/C,CAAC;QACD,IAAI,IAAI,KAAK,GAAG,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC3C,IAAI,KAAK,KAAK,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC9B,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YACxC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAChD,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YACxC,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QACD,IAAI,IAAI,IAAI,CAAC;QACb,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IACD,2EAA2E;IAC3E,gCAAgC;IAChC,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,0EAA0E;IAC1E,6EAA6E;IAC7E,sBAAsB;IACtB,IAAI,OAAO,GAAG,IAAI,CAAC;IAEnB,OAAO,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAW,CAAC;QAEtC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAChC,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;YACpC,uDAAuD;YACvD,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG;gBAAE,OAAO,IAAI,CAAC;YAC5C,KAAK,IAAI,CAAC,CAAC;YACX,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACjC,GAAG,IAAI,IAAI,CAAC;gBACZ,OAAO,GAAG,IAAI,CAAC;gBACf,SAAS;YACX,CAAC;YACD,OAAO,GAAG,KAAK,CAAC;YAChB,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACjB,GAAG,IAAI,GAAG,CAAC;YACb,CAAC;iBAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACxB,oEAAoE;gBACpE,MAAM,QAAQ,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBAClE,IAAI,QAAQ,EAAE,CAAC;oBACb,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC1F,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACN,GAAG,IAAI,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;iBAAM,IAAI,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1C,GAAG,IAAI,IAAI,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,qEAAqE;gBACrE,wDAAwD;gBACxD,GAAG,IAAI,KAAK,IAAI,EAAE,CAAC;YACrB,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5C,IAAI,CAAC,OAAO;gBAAE,OAAO,IAAI,CAAC;YAC1B,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YACpB,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;YACrB,OAAO,GAAG,KAAK,CAAC;YAChB,SAAS;QACX,CAAC;QAED,KAAK,IAAI,CAAC,CAAC;QACX,IAAI,IAAI,KAAK,GAAG,IAAI,OAAO,EAAE,CAAC;YAC5B,GAAG,IAAI,KAAK,CAAC;QACf,CAAC;aAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACxB,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/B,CAAC;aAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACxB,0EAA0E;YAC1E,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;YAC1E,GAAG,IAAI,KAAK,KAAK,OAAO,CAAC,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7D,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,GAAG,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACxD,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,OAAO,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAW,CAAC;QACtC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,GAAG,IAAI,IAAI,CAAC;YACZ,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAChC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG;YAAE,OAAO,IAAI,CAAC;QAC5C,GAAG,IAAI,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC3D,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mesa-file-system.d.ts","sourceRoot":"","sources":["../../src/fs/mesa-file-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mesa-file-system.d.ts","sourceRoot":"","sources":["../../src/fs/mesa-file-system.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { looksLikePrivateKey } from '../api/credentials.js';
3
3
  import { InvalidOptionsError, MissingAccessTokenError } from '../lib/errors.js';
4
4
  import { loadNativeAddon } from './native-loader.js';
5
5
  import {} from './layout.js';
6
+ import { createSearchGrep } from './search-grep.js';
6
7
  import { createSearchRg } from './search-rg.js';
7
8
  /** Single-quote a word so the fallback interpreter sees it unchanged. */
8
9
  function shellQuote(word) {
@@ -301,17 +302,24 @@ export class MesaFileSystem {
301
302
  if (!serverSideSearch || !this.search) {
302
303
  return new Bash(base);
303
304
  }
304
- // The built-in `rg` is not exported, so the fallback runs the original
305
- // command line through a second interpreter that has no override. Built
306
- // once, on the first command that needs it.
305
+ // The built-in commands are not exported, so a fallback runs the original
306
+ // command line through a second interpreter without the overrides. Built
307
+ // once, on the first command that needs it; the caller's directory and
308
+ // standard input travel with each call.
307
309
  let builtIn;
308
- const fallback = async (args, ctx) => {
309
- builtIn ??= new Bash({ ...bashOptions, cwd: ctx.cwd, fs: this, customCommands: undefined });
310
- return builtIn.exec(['rg', ...args].map(shellQuote).join(' '));
310
+ const fallbackTo = (name) => async (args, ctx) => {
311
+ builtIn ??= new Bash(base);
312
+ return builtIn.exec([name, ...args].map(shellQuote).join(' '), { cwd: ctx.cwd, stdin: ctx.stdin });
311
313
  };
314
+ const search = { ...this.search };
315
+ // The caller's own commands come last so a `grep` or `rg` of theirs wins.
312
316
  return new Bash({
313
317
  ...base,
314
- customCommands: [...(bashOptions.customCommands ?? []), createSearchRg({ ...this.search }, fallback)],
318
+ customCommands: [
319
+ createSearchRg(search, fallbackTo('rg')),
320
+ createSearchGrep(search, fallbackTo('grep')),
321
+ ...(bashOptions.customCommands ?? []),
322
+ ],
315
323
  });
316
324
  }
317
325
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mesa-file-system.js","sourceRoot":"","sources":["../../src/fs/mesa-file-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mesa-file-system.js","sourceRoot":"","sources":["../../src/fs/mesa-file-system.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * A `grep -r` that searches next to the storage instead of walking the mount.
3
+ *
4
+ * This is a narrower replacement than the `rg` one, because grep's defaults
5
+ * differ from ripgrep's in ways that change answers rather than performance:
6
+ * patterns are Basic Regular Expressions, matching is case-sensitive, and
7
+ * recursion happens only with `-r` and a named path. Anything the built-in
8
+ * would reject, or answer from standard input, is left to the built-in, so a
9
+ * command line means the same thing whether or not the endpoint answered it.
10
+ *
11
+ * `-c` is left to the built-in for the same reason: grep counts every file it
12
+ * visited, printing `path:0` for the ones that did not match, and the endpoint
13
+ * reports only the files that did.
14
+ */
15
+ import type { Command, CommandContext, ExecResult } from 'just-bash';
16
+ import { type Mount, type SearchLeg, type SearchRequest, type ServerSearchConfig, type Unservable } from './search-rg.js';
17
+ /** What grep was asked to do, once it is known to be answerable. */
18
+ type GrepQuery = {
19
+ legs: SearchLeg[];
20
+ target: {
21
+ typed: string;
22
+ absolute: string;
23
+ };
24
+ request: SearchRequest;
25
+ lineNumbers: boolean;
26
+ /** Recursive grep names the file on every line unless `-h` says not to. */
27
+ showFilename: boolean;
28
+ };
29
+ /**
30
+ * Translate a grep command line into one search, or explain why it cannot be.
31
+ *
32
+ * Only what the built-in accepts is accepted here, and only what the endpoint
33
+ * answers exactly is served. Everything else falls back.
34
+ */
35
+ export declare function planGrep(args: string[], cwd: string, mounts: Mount[]): GrepQuery | Unservable;
36
+ /**
37
+ * Build the `grep` replacement.
38
+ *
39
+ * `fallback` runs the original command line through the built-in, and is
40
+ * called for anything this cannot answer exactly.
41
+ */
42
+ export declare function createSearchGrep(config: ServerSearchConfig, fallback: (args: string[], ctx: CommandContext) => Promise<ExecResult>): Command;
43
+ export {};
44
+ //# sourceMappingURL=search-grep.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-grep.d.ts","sourceRoot":"","sources":["../../src/fs/search-grep.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAErE,OAAO,EAYL,KAAK,KAAK,EACV,KAAK,SAAS,EAEd,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AAExB,oEAAoE;AACpE,KAAK,SAAS,GAAG;IACf,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,OAAO,EAAE,aAAa,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,2EAA2E;IAC3E,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,SAAS,GAAG,UAAU,CAkH7F;AAgCD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,UAAU,CAAC,GACrE,OAAO,CAmCT"}
@@ -0,0 +1,208 @@
1
+ /**
2
+ * A `grep -r` that searches next to the storage instead of walking the mount.
3
+ *
4
+ * This is a narrower replacement than the `rg` one, because grep's defaults
5
+ * differ from ripgrep's in ways that change answers rather than performance:
6
+ * patterns are Basic Regular Expressions, matching is case-sensitive, and
7
+ * recursion happens only with `-r` and a named path. Anything the built-in
8
+ * would reject, or answer from standard input, is left to the built-in, so a
9
+ * command line means the same thing whether or not the endpoint answered it.
10
+ *
11
+ * `-c` is left to the built-in for the same reason: grep counts every file it
12
+ * visited, printing `path:0` for the ones that did not match, and the endpoint
13
+ * reports only the files that did.
14
+ */
15
+ import { breToRustRegex, ereToRustRegex } from './grep-pattern.js';
16
+ import { absolute, belowTarget, displayPath, expandShortFlags, isDirectory, isHidden, MAX_PARALLEL_LEGS, mapBounded, mountsFromLayout, resolveLegs, searchLeg, } from './search-rg.js';
17
+ /**
18
+ * Translate a grep command line into one search, or explain why it cannot be.
19
+ *
20
+ * Only what the built-in accepts is accepted here, and only what the endpoint
21
+ * answers exactly is served. Everything else falls back.
22
+ */
23
+ export function planGrep(args, cwd, mounts) {
24
+ let pattern;
25
+ let patternFromFlag = false;
26
+ const positionals = [];
27
+ const includeGlobs = [];
28
+ const excludeGlobs = [];
29
+ let recursive = false;
30
+ let caseInsensitive = false;
31
+ let literal = false;
32
+ let extended = false;
33
+ let word = false;
34
+ let mode = 'lines';
35
+ let lineNumbers = false;
36
+ let showFilename = true;
37
+ const expanded = expandShortFlags(args, 'e');
38
+ for (let i = 0; i < expanded.length; i++) {
39
+ const arg = expanded[i] ?? '';
40
+ if (arg.startsWith('--include=') || arg.startsWith('--exclude=')) {
41
+ const glob = arg.slice('--include='.length);
42
+ // The built-in matches these against the basename alone and reads braces
43
+ // literally; the endpoint anchors a slashed glob at the repo root and
44
+ // expands braces. Neither is wrong, so neither is approximated.
45
+ if (/[/{]/.test(glob))
46
+ return { unservable: 'glob with a path or braces' };
47
+ (arg.startsWith('--include=') ? includeGlobs : excludeGlobs).push(glob);
48
+ continue;
49
+ }
50
+ if (!arg.startsWith('-') || arg === '-') {
51
+ if (pattern === undefined && !patternFromFlag)
52
+ pattern = arg;
53
+ else
54
+ positionals.push(arg);
55
+ continue;
56
+ }
57
+ switch (arg) {
58
+ case '-r':
59
+ case '-R':
60
+ case '--recursive':
61
+ recursive = true;
62
+ break;
63
+ case '-i':
64
+ case '--ignore-case':
65
+ caseInsensitive = true;
66
+ break;
67
+ case '-F':
68
+ case '--fixed-strings':
69
+ literal = true;
70
+ break;
71
+ case '-E':
72
+ case '--extended-regexp':
73
+ extended = true;
74
+ break;
75
+ case '-w':
76
+ case '--word-regexp':
77
+ word = true;
78
+ break;
79
+ case '-l':
80
+ case '--files-with-matches':
81
+ mode = 'files';
82
+ break;
83
+ case '-n':
84
+ case '--line-number':
85
+ lineNumbers = true;
86
+ break;
87
+ case '-h':
88
+ case '--no-filename':
89
+ showFilename = false;
90
+ break;
91
+ case '-e': {
92
+ const value = expanded[++i];
93
+ if (value === undefined)
94
+ return { unservable: '-e requires a pattern' };
95
+ // One pattern per search: a second would need a union the endpoint
96
+ // does not take.
97
+ if (patternFromFlag || pattern !== undefined)
98
+ return { unservable: 'more than one pattern' };
99
+ pattern = value;
100
+ patternFromFlag = true;
101
+ break;
102
+ }
103
+ default:
104
+ return { unservable: `${arg} is not supported by server-side search` };
105
+ }
106
+ }
107
+ if (pattern === undefined)
108
+ return { unservable: 'no pattern given' };
109
+ // Without -r, or without a path, the built-in reads a named file or standard
110
+ // input rather than walking anything.
111
+ if (!recursive || positionals.length === 0)
112
+ return { unservable: 'not a recursive search of a path' };
113
+ if (positionals.length > 1)
114
+ return { unservable: 'more than one search path' };
115
+ // `-F` is literal in both dialects and needs no translation.
116
+ let translated = pattern;
117
+ if (!literal) {
118
+ const converted = extended ? ereToRustRegex(pattern) : breToRustRegex(pattern);
119
+ if (converted === null)
120
+ return { unservable: 'pattern has no equivalent in the search dialect' };
121
+ translated = converted;
122
+ }
123
+ const typed = positionals[0];
124
+ const legs = resolveLegs(absolute(cwd, typed), mounts);
125
+ if ('unservable' in legs)
126
+ return legs;
127
+ return {
128
+ legs,
129
+ target: { typed, absolute: absolute(cwd, typed) },
130
+ request: {
131
+ pattern: translated,
132
+ mode,
133
+ caseMode: caseInsensitive ? 'insensitive' : 'sensitive',
134
+ literal,
135
+ word,
136
+ includeGlobs,
137
+ excludeGlobs,
138
+ },
139
+ lineNumbers,
140
+ showFilename,
141
+ };
142
+ }
143
+ /**
144
+ * Order paths the way a recursive walk over name-sorted directories visits
145
+ * them: segment by segment, so `utils/index.ts` precedes `utils.ts`.
146
+ */
147
+ function walkOrder(a, b) {
148
+ const left = a.split('/');
149
+ const right = b.split('/');
150
+ for (let i = 0; i < Math.min(left.length, right.length); i++) {
151
+ const l = left[i];
152
+ const r = right[i];
153
+ if (l !== r)
154
+ return l < r ? -1 : 1;
155
+ }
156
+ return left.length - right.length;
157
+ }
158
+ /** Render results the way grep does. `-h` does not reach `-l`, whose answer is the path. */
159
+ function format(matches, query) {
160
+ if (query.request.mode === 'files') {
161
+ return matches.map(({ path }) => `${path}\n`).join('');
162
+ }
163
+ return matches
164
+ .flatMap(({ path, match }) => match.lines.map((line) => `${query.showFilename ? `${path}:` : ''}${query.lineNumbers ? `${line.line_number}:` : ''}${line.text}\n`))
165
+ .join('');
166
+ }
167
+ /**
168
+ * Build the `grep` replacement.
169
+ *
170
+ * `fallback` runs the original command line through the built-in, and is
171
+ * called for anything this cannot answer exactly.
172
+ */
173
+ export function createSearchGrep(config, fallback) {
174
+ const mounts = mountsFromLayout(config.layout);
175
+ return {
176
+ name: 'grep',
177
+ async execute(args, ctx) {
178
+ const plan = planGrep(args, ctx.cwd, mounts);
179
+ if ('unservable' in plan || !(await isDirectory(ctx, plan.target.absolute))) {
180
+ return fallback(args, ctx);
181
+ }
182
+ let found;
183
+ try {
184
+ const perLeg = await mapBounded(plan.legs, MAX_PARALLEL_LEGS, async (leg) => {
185
+ const root = leg.mount.path === '/' ? '' : leg.mount.path;
186
+ const kept = [];
187
+ for await (const match of searchLeg(config, leg, plan.request)) {
188
+ const suffix = belowTarget(`${root}/${match.path}`, plan.target);
189
+ // The built-in walks past dot-prefixed entries during recursion,
190
+ // even though POSIX grep does not.
191
+ if (isHidden(suffix))
192
+ continue;
193
+ kept.push({ path: displayPath(suffix, plan.target), match });
194
+ }
195
+ return kept;
196
+ });
197
+ // The built-in walks the tree in sorted order and the endpoint does not.
198
+ found = perLeg.flat().sort((a, b) => walkOrder(a.path, b.path));
199
+ }
200
+ catch {
201
+ return fallback(args, ctx);
202
+ }
203
+ // grep's convention: 0 when something matched, 1 when nothing did.
204
+ return { stdout: format(found, plan), stderr: '', exitCode: found.length > 0 ? 0 : 1 };
205
+ },
206
+ };
207
+ }
208
+ //# sourceMappingURL=search-grep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-grep.js","sourceRoot":"","sources":["../../src/fs/search-grep.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@
18
18
  import type { Command, CommandContext, ExecResult } from 'just-bash';
19
19
  import type { Layout } from './layout.js';
20
20
  /** One repository as it appears in the mount namespace. */
21
- type Mount = {
21
+ export type Mount = {
22
22
  /** Absolute path in the mount where this repository's root sits. */
23
23
  path: string;
24
24
  repo: string;
@@ -26,7 +26,7 @@ type Mount = {
26
26
  changeId?: string;
27
27
  };
28
28
  /** One repository's share of a search. */
29
- type SearchLeg = {
29
+ export type SearchLeg = {
30
30
  mount: Mount;
31
31
  /** Repo-relative directory to search under. */
32
32
  pathPrefix: string;
@@ -48,16 +48,35 @@ type SearchQuery = {
48
48
  typed: string;
49
49
  absolute: string;
50
50
  };
51
+ hidden: boolean;
52
+ request: SearchRequest;
53
+ };
54
+ /**
55
+ * One search, in the endpoint's own vocabulary rather than any command's.
56
+ *
57
+ * `rg` and `grep` disagree about defaults — smart case against case-sensitive,
58
+ * Rust regex against a translated BRE — so each planner spells out what it
59
+ * means here and the request is sent as written.
60
+ */
61
+ export type SearchRequest = {
51
62
  pattern: string;
52
63
  mode: 'lines' | 'count' | 'files';
53
- caseMode?: 'sensitive' | 'insensitive' | 'smart';
64
+ caseMode: 'smart' | 'sensitive' | 'insensitive';
54
65
  literal: boolean;
55
66
  word: boolean;
56
- hidden: boolean;
57
- globs: string[];
67
+ includeGlobs: string[];
68
+ excludeGlobs: string[];
58
69
  };
70
+ /**
71
+ * Searches issued at once for a single command.
72
+ *
73
+ * The server admits a small number of concurrent searches per task, so a
74
+ * layout with many nested repositories would otherwise let one `rg` fill the
75
+ * queue by itself and stall every other caller.
76
+ */
77
+ export declare const MAX_PARALLEL_LEGS = 4;
59
78
  /** Why a command line could not be served, phrased for the reader of a log. */
60
- type Unservable = {
79
+ export type Unservable = {
61
80
  unservable: string;
62
81
  };
63
82
  export type ServerSearchConfig = {
@@ -77,6 +96,9 @@ export type ServerSearchConfig = {
77
96
  * mount containing a path is the one that owns it.
78
97
  */
79
98
  export declare function mountsFromLayout(layout: Layout): Mount[];
99
+ /** Absolute form of a path as typed on the command line. */
100
+ export declare function absolute(cwd: string, path: string): string;
101
+ export declare function resolveLegs(target: string, mounts: Mount[]): SearchLeg[] | Unservable;
80
102
  /**
81
103
  * Translate a ripgrep command line into one search.
82
104
  *
@@ -84,6 +106,43 @@ export declare function mountsFromLayout(layout: Layout): Mount[];
84
106
  * approximating, because a flag that silently does nothing changes the answer.
85
107
  */
86
108
  export declare function planSearch(args: string[], cwd: string, mounts: Mount[]): SearchQuery | Unservable;
109
+ export type SearchMatch = {
110
+ path: string;
111
+ line_count: number;
112
+ lines: {
113
+ line_number: number;
114
+ text: string;
115
+ }[];
116
+ };
117
+ /**
118
+ * Run one leg's search, yielding each matching file as its row arrives.
119
+ *
120
+ * Shared by both command overrides so there is a single place that knows how
121
+ * the endpoint is addressed and how its rows arrive.
122
+ */
123
+ export declare function searchLeg(config: ServerSearchConfig, leg: SearchLeg, request: SearchRequest): AsyncGenerator<SearchMatch>;
124
+ /**
125
+ * Whether the search target is a directory the endpoint can search under.
126
+ *
127
+ * The endpoint's path prefix names a directory, so a file operand or a missing
128
+ * path would come back empty where the built-in prints the file's matches or
129
+ * its own error. Either way the built-in has to answer.
130
+ */
131
+ export declare function isDirectory(ctx: CommandContext, path: string): Promise<boolean>;
132
+ /** The part of a path below the directory the caller named. */
133
+ export declare function belowTarget(absolutePath: string, target: {
134
+ absolute: string;
135
+ }): string;
136
+ /**
137
+ * Name a file the way ripgrep would, given how the caller named the directory.
138
+ *
139
+ * `rg love sonnets` reports `sonnets/x.md`, `rg love /repo/sonnets` reports
140
+ * `/repo/sonnets/x.md`, and a bare `rg love` reports paths relative to the
141
+ * working directory.
142
+ */
143
+ export declare function displayPath(suffix: string, target: {
144
+ typed: string;
145
+ }): string;
87
146
  /**
88
147
  * Whether ripgrep would have walked past this file without opening it.
89
148
  *
@@ -121,6 +180,19 @@ export declare function gitignoreExcludes(files: {
121
180
  path: string;
122
181
  lines: string[];
123
182
  }[]): string[] | null;
183
+ /**
184
+ * Split clustered short flags into separate ones.
185
+ *
186
+ * `-rn` means `-r -n`, which is how people actually type these commands. The
187
+ * built-in clusters boolean flags only — `-re PATTERN` is an error there rather
188
+ * than a pattern flag — so a cluster naming any flag that takes a value is left
189
+ * whole, and the built-in gets to reject it in its own words.
190
+ *
191
+ * `valueFlags` is the set of short flags that consume the next argument.
192
+ */
193
+ export declare function expandShortFlags(args: string[], valueFlags: string): string[];
194
+ /** Run `work` over `items`, at most `limit` at a time, preserving input order. */
195
+ export declare function mapBounded<T, R>(items: T[], limit: number, work: (item: T) => Promise<R>): Promise<R[]>;
124
196
  /**
125
197
  * Build the `rg` replacement.
126
198
  *
@@ -1 +1 @@
1
- {"version":3,"file":"search-rg.d.ts","sourceRoot":"","sources":["../../src/fs/search-rg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,KAAK,EAAE,MAAM,EAAQ,MAAM,aAAa,CAAC;AAEhD,2DAA2D;AAC3D,KAAK,KAAK,GAAG;IACX,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,0CAA0C;AAC1C,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,KAAK,CAAC;IACb,+CAA+C;IAC/C,UAAU,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF,oFAAoF;AACpF,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB;;;;;;;OAOG;IACH,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IAClC,QAAQ,CAAC,EAAE,WAAW,GAAG,aAAa,GAAG,OAAO,CAAC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAWF,+EAA+E;AAC/E,KAAK,UAAU,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,CAuBxD;AAiDD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,WAAW,GAAG,UAAU,CA4FjG;AAsFD;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAe/E;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CAW7F;AAiED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,UAAU,CAAC,GACrE,OAAO,CAkDT"}
1
+ {"version":3,"file":"search-rg.d.ts","sourceRoot":"","sources":["../../src/fs/search-rg.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@
22
22
  * layout with many nested repositories would otherwise let one `rg` fill the
23
23
  * queue by itself and stall every other caller.
24
24
  */
25
- const MAX_PARALLEL_LEGS = 4;
25
+ export const MAX_PARALLEL_LEGS = 4;
26
26
  /**
27
27
  * Flatten a layout into the repository roots it presents, longest path first.
28
28
  *
@@ -59,7 +59,7 @@ function joinPath(base, segment) {
59
59
  return trimmed === '' ? base || '/' : `${base}/${trimmed}`;
60
60
  }
61
61
  /** Absolute form of a path as typed on the command line. */
62
- function absolute(cwd, path) {
62
+ export function absolute(cwd, path) {
63
63
  if (path.startsWith('/'))
64
64
  return path.replace(/\/+$/, '') || '/';
65
65
  const base = cwd.replace(/\/+$/, '');
@@ -79,7 +79,7 @@ function absolute(cwd, path) {
79
79
  function isUnder(child, parent) {
80
80
  return parent === '/' ? child !== '/' : child.startsWith(`${parent}/`);
81
81
  }
82
- function resolveLegs(target, mounts) {
82
+ export function resolveLegs(target, mounts) {
83
83
  const owner = mounts.find((mount) => target === mount.path || isUnder(target, mount.path));
84
84
  // A target above every mount — the namespace root, most obviously — belongs
85
85
  // to no repository but still covers several, so it yields a leg for each
@@ -104,11 +104,14 @@ function resolveLegs(target, mounts) {
104
104
  * approximating, because a flag that silently does nothing changes the answer.
105
105
  */
106
106
  export function planSearch(args, cwd, mounts) {
107
+ args = expandShortFlags(args, 'eg');
107
108
  let pattern;
108
109
  const targets = [];
109
110
  const globs = [];
110
111
  let mode = 'lines';
111
- let caseMode;
112
+ // The built-in `rg` is smart-case by default, unlike ripgrep itself, and the
113
+ // served answer has to agree with the one the fallback would give.
114
+ let caseMode = 'smart';
112
115
  let literal = false;
113
116
  let word = false;
114
117
  let hidden = false;
@@ -191,13 +194,8 @@ export function planSearch(args, cwd, mounts) {
191
194
  return {
192
195
  legs,
193
196
  target: { typed, absolute: absoluteTarget },
194
- pattern,
195
- mode,
196
- caseMode,
197
- literal,
198
- word,
199
197
  hidden,
200
- globs,
198
+ request: { pattern, mode, caseMode, literal, word, includeGlobs: globs, excludeGlobs: [] },
201
199
  };
202
200
  }
203
201
  /**
@@ -233,21 +231,20 @@ async function* searchEvents(url, config, doFetch) {
233
231
  if (last !== '')
234
232
  yield JSON.parse(last);
235
233
  }
236
- function buildUrl(config, query, leg, extraExcludes = []) {
237
- const params = new URLSearchParams({ q: query.pattern, mode: query.mode });
238
- if (query.caseMode)
239
- params.set('case', query.caseMode);
240
- if (query.literal)
234
+ function buildUrl(config, request, leg) {
235
+ const params = new URLSearchParams({ q: request.pattern, mode: request.mode });
236
+ params.set('case', request.caseMode);
237
+ if (request.literal)
241
238
  params.set('literal', 'true');
242
- if (query.word)
239
+ if (request.word)
243
240
  params.set('word', 'true');
244
241
  if (leg.pathPrefix)
245
242
  params.set('path', leg.pathPrefix);
246
- for (const glob of query.globs)
243
+ for (const glob of request.includeGlobs)
247
244
  params.append('include', glob);
248
245
  // Carve out what a nested mount covers, so the parent does not answer for
249
246
  // paths the namespace shows as the child's.
250
- for (const exclude of [...leg.excludes, ...extraExcludes])
247
+ for (const exclude of [...leg.excludes, ...request.excludeGlobs])
251
248
  params.append('exclude', exclude);
252
249
  // A layout may pin either, and the server defaults to the repo's bookmark.
253
250
  if (leg.mount.changeId)
@@ -256,8 +253,36 @@ function buildUrl(config, query, leg, extraExcludes = []) {
256
253
  params.set('bookmark', leg.mount.bookmark);
257
254
  return `${config.apiBaseUrl}/${config.org}/${leg.mount.repo}/search?${params}`;
258
255
  }
256
+ /**
257
+ * Run one leg's search, yielding each matching file as its row arrives.
258
+ *
259
+ * Shared by both command overrides so there is a single place that knows how
260
+ * the endpoint is addressed and how its rows arrive.
261
+ */
262
+ export async function* searchLeg(config, leg, request) {
263
+ const doFetch = config.fetch ?? globalThis.fetch;
264
+ for await (const event of searchEvents(buildUrl(config, request, leg), config, doFetch)) {
265
+ if (event.type === 'match')
266
+ yield event;
267
+ }
268
+ }
269
+ /**
270
+ * Whether the search target is a directory the endpoint can search under.
271
+ *
272
+ * The endpoint's path prefix names a directory, so a file operand or a missing
273
+ * path would come back empty where the built-in prints the file's matches or
274
+ * its own error. Either way the built-in has to answer.
275
+ */
276
+ export async function isDirectory(ctx, path) {
277
+ try {
278
+ return (await ctx.fs.stat(path)).isDirectory;
279
+ }
280
+ catch {
281
+ return false;
282
+ }
283
+ }
259
284
  /** The part of a path below the directory the caller named. */
260
- function belowTarget(absolutePath, target) {
285
+ export function belowTarget(absolutePath, target) {
261
286
  return absolutePath.slice(target.absolute.length).replace(/^\/+/, '');
262
287
  }
263
288
  /**
@@ -267,7 +292,7 @@ function belowTarget(absolutePath, target) {
267
292
  * `/repo/sonnets/x.md`, and a bare `rg love` reports paths relative to the
268
293
  * working directory.
269
294
  */
270
- function displayPath(suffix, target) {
295
+ export function displayPath(suffix, target) {
271
296
  if (target.typed === '.' || target.typed === '')
272
297
  return suffix;
273
298
  return `${target.typed.replace(/\/+$/, '')}/${suffix}`;
@@ -359,8 +384,36 @@ async function ignoreExcludesFor(config, leg, doFetch) {
359
384
  }
360
385
  return gitignoreExcludes(files);
361
386
  }
387
+ /**
388
+ * Split clustered short flags into separate ones.
389
+ *
390
+ * `-rn` means `-r -n`, which is how people actually type these commands. The
391
+ * built-in clusters boolean flags only — `-re PATTERN` is an error there rather
392
+ * than a pattern flag — so a cluster naming any flag that takes a value is left
393
+ * whole, and the built-in gets to reject it in its own words.
394
+ *
395
+ * `valueFlags` is the set of short flags that consume the next argument.
396
+ */
397
+ export function expandShortFlags(args, valueFlags) {
398
+ const expanded = [];
399
+ for (const [index, arg] of args.entries()) {
400
+ if (arg === '--') {
401
+ // Everything past this point is positional, clusters included.
402
+ expanded.push(...args.slice(index));
403
+ return expanded;
404
+ }
405
+ const isCluster = arg.length > 2 && arg.startsWith('-') && !arg.startsWith('--');
406
+ const letters = isCluster ? arg.slice(1) : '';
407
+ if (isCluster && ![...letters].some((letter) => valueFlags.includes(letter))) {
408
+ expanded.push(...[...letters].map((letter) => `-${letter}`));
409
+ continue;
410
+ }
411
+ expanded.push(arg);
412
+ }
413
+ return expanded;
414
+ }
362
415
  /** Run `work` over `items`, at most `limit` at a time, preserving input order. */
363
- async function mapBounded(items, limit, work) {
416
+ export async function mapBounded(items, limit, work) {
364
417
  const results = new Array(items.length);
365
418
  let next = 0;
366
419
  const runner = async () => {
@@ -384,10 +437,10 @@ async function mapBounded(items, limit, work) {
384
437
  * tidiness; `| sort` remains available to anyone who wants it.
385
438
  */
386
439
  function format(matches, query) {
387
- if (query.mode === 'files') {
440
+ if (query.request.mode === 'files') {
388
441
  return matches.map(({ path }) => `${path}\n`).join('');
389
442
  }
390
- if (query.mode === 'count') {
443
+ if (query.request.mode === 'count') {
391
444
  return matches.map(({ path, match }) => `${path}:${match.line_count}\n`).join('');
392
445
  }
393
446
  return matches
@@ -407,7 +460,7 @@ export function createSearchRg(config, fallback) {
407
460
  name: 'rg',
408
461
  async execute(args, ctx) {
409
462
  const plan = planSearch(args, ctx.cwd, mounts);
410
- if ('unservable' in plan) {
463
+ if ('unservable' in plan || !(await isDirectory(ctx, plan.target.absolute))) {
411
464
  return fallback(args, ctx);
412
465
  }
413
466
  let responses;
@@ -425,13 +478,11 @@ export function createSearchRg(config, fallback) {
425
478
  const kept = [];
426
479
  // Rows are filtered and reshaped as they arrive, so a file the answer
427
480
  // will not mention is never held.
428
- for await (const event of searchEvents(buildUrl(config, plan, leg, extra), config, doFetch)) {
429
- if (event.type !== 'match')
430
- continue;
431
- const suffix = belowTarget(`${root}/${event.path}`, plan.target);
481
+ for await (const match of searchLeg(config, leg, { ...plan.request, excludeGlobs: extra })) {
482
+ const suffix = belowTarget(`${root}/${match.path}`, plan.target);
432
483
  if (!plan.hidden && isHidden(suffix))
433
484
  continue;
434
- kept.push({ path: displayPath(suffix, plan.target), match: event });
485
+ kept.push({ path: displayPath(suffix, plan.target), match });
435
486
  }
436
487
  return kept;
437
488
  });
@@ -1 +1 @@
1
- {"version":3,"file":"search-rg.js","sourceRoot":"","sources":["../../src/fs/search-rg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AA4CH;;;;;;GAMG;AACH,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAc5B;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,MAAM,MAAM,GAAY,EAAE,CAAC;IAE3B,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,OAAsC,EAAQ,EAAE;QAC3E,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACnC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC5D,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,oEAAoE;gBACpE,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACrG,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI;oBACJ,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE,QAAQ;oBAClC,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE,QAAQ;iBACnC,CAAC,CAAC;gBACH,IAAI,WAAW,CAAC,QAAQ;oBAAE,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,KAAK,CAAC,EAAE,EAAE,MAAuC,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,OAAe;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAClD,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC;AAC7D,CAAC;AAED,4DAA4D;AAC5D,SAAS,QAAQ,CAAC,GAAW,EAAE,IAAY;IACzC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;IACjE,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IACtE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;AAC3C,CAAC;AAED;;;;;;;;GAQG;AACH,mFAAmF;AACnF,SAAS,OAAO,CAAC,KAAa,EAAE,MAAc;IAC5C,OAAO,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,MAAe;IAClD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3F,4EAA4E;IAC5E,yEAAyE;IACzE,yDAAyD;IACzD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACrE,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,kCAAkC,EAAE,CAAC;IACrE,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAEpD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC7B,KAAK;QACL,UAAU,EAAE,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;QACtF,QAAQ,EAAE,OAAO;aACd,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;aACrE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC;KACnF,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,IAAc,EAAE,GAAW,EAAE,MAAe;IACrE,IAAI,OAA2B,CAAC;IAChC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,IAAI,GAAwB,OAAO,CAAC;IACxC,IAAI,QAAiC,CAAC;IACtC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,iDAAiD;YACjD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACrC,IAAI,OAAO,KAAK,SAAS;oBAAE,OAAO,GAAG,IAAI,CAAC;;oBACrC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM;QACR,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;YACxC,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO,GAAG,GAAG,CAAC;;gBACpC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,SAAS;QACX,CAAC;QACD,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,IAAI,CAAC;YACV,KAAK,eAAe;gBAClB,QAAQ,GAAG,aAAa,CAAC;gBACzB,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,kBAAkB;gBACrB,QAAQ,GAAG,WAAW,CAAC;gBACvB,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,cAAc;gBACjB,QAAQ,GAAG,OAAO,CAAC;gBACnB,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,iBAAiB;gBACpB,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,eAAe;gBAClB,IAAI,GAAG,IAAI,CAAC;gBACZ,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,SAAS;gBACZ,IAAI,GAAG,OAAO,CAAC;gBACf,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,sBAAsB;gBACzB,IAAI,GAAG,OAAO,CAAC;gBACf,MAAM;YACR,KAAK,UAAU;gBACb,MAAM,GAAG,IAAI,CAAC;gBACd,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,eAAe;gBAClB,gEAAgE;gBAChE,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvB,IAAI,IAAI,KAAK,SAAS;oBAAE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,qBAAqB,EAAE,CAAC;gBAC3E,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,MAAM;YACR,CAAC;YACD;gBACE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,yCAAyC,EAAE,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACrE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,UAAU,EAAE,2BAA2B,EAAE,CAAC;IAE3E,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAChC,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACjD,IAAI,YAAY,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAEtC,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE;QAC3C,OAAO;QACP,IAAI;QACJ,QAAQ;QACR,OAAO;QACP,IAAI;QACJ,MAAM;QACN,KAAK;KACN,CAAC;AACJ,CAAC;AAWD;;;;;GAKG;AACH,KAAK,SAAS,CAAC,CAAC,YAAY,CAC1B,GAAW,EACX,MAA0B,EAC1B,OAAgC;IAEhC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IACpG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,CAAC,IAA4C,EAAE,CAAC;QAChF,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,wEAAwE;QACxE,0CAA0C;QAC1C,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpC,OAAO,OAAO,IAAI,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9C,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACrC,IAAI,IAAI,KAAK,EAAE;gBAAE,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAgB,CAAC;YACvD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,IAAI,KAAK,EAAE;QAAE,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAgB,CAAC;AACzD,CAAC;AAED,SAAS,QAAQ,CACf,MAA0B,EAC1B,KAAkB,EAClB,GAAc,EACd,gBAA0B,EAAE;IAE5B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3E,IAAI,KAAK,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,OAAO;QAAE,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACjD,IAAI,KAAK,CAAC,IAAI;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,IAAI,GAAG,CAAC,UAAU;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACvD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC/D,0EAA0E;IAC1E,4CAA4C;IAC5C,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,aAAa,CAAC;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7F,2EAA2E;IAC3E,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC/D,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxE,OAAO,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,WAAW,MAAM,EAAE,CAAC;AACjF,CAAC;AAED,+DAA+D;AAC/D,SAAS,WAAW,CAAC,YAAoB,EAAE,MAA4B;IACrE,OAAO,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,MAAc,EAAE,MAAyB;IAC5D,IAAI,MAAM,CAAC,KAAK,KAAK,GAAG,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC;IAC/D,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC;AACzD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAc;IACrC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAY,EAAE,GAAW;IAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,OAAO,KAAK,EAAE,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAEzC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;IACvE,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClF,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAE3B,sEAAsE;IACtE,yDAAyD;IACzD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAC1D,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAA0C;IAC1E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACnD,IAAI,UAAU,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAC9B,MAA0B,EAC1B,GAAc,EACd,OAAgC;IAEhC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;IACrF,IAAI,GAAG,CAAC,UAAU;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACvD,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC/D,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAExE,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,WAAW,MAAM,EAAE,CAAC;IACpF,MAAM,KAAK,GAAwC,EAAE,CAAC;IACtD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QAC7D,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IACD,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED,kFAAkF;AAClF,KAAK,UAAU,UAAU,CAAO,KAAU,EAAE,KAAa,EAAE,IAA6B;IACtF,MAAM,OAAO,GAAG,IAAI,KAAK,CAAI,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;QACxB,OAAO,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAM,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAC;IACF,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IACjF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,MAAM,CAAC,OAA+C,EAAE,KAAkB;IACjF,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,OAAO;SACX,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;SACrG,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,MAA0B,EAC1B,QAAsE;IAEtE,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAEjD,OAAO;QACL,IAAI,EAAE,IAAI;QACV,KAAK,CAAC,OAAO,CAAC,IAAc,EAAE,GAAmB;YAC/C,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC/C,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;gBACzB,OAAO,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC7B,CAAC;YAED,IAAI,SAAmD,CAAC;YACxD,IAAI,CAAC;gBACH,oEAAoE;gBACpE,wEAAwE;gBACxE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE,CACrE,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CACxC,CAAC;gBACF,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC3B,gDAAgD;oBAChD,OAAO,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBAC7B,CAAC;gBAED,SAAS,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACvE,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;oBACpD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC1D,MAAM,IAAI,GAA2C,EAAE,CAAC;oBACxD,sEAAsE;oBACtE,kCAAkC;oBAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;wBAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;4BAAE,SAAS;wBACrC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;wBACjE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC;4BAAE,SAAS;wBAC/C,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;oBACtE,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,qEAAqE;gBACrE,gEAAgE;gBAChE,OAAO,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC7B,CAAC;YAED,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrC,sEAAsE;YACtE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"search-rg.js","sourceRoot":"","sources":["../../src/fs/search-rg.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const SDK_VERSION = "0.48.0";
1
+ export declare const SDK_VERSION = "0.48.1";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // Generated by pnpm run stamp:version. Do not edit.
2
- export const SDK_VERSION = "0.48.0";
2
+ export const SDK_VERSION = "0.48.1";
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mesadev/sdk",
3
- "version": "0.48.0",
3
+ "version": "0.48.1",
4
4
  "description": "Official Mesa TypeScript SDK",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -25,8 +25,8 @@
25
25
  "node": ">=18"
26
26
  },
27
27
  "dependencies": {
28
- "@mesadev/mesafs-napi": "0.48.0",
29
- "@mesadev/rest": "0.48.0",
28
+ "@mesadev/mesafs-napi": "0.48.1",
29
+ "@mesadev/rest": "0.48.1",
30
30
  "just-bash": "^2.13.0",
31
31
  "zod": "^4.3.6"
32
32
  },