@quantiya/codevibe-core 2.0.82 → 2.0.83
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.
|
@@ -33981,8 +33981,12 @@ function InputBar(props) {
|
|
|
33981
33981
|
let completed = pick2.name + " ";
|
|
33982
33982
|
return commit(completed, completed.length), setDism(!0), setHl(0), !0;
|
|
33983
33983
|
}, [liveSuggestions, commit, setDism, setHl]), doSubmit = React18.useCallback(() => {
|
|
33984
|
-
if (gatePromptMode?.kind === "submitting") return;
|
|
33985
33984
|
let text2 = valueRef.current;
|
|
33985
|
+
if (gatePromptMode?.kind === "submitting") {
|
|
33986
|
+
let exit = text2.trim() === "/exit";
|
|
33987
|
+
commit("", 0), setErrorHint(exit ? null : "Decision pending \u2014 only /exit is available"), exit && props.onSubmit("/exit");
|
|
33988
|
+
return;
|
|
33989
|
+
}
|
|
33986
33990
|
if (gatePromptMode?.kind === "awaiting-number") {
|
|
33987
33991
|
let trimmed = text2.trim();
|
|
33988
33992
|
if (trimmed.startsWith("/")) {
|
|
@@ -34058,7 +34062,7 @@ function InputBar(props) {
|
|
|
34058
34062
|
[gatePromptMode, commit, setHl, setDism]
|
|
34059
34063
|
), handleKey = React18.useCallback(
|
|
34060
34064
|
(input, key) => {
|
|
34061
|
-
if (key.ctrl) return;
|
|
34065
|
+
if (key.ctrl || gatePromptMode?.kind === "submitting" && key.escape) return;
|
|
34062
34066
|
let live = liveSuggestions();
|
|
34063
34067
|
if (live.length > 0) {
|
|
34064
34068
|
let n = live.length;
|
|
@@ -34104,13 +34108,11 @@ function InputBar(props) {
|
|
|
34104
34108
|
}
|
|
34105
34109
|
input && input.length > 0 && applyPaste(input);
|
|
34106
34110
|
},
|
|
34107
|
-
[liveSuggestions, completeToHighlighted, doSubmit, commit, applyPaste, setHl, setDism]
|
|
34108
|
-
), latestRef = React18.useRef({ handleKey, applyPaste
|
|
34109
|
-
latestRef.current = { handleKey, applyPaste
|
|
34111
|
+
[liveSuggestions, completeToHighlighted, doSubmit, commit, applyPaste, setHl, setDism, gatePromptMode]
|
|
34112
|
+
), latestRef = React18.useRef({ handleKey, applyPaste });
|
|
34113
|
+
latestRef.current = { handleKey, applyPaste };
|
|
34110
34114
|
let onRawChunk = React18.useCallback((chunk) => {
|
|
34111
|
-
let { handleKey: hk, applyPaste: fp
|
|
34112
|
-
if (mode?.kind === "submitting") return;
|
|
34113
|
-
let buf = endTailRef.current + chunk;
|
|
34115
|
+
let { handleKey: hk, applyPaste: fp } = latestRef.current, buf = endTailRef.current + chunk;
|
|
34114
34116
|
endTailRef.current = "";
|
|
34115
34117
|
let i = 0;
|
|
34116
34118
|
for (; i < buf.length; )
|
|
@@ -34146,7 +34148,7 @@ function InputBar(props) {
|
|
|
34146
34148
|
pasteActiveRef.current = !0, pasteBufRef.current = "", i = s + PASTE_START.length;
|
|
34147
34149
|
}
|
|
34148
34150
|
}, []);
|
|
34149
|
-
|
|
34151
|
+
React18.useEffect(() => {
|
|
34150
34152
|
let emitter = internal_eventEmitter;
|
|
34151
34153
|
if (emitter)
|
|
34152
34154
|
return emitter.on("input", onRawChunk), () => {
|
|
@@ -34157,24 +34159,9 @@ function InputBar(props) {
|
|
|
34157
34159
|
origin2 && setRowOrigin(
|
|
34158
34160
|
(prev) => prev && prev.left === origin2.left && prev.top === origin2.top ? prev : origin2
|
|
34159
34161
|
);
|
|
34160
|
-
})
|
|
34161
|
-
return setCursorPosition(void 0), React18.createElement(
|
|
34162
|
-
Box,
|
|
34163
|
-
{
|
|
34164
|
-
flexDirection: "row",
|
|
34165
|
-
borderStyle: "round",
|
|
34166
|
-
borderColor: getAccent(),
|
|
34167
|
-
paddingX: 1
|
|
34168
|
-
},
|
|
34169
|
-
React18.createElement(Text, { color: getAccent() }, "\u276F "),
|
|
34170
|
-
React18.createElement(
|
|
34171
|
-
Text,
|
|
34172
|
-
{ dimColor: !0, italic: !0 },
|
|
34173
|
-
"submitting\u2026"
|
|
34174
|
-
)
|
|
34175
|
-
);
|
|
34162
|
+
});
|
|
34176
34163
|
let placeholder = props.placeholder ?? "";
|
|
34177
|
-
gatePromptMode?.kind === "awaiting-number" ? placeholder = gatePromptMode.taskLabel ? `Type a number 1..${gatePromptMode.maxOption} \xB7 ${gatePromptMode.taskLabel}` : `Type a number 1..${gatePromptMode.maxOption}` : gatePromptMode?.kind === "awaiting-notes"
|
|
34164
|
+
gatePromptMode?.kind === "awaiting-number" ? placeholder = gatePromptMode.taskLabel ? `Type a number 1..${gatePromptMode.maxOption} \xB7 ${gatePromptMode.taskLabel}` : `Type a number 1..${gatePromptMode.maxOption}` : gatePromptMode?.kind === "awaiting-notes" ? placeholder = "Type your notes + Enter" : gatePromptMode?.kind === "submitting" && (placeholder = "submitting\u2026 \xB7 /exit to leave");
|
|
34178
34165
|
let shown = displayValue(value), cur = clampCursor2(cursor, shown.length), valueWidth = Math.max(1, columns - 6), win = computeInputWindow(shown, cur, valueWidth, scrollRef.current);
|
|
34179
34166
|
scrollRef.current = win.scroll;
|
|
34180
34167
|
let origin = rowOrigin ?? { left: 0, top: 0 };
|
|
@@ -83102,7 +83089,14 @@ async function runOrchestrationShellSession(args) {
|
|
|
83102
83089
|
{
|
|
83103
83090
|
receiveDesktopEvents: !0,
|
|
83104
83091
|
onSupervisionEvent: (event) => {
|
|
83105
|
-
|
|
83092
|
+
if (event.sessionId === args.session.sessionId) {
|
|
83093
|
+
if (event.type === "INTERACTIVE_PROMPT") {
|
|
83094
|
+
if (event.source !== "DESKTOP" || event.emittedBy !== "SYSTEM" || event.writerAuthenticated !== !1) return;
|
|
83095
|
+
subscribedEventDispatcher(event);
|
|
83096
|
+
return;
|
|
83097
|
+
}
|
|
83098
|
+
classifyDurableGateResolution(event, args.session.sessionId) && subscribedEventDispatcher(event);
|
|
83099
|
+
}
|
|
83106
83100
|
},
|
|
83107
83101
|
onSubscribed: (isReconnect) => {
|
|
83108
83102
|
initialCatchUpStarted = !0, catchUpDurableGateTimeline(isReconnect).then(() => settleInitialSubscription()).catch((error) => {
|
|
@@ -108,7 +108,7 @@ export interface InputBarProps {
|
|
|
108
108
|
/** Initial value (used for history recall). */
|
|
109
109
|
initialValue?: string;
|
|
110
110
|
/**
|
|
111
|
-
* CP-8 min Wave 1B. When non-null, restricts
|
|
111
|
+
* CP-8 min Wave 1B. When non-null, restricts submission per the
|
|
112
112
|
* gate-prompt mode; when null, normal text-input behavior. See module
|
|
113
113
|
* docstring for the four states.
|
|
114
114
|
*/
|
package/package.json
CHANGED