@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.
Files changed (117) hide show
  1. package/README.md +57 -0
  2. package/dist/chain-preview.d.ts +55 -0
  3. package/dist/chain-preview.d.ts.map +1 -0
  4. package/dist/chain-preview.js +472 -0
  5. package/dist/chain-preview.js.map +1 -0
  6. package/dist/client.d.ts +44 -0
  7. package/dist/client.d.ts.map +1 -0
  8. package/dist/client.js +411 -0
  9. package/dist/client.js.map +1 -0
  10. package/dist/commands.d.ts +22 -0
  11. package/dist/commands.d.ts.map +1 -0
  12. package/dist/commands.js +99 -0
  13. package/dist/commands.js.map +1 -0
  14. package/dist/footer.d.ts +34 -0
  15. package/dist/footer.d.ts.map +1 -0
  16. package/dist/footer.js +249 -0
  17. package/dist/footer.js.map +1 -0
  18. package/dist/handlers.d.ts +24 -0
  19. package/dist/handlers.d.ts.map +1 -0
  20. package/dist/handlers.js +83 -0
  21. package/dist/handlers.js.map +1 -0
  22. package/dist/hub-overlay-state.d.ts +31 -0
  23. package/dist/hub-overlay-state.d.ts.map +1 -0
  24. package/dist/hub-overlay-state.js +78 -0
  25. package/dist/hub-overlay-state.js.map +1 -0
  26. package/dist/hub-overlay.d.ts +146 -0
  27. package/dist/hub-overlay.d.ts.map +1 -0
  28. package/dist/hub-overlay.js +2354 -0
  29. package/dist/hub-overlay.js.map +1 -0
  30. package/dist/inbound-rpc.d.ts +3 -0
  31. package/dist/inbound-rpc.d.ts.map +1 -0
  32. package/dist/inbound-rpc.js +29 -0
  33. package/dist/inbound-rpc.js.map +1 -0
  34. package/dist/index.d.ts +4 -0
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js +1641 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/native-remote-ui-context.d.ts +5 -0
  39. package/dist/native-remote-ui-context.d.ts.map +1 -0
  40. package/dist/native-remote-ui-context.js +30 -0
  41. package/dist/native-remote-ui-context.js.map +1 -0
  42. package/dist/output-viewer.d.ts +49 -0
  43. package/dist/output-viewer.d.ts.map +1 -0
  44. package/dist/output-viewer.js +389 -0
  45. package/dist/output-viewer.js.map +1 -0
  46. package/dist/overlay.d.ts +40 -0
  47. package/dist/overlay.d.ts.map +1 -0
  48. package/dist/overlay.js +225 -0
  49. package/dist/overlay.js.map +1 -0
  50. package/dist/protocol.d.ts +605 -0
  51. package/dist/protocol.d.ts.map +1 -0
  52. package/dist/protocol.js +4 -0
  53. package/dist/protocol.js.map +1 -0
  54. package/dist/remote-lifecycle.d.ts +61 -0
  55. package/dist/remote-lifecycle.d.ts.map +1 -0
  56. package/dist/remote-lifecycle.js +190 -0
  57. package/dist/remote-lifecycle.js.map +1 -0
  58. package/dist/remote-session.d.ts +130 -0
  59. package/dist/remote-session.d.ts.map +1 -0
  60. package/dist/remote-session.js +896 -0
  61. package/dist/remote-session.js.map +1 -0
  62. package/dist/remote-tui.d.ts +42 -0
  63. package/dist/remote-tui.d.ts.map +1 -0
  64. package/dist/remote-tui.js +868 -0
  65. package/dist/remote-tui.js.map +1 -0
  66. package/dist/remote-ui-handler.d.ts +5 -0
  67. package/dist/remote-ui-handler.d.ts.map +1 -0
  68. package/dist/remote-ui-handler.js +53 -0
  69. package/dist/remote-ui-handler.js.map +1 -0
  70. package/dist/renderers.d.ts +34 -0
  71. package/dist/renderers.d.ts.map +1 -0
  72. package/dist/renderers.js +669 -0
  73. package/dist/renderers.js.map +1 -0
  74. package/dist/review.d.ts +15 -0
  75. package/dist/review.d.ts.map +1 -0
  76. package/dist/review.js +154 -0
  77. package/dist/review.js.map +1 -0
  78. package/dist/titlebar.d.ts +3 -0
  79. package/dist/titlebar.d.ts.map +1 -0
  80. package/dist/titlebar.js +59 -0
  81. package/dist/titlebar.js.map +1 -0
  82. package/dist/todo/index.d.ts +3 -0
  83. package/dist/todo/index.d.ts.map +1 -0
  84. package/dist/todo/index.js +3 -0
  85. package/dist/todo/index.js.map +1 -0
  86. package/dist/todo/store.d.ts +6 -0
  87. package/dist/todo/store.d.ts.map +1 -0
  88. package/dist/todo/store.js +43 -0
  89. package/dist/todo/store.js.map +1 -0
  90. package/dist/todo/types.d.ts +13 -0
  91. package/dist/todo/types.d.ts.map +1 -0
  92. package/dist/todo/types.js +2 -0
  93. package/dist/todo/types.js.map +1 -0
  94. package/package.json +42 -0
  95. package/src/chain-preview.ts +621 -0
  96. package/src/client.ts +527 -0
  97. package/src/commands.ts +132 -0
  98. package/src/footer.ts +305 -0
  99. package/src/handlers.ts +113 -0
  100. package/src/hub-overlay-state.ts +127 -0
  101. package/src/hub-overlay.ts +3037 -0
  102. package/src/inbound-rpc.ts +35 -0
  103. package/src/index.ts +1963 -0
  104. package/src/native-remote-ui-context.ts +41 -0
  105. package/src/output-viewer.ts +480 -0
  106. package/src/overlay.ts +294 -0
  107. package/src/protocol.ts +758 -0
  108. package/src/remote-lifecycle.ts +270 -0
  109. package/src/remote-session.ts +1100 -0
  110. package/src/remote-tui.ts +1023 -0
  111. package/src/remote-ui-handler.ts +86 -0
  112. package/src/renderers.ts +740 -0
  113. package/src/review.ts +201 -0
  114. package/src/titlebar.ts +63 -0
  115. package/src/todo/index.ts +2 -0
  116. package/src/todo/store.ts +49 -0
  117. 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
+ }