@roackb2/heddle 0.0.36 → 0.0.38

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 (245) hide show
  1. package/README.md +2 -0
  2. package/dist/examples/repo-investigator.js +1 -2
  3. package/dist/examples/repo-investigator.js.map +1 -1
  4. package/dist/src/cli/ask.d.ts.map +1 -1
  5. package/dist/src/cli/ask.js +11 -0
  6. package/dist/src/cli/ask.js.map +1 -1
  7. package/dist/src/cli/chat/App.d.ts.map +1 -1
  8. package/dist/src/cli/chat/App.js +123 -93
  9. package/dist/src/cli/chat/App.js.map +1 -1
  10. package/dist/src/cli/chat/components/ModelPickerPanel.d.ts +2 -1
  11. package/dist/src/cli/chat/components/ModelPickerPanel.d.ts.map +1 -1
  12. package/dist/src/cli/chat/components/ModelPickerPanel.js +8 -4
  13. package/dist/src/cli/chat/components/ModelPickerPanel.js.map +1 -1
  14. package/dist/src/cli/chat/components/PromptInput.d.ts +5 -0
  15. package/dist/src/cli/chat/components/PromptInput.d.ts.map +1 -1
  16. package/dist/src/cli/chat/components/PromptInput.js +131 -85
  17. package/dist/src/cli/chat/components/PromptInput.js.map +1 -1
  18. package/dist/src/cli/chat/debug/tui-debug-snapshot.d.ts +2 -1
  19. package/dist/src/cli/chat/debug/tui-debug-snapshot.d.ts.map +1 -1
  20. package/dist/src/cli/chat/debug/tui-debug-snapshot.js +14 -1
  21. package/dist/src/cli/chat/debug/tui-debug-snapshot.js.map +1 -1
  22. package/dist/src/cli/chat/hooks/tui-agent-turn-lifecycle.d.ts +6 -0
  23. package/dist/src/cli/chat/hooks/tui-agent-turn-lifecycle.d.ts.map +1 -0
  24. package/dist/src/cli/chat/hooks/tui-agent-turn-lifecycle.js +38 -0
  25. package/dist/src/cli/chat/hooks/tui-agent-turn-lifecycle.js.map +1 -0
  26. package/dist/src/cli/chat/hooks/tui-agent-turn-result.d.ts +48 -0
  27. package/dist/src/cli/chat/hooks/tui-agent-turn-result.d.ts.map +1 -0
  28. package/dist/src/cli/chat/hooks/tui-agent-turn-result.js +171 -0
  29. package/dist/src/cli/chat/hooks/tui-agent-turn-result.js.map +1 -0
  30. package/dist/src/cli/chat/hooks/tui-compaction-status.d.ts +24 -0
  31. package/dist/src/cli/chat/hooks/tui-compaction-status.d.ts.map +1 -0
  32. package/dist/src/cli/chat/hooks/tui-compaction-status.js +65 -0
  33. package/dist/src/cli/chat/hooks/tui-compaction-status.js.map +1 -0
  34. package/dist/src/cli/chat/hooks/tui-direct-shell-result.d.ts +28 -0
  35. package/dist/src/cli/chat/hooks/tui-direct-shell-result.d.ts.map +1 -0
  36. package/dist/src/cli/chat/hooks/tui-direct-shell-result.js +41 -0
  37. package/dist/src/cli/chat/hooks/tui-direct-shell-result.js.map +1 -0
  38. package/dist/src/cli/chat/hooks/tui-direct-shell.d.ts +22 -0
  39. package/dist/src/cli/chat/hooks/tui-direct-shell.d.ts.map +1 -0
  40. package/dist/src/cli/chat/hooks/tui-direct-shell.js +127 -0
  41. package/dist/src/cli/chat/hooks/tui-direct-shell.js.map +1 -0
  42. package/dist/src/cli/chat/hooks/tui-drift-observer.d.ts +13 -0
  43. package/dist/src/cli/chat/hooks/tui-drift-observer.d.ts.map +1 -0
  44. package/dist/src/cli/chat/hooks/tui-drift-observer.js +36 -0
  45. package/dist/src/cli/chat/hooks/tui-drift-observer.js.map +1 -0
  46. package/dist/src/cli/chat/hooks/tui-ordinary-turn.d.ts +31 -0
  47. package/dist/src/cli/chat/hooks/tui-ordinary-turn.d.ts.map +1 -0
  48. package/dist/src/cli/chat/hooks/tui-ordinary-turn.js +82 -0
  49. package/dist/src/cli/chat/hooks/tui-ordinary-turn.js.map +1 -0
  50. package/dist/src/cli/chat/hooks/tui-run-loop-events.d.ts +23 -0
  51. package/dist/src/cli/chat/hooks/tui-run-loop-events.d.ts.map +1 -0
  52. package/dist/src/cli/chat/hooks/tui-run-loop-events.js +74 -0
  53. package/dist/src/cli/chat/hooks/tui-run-loop-events.js.map +1 -0
  54. package/dist/src/cli/chat/hooks/tui-tool-approval.d.ts +8 -0
  55. package/dist/src/cli/chat/hooks/tui-tool-approval.d.ts.map +1 -0
  56. package/dist/src/cli/chat/hooks/tui-tool-approval.js +37 -0
  57. package/dist/src/cli/chat/hooks/tui-tool-approval.js.map +1 -0
  58. package/dist/src/cli/chat/hooks/useAgentRun.d.ts +1 -1
  59. package/dist/src/cli/chat/hooks/useAgentRun.d.ts.map +1 -1
  60. package/dist/src/cli/chat/hooks/useAgentRun.js +59 -551
  61. package/dist/src/cli/chat/hooks/useAgentRun.js.map +1 -1
  62. package/dist/src/cli/chat/hooks/useApprovalFlow.d.ts.map +1 -1
  63. package/dist/src/cli/chat/hooks/useApprovalFlow.js +3 -3
  64. package/dist/src/cli/chat/hooks/useApprovalFlow.js.map +1 -1
  65. package/dist/src/cli/chat/hooks/useChatPickers.d.ts +6 -3
  66. package/dist/src/cli/chat/hooks/useChatPickers.d.ts.map +1 -1
  67. package/dist/src/cli/chat/hooks/useChatPickers.js +17 -4
  68. package/dist/src/cli/chat/hooks/useChatPickers.js.map +1 -1
  69. package/dist/src/cli/chat/hooks/useChatSessions.d.ts +1 -1
  70. package/dist/src/cli/chat/hooks/useChatSessions.d.ts.map +1 -1
  71. package/dist/src/cli/chat/hooks/useChatSessions.js +23 -20
  72. package/dist/src/cli/chat/hooks/useChatSessions.js.map +1 -1
  73. package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts +58 -0
  74. package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts.map +1 -0
  75. package/dist/src/cli/chat/hooks/useChatStatusSummary.js +85 -0
  76. package/dist/src/cli/chat/hooks/useChatStatusSummary.js.map +1 -0
  77. package/dist/src/cli/chat/hooks/usePromptSubmission.d.ts +2 -1
  78. package/dist/src/cli/chat/hooks/usePromptSubmission.d.ts.map +1 -1
  79. package/dist/src/cli/chat/hooks/usePromptSubmission.js +5 -1
  80. package/dist/src/cli/chat/hooks/usePromptSubmission.js.map +1 -1
  81. package/dist/src/cli/chat/state/local-commands.d.ts +2 -0
  82. package/dist/src/cli/chat/state/local-commands.d.ts.map +1 -1
  83. package/dist/src/cli/chat/state/local-commands.js +17 -3
  84. package/dist/src/cli/chat/state/local-commands.js.map +1 -1
  85. package/dist/src/cli/chat/submit.d.ts.map +1 -1
  86. package/dist/src/cli/chat/submit.js +13 -1
  87. package/dist/src/cli/chat/submit.js.map +1 -1
  88. package/dist/src/cli/chat/utils/format.d.ts.map +1 -1
  89. package/dist/src/cli/chat/utils/format.js +21 -0
  90. package/dist/src/cli/chat/utils/format.js.map +1 -1
  91. package/dist/src/cli/chat/utils/runtime.d.ts.map +1 -1
  92. package/dist/src/cli/chat/utils/runtime.js +5 -3
  93. package/dist/src/cli/chat/utils/runtime.js.map +1 -1
  94. package/dist/src/cli/eval/index.d.ts +24 -0
  95. package/dist/src/cli/eval/index.d.ts.map +1 -0
  96. package/dist/src/cli/eval/index.js +232 -0
  97. package/dist/src/cli/eval/index.js.map +1 -0
  98. package/dist/src/cli/main.js +25 -3
  99. package/dist/src/cli/main.js.map +1 -1
  100. package/dist/src/cli/remote/control-plane-client.d.ts +5 -1
  101. package/dist/src/cli/remote/control-plane-client.d.ts.map +1 -1
  102. package/dist/src/core/agent/mutation-tracking.d.ts +0 -7
  103. package/dist/src/core/agent/mutation-tracking.d.ts.map +1 -1
  104. package/dist/src/core/agent/mutation-tracking.js +5 -63
  105. package/dist/src/core/agent/mutation-tracking.js.map +1 -1
  106. package/dist/src/core/agent/post-mutation.d.ts +2 -2
  107. package/dist/src/core/agent/post-mutation.d.ts.map +1 -1
  108. package/dist/src/core/agent/post-mutation.js +5 -20
  109. package/dist/src/core/agent/post-mutation.js.map +1 -1
  110. package/dist/src/core/agent/progress-reminders.d.ts +1 -4
  111. package/dist/src/core/agent/progress-reminders.d.ts.map +1 -1
  112. package/dist/src/core/agent/progress-reminders.js +4 -56
  113. package/dist/src/core/agent/progress-reminders.js.map +1 -1
  114. package/dist/src/core/agent/run-agent.d.ts.map +1 -1
  115. package/dist/src/core/agent/run-agent.js +3 -103
  116. package/dist/src/core/agent/run-agent.js.map +1 -1
  117. package/dist/src/core/agent/tool-dispatch.js +3 -2
  118. package/dist/src/core/agent/tool-dispatch.js.map +1 -1
  119. package/dist/src/core/chat/ordinary-turn.d.ts +34 -0
  120. package/dist/src/core/chat/ordinary-turn.d.ts.map +1 -0
  121. package/dist/src/core/chat/ordinary-turn.js +274 -0
  122. package/dist/src/core/chat/ordinary-turn.js.map +1 -0
  123. package/dist/src/core/chat/session-submit.d.ts +4 -4
  124. package/dist/src/core/chat/session-submit.d.ts.map +1 -1
  125. package/dist/src/core/chat/session-submit.js +22 -282
  126. package/dist/src/core/chat/session-submit.js.map +1 -1
  127. package/dist/src/core/chat/session-title.d.ts +15 -0
  128. package/dist/src/core/chat/session-title.d.ts.map +1 -0
  129. package/dist/src/core/chat/session-title.js +17 -0
  130. package/dist/src/core/chat/session-title.js.map +1 -0
  131. package/dist/src/core/chat/session-turn-preflight.d.ts +37 -0
  132. package/dist/src/core/chat/session-turn-preflight.d.ts.map +1 -0
  133. package/dist/src/core/chat/session-turn-preflight.js +43 -0
  134. package/dist/src/core/chat/session-turn-preflight.js.map +1 -0
  135. package/dist/src/core/chat/session-turn-result.d.ts +36 -0
  136. package/dist/src/core/chat/session-turn-result.d.ts.map +1 -0
  137. package/dist/src/core/chat/session-turn-result.js +60 -0
  138. package/dist/src/core/chat/session-turn-result.js.map +1 -0
  139. package/dist/src/core/chat/tool-approval-host.d.ts +22 -0
  140. package/dist/src/core/chat/tool-approval-host.d.ts.map +1 -0
  141. package/dist/src/core/chat/tool-approval-host.js +14 -0
  142. package/dist/src/core/chat/tool-approval-host.js.map +1 -0
  143. package/dist/src/core/chat/turn-host.d.ts +25 -0
  144. package/dist/src/core/chat/turn-host.d.ts.map +1 -0
  145. package/dist/src/core/chat/turn-host.js +2 -0
  146. package/dist/src/core/chat/turn-host.js.map +1 -0
  147. package/dist/src/core/chat/types.d.ts +1 -0
  148. package/dist/src/core/chat/types.d.ts.map +1 -1
  149. package/dist/src/core/config.d.ts +1 -1
  150. package/dist/src/core/config.d.ts.map +1 -1
  151. package/dist/src/core/config.js +1 -1
  152. package/dist/src/core/config.js.map +1 -1
  153. package/dist/src/core/eval/agent-runner.d.ts +24 -0
  154. package/dist/src/core/eval/agent-runner.d.ts.map +1 -0
  155. package/dist/src/core/eval/agent-runner.js +151 -0
  156. package/dist/src/core/eval/agent-runner.js.map +1 -0
  157. package/dist/src/core/eval/case-loader.d.ts +7 -0
  158. package/dist/src/core/eval/case-loader.d.ts.map +1 -0
  159. package/dist/src/core/eval/case-loader.js +34 -0
  160. package/dist/src/core/eval/case-loader.js.map +1 -0
  161. package/dist/src/core/eval/check-runner.d.ts +8 -0
  162. package/dist/src/core/eval/check-runner.d.ts.map +1 -0
  163. package/dist/src/core/eval/check-runner.js +33 -0
  164. package/dist/src/core/eval/check-runner.js.map +1 -0
  165. package/dist/src/core/eval/cleanup.d.ts +20 -0
  166. package/dist/src/core/eval/cleanup.d.ts.map +1 -0
  167. package/dist/src/core/eval/cleanup.js +42 -0
  168. package/dist/src/core/eval/cleanup.js.map +1 -0
  169. package/dist/src/core/eval/git-artifacts.d.ts +26 -0
  170. package/dist/src/core/eval/git-artifacts.d.ts.map +1 -0
  171. package/dist/src/core/eval/git-artifacts.js +211 -0
  172. package/dist/src/core/eval/git-artifacts.js.map +1 -0
  173. package/dist/src/core/eval/process.d.ts +22 -0
  174. package/dist/src/core/eval/process.d.ts.map +1 -0
  175. package/dist/src/core/eval/process.js +65 -0
  176. package/dist/src/core/eval/process.js.map +1 -0
  177. package/dist/src/core/eval/progress.d.ts +28 -0
  178. package/dist/src/core/eval/progress.d.ts.map +1 -0
  179. package/dist/src/core/eval/progress.js +94 -0
  180. package/dist/src/core/eval/progress.js.map +1 -0
  181. package/dist/src/core/eval/report-writer.d.ts +7 -0
  182. package/dist/src/core/eval/report-writer.d.ts.map +1 -0
  183. package/dist/src/core/eval/report-writer.js +159 -0
  184. package/dist/src/core/eval/report-writer.js.map +1 -0
  185. package/dist/src/core/eval/schema.d.ts +206 -0
  186. package/dist/src/core/eval/schema.d.ts.map +1 -0
  187. package/dist/src/core/eval/schema.js +104 -0
  188. package/dist/src/core/eval/schema.js.map +1 -0
  189. package/dist/src/core/eval/trace-analyzer.d.ts +6 -0
  190. package/dist/src/core/eval/trace-analyzer.d.ts.map +1 -0
  191. package/dist/src/core/eval/trace-analyzer.js +106 -0
  192. package/dist/src/core/eval/trace-analyzer.js.map +1 -0
  193. package/dist/src/core/eval/workspace-fixture.d.ts +14 -0
  194. package/dist/src/core/eval/workspace-fixture.d.ts.map +1 -0
  195. package/dist/src/core/eval/workspace-fixture.js +235 -0
  196. package/dist/src/core/eval/workspace-fixture.js.map +1 -0
  197. package/dist/src/core/llm/model-policy.d.ts +26 -0
  198. package/dist/src/core/llm/model-policy.d.ts.map +1 -1
  199. package/dist/src/core/llm/model-policy.js +47 -0
  200. package/dist/src/core/llm/model-policy.js.map +1 -1
  201. package/dist/src/core/memory/domain-prompt.d.ts.map +1 -1
  202. package/dist/src/core/memory/domain-prompt.js +48 -40
  203. package/dist/src/core/memory/domain-prompt.js.map +1 -1
  204. package/dist/src/core/prompts/system-prompt.d.ts +1 -1
  205. package/dist/src/core/prompts/system-prompt.d.ts.map +1 -1
  206. package/dist/src/core/prompts/system-prompt.js +19 -100
  207. package/dist/src/core/prompts/system-prompt.js.map +1 -1
  208. package/dist/src/core/runtime/agent-loop.d.ts.map +1 -1
  209. package/dist/src/core/runtime/agent-loop.js +9 -3
  210. package/dist/src/core/runtime/agent-loop.js.map +1 -1
  211. package/dist/src/core/runtime/default-tools.d.ts.map +1 -1
  212. package/dist/src/core/runtime/default-tools.js +1 -2
  213. package/dist/src/core/runtime/default-tools.js.map +1 -1
  214. package/dist/src/core/tools/file-edit-core.d.ts.map +1 -1
  215. package/dist/src/core/tools/file-edit-core.js +21 -2
  216. package/dist/src/core/tools/file-edit-core.js.map +1 -1
  217. package/dist/src/index.d.ts +0 -1
  218. package/dist/src/index.d.ts.map +1 -1
  219. package/dist/src/index.js +0 -1
  220. package/dist/src/index.js.map +1 -1
  221. package/dist/src/server/features/control-plane/router.d.ts +5 -1
  222. package/dist/src/server/features/control-plane/router.d.ts.map +1 -1
  223. package/dist/src/server/features/control-plane/router.js +16 -2
  224. package/dist/src/server/features/control-plane/router.js.map +1 -1
  225. package/dist/src/server/features/control-plane/services/chat-session-events.d.ts +26 -0
  226. package/dist/src/server/features/control-plane/services/chat-session-events.d.ts.map +1 -0
  227. package/dist/src/server/features/control-plane/services/chat-session-events.js +61 -0
  228. package/dist/src/server/features/control-plane/services/chat-session-events.js.map +1 -0
  229. package/dist/src/server/features/control-plane/services/chat-sessions.d.ts +2 -1
  230. package/dist/src/server/features/control-plane/services/chat-sessions.d.ts.map +1 -1
  231. package/dist/src/server/features/control-plane/services/chat-sessions.js +30 -42
  232. package/dist/src/server/features/control-plane/services/chat-sessions.js.map +1 -1
  233. package/dist/src/server/router.d.ts +5 -1
  234. package/dist/src/server/router.d.ts.map +1 -1
  235. package/dist/src/web/assets/{MonacoDiffViewer-DM8Cy5Xf.js → MonacoDiffViewer-DP7GeCEC.js} +1 -1
  236. package/dist/src/web/assets/index-CYd4sslC.css +2 -0
  237. package/dist/src/web/assets/index-PUxjg447.js +56 -0
  238. package/dist/src/web/index.html +2 -2
  239. package/package.json +7 -2
  240. package/dist/src/core/tools/report-state.d.ts +0 -3
  241. package/dist/src/core/tools/report-state.d.ts.map +0 -1
  242. package/dist/src/core/tools/report-state.js +0 -63
  243. package/dist/src/core/tools/report-state.js.map +0 -1
  244. package/dist/src/web/assets/index-BEeN-RT5.css +0 -2
  245. package/dist/src/web/assets/index-BKDg9H_-.js +0 -56
@@ -1,102 +1,47 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useMemo } from 'react';
2
+ import { useEffect, useMemo, useRef } from 'react';
3
3
  import { Box, Text, useInput } from 'ink';
4
4
  const DEFAULT_MAX_VISIBLE_INPUT_LINES = 8;
5
5
  const FALLBACK_WRAP_WIDTH = 80;
6
6
  export function PromptInput({ value, isDisabled, placeholder, maxVisibleLines = DEFAULT_MAX_VISIBLE_INPUT_LINES, cursor, onChange, onCursorChange, onSubmit, onSpecialKey, }) {
7
+ const valueRef = useRef(value);
8
+ const cursorRef = useRef(cursor);
9
+ useEffect(() => {
10
+ valueRef.current = value;
11
+ }, [value]);
12
+ useEffect(() => {
13
+ cursorRef.current = cursor;
14
+ }, [cursor]);
15
+ const applyDraft = (nextValue, nextCursor) => {
16
+ valueRef.current = nextValue;
17
+ cursorRef.current = nextCursor;
18
+ onChange(nextValue);
19
+ onCursorChange(nextCursor);
20
+ };
7
21
  useInput((input, key) => {
8
22
  if (isDisabled) {
9
23
  return;
10
24
  }
25
+ const state = {
26
+ value: valueRef.current,
27
+ cursor: Math.min(cursorRef.current, valueRef.current.length),
28
+ };
29
+ const actions = {
30
+ applyDraft,
31
+ moveCursor: (nextCursor) => {
32
+ cursorRef.current = nextCursor;
33
+ onCursorChange(nextCursor);
34
+ },
35
+ onSubmit,
36
+ };
11
37
  if (onSpecialKey?.({ input, key })) {
12
38
  return;
13
39
  }
14
- if (key.return && !key.shift) {
15
- onSubmit(value);
40
+ const command = resolvePromptInputCommand(input, key);
41
+ if (!command) {
16
42
  return;
17
43
  }
18
- if (key.return && key.shift) {
19
- onChange(insertAtCursor(value, cursor, '\n'));
20
- onCursorChange(cursor + 1);
21
- return;
22
- }
23
- if (key.meta && key.backspace) {
24
- const nextCursor = findPreviousWordBoundary(value, cursor);
25
- onChange(removeRange(value, nextCursor, cursor));
26
- onCursorChange(nextCursor);
27
- return;
28
- }
29
- if (key.ctrl && input === 'u') {
30
- onChange(value.slice(cursor));
31
- onCursorChange(0);
32
- return;
33
- }
34
- if (key.ctrl && input === 'k') {
35
- onChange(value.slice(0, cursor));
36
- return;
37
- }
38
- if (key.ctrl && input === 'a') {
39
- onCursorChange(0);
40
- return;
41
- }
42
- if (key.ctrl && input === 'e') {
43
- onCursorChange(value.length);
44
- return;
45
- }
46
- if (key.ctrl && input === 'w') {
47
- const nextCursor = findPreviousWordBoundary(value, cursor);
48
- onChange(removeRange(value, nextCursor, cursor));
49
- onCursorChange(nextCursor);
50
- return;
51
- }
52
- if (key.meta && input === 'b') {
53
- onCursorChange(findPreviousWordBoundary(value, cursor));
54
- return;
55
- }
56
- if (key.meta && input === 'f') {
57
- onCursorChange(findNextWordBoundary(value, cursor));
58
- return;
59
- }
60
- if (key.backspace || key.delete) {
61
- if (cursor === 0) {
62
- return;
63
- }
64
- onChange(removeRange(value, cursor - 1, cursor));
65
- onCursorChange(cursor - 1);
66
- return;
67
- }
68
- if (key.meta && key.leftArrow) {
69
- onCursorChange(findPreviousWordBoundary(value, cursor));
70
- return;
71
- }
72
- if (key.meta && key.rightArrow) {
73
- onCursorChange(findNextWordBoundary(value, cursor));
74
- return;
75
- }
76
- if (key.leftArrow) {
77
- onCursorChange(Math.max(0, cursor - 1));
78
- return;
79
- }
80
- if (key.rightArrow) {
81
- onCursorChange(Math.min(value.length, cursor + 1));
82
- return;
83
- }
84
- if (key.home) {
85
- onCursorChange(0);
86
- return;
87
- }
88
- if (key.end) {
89
- onCursorChange(value.length);
90
- return;
91
- }
92
- if (key.ctrl || key.meta || key.escape || key.tab) {
93
- return;
94
- }
95
- if (!input) {
96
- return;
97
- }
98
- onChange(insertAtCursor(value, cursor, input));
99
- onCursorChange(cursor + input.length);
44
+ handlePromptInputCommand(command, state, actions);
100
45
  }, { isActive: !isDisabled });
101
46
  const lines = useMemo(() => buildPromptRenderLines(value, cursor, maxVisibleLines), [value, cursor, maxVisibleLines]);
102
47
  if (!value) {
@@ -106,6 +51,107 @@ export function PromptInput({ value, isDisabled, placeholder, maxVisibleLines =
106
51
  _jsxs(_Fragment, { children: [line.before, _jsx(Text, { inverse: true, children: line.cursor }), line.after] })
107
52
  : (line.before || ' ') }, `${index}-${line.before}-${line.cursor}-${line.after}-${line.hasCursor}`))) }));
108
53
  }
54
+ const CTRL_COMMANDS = new Map([
55
+ ['a', { kind: 'move', direction: 'start' }],
56
+ ['e', { kind: 'move', direction: 'end' }],
57
+ ['k', { kind: 'deleteAfterCursor' }],
58
+ ['u', { kind: 'deleteBeforeCursor' }],
59
+ ['w', { kind: 'deletePreviousWord' }],
60
+ ]);
61
+ const META_TEXT_COMMANDS = new Map([
62
+ ['b', { kind: 'move', direction: 'previousWord' }],
63
+ ['f', { kind: 'move', direction: 'nextWord' }],
64
+ ]);
65
+ export function insertPromptText(state, input) {
66
+ return {
67
+ value: insertAtCursor(state.value, state.cursor, input),
68
+ cursor: state.cursor + input.length,
69
+ };
70
+ }
71
+ function resolvePromptInputCommand(input, key) {
72
+ if (key.return) {
73
+ return key.shift ? { kind: 'insert', input: '\n' } : { kind: 'submit' };
74
+ }
75
+ if (key.ctrl && input) {
76
+ return CTRL_COMMANDS.get(input);
77
+ }
78
+ if (key.meta && input) {
79
+ return META_TEXT_COMMANDS.get(input);
80
+ }
81
+ if (key.meta && key.backspace) {
82
+ return { kind: 'deletePreviousWord' };
83
+ }
84
+ if (key.backspace || key.delete) {
85
+ return { kind: 'deletePreviousChar' };
86
+ }
87
+ if (key.meta && key.leftArrow) {
88
+ return { kind: 'move', direction: 'previousWord' };
89
+ }
90
+ if (key.meta && key.rightArrow) {
91
+ return { kind: 'move', direction: 'nextWord' };
92
+ }
93
+ if (key.leftArrow) {
94
+ return { kind: 'move', direction: 'previousChar' };
95
+ }
96
+ if (key.rightArrow) {
97
+ return { kind: 'move', direction: 'nextChar' };
98
+ }
99
+ if (key.home) {
100
+ return { kind: 'move', direction: 'start' };
101
+ }
102
+ if (key.end) {
103
+ return { kind: 'move', direction: 'end' };
104
+ }
105
+ if (key.ctrl || key.meta || key.escape || key.tab || !input) {
106
+ return undefined;
107
+ }
108
+ return { kind: 'insert', input };
109
+ }
110
+ function handlePromptInputCommand(command, state, actions) {
111
+ const applyState = (next) => actions.applyDraft(next.value, next.cursor);
112
+ switch (command.kind) {
113
+ case 'submit':
114
+ actions.onSubmit(state.value);
115
+ return;
116
+ case 'insert':
117
+ applyState(insertPromptText(state, command.input));
118
+ return;
119
+ case 'deletePreviousChar':
120
+ if (state.cursor > 0) {
121
+ applyState({ value: removeRange(state.value, state.cursor - 1, state.cursor), cursor: state.cursor - 1 });
122
+ }
123
+ return;
124
+ case 'deletePreviousWord': {
125
+ const nextCursor = findPreviousWordBoundary(state.value, state.cursor);
126
+ applyState({ value: removeRange(state.value, nextCursor, state.cursor), cursor: nextCursor });
127
+ return;
128
+ }
129
+ case 'deleteBeforeCursor':
130
+ applyState({ value: state.value.slice(state.cursor), cursor: 0 });
131
+ return;
132
+ case 'deleteAfterCursor':
133
+ applyState({ value: state.value.slice(0, state.cursor), cursor: state.cursor });
134
+ return;
135
+ case 'move':
136
+ actions.moveCursor(resolvePromptCursorMove(state, command.direction));
137
+ }
138
+ }
139
+ function resolvePromptCursorMove(state, direction) {
140
+ switch (direction) {
141
+ case 'start':
142
+ return 0;
143
+ case 'end':
144
+ return state.value.length;
145
+ case 'previousChar':
146
+ return Math.max(0, state.cursor - 1);
147
+ case 'nextChar':
148
+ return Math.min(state.value.length, state.cursor + 1);
149
+ case 'previousWord':
150
+ return findPreviousWordBoundary(state.value, state.cursor);
151
+ case 'nextWord':
152
+ return findNextWordBoundary(state.value, state.cursor);
153
+ }
154
+ }
109
155
  export function buildPromptRenderLines(value, cursor, maxVisibleLines, width = FALLBACK_WRAP_WIDTH) {
110
156
  const rawLines = value.split('\n');
111
157
  const rendered = [];
@@ -1 +1 @@
1
- {"version":3,"file":"PromptInput.js","sourceRoot":"","sources":["../../../../../src/cli/chat/components/PromptInput.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PromptInput.js","sourceRoot":"","sources":["../../../../../src/cli/chat/components/PromptInput.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type CredentialAwareModelOption } from '../../../core/llm/model-policy.js';
1
2
  import type { ChatSession, ConversationLine, PendingApproval } from '../state/types.js';
2
3
  type ActiveTurnSnapshot = {
3
4
  title: string;
@@ -26,7 +27,7 @@ export declare function buildTuiDebugSnapshot(args: {
26
27
  modelPicker?: {
27
28
  visible: boolean;
28
29
  query?: string;
29
- items: string[];
30
+ items: CredentialAwareModelOption[];
30
31
  highlightedIndex: number;
31
32
  };
32
33
  sessionPicker?: {
@@ -1 +1 @@
1
- {"version":3,"file":"tui-debug-snapshot.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/debug/tui-debug-snapshot.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGxF,KAAK,kBAAkB,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,CAAC,EAAE,SAAS,GAAG,eAAe,GAAG,MAAM,CAAC;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,aAAa,CAAC,EAAE;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC3C,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,iBAAiB,CAAC,EAAE;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH,GAAG,MAAM,CAuGT"}
1
+ {"version":3,"file":"tui-debug-snapshot.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/debug/tui-debug-snapshot.ts"],"names":[],"mappings":"AACA,OAAO,EAAiC,KAAK,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAEnH,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGxF,KAAK,kBAAkB,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,cAAc,CAAC,EAAE,SAAS,GAAG,eAAe,GAAG,MAAM,CAAC;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,0BAA0B,EAAE,CAAC;QACpC,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,aAAa,CAAC,EAAE;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC3C,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,iBAAiB,CAAC,EAAE;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH,GAAG,MAAM,CA0GT"}
@@ -1,4 +1,5 @@
1
1
  import { buildPromptRenderLines } from '../components/PromptInput.js';
2
+ import { OPENAI_OAUTH_MODE_DESCRIPTION } from '../../../core/llm/model-policy.js';
2
3
  import { getLocalCommandHints } from '../state/local-commands.js';
3
4
  import { formatApprovalHint, summarizePendingApproval, truncate } from '../utils/format.js';
4
5
  export function buildTuiDebugSnapshot(args) {
@@ -62,7 +63,10 @@ export function buildTuiDebugSnapshot(args) {
62
63
  if (args.modelPicker?.visible) {
63
64
  lines.push('Model picker');
64
65
  lines.push(args.modelPicker.query ? `Search: ${args.modelPicker.query}` : 'Type after /model set to filter. Use ↑/↓ or Tab to choose.');
65
- lines.push(...renderPickerLines(args.modelPicker.items, args.modelPicker.highlightedIndex));
66
+ if (args.modelPicker.items.some((item) => item.disabled)) {
67
+ lines.push(OPENAI_OAUTH_MODE_DESCRIPTION);
68
+ }
69
+ lines.push(...renderCredentialAwareModelPickerLines(args.modelPicker.items, args.modelPicker.highlightedIndex));
66
70
  lines.push('');
67
71
  }
68
72
  if (args.sessionPicker?.visible) {
@@ -97,6 +101,15 @@ function renderPickerLines(items, highlightedIndex) {
97
101
  }
98
102
  return items.slice(0, 8).map((item, index) => `${index === highlightedIndex ? '◉' : '○'} ${item}`);
99
103
  }
104
+ function renderCredentialAwareModelPickerLines(items, highlightedIndex) {
105
+ if (items.length === 0) {
106
+ return ['No matching entries.'];
107
+ }
108
+ return items.slice(0, 8).map((item, index) => {
109
+ const suffix = item.disabled ? ` (${item.disabledReason ?? 'Not supported'})` : '';
110
+ return `${index === highlightedIndex ? '◉' : '○'} ${item.id}${suffix}`;
111
+ });
112
+ }
100
113
  function indentLines(lines) {
101
114
  return lines.map((line) => ` ${line || ' '}`);
102
115
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tui-debug-snapshot.js","sourceRoot":"","sources":["../../../../../src/cli/chat/debug/tui-debug-snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui-debug-snapshot.js","sourceRoot":"","sources":["../../../../../src/cli/chat/debug/tui-debug-snapshot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { ActionState } from './useAgentRun.js';
2
+ export declare function beginTuiAgentTurn(state: ActionState): AbortController;
3
+ export declare function finishTuiAgentTurn(state: ActionState): void;
4
+ export declare function beginTuiDirectShellAction(state: ActionState, command: string): AbortController;
5
+ export declare function finishTuiDirectShellAction(state: ActionState): void;
6
+ //# sourceMappingURL=tui-agent-turn-lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui-agent-turn-lifecycle.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/tui-agent-turn-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,eAAe,CASrE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,QAEpD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,eAAe,CAM9F;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,WAAW,QAI5D"}
@@ -0,0 +1,38 @@
1
+ export function beginTuiAgentTurn(state) {
2
+ const abortController = beginTuiRunningAction(state);
3
+ state.setLiveEvents([]);
4
+ state.setCurrentEditPreview(undefined);
5
+ state.setCurrentPlan(undefined);
6
+ state.setCurrentAssistantText(undefined);
7
+ return abortController;
8
+ }
9
+ export function finishTuiAgentTurn(state) {
10
+ finishTuiRunningAction(state);
11
+ }
12
+ export function beginTuiDirectShellAction(state, command) {
13
+ const abortController = beginTuiRunningAction(state);
14
+ state.setLiveEvents([{ id: state.nextLocalId(), text: `running direct shell (${command})` }]);
15
+ return abortController;
16
+ }
17
+ export function finishTuiDirectShellAction(state) {
18
+ state.setPendingApproval(undefined);
19
+ state.setApprovalChoice('approve');
20
+ finishTuiRunningAction(state);
21
+ }
22
+ function beginTuiRunningAction(state) {
23
+ const abortController = new AbortController();
24
+ state.setError(undefined);
25
+ state.setIsRunning(true);
26
+ state.setStatus('Running');
27
+ state.interruptRequestedRef.current = false;
28
+ state.setInterruptRequested(false);
29
+ state.abortControllerRef.current = abortController;
30
+ return abortController;
31
+ }
32
+ function finishTuiRunningAction(state) {
33
+ state.setIsRunning(false);
34
+ state.interruptRequestedRef.current = false;
35
+ state.setInterruptRequested(false);
36
+ state.abortControllerRef.current = undefined;
37
+ }
38
+ //# sourceMappingURL=tui-agent-turn-lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui-agent-turn-lifecycle.js","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/tui-agent-turn-lifecycle.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,iBAAiB,CAAC,KAAkB;IAClD,MAAM,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAErD,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACxB,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACvC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAChC,KAAK,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAEzC,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAkB;IACnD,sBAAsB,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,KAAkB,EAAE,OAAe;IAC3E,MAAM,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAErD,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,yBAAyB,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC;IAE9F,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAkB;IAC3D,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACpC,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACnC,sBAAsB,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAkB;IAC/C,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAE9C,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC1B,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACzB,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC3B,KAAK,CAAC,qBAAqB,CAAC,OAAO,GAAG,KAAK,CAAC;IAC5C,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACnC,KAAK,CAAC,kBAAkB,CAAC,OAAO,GAAG,eAAe,CAAC;IAEnD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAkB;IAChD,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC1B,KAAK,CAAC,qBAAqB,CAAC,OAAO,GAAG,KAAK,CAAC;IAC5C,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACnC,KAAK,CAAC,kBAAkB,CAAC,OAAO,GAAG,SAAS,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { ChatMessage, LlmAdapter, RunResult } from '../../../index.js';
2
+ import type { ChatSession } from '../state/types.js';
3
+ import type { ChatRuntimeConfig } from '../utils/runtime.js';
4
+ import type { ActionState } from './useAgentRun.js';
5
+ import type { TuiCompactionStatusEvent } from './tui-compaction-status.js';
6
+ type SessionUpdater = (sessionId: string, updater: (session: ChatSession) => ChatSession) => void;
7
+ export declare function adaptPersistedTuiOrdinaryTurn(args: {
8
+ session: ChatSession;
9
+ displayText?: string;
10
+ outcome: RunResult['outcome'];
11
+ }): ChatSession;
12
+ export declare function applyTuiAgentTurnResult(args: {
13
+ result: RunResult;
14
+ prompt: string;
15
+ sessionId: string;
16
+ historyForRun: ChatMessage[];
17
+ toolNames: string[];
18
+ runtime: ChatRuntimeConfig;
19
+ llm: LlmAdapter;
20
+ state: ActionState;
21
+ updateSessionById: SessionUpdater;
22
+ maybeAutoNameSession: (sessionId: string, prompt: string, responseText: string) => void;
23
+ emitCompactionStatus: (event: TuiCompactionStatusEvent, sourceHistory: RunResult['transcript']) => void;
24
+ }): Promise<void>;
25
+ export declare function finalizeSuccessfulTuiOrdinaryTurn(args: {
26
+ persistedSession: ChatSession;
27
+ displayText?: string;
28
+ outcome: RunResult['outcome'];
29
+ prompt: string;
30
+ sessionId: string;
31
+ state: ActionState;
32
+ maybeAutoNameSession: (sessionId: string, prompt: string, responseText: string) => void;
33
+ updateSessionById: SessionUpdater;
34
+ }): {
35
+ session: ChatSession;
36
+ summaryText: string;
37
+ latestHistory: ChatMessage[];
38
+ };
39
+ export declare function applyTuiAgentTurnFailure(args: {
40
+ error: unknown;
41
+ promptHistory: RunResult['transcript'];
42
+ model: string;
43
+ state: ActionState;
44
+ sessionId: string;
45
+ updateSessionById: SessionUpdater;
46
+ }): Promise<void>;
47
+ export {};
48
+ //# sourceMappingURL=tui-agent-turn-result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui-agent-turn-result.d.ts","sourceRoot":"","sources":["../../../../../src/cli/chat/hooks/tui-agent-turn-result.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAK5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAE3E,KAAK,cAAc,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,WAAW,KAAK,IAAI,CAAC;AAElG,wBAAgB,6BAA6B,CAAC,IAAI,EAAE;IAClD,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC/B,GAAG,WAAW,CAiBd;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,WAAW,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,GAAG,EAAE,UAAU,CAAC;IAChB,KAAK,EAAE,WAAW,CAAC;IACnB,iBAAiB,EAAE,cAAc,CAAC;IAClC,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACxF,oBAAoB,EAAE,CAAC,KAAK,EAAE,wBAAwB,EAAE,aAAa,EAAE,SAAS,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;CACzG,GAAG,OAAO,CAAC,IAAI,CAAC,CAoEhB;AAED,wBAAgB,iCAAiC,CAAC,IAAI,EAAE;IACtD,gBAAgB,EAAE,WAAW,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,WAAW,CAAC;IACnB,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACxF,iBAAiB,EAAE,cAAc,CAAC;CACnC;;;;EAoCA;AAED,wBAAsB,wBAAwB,CAAC,IAAI,EAAE;IACnD,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,cAAc,CAAC;CACnC,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBhB"}