@sagmans/dsh-tui 0.12.1 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/gates/questions.d.ts.map +1 -1
- package/lib/gates/questions.js +9 -6
- package/lib/gates/questions.js.map +1 -1
- package/lib/input/completion.js +4 -2
- package/lib/input/completion.js.map +1 -1
- package/lib/input/file-search.d.ts +3 -1
- package/lib/input/file-search.d.ts.map +1 -1
- package/lib/input/file-search.js +22 -6
- package/lib/input/file-search.js.map +1 -1
- package/lib/input.d.ts +6 -0
- package/lib/input.d.ts.map +1 -1
- package/lib/input.js +32 -1
- package/lib/input.js.map +1 -1
- package/lib/surface/modal-input.d.ts +1 -0
- package/lib/surface/modal-input.d.ts.map +1 -1
- package/lib/surface/modal-input.js +77 -45
- package/lib/surface/modal-input.js.map +1 -1
- package/lib/terminal/host-writes.d.ts.map +1 -1
- package/lib/terminal/host-writes.js +15 -9
- package/lib/terminal/host-writes.js.map +1 -1
- package/lib/terminal/warning-screen.d.ts +9 -2
- package/lib/terminal/warning-screen.d.ts.map +1 -1
- package/lib/terminal/warning-screen.js +148 -22
- package/lib/terminal/warning-screen.js.map +1 -1
- package/lib/terminal-text.d.ts.map +1 -1
- package/lib/terminal-text.js +12 -6
- package/lib/terminal-text.js.map +1 -1
- package/lib/transcript.d.ts +5 -0
- package/lib/transcript.d.ts.map +1 -1
- package/lib/transcript.js +30 -13
- package/lib/transcript.js.map +1 -1
- package/lib/ui/dock.d.ts +8 -0
- package/lib/ui/dock.d.ts.map +1 -1
- package/lib/ui/dock.js +17 -0
- package/lib/ui/dock.js.map +1 -1
- package/lib/ui/editor.d.ts +1 -1
- package/lib/ui/editor.d.ts.map +1 -1
- package/lib/ui/editor.js +15 -7
- package/lib/ui/editor.js.map +1 -1
- package/lib/ui/layout.d.ts.map +1 -1
- package/lib/ui/layout.js +6 -9
- package/lib/ui/layout.js.map +1 -1
- package/lib/ui/picker.d.ts +1 -0
- package/lib/ui/picker.d.ts.map +1 -1
- package/lib/ui/picker.js +22 -9
- package/lib/ui/picker.js.map +1 -1
- package/lib/ui/queue.d.ts.map +1 -1
- package/lib/ui/queue.js +11 -1
- package/lib/ui/queue.js.map +1 -1
- package/lib/ui/view/document.d.ts +30 -0
- package/lib/ui/view/document.d.ts.map +1 -0
- package/lib/ui/view/document.js +87 -0
- package/lib/ui/view/document.js.map +1 -0
- package/lib/ui/view.d.ts +45 -76
- package/lib/ui/view.d.ts.map +1 -1
- package/lib/ui/view.js +69 -146
- package/lib/ui/view.js.map +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../../src/gates/questions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAS,KAAK,YAAY,EAAE,KAAK,UAAU,EAAqB,MAAM,aAAa,CAAA;AAGzH,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAQhE;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,EAAE,CAyBhE;AAiBD,oGAAoG;AACpG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;IAChD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAED;;;;;;;GAOG;AACH,qBAAa,YAAY;IAoBrB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,8EAA8E;IAC9E,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,IAAI;IAvBvB,OAAO,CAAC,KAAK,CAAI;IACjB,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,KAAK,CAAK;IAClB,kDAAkD;IAClD,OAAO,CAAC,QAAQ,CAAQ;IACxB;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IACpD,OAAO,CAAC,QAAQ,CAAQ;gBAGL,SAAS,EAAE,SAAS,YAAY,EAAE;IACnD,8EAA8E;IAC7D,KAAK,EAAE,SAAS;IACjC,kFAAkF;IACjE,IAAI,EAAE,MAAM,MAAM;IASrC;;;;;;;;OAQG;IACH,OAAO,CAAC,UAAU;IAKlB,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;;;;;OAMG;IACH,MAAM,IAAI,IAAI;IAId,OAAO,KAAK,OAAO,GAElB;IAED;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAOf;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAOhB,yDAAyD;IACzD,OAAO,CAAC,UAAU;IAKlB,2FAA2F;IAC3F,OAAO,CAAC,IAAI;IAUZ;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB,yEAAyE;IACzE,OAAO,CAAC,MAAM;IAcd,iFAAiF;IACjF,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../../src/gates/questions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAS,KAAK,YAAY,EAAE,KAAK,UAAU,EAAqB,MAAM,aAAa,CAAA;AAGzH,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAQhE;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,EAAE,CAyBhE;AAiBD,oGAAoG;AACpG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;IAChD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAED;;;;;;;GAOG;AACH,qBAAa,YAAY;IAoBrB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,8EAA8E;IAC9E,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,IAAI;IAvBvB,OAAO,CAAC,KAAK,CAAI;IACjB,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,KAAK,CAAK;IAClB,kDAAkD;IAClD,OAAO,CAAC,QAAQ,CAAQ;IACxB;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IACpD,OAAO,CAAC,QAAQ,CAAQ;gBAGL,SAAS,EAAE,SAAS,YAAY,EAAE;IACnD,8EAA8E;IAC7D,KAAK,EAAE,SAAS;IACjC,kFAAkF;IACjE,IAAI,EAAE,MAAM,MAAM;IASrC;;;;;;;;OAQG;IACH,OAAO,CAAC,UAAU;IAKlB,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;;;;;OAMG;IACH,MAAM,IAAI,IAAI;IAId,OAAO,KAAK,OAAO,GAElB;IAED;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAOf;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAOhB,yDAAyD;IACzD,OAAO,CAAC,UAAU;IAKlB,2FAA2F;IAC3F,OAAO,CAAC,IAAI;IAUZ;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB,yEAAyE;IACzE,OAAO,CAAC,MAAM;IAcd,iFAAiF;IACjF,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,SAAS;IAkGjD;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IA0BvB,qEAAqE;IACrE,OAAO,CAAC,OAAO;IAaf;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,MAAM;IAYd;;;;;OAKG;IACH,IAAI,IAAI,QAAQ;CAuCjB"}
|
package/lib/gates/questions.js
CHANGED
|
@@ -3,7 +3,7 @@ import { lines, CUSTOM_ROW_NUMBER } from "../gates.js";
|
|
|
3
3
|
import { CUSTOM_ROW_LABEL, CUSTOM_ROW_DESCRIPTION, CUSTOM_ROW_SHORTHAND, namedKeys, customRowExits, customHint, SECRET_ROW_LABEL, declaresSecret } from "./question-card.js";
|
|
4
4
|
import { matchesKey } from '@earendil-works/pi-tui';
|
|
5
5
|
import { matchesAction } from "../input/actions.js";
|
|
6
|
-
import { pastedText } from "../input.js";
|
|
6
|
+
import { deleteLastGrapheme, pastedText, releasedKey, typedText } from "../input.js";
|
|
7
7
|
import { matchScore } from "../input/match.js";
|
|
8
8
|
function asRecord(value) {
|
|
9
9
|
return typeof value === 'object' && value !== null ? value : undefined;
|
|
@@ -192,6 +192,8 @@ export class QuestionGate {
|
|
|
192
192
|
}
|
|
193
193
|
/** Apply one key press; returns the batch answer the first time it completes. */
|
|
194
194
|
handleKey(data) {
|
|
195
|
+
if (releasedKey(data))
|
|
196
|
+
return undefined;
|
|
195
197
|
const question = this.current;
|
|
196
198
|
if (this.finished || question === undefined)
|
|
197
199
|
return undefined;
|
|
@@ -267,7 +269,7 @@ export class QuestionGate {
|
|
|
267
269
|
this.input.handleInput(data);
|
|
268
270
|
return undefined;
|
|
269
271
|
}
|
|
270
|
-
this.typed = this.typed
|
|
272
|
+
this.typed = deleteLastGrapheme(this.typed);
|
|
271
273
|
this.cursor = 0;
|
|
272
274
|
return undefined;
|
|
273
275
|
}
|
|
@@ -275,8 +277,9 @@ export class QuestionGate {
|
|
|
275
277
|
this.absorb(' ');
|
|
276
278
|
return undefined;
|
|
277
279
|
}
|
|
278
|
-
|
|
279
|
-
|
|
280
|
+
const text = typedText(data);
|
|
281
|
+
if (question.options.length > 0 && text !== undefined && /^[0-9]$/u.test(text)) {
|
|
282
|
+
const digit = Number.parseInt(text, 10);
|
|
280
283
|
if (digit === CUSTOM_ROW_NUMBER) {
|
|
281
284
|
this.atCustom = true;
|
|
282
285
|
return undefined;
|
|
@@ -288,8 +291,8 @@ export class QuestionGate {
|
|
|
288
291
|
}
|
|
289
292
|
return undefined;
|
|
290
293
|
}
|
|
291
|
-
if (
|
|
292
|
-
this.absorb(
|
|
294
|
+
if (text !== undefined)
|
|
295
|
+
this.absorb(text);
|
|
293
296
|
return undefined;
|
|
294
297
|
}
|
|
295
298
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"questions.js","sourceRoot":"","sources":["../../src/gates/questions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"questions.js","sourceRoot":"","sources":["../../src/gates/questions.ts"],"names":[],"mappings":"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"}
|
package/lib/input/completion.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CombinedAutocompleteProvider, } from '@earendil-works/pi-tui';
|
|
2
|
-
import { atToken, atValue, offerableCandidate,
|
|
2
|
+
import { atToken, atValue, offerableCandidate, rankFilesAsync, SUGGESTION_LIMIT } from "./file-search.js";
|
|
3
3
|
import { createFileIndex } from "./file-index.js";
|
|
4
4
|
import { LOCAL_COMMANDS, LOCAL_COMMAND_DESCRIPTIONS } from "./submission.js";
|
|
5
5
|
import { renderTerminalText } from "../terminal-text.js";
|
|
@@ -69,7 +69,9 @@ class WorkspaceFileProvider extends CombinedAutocompleteProvider {
|
|
|
69
69
|
// insert is checked here as well: a row the menu cannot draw honestly,
|
|
70
70
|
// or cannot follow up on, must not reach the prompt.
|
|
71
71
|
const offerable = candidates.filter(candidate => offerableCandidate(candidate));
|
|
72
|
-
const ranked =
|
|
72
|
+
const ranked = await rankFilesAsync(token.query, offerable, SUGGESTION_LIMIT, options.signal);
|
|
73
|
+
if (options.signal.aborted)
|
|
74
|
+
return null;
|
|
73
75
|
// The listing is a snapshot, so every row is proven again as it is
|
|
74
76
|
// offered: a path the workspace no longer holds, or one whose link now
|
|
75
77
|
// points out of it, must not reach the prompt. The proofs run together so
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/input/completion.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,GAI7B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../src/input/completion.ts"],"names":[],"mappings":"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"}
|
|
@@ -62,7 +62,9 @@ export declare function offerableCandidate(candidate: Candidate): boolean;
|
|
|
62
62
|
* file — a directory is a place to keep typing, a file ends the search — then
|
|
63
63
|
* to the shallower, shorter path, which is the one the reader is likelier to
|
|
64
64
|
* mean.
|
|
65
|
+
*
|
|
66
|
+
* Cooperative scoring prevents a large live completion from taking the editor's keyboard.
|
|
65
67
|
*/
|
|
66
|
-
export declare function
|
|
68
|
+
export declare function rankFilesAsync(query: string, candidates: readonly Candidate[], limit: number, signal: AbortSignal): Promise<readonly Candidate[]>;
|
|
67
69
|
export declare function depthOf(path: string): number;
|
|
68
70
|
//# sourceMappingURL=file-search.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-search.d.ts","sourceRoot":"","sources":["../../src/input/file-search.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"file-search.d.ts","sourceRoot":"","sources":["../../src/input/file-search.ts"],"names":[],"mappings":"AAQA,oEAAoE;AACpE,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;CAC9B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CACzB;AAED,kEAAkE;AAClE,eAAO,MAAM,gBAAgB,KAAK,CAAA;AASlC;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAmBzD;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAI5E;AAyDD;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAKD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAGhE;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,SAAS,EAAE,CAAC,CAkBvJ;AAiBD,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C"}
|
package/lib/input/file-search.js
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
+
import { setImmediate } from 'node:timers/promises';
|
|
2
|
+
import { performance } from 'node:perf_hooks';
|
|
1
3
|
import { fuzzyScore } from "./fuzzy.js";
|
|
4
|
+
/** Ranking must give a newer keyboard event time to cancel obsolete work. */
|
|
5
|
+
const RANK_BATCH_SIZE = 256;
|
|
6
|
+
const RANK_SLICE_MS = 4;
|
|
2
7
|
/** Suggestions a completion menu is allowed to gather at once. */
|
|
3
8
|
export const SUGGESTION_LIMIT = 20;
|
|
4
9
|
/** Where one token ends and the next begins, as a shell reader expects. */
|
|
@@ -134,20 +139,31 @@ export function offerableCandidate(candidate) {
|
|
|
134
139
|
* file — a directory is a place to keep typing, a file ends the search — then
|
|
135
140
|
* to the shallower, shorter path, which is the one the reader is likelier to
|
|
136
141
|
* mean.
|
|
142
|
+
*
|
|
143
|
+
* Cooperative scoring prevents a large live completion from taking the editor's keyboard.
|
|
137
144
|
*/
|
|
138
|
-
export function
|
|
145
|
+
export async function rankFilesAsync(query, candidates, limit, signal) {
|
|
146
|
+
if (signal.aborted)
|
|
147
|
+
return [];
|
|
139
148
|
const needle = query.trim();
|
|
140
149
|
if (needle === '')
|
|
141
150
|
return topLevel(candidates, limit);
|
|
142
151
|
const scored = [];
|
|
152
|
+
let batch = 0;
|
|
153
|
+
let deadline = performance.now() + RANK_SLICE_MS;
|
|
143
154
|
for (const candidate of candidates) {
|
|
144
155
|
const score = fuzzyScore(needle, candidate.path);
|
|
145
|
-
if (score
|
|
146
|
-
|
|
147
|
-
|
|
156
|
+
if (score !== undefined)
|
|
157
|
+
scored.push({ candidate, score });
|
|
158
|
+
if (++batch >= RANK_BATCH_SIZE || performance.now() >= deadline) {
|
|
159
|
+
await setImmediate();
|
|
160
|
+
if (signal.aborted)
|
|
161
|
+
return [];
|
|
162
|
+
batch = 0;
|
|
163
|
+
deadline = performance.now() + RANK_SLICE_MS;
|
|
164
|
+
}
|
|
148
165
|
}
|
|
149
|
-
scored.sort((
|
|
150
|
-
return scored.slice(0, limit).map(entry => entry.candidate);
|
|
166
|
+
return scored.sort(compareScored).slice(0, limit).map(entry => entry.candidate);
|
|
151
167
|
}
|
|
152
168
|
function compareScored(left, right) {
|
|
153
169
|
if (left.score !== right.score)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-search.js","sourceRoot":"","sources":["../../src/input/file-search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"file-search.js","sourceRoot":"","sources":["../../src/input/file-search.ts"],"names":[],"mappings":"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"}
|
package/lib/input.d.ts
CHANGED
|
@@ -14,4 +14,10 @@
|
|
|
14
14
|
* before the reader saw what landed.
|
|
15
15
|
*/
|
|
16
16
|
export declare function pastedText(data: string): string | undefined;
|
|
17
|
+
/** A release must not confirm a gate, move a cursor, or insert a second copy of a key. */
|
|
18
|
+
export declare function releasedKey(data: string): boolean;
|
|
19
|
+
/** Shared decoding keeps custom filters consistent with the editor's terminal protocol. */
|
|
20
|
+
export declare function typedText(data: string): string | undefined;
|
|
21
|
+
/** UTF-16 deletion tears emoji and combining sequences into characters the reader never typed. */
|
|
22
|
+
export declare function deleteLastGrapheme(text: string): string;
|
|
17
23
|
//# sourceMappingURL=input.d.ts.map
|
package/lib/input.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../src/input.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../src/input.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAcH;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO3D;AAED,0FAA0F;AAC1F,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,2FAA2F;AAC3F,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQ1D;AAED,kGAAkG;AAClG,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIvD"}
|
package/lib/input.js
CHANGED
|
@@ -6,6 +6,12 @@
|
|
|
6
6
|
* copied; unwrapping it here keeps each surface answering for its own meaning
|
|
7
7
|
* instead of each re-deriving the same markers.
|
|
8
8
|
*/
|
|
9
|
+
import { decodeKittyPrintable, isKeyRelease } from '@earendil-works/pi-tui';
|
|
10
|
+
const KEY_SEQUENCE_START = '\x1b[';
|
|
11
|
+
const PRINTABLE_TEXT = /^[^\u0000-\u001f\u007f-\u009f]+$/u;
|
|
12
|
+
// Kitty reserves this area for functional keys, not printable filter characters.
|
|
13
|
+
const KITTY_FUNCTIONAL_TEXT = /^[\ue000-\uf8ff]$/u;
|
|
14
|
+
const GRAPHEMES = new Intl.Segmenter(undefined, { granularity: 'grapheme' });
|
|
9
15
|
/** The markers the surface wraps a paste in once the terminal reports one. */
|
|
10
16
|
const PASTE_START = '\x1b[200~';
|
|
11
17
|
const PASTE_END = '\x1b[201~';
|
|
@@ -22,6 +28,31 @@ export function pastedText(data) {
|
|
|
22
28
|
return undefined;
|
|
23
29
|
const rest = data.slice(start + PASTE_START.length);
|
|
24
30
|
const end = rest.indexOf(PASTE_END);
|
|
25
|
-
|
|
31
|
+
const text = (end === -1 ? rest : rest.slice(0, end)).replace(/[\u0000-\u001f\u007f]/gu, '');
|
|
32
|
+
return text.isWellFormed() ? text : undefined;
|
|
33
|
+
}
|
|
34
|
+
/** A release must not confirm a gate, move a cursor, or insert a second copy of a key. */
|
|
35
|
+
export function releasedKey(data) {
|
|
36
|
+
return data.startsWith(KEY_SEQUENCE_START) && isKeyRelease(data);
|
|
37
|
+
}
|
|
38
|
+
/** Shared decoding keeps custom filters consistent with the editor's terminal protocol. */
|
|
39
|
+
export function typedText(data) {
|
|
40
|
+
const paste = pastedText(data);
|
|
41
|
+
if (paste !== undefined)
|
|
42
|
+
return paste;
|
|
43
|
+
if (releasedKey(data))
|
|
44
|
+
return undefined;
|
|
45
|
+
const decoded = decodeKittyPrintable(data);
|
|
46
|
+
if (decoded !== undefined && KITTY_FUNCTIONAL_TEXT.test(decoded))
|
|
47
|
+
return undefined;
|
|
48
|
+
const text = decoded ?? data;
|
|
49
|
+
return text.isWellFormed() && PRINTABLE_TEXT.test(text) ? text : undefined;
|
|
50
|
+
}
|
|
51
|
+
/** UTF-16 deletion tears emoji and combining sequences into characters the reader never typed. */
|
|
52
|
+
export function deleteLastGrapheme(text) {
|
|
53
|
+
let last = 0;
|
|
54
|
+
for (const grapheme of GRAPHEMES.segment(text))
|
|
55
|
+
last = grapheme.index;
|
|
56
|
+
return text.slice(0, last);
|
|
26
57
|
}
|
|
27
58
|
//# sourceMappingURL=input.js.map
|
package/lib/input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.js","sourceRoot":"","sources":["../src/input.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,8EAA8E;AAC9E,MAAM,WAAW,GAAG,WAAW,CAAA;AAC/B,MAAM,SAAS,GAAG,WAAW,CAAA;AAE7B;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IACvC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,SAAS,CAAA;IAClC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACnD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACnC,
|
|
1
|
+
{"version":3,"file":"input.js","sourceRoot":"","sources":["../src/input.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE3E,MAAM,kBAAkB,GAAG,OAAO,CAAA;AAClC,MAAM,cAAc,GAAG,mCAAmC,CAAA;AAC1D,iFAAiF;AACjF,MAAM,qBAAqB,GAAG,oBAAoB,CAAA;AAClD,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAA;AAE5E,8EAA8E;AAC9E,MAAM,WAAW,GAAG,WAAW,CAAA;AAC/B,MAAM,SAAS,GAAG,WAAW,CAAA;AAE7B;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IACvC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,SAAS,CAAA;IAClC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACnD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;IAC5F,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AAC/C,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;AAClE,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IAC9B,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACrC,IAAI,WAAW,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IACvC,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAC1C,IAAI,OAAO,KAAK,SAAS,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAA;IAClF,MAAM,IAAI,GAAG,OAAO,IAAI,IAAI,CAAA;IAC5B,OAAO,IAAI,CAAC,YAAY,EAAE,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AAC5E,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAA;IACrE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AAC5B,CAAC"}
|
|
@@ -40,6 +40,7 @@ export interface ModalInput {
|
|
|
40
40
|
readonly gateCard: () => GateCard | undefined;
|
|
41
41
|
/** The card a pending picker draws in the transcript, when it draws one there. */
|
|
42
42
|
readonly pickerCard: () => PickerCard | undefined;
|
|
43
|
+
/** Busy and disposed owners fail closed with the same no-selection outcome as reader cancellation. */
|
|
43
44
|
readonly openPicker: (picker: Picker, vet?: (id: string) => Promise<string | undefined>, placement?: 'inline' | 'popup') => Promise<string | undefined>;
|
|
44
45
|
/** Drive an open gate or picker with one press; false hands the press back. */
|
|
45
46
|
readonly handleKey: (data: string) => boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal-input.d.ts","sourceRoot":"","sources":["../../src/surface/modal-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAGzD,OAAO,EAAiC,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAOhD,iFAAiF;AACjF,MAAM,WAAW,MAAM;IACrB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAA;IACjD,sFAAsF;IACtF,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;IACjC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAA;CACxC;
|
|
1
|
+
{"version":3,"file":"modal-input.d.ts","sourceRoot":"","sources":["../../src/surface/modal-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAGzD,OAAO,EAAiC,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAOhD,iFAAiF;AACjF,MAAM,WAAW,MAAM;IACrB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAA;IACjD,sFAAsF;IACtF,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;IACjC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAA;CACxC;AA4BD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAA;IAC7B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;IAC7B,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAA;IAC5B,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAA;IAClC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,MAAM,CAAA;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,uEAAuE;IACvE,QAAQ,CAAC,iBAAiB,EAAE,MAAM,IAAI,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,MAAM,SAAS,CAAA;CACxC;AAED,qFAAqF;AACrF,MAAM,WAAW,UAAU;IACzB,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,EAAE,MAAM,QAAQ,GAAG,SAAS,CAAA;IAC7C,kFAAkF;IAClF,QAAQ,CAAC,UAAU,EAAE,MAAM,UAAU,GAAG,SAAS,CAAA;IACjD,sGAAsG;IACtG,QAAQ,CAAC,UAAU,EAAE,CACnB,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,EACjD,SAAS,CAAC,EAAE,QAAQ,GAAG,OAAO,KAC3B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;IAC7C,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,EAAE,MAAM,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,CAAA;CACzD;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,GAAG,UAAU,CAyQjF"}
|
|
@@ -14,8 +14,9 @@ import { PickerPopup, POPUP_MAX_HEIGHT, popupWidth } from "../ui/picker-card.js"
|
|
|
14
14
|
export function createModalInput(ctx, ports) {
|
|
15
15
|
let pending;
|
|
16
16
|
let pendingPicker;
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
let disposed = false;
|
|
18
|
+
// One decision keeps its keyboard; disposal permanently closes admission.
|
|
19
|
+
const occupied = () => disposed || pending !== undefined || pendingPicker !== undefined;
|
|
19
20
|
const openGate = (next) => {
|
|
20
21
|
pending = next;
|
|
21
22
|
// The card's own title names the decision, which is what a reader glancing
|
|
@@ -63,38 +64,43 @@ export function createModalInput(ctx, ports) {
|
|
|
63
64
|
* that work instead, so looking something up does not cost them their place.
|
|
64
65
|
* The keyboard is owned the same way either way.
|
|
65
66
|
*/
|
|
66
|
-
const openPicker = (picker, vet, placement = 'inline') =>
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
67
|
+
const openPicker = (picker, vet, placement = 'inline') => {
|
|
68
|
+
if (occupied())
|
|
69
|
+
return Promise.resolve(undefined);
|
|
70
|
+
return new Promise(resolve => {
|
|
71
|
+
const overlay = placement === 'popup'
|
|
72
|
+
? ports.tui.showOverlay(new PickerPopup(rows => picker.card(rows), () => ports.terminal.rows, ports.theme), {
|
|
73
|
+
width: popupWidth(ports.terminal.columns),
|
|
74
|
+
maxHeight: POPUP_MAX_HEIGHT,
|
|
75
|
+
anchor: 'center',
|
|
76
|
+
margin: 1,
|
|
77
|
+
// The surface's own listener reads every press before a focused
|
|
78
|
+
// component does, so the box needs no focus to be driven; taking it
|
|
79
|
+
// would only move focus away from where the reader left it.
|
|
80
|
+
nonCapturing: true,
|
|
81
|
+
})
|
|
82
|
+
: undefined;
|
|
83
|
+
pendingPicker = {
|
|
84
|
+
picker,
|
|
85
|
+
vetting: false,
|
|
86
|
+
settle: resolve,
|
|
87
|
+
vet,
|
|
88
|
+
card: overlay === undefined ? () => picker.card() : undefined,
|
|
89
|
+
release: overlay === undefined ? undefined : () => overlay.hide(),
|
|
90
|
+
};
|
|
91
|
+
// A picker is not reported as a wait, though it owns the keyboard exactly
|
|
92
|
+
// as a gate does: the reader opened this menu themselves and is looking at
|
|
93
|
+
// it, while Herdr answers a transition into `blocked` with a
|
|
94
|
+
// needs-attention notification and its sound — in the foreground pane too.
|
|
95
|
+
// Claiming a wait for every menu would ring for the reader's own
|
|
96
|
+
// navigation, and would read as an agent stuck on a decision it never asked
|
|
97
|
+
// for. A gate is the opposite case: the agent asked, and may have asked
|
|
98
|
+
// somebody who walked away.
|
|
99
|
+
ports.editor.disableSubmit = true;
|
|
100
|
+
ports.tui.setFocus(null);
|
|
101
|
+
ports.tui.requestRender();
|
|
102
|
+
});
|
|
103
|
+
};
|
|
98
104
|
/**
|
|
99
105
|
* Read one press while a modal interaction owns the keyboard.
|
|
100
106
|
*
|
|
@@ -126,12 +132,13 @@ export function createModalInput(ctx, ports) {
|
|
|
126
132
|
return true;
|
|
127
133
|
}
|
|
128
134
|
if (pendingPicker !== undefined) {
|
|
129
|
-
const
|
|
135
|
+
const current = pendingPicker;
|
|
136
|
+
const action = current.picker.handleKey(data);
|
|
130
137
|
if (action === undefined) {
|
|
131
138
|
ports.tui.requestRender();
|
|
132
139
|
return true;
|
|
133
140
|
}
|
|
134
|
-
if (vetting) {
|
|
141
|
+
if (current.vetting) {
|
|
135
142
|
// A refusal check must not take the keyboard with it: the reader keeps
|
|
136
143
|
// filtering and can still leave, while a second pick waits for the
|
|
137
144
|
// first verdict rather than racing it.
|
|
@@ -143,12 +150,12 @@ export function createModalInput(ctx, ports) {
|
|
|
143
150
|
settlePicker(undefined);
|
|
144
151
|
return true;
|
|
145
152
|
}
|
|
146
|
-
const vet =
|
|
153
|
+
const vet = current.vet;
|
|
147
154
|
if (vet === undefined) {
|
|
148
155
|
settlePicker(action.id);
|
|
149
156
|
return true;
|
|
150
157
|
}
|
|
151
|
-
vetting = true;
|
|
158
|
+
current.vetting = true;
|
|
152
159
|
void (async () => {
|
|
153
160
|
let reason;
|
|
154
161
|
let vetCrashed = false;
|
|
@@ -163,9 +170,9 @@ export function createModalInput(ctx, ports) {
|
|
|
163
170
|
}
|
|
164
171
|
finally {
|
|
165
172
|
// A check that fails must not take the keyboard with it.
|
|
166
|
-
vetting = false;
|
|
173
|
+
current.vetting = false;
|
|
167
174
|
}
|
|
168
|
-
if (pendingPicker
|
|
175
|
+
if (pendingPicker !== current)
|
|
169
176
|
return;
|
|
170
177
|
if (vetCrashed) {
|
|
171
178
|
settlePicker(undefined);
|
|
@@ -175,13 +182,27 @@ export function createModalInput(ctx, ports) {
|
|
|
175
182
|
settlePicker(action.id);
|
|
176
183
|
return;
|
|
177
184
|
}
|
|
178
|
-
|
|
185
|
+
current.picker.setNote(reason);
|
|
179
186
|
ports.tui.requestRender();
|
|
180
187
|
})();
|
|
181
188
|
return true;
|
|
182
189
|
}
|
|
183
190
|
return false;
|
|
184
191
|
};
|
|
192
|
+
// Waiting callers must settle before an unloaded surface loses its keyboard and overlay resources.
|
|
193
|
+
ctx.effect(() => () => {
|
|
194
|
+
disposed = true;
|
|
195
|
+
if (pending !== undefined) {
|
|
196
|
+
pending.gate.cancel();
|
|
197
|
+
if (pending.kind === 'approval')
|
|
198
|
+
pending.settle('cancelled');
|
|
199
|
+
else
|
|
200
|
+
pending.settle([]);
|
|
201
|
+
closeGate();
|
|
202
|
+
}
|
|
203
|
+
if (pendingPicker !== undefined)
|
|
204
|
+
settlePicker(undefined);
|
|
205
|
+
});
|
|
185
206
|
return {
|
|
186
207
|
gateCard: () => pending?.gate.card(),
|
|
187
208
|
pickerCard: () => pendingPicker?.card?.(),
|
|
@@ -194,15 +215,24 @@ export function createModalInput(ctx, ports) {
|
|
|
194
215
|
ctx.on('approval/request', (request, next) => {
|
|
195
216
|
if (request.agent.id !== ports.activeSession())
|
|
196
217
|
return next();
|
|
218
|
+
if (occupied() || request.signal?.aborted === true)
|
|
219
|
+
return Promise.resolve('cancelled');
|
|
197
220
|
return new Promise(resolve => {
|
|
198
221
|
const gate = new ApprovalGate(request.toolName, request.reason, ports.keymap);
|
|
199
|
-
|
|
222
|
+
const settle = (outcome) => {
|
|
223
|
+
request.signal?.removeEventListener('abort', onAbort);
|
|
224
|
+
resolve(outcome);
|
|
225
|
+
};
|
|
226
|
+
const onAbort = () => {
|
|
200
227
|
gate.cancel();
|
|
201
228
|
if (pending?.gate === gate)
|
|
202
229
|
closeGate();
|
|
203
|
-
|
|
204
|
-
}
|
|
205
|
-
openGate({ kind: 'approval', gate, settle
|
|
230
|
+
settle('cancelled');
|
|
231
|
+
};
|
|
232
|
+
openGate({ kind: 'approval', gate, settle });
|
|
233
|
+
request.signal?.addEventListener('abort', onAbort, { once: true });
|
|
234
|
+
if (request.signal?.aborted === true)
|
|
235
|
+
onAbort();
|
|
206
236
|
});
|
|
207
237
|
}),
|
|
208
238
|
ctx.on('user-questions/request', (request, next) => {
|
|
@@ -212,6 +242,8 @@ export function createModalInput(ctx, ports) {
|
|
|
212
242
|
const questions = toGateQuestions(request);
|
|
213
243
|
if (questions.length === 0)
|
|
214
244
|
return next();
|
|
245
|
+
if (occupied())
|
|
246
|
+
return Promise.resolve({ answers: [] });
|
|
215
247
|
return new Promise(resolve => {
|
|
216
248
|
const gate = ports.promptBar.borrow(() => {
|
|
217
249
|
// The bar is an answer's for as long as the gate holds it, so the menu
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal-input.js","sourceRoot":"","sources":["../../src/surface/modal-input.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAkC,MAAM,aAAa,CAAA;AAC1E,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAOrD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"modal-input.js","sourceRoot":"","sources":["../../src/surface/modal-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-writes.d.ts","sourceRoot":"","sources":["../../src/terminal/host-writes.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,iEAAiE;AACjE,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;CACnC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,QAAY,CAAA;AAEzC,kEAAkE;AAClE,eAAO,MAAM,kBAAkB,+BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"host-writes.d.ts","sourceRoot":"","sources":["../../src/terminal/host-writes.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,iEAAiE;AACjE,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;CACnC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,QAAY,CAAA;AAEzC,kEAAkE;AAClE,eAAO,MAAM,kBAAkB,+BAA0B,CAAA;AAIzD,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,EAAE,SAAS,YAAY,EAAqC,CAAA;AAE3F,MAAM,WAAW,cAAc;IAC7B,2EAA2E;IAC3E,OAAO,IAAI,IAAI,CAAA;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,kFAAkF;IAClF,QAAQ,EAAE,YAAY,CAAA;IACtB,+CAA+C;IAC/C,OAAO,EAAE,SAAS,YAAY,EAAE,CAAA;IAChC,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAiHD,wBAAgB,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,cAAc,CA0BxE"}
|