@agentuity/coder-tui 2.0.8
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/README.md +57 -0
- package/dist/chain-preview.d.ts +55 -0
- package/dist/chain-preview.d.ts.map +1 -0
- package/dist/chain-preview.js +472 -0
- package/dist/chain-preview.js.map +1 -0
- package/dist/client.d.ts +44 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +411 -0
- package/dist/client.js.map +1 -0
- package/dist/commands.d.ts +22 -0
- package/dist/commands.d.ts.map +1 -0
- package/dist/commands.js +99 -0
- package/dist/commands.js.map +1 -0
- package/dist/footer.d.ts +34 -0
- package/dist/footer.d.ts.map +1 -0
- package/dist/footer.js +249 -0
- package/dist/footer.js.map +1 -0
- package/dist/handlers.d.ts +24 -0
- package/dist/handlers.d.ts.map +1 -0
- package/dist/handlers.js +83 -0
- package/dist/handlers.js.map +1 -0
- package/dist/hub-overlay-state.d.ts +31 -0
- package/dist/hub-overlay-state.d.ts.map +1 -0
- package/dist/hub-overlay-state.js +78 -0
- package/dist/hub-overlay-state.js.map +1 -0
- package/dist/hub-overlay.d.ts +146 -0
- package/dist/hub-overlay.d.ts.map +1 -0
- package/dist/hub-overlay.js +2354 -0
- package/dist/hub-overlay.js.map +1 -0
- package/dist/inbound-rpc.d.ts +3 -0
- package/dist/inbound-rpc.d.ts.map +1 -0
- package/dist/inbound-rpc.js +29 -0
- package/dist/inbound-rpc.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1641 -0
- package/dist/index.js.map +1 -0
- package/dist/native-remote-ui-context.d.ts +5 -0
- package/dist/native-remote-ui-context.d.ts.map +1 -0
- package/dist/native-remote-ui-context.js +30 -0
- package/dist/native-remote-ui-context.js.map +1 -0
- package/dist/output-viewer.d.ts +49 -0
- package/dist/output-viewer.d.ts.map +1 -0
- package/dist/output-viewer.js +389 -0
- package/dist/output-viewer.js.map +1 -0
- package/dist/overlay.d.ts +40 -0
- package/dist/overlay.d.ts.map +1 -0
- package/dist/overlay.js +225 -0
- package/dist/overlay.js.map +1 -0
- package/dist/protocol.d.ts +605 -0
- package/dist/protocol.d.ts.map +1 -0
- package/dist/protocol.js +4 -0
- package/dist/protocol.js.map +1 -0
- package/dist/remote-lifecycle.d.ts +61 -0
- package/dist/remote-lifecycle.d.ts.map +1 -0
- package/dist/remote-lifecycle.js +190 -0
- package/dist/remote-lifecycle.js.map +1 -0
- package/dist/remote-session.d.ts +130 -0
- package/dist/remote-session.d.ts.map +1 -0
- package/dist/remote-session.js +896 -0
- package/dist/remote-session.js.map +1 -0
- package/dist/remote-tui.d.ts +42 -0
- package/dist/remote-tui.d.ts.map +1 -0
- package/dist/remote-tui.js +868 -0
- package/dist/remote-tui.js.map +1 -0
- package/dist/remote-ui-handler.d.ts +5 -0
- package/dist/remote-ui-handler.d.ts.map +1 -0
- package/dist/remote-ui-handler.js +53 -0
- package/dist/remote-ui-handler.js.map +1 -0
- package/dist/renderers.d.ts +34 -0
- package/dist/renderers.d.ts.map +1 -0
- package/dist/renderers.js +669 -0
- package/dist/renderers.js.map +1 -0
- package/dist/review.d.ts +15 -0
- package/dist/review.d.ts.map +1 -0
- package/dist/review.js +154 -0
- package/dist/review.js.map +1 -0
- package/dist/titlebar.d.ts +3 -0
- package/dist/titlebar.d.ts.map +1 -0
- package/dist/titlebar.js +59 -0
- package/dist/titlebar.js.map +1 -0
- package/dist/todo/index.d.ts +3 -0
- package/dist/todo/index.d.ts.map +1 -0
- package/dist/todo/index.js +3 -0
- package/dist/todo/index.js.map +1 -0
- package/dist/todo/store.d.ts +6 -0
- package/dist/todo/store.d.ts.map +1 -0
- package/dist/todo/store.js +43 -0
- package/dist/todo/store.js.map +1 -0
- package/dist/todo/types.d.ts +13 -0
- package/dist/todo/types.d.ts.map +1 -0
- package/dist/todo/types.js +2 -0
- package/dist/todo/types.js.map +1 -0
- package/package.json +42 -0
- package/src/chain-preview.ts +621 -0
- package/src/client.ts +527 -0
- package/src/commands.ts +132 -0
- package/src/footer.ts +305 -0
- package/src/handlers.ts +113 -0
- package/src/hub-overlay-state.ts +127 -0
- package/src/hub-overlay.ts +3037 -0
- package/src/inbound-rpc.ts +35 -0
- package/src/index.ts +1963 -0
- package/src/native-remote-ui-context.ts +41 -0
- package/src/output-viewer.ts +480 -0
- package/src/overlay.ts +294 -0
- package/src/protocol.ts +758 -0
- package/src/remote-lifecycle.ts +270 -0
- package/src/remote-session.ts +1100 -0
- package/src/remote-tui.ts +1023 -0
- package/src/remote-ui-handler.ts +86 -0
- package/src/renderers.ts +740 -0
- package/src/review.ts +201 -0
- package/src/titlebar.ts +63 -0
- package/src/todo/index.ts +2 -0
- package/src/todo/store.ts +49 -0
- package/src/todo/types.ts +14 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { ExtensionContext } from '@mariozechner/pi-coding-agent';
|
|
2
|
+
import type { RpcUiRequest } from './remote-session.ts';
|
|
3
|
+
|
|
4
|
+
export const REMOTE_FIRE_AND_FORGET_UI_METHODS = new Set([
|
|
5
|
+
'notify',
|
|
6
|
+
'setStatus',
|
|
7
|
+
'setWidget',
|
|
8
|
+
'setTitle',
|
|
9
|
+
'set_editor_text',
|
|
10
|
+
]);
|
|
11
|
+
|
|
12
|
+
export async function handleRemoteUiRequest(
|
|
13
|
+
ctx: ExtensionContext,
|
|
14
|
+
request: RpcUiRequest
|
|
15
|
+
): Promise<unknown> {
|
|
16
|
+
if (!ctx.hasUI) {
|
|
17
|
+
return REMOTE_FIRE_AND_FORGET_UI_METHODS.has(request.method) ? undefined : null;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const ui = ctx.ui;
|
|
21
|
+
|
|
22
|
+
switch (request.method) {
|
|
23
|
+
case 'select': {
|
|
24
|
+
const options = Array.isArray(request.params.options)
|
|
25
|
+
? request.params.options.filter(
|
|
26
|
+
(option): option is string => typeof option === 'string'
|
|
27
|
+
)
|
|
28
|
+
: [];
|
|
29
|
+
const title = (request.params.title as string) ?? 'Select';
|
|
30
|
+
return (await ui.select(title, options)) ?? null;
|
|
31
|
+
}
|
|
32
|
+
case 'confirm':
|
|
33
|
+
return await ui.confirm(
|
|
34
|
+
(request.params.title as string) ?? 'Confirm?',
|
|
35
|
+
(request.params.message as string) ?? 'Confirm?'
|
|
36
|
+
);
|
|
37
|
+
case 'input':
|
|
38
|
+
return (
|
|
39
|
+
(await ui.input(
|
|
40
|
+
(request.params.title as string) ?? 'Input',
|
|
41
|
+
(request.params.placeholder as string) ?? ''
|
|
42
|
+
)) ?? null
|
|
43
|
+
);
|
|
44
|
+
case 'editor':
|
|
45
|
+
return (
|
|
46
|
+
(await ui.editor(
|
|
47
|
+
(request.params.title as string) ?? 'Editor',
|
|
48
|
+
(request.params.prefill as string) ?? ''
|
|
49
|
+
)) ?? null
|
|
50
|
+
);
|
|
51
|
+
case 'notify':
|
|
52
|
+
ui.notify(
|
|
53
|
+
(request.params.message as string) ?? '',
|
|
54
|
+
(request.params.notifyType as 'info' | 'warning' | 'error' | undefined) ?? 'info'
|
|
55
|
+
);
|
|
56
|
+
return undefined;
|
|
57
|
+
case 'setStatus':
|
|
58
|
+
ui.setStatus(
|
|
59
|
+
(request.params.statusKey as string) ?? 'remote',
|
|
60
|
+
(request.params.statusText as string | undefined) ?? undefined
|
|
61
|
+
);
|
|
62
|
+
return undefined;
|
|
63
|
+
case 'setWidget': {
|
|
64
|
+
const widgetLines = Array.isArray(request.params.widgetLines)
|
|
65
|
+
? request.params.widgetLines.filter((line): line is string => typeof line === 'string')
|
|
66
|
+
: undefined;
|
|
67
|
+
const widgetPlacement = request.params.widgetPlacement;
|
|
68
|
+
ui.setWidget(
|
|
69
|
+
(request.params.widgetKey as string) ?? 'remote_widget',
|
|
70
|
+
widgetLines,
|
|
71
|
+
widgetPlacement === 'aboveEditor' || widgetPlacement === 'belowEditor'
|
|
72
|
+
? { placement: widgetPlacement }
|
|
73
|
+
: undefined
|
|
74
|
+
);
|
|
75
|
+
return undefined;
|
|
76
|
+
}
|
|
77
|
+
case 'setTitle':
|
|
78
|
+
ui.setTitle((request.params.title as string) ?? '');
|
|
79
|
+
return undefined;
|
|
80
|
+
case 'set_editor_text':
|
|
81
|
+
ui.setEditorText((request.params.text as string) ?? '');
|
|
82
|
+
return undefined;
|
|
83
|
+
default:
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
}
|