@deepseek-harness-tui/dsh-tui 0.5.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.
Files changed (638) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +235 -0
  3. package/bin/dsh-tui.js +95 -0
  4. package/cordis.patch.yml +218 -0
  5. package/cordis.yml +185 -0
  6. package/lib/invariant.js +28 -0
  7. package/lib/types/activityPrefs.d.ts +29 -0
  8. package/lib/types/activityPrefs.d.ts.map +1 -0
  9. package/lib/types/activityPrefs.js +60 -0
  10. package/lib/types/bootstrap/state.d.ts +13 -0
  11. package/lib/types/bootstrap/state.d.ts.map +1 -0
  12. package/lib/types/bootstrap/state.js +12 -0
  13. package/lib/types/cc/cliHighlight.d.ts +20 -0
  14. package/lib/types/cc/cliHighlight.d.ts.map +1 -0
  15. package/lib/types/cc/cliHighlight.js +53 -0
  16. package/lib/types/cc/figures.d.ts +59 -0
  17. package/lib/types/cc/figures.d.ts.map +1 -0
  18. package/lib/types/cc/figures.js +69 -0
  19. package/lib/types/cc/format.d.ts +26 -0
  20. package/lib/types/cc/format.d.ts.map +1 -0
  21. package/lib/types/cc/format.js +55 -0
  22. package/lib/types/cc/hash.d.ts +25 -0
  23. package/lib/types/cc/hash.d.ts.map +1 -0
  24. package/lib/types/cc/hash.js +41 -0
  25. package/lib/types/cc/hyperlink.d.ts +21 -0
  26. package/lib/types/cc/hyperlink.d.ts.map +1 -0
  27. package/lib/types/cc/hyperlink.js +31 -0
  28. package/lib/types/cc/markdown.d.ts +43 -0
  29. package/lib/types/cc/markdown.d.ts.map +1 -0
  30. package/lib/types/cc/markdown.js +345 -0
  31. package/lib/types/cc/spinnerVerbs.d.ts +3 -0
  32. package/lib/types/cc/spinnerVerbs.d.ts.map +1 -0
  33. package/lib/types/cc/spinnerVerbs.js +190 -0
  34. package/lib/types/cc/terminal.d.ts +15 -0
  35. package/lib/types/cc/terminal.d.ts.map +1 -0
  36. package/lib/types/cc/terminal.js +84 -0
  37. package/lib/types/channel.d.ts +672 -0
  38. package/lib/types/channel.d.ts.map +1 -0
  39. package/lib/types/channel.js +2427 -0
  40. package/lib/types/childStderr.d.ts +63 -0
  41. package/lib/types/childStderr.d.ts.map +1 -0
  42. package/lib/types/childStderr.js +161 -0
  43. package/lib/types/commands.d.ts +55 -0
  44. package/lib/types/commands.d.ts.map +1 -0
  45. package/lib/types/commands.js +101 -0
  46. package/lib/types/components/ActivityLine.d.ts +29 -0
  47. package/lib/types/components/ActivityLine.d.ts.map +1 -0
  48. package/lib/types/components/ActivityLine.js +47 -0
  49. package/lib/types/components/ActivityPicker.d.ts +13 -0
  50. package/lib/types/components/ActivityPicker.d.ts.map +1 -0
  51. package/lib/types/components/ActivityPicker.js +24 -0
  52. package/lib/types/components/CommandSuggestions.d.ts +14 -0
  53. package/lib/types/components/CommandSuggestions.d.ts.map +1 -0
  54. package/lib/types/components/CommandSuggestions.js +33 -0
  55. package/lib/types/components/FileSuggestions.d.ts +12 -0
  56. package/lib/types/components/FileSuggestions.d.ts.map +1 -0
  57. package/lib/types/components/FileSuggestions.js +26 -0
  58. package/lib/types/components/GoalTodoPanel.d.ts +13 -0
  59. package/lib/types/components/GoalTodoPanel.d.ts.map +1 -0
  60. package/lib/types/components/GoalTodoPanel.js +57 -0
  61. package/lib/types/components/HelpMenu.d.ts +12 -0
  62. package/lib/types/components/HelpMenu.d.ts.map +1 -0
  63. package/lib/types/components/HelpMenu.js +12 -0
  64. package/lib/types/components/HistorySearchDialog.d.ts +16 -0
  65. package/lib/types/components/HistorySearchDialog.d.ts.map +1 -0
  66. package/lib/types/components/HistorySearchDialog.js +31 -0
  67. package/lib/types/components/InterruptedByUser.d.ts +7 -0
  68. package/lib/types/components/InterruptedByUser.d.ts.map +1 -0
  69. package/lib/types/components/InterruptedByUser.js +9 -0
  70. package/lib/types/components/LoadedContextPanel.d.ts +20 -0
  71. package/lib/types/components/LoadedContextPanel.d.ts.map +1 -0
  72. package/lib/types/components/LoadedContextPanel.js +30 -0
  73. package/lib/types/components/LogoV2.d.ts +23 -0
  74. package/lib/types/components/LogoV2.d.ts.map +1 -0
  75. package/lib/types/components/LogoV2.js +95 -0
  76. package/lib/types/components/Markdown.d.ts +24 -0
  77. package/lib/types/components/Markdown.d.ts.map +1 -0
  78. package/lib/types/components/Markdown.js +106 -0
  79. package/lib/types/components/MarkdownTable.d.ts +17 -0
  80. package/lib/types/components/MarkdownTable.d.ts.map +1 -0
  81. package/lib/types/components/MarkdownTable.js +272 -0
  82. package/lib/types/components/MessageList.d.ts +41 -0
  83. package/lib/types/components/MessageList.d.ts.map +1 -0
  84. package/lib/types/components/MessageList.js +303 -0
  85. package/lib/types/components/ModelPicker.d.ts +14 -0
  86. package/lib/types/components/ModelPicker.d.ts.map +1 -0
  87. package/lib/types/components/ModelPicker.js +15 -0
  88. package/lib/types/components/PresetPicker.d.ts +17 -0
  89. package/lib/types/components/PresetPicker.d.ts.map +1 -0
  90. package/lib/types/components/PresetPicker.js +25 -0
  91. package/lib/types/components/PromptInput.d.ts +67 -0
  92. package/lib/types/components/PromptInput.d.ts.map +1 -0
  93. package/lib/types/components/PromptInput.js +778 -0
  94. package/lib/types/components/ResumePicker.d.ts +15 -0
  95. package/lib/types/components/ResumePicker.d.ts.map +1 -0
  96. package/lib/types/components/ResumePicker.js +34 -0
  97. package/lib/types/components/RewindPicker.d.ts +14 -0
  98. package/lib/types/components/RewindPicker.d.ts.map +1 -0
  99. package/lib/types/components/RewindPicker.js +23 -0
  100. package/lib/types/components/SearchBox.d.ts +20 -0
  101. package/lib/types/components/SearchBox.d.ts.map +1 -0
  102. package/lib/types/components/SearchBox.js +33 -0
  103. package/lib/types/components/Select.d.ts +22 -0
  104. package/lib/types/components/Select.d.ts.map +1 -0
  105. package/lib/types/components/Select.js +19 -0
  106. package/lib/types/components/Spinner/GlimmerMessage.d.ts +19 -0
  107. package/lib/types/components/Spinner/GlimmerMessage.d.ts.map +1 -0
  108. package/lib/types/components/Spinner/GlimmerMessage.js +78 -0
  109. package/lib/types/components/Spinner/SpinnerAnimationRow.d.ts +31 -0
  110. package/lib/types/components/Spinner/SpinnerAnimationRow.d.ts.map +1 -0
  111. package/lib/types/components/Spinner/SpinnerAnimationRow.js +162 -0
  112. package/lib/types/components/Spinner/SpinnerGlyph.d.ts +16 -0
  113. package/lib/types/components/Spinner/SpinnerGlyph.d.ts.map +1 -0
  114. package/lib/types/components/Spinner/SpinnerGlyph.js +36 -0
  115. package/lib/types/components/Spinner/spinnerMode.d.ts +6 -0
  116. package/lib/types/components/Spinner/spinnerMode.d.ts.map +1 -0
  117. package/lib/types/components/Spinner/spinnerMode.js +1 -0
  118. package/lib/types/components/Spinner/spinnerUtils.d.ts +41 -0
  119. package/lib/types/components/Spinner/spinnerUtils.d.ts.map +1 -0
  120. package/lib/types/components/Spinner/spinnerUtils.js +104 -0
  121. package/lib/types/components/Spinner/useStalledAnimation.d.ts +16 -0
  122. package/lib/types/components/Spinner/useStalledAnimation.d.ts.map +1 -0
  123. package/lib/types/components/Spinner/useStalledAnimation.js +71 -0
  124. package/lib/types/components/StreamingMarkdown.d.ts +12 -0
  125. package/lib/types/components/StreamingMarkdown.d.ts.map +1 -0
  126. package/lib/types/components/StreamingMarkdown.js +39 -0
  127. package/lib/types/components/ThemePicker.d.ts +22 -0
  128. package/lib/types/components/ThemePicker.d.ts.map +1 -0
  129. package/lib/types/components/ThemePicker.js +51 -0
  130. package/lib/types/components/ThinkingToggle.d.ts +17 -0
  131. package/lib/types/components/ThinkingToggle.d.ts.map +1 -0
  132. package/lib/types/components/ThinkingToggle.js +30 -0
  133. package/lib/types/components/ToolUseLoader.d.ts +13 -0
  134. package/lib/types/components/ToolUseLoader.d.ts.map +1 -0
  135. package/lib/types/components/ToolUseLoader.js +17 -0
  136. package/lib/types/components/Whale.d.ts +22 -0
  137. package/lib/types/components/Whale.d.ts.map +1 -0
  138. package/lib/types/components/Whale.js +78 -0
  139. package/lib/types/components/WorkingSpinner.d.ts +26 -0
  140. package/lib/types/components/WorkingSpinner.d.ts.map +1 -0
  141. package/lib/types/components/WorkingSpinner.js +68 -0
  142. package/lib/types/components/activityFrames.d.ts +31 -0
  143. package/lib/types/components/activityFrames.d.ts.map +1 -0
  144. package/lib/types/components/activityFrames.js +83 -0
  145. package/lib/types/components/bigfont.d.ts +28 -0
  146. package/lib/types/components/bigfont.d.ts.map +1 -0
  147. package/lib/types/components/bigfont.js +91 -0
  148. package/lib/types/components/design-system/Byline.d.ts +14 -0
  149. package/lib/types/components/design-system/Byline.d.ts.map +1 -0
  150. package/lib/types/components/design-system/Byline.js +17 -0
  151. package/lib/types/components/design-system/Divider.d.ts +40 -0
  152. package/lib/types/components/design-system/Divider.d.ts.map +1 -0
  153. package/lib/types/components/design-system/Divider.js +24 -0
  154. package/lib/types/components/design-system/KeyboardShortcutHint.d.ts +19 -0
  155. package/lib/types/components/design-system/KeyboardShortcutHint.d.ts.map +1 -0
  156. package/lib/types/components/design-system/KeyboardShortcutHint.js +14 -0
  157. package/lib/types/components/design-system/ListItem.d.ts +36 -0
  158. package/lib/types/components/design-system/ListItem.d.ts.map +1 -0
  159. package/lib/types/components/design-system/ListItem.js +48 -0
  160. package/lib/types/components/design-system/LoadingState.d.ts +19 -0
  161. package/lib/types/components/design-system/LoadingState.d.ts.map +1 -0
  162. package/lib/types/components/design-system/LoadingState.js +22 -0
  163. package/lib/types/components/design-system/Pane.d.ts +17 -0
  164. package/lib/types/components/design-system/Pane.d.ts.map +1 -0
  165. package/lib/types/components/design-system/Pane.js +15 -0
  166. package/lib/types/components/design-system/ProgressBar.d.ts +22 -0
  167. package/lib/types/components/design-system/ProgressBar.d.ts.map +1 -0
  168. package/lib/types/components/design-system/ProgressBar.js +27 -0
  169. package/lib/types/components/design-system/StatusIcon.d.ts +15 -0
  170. package/lib/types/components/design-system/StatusIcon.d.ts.map +1 -0
  171. package/lib/types/components/design-system/StatusIcon.js +20 -0
  172. package/lib/types/components/design-system/ThemeProvider.d.ts +11 -0
  173. package/lib/types/components/design-system/ThemeProvider.d.ts.map +1 -0
  174. package/lib/types/components/design-system/ThemeProvider.js +135 -0
  175. package/lib/types/components/design-system/ThemedBox.d.ts +37 -0
  176. package/lib/types/components/design-system/ThemedBox.d.ts.map +1 -0
  177. package/lib/types/components/design-system/ThemedBox.js +26 -0
  178. package/lib/types/components/design-system/ThemedText.d.ts +56 -0
  179. package/lib/types/components/design-system/ThemedText.d.ts.map +1 -0
  180. package/lib/types/components/design-system/ThemedText.js +45 -0
  181. package/lib/types/components/messages/AssistantTextMessage.d.ts +18 -0
  182. package/lib/types/components/messages/AssistantTextMessage.d.ts.map +1 -0
  183. package/lib/types/components/messages/AssistantTextMessage.js +15 -0
  184. package/lib/types/components/messages/AssistantThinkingMessage.d.ts +23 -0
  185. package/lib/types/components/messages/AssistantThinkingMessage.d.ts.map +1 -0
  186. package/lib/types/components/messages/AssistantThinkingMessage.js +23 -0
  187. package/lib/types/components/messages/AssistantToolUseMessage.d.ts +23 -0
  188. package/lib/types/components/messages/AssistantToolUseMessage.d.ts.map +1 -0
  189. package/lib/types/components/messages/AssistantToolUseMessage.js +220 -0
  190. package/lib/types/components/messages/MessageMetadata.d.ts +15 -0
  191. package/lib/types/components/messages/MessageMetadata.d.ts.map +1 -0
  192. package/lib/types/components/messages/MessageMetadata.js +20 -0
  193. package/lib/types/components/messages/UserPromptMessage.d.ts +19 -0
  194. package/lib/types/components/messages/UserPromptMessage.d.ts.map +1 -0
  195. package/lib/types/components/messages/UserPromptMessage.js +15 -0
  196. package/lib/types/components/questions/AskUserQuestionPanel.d.ts +39 -0
  197. package/lib/types/components/questions/AskUserQuestionPanel.d.ts.map +1 -0
  198. package/lib/types/components/questions/AskUserQuestionPanel.js +228 -0
  199. package/lib/types/components/shimmer.d.ts +35 -0
  200. package/lib/types/components/shimmer.d.ts.map +1 -0
  201. package/lib/types/components/shimmer.js +43 -0
  202. package/lib/types/components/whaleFrames.d.ts +25 -0
  203. package/lib/types/components/whaleFrames.d.ts.map +1 -0
  204. package/lib/types/components/whaleFrames.js +419 -0
  205. package/lib/types/customTheme.d.ts +104 -0
  206. package/lib/types/customTheme.d.ts.map +1 -0
  207. package/lib/types/customTheme.js +268 -0
  208. package/lib/types/effortPrefs.d.ts +22 -0
  209. package/lib/types/effortPrefs.d.ts.map +1 -0
  210. package/lib/types/effortPrefs.js +45 -0
  211. package/lib/types/history.d.ts +24 -0
  212. package/lib/types/history.d.ts.map +1 -0
  213. package/lib/types/history.js +75 -0
  214. package/lib/types/hooks/useBlink.d.ts +11 -0
  215. package/lib/types/hooks/useBlink.d.ts.map +1 -0
  216. package/lib/types/hooks/useBlink.js +20 -0
  217. package/lib/types/i18n.d.ts +926 -0
  218. package/lib/types/i18n.d.ts.map +1 -0
  219. package/lib/types/i18n.js +356 -0
  220. package/lib/types/index.d.ts +70 -0
  221. package/lib/types/index.d.ts.map +1 -0
  222. package/lib/types/index.js +31 -0
  223. package/lib/types/ink/Ansi.d.ts +11 -0
  224. package/lib/types/ink/Ansi.d.ts.map +1 -0
  225. package/lib/types/ink/Ansi.js +269 -0
  226. package/lib/types/ink/bidi.d.ts +18 -0
  227. package/lib/types/ink/bidi.d.ts.map +1 -0
  228. package/lib/types/ink/bidi.js +119 -0
  229. package/lib/types/ink/clearTerminal.d.ts +22 -0
  230. package/lib/types/ink/clearTerminal.d.ts.map +1 -0
  231. package/lib/types/ink/clearTerminal.js +72 -0
  232. package/lib/types/ink/colorize.d.ts +33 -0
  233. package/lib/types/ink/colorize.d.ts.map +1 -0
  234. package/lib/types/ink/colorize.js +213 -0
  235. package/lib/types/ink/components/AlternateScreen.d.ts +22 -0
  236. package/lib/types/ink/components/AlternateScreen.d.ts.map +1 -0
  237. package/lib/types/ink/components/AlternateScreen.js +74 -0
  238. package/lib/types/ink/components/App.d.ts +73 -0
  239. package/lib/types/ink/components/App.d.ts.map +1 -0
  240. package/lib/types/ink/components/App.js +597 -0
  241. package/lib/types/ink/components/AppContext.d.ts +15 -0
  242. package/lib/types/ink/components/AppContext.d.ts.map +1 -0
  243. package/lib/types/ink/components/AppContext.js +11 -0
  244. package/lib/types/ink/components/Box.d.ts +49 -0
  245. package/lib/types/ink/components/Box.d.ts.map +1 -0
  246. package/lib/types/ink/components/Box.js +153 -0
  247. package/lib/types/ink/components/Button.d.ts +37 -0
  248. package/lib/types/ink/components/Button.d.ts.map +1 -0
  249. package/lib/types/ink/components/Button.js +166 -0
  250. package/lib/types/ink/components/ClockContext.d.ts +10 -0
  251. package/lib/types/ink/components/ClockContext.d.ts.map +1 -0
  252. package/lib/types/ink/components/ClockContext.js +108 -0
  253. package/lib/types/ink/components/CursorDeclarationContext.d.ts +30 -0
  254. package/lib/types/ink/components/CursorDeclarationContext.d.ts.map +1 -0
  255. package/lib/types/ink/components/CursorDeclarationContext.js +6 -0
  256. package/lib/types/ink/components/ErrorOverview.d.ts +7 -0
  257. package/lib/types/ink/components/ErrorOverview.d.ts.map +1 -0
  258. package/lib/types/ink/components/ErrorOverview.js +49 -0
  259. package/lib/types/ink/components/Link.d.ts +8 -0
  260. package/lib/types/ink/components/Link.d.ts.map +1 -0
  261. package/lib/types/ink/components/Link.js +33 -0
  262. package/lib/types/ink/components/Newline.d.ts +13 -0
  263. package/lib/types/ink/components/Newline.d.ts.map +1 -0
  264. package/lib/types/ink/components/Newline.js +29 -0
  265. package/lib/types/ink/components/NoSelect.d.ts +20 -0
  266. package/lib/types/ink/components/NoSelect.d.ts.map +1 -0
  267. package/lib/types/ink/components/NoSelect.js +56 -0
  268. package/lib/types/ink/components/RawAnsi.d.ts +17 -0
  269. package/lib/types/ink/components/RawAnsi.d.ts.map +1 -0
  270. package/lib/types/ink/components/RawAnsi.js +45 -0
  271. package/lib/types/ink/components/ScrollBox.d.ts +78 -0
  272. package/lib/types/ink/components/ScrollBox.d.ts.map +1 -0
  273. package/lib/types/ink/components/ScrollBox.js +174 -0
  274. package/lib/types/ink/components/Spacer.d.ts +6 -0
  275. package/lib/types/ink/components/Spacer.d.ts.map +1 -0
  276. package/lib/types/ink/components/Spacer.js +19 -0
  277. package/lib/types/ink/components/StdinContext.d.ts +32 -0
  278. package/lib/types/ink/components/StdinContext.d.ts.map +1 -0
  279. package/lib/types/ink/components/StdinContext.js +16 -0
  280. package/lib/types/ink/components/TerminalFocusContext.d.ts +11 -0
  281. package/lib/types/ink/components/TerminalFocusContext.d.ts.map +1 -0
  282. package/lib/types/ink/components/TerminalFocusContext.js +45 -0
  283. package/lib/types/ink/components/TerminalSizeContext.d.ts +6 -0
  284. package/lib/types/ink/components/TerminalSizeContext.d.ts.map +1 -0
  285. package/lib/types/ink/components/TerminalSizeContext.js +3 -0
  286. package/lib/types/ink/components/Text.d.ts +56 -0
  287. package/lib/types/ink/components/Text.d.ts.map +1 -0
  288. package/lib/types/ink/components/Text.js +194 -0
  289. package/lib/types/ink/constants.d.ts +3 -0
  290. package/lib/types/ink/constants.d.ts.map +1 -0
  291. package/lib/types/ink/constants.js +2 -0
  292. package/lib/types/ink/cursor.d.ts +11 -0
  293. package/lib/types/ink/cursor.d.ts.map +1 -0
  294. package/lib/types/ink/cursor.js +1 -0
  295. package/lib/types/ink/devtools.d.ts +7 -0
  296. package/lib/types/ink/devtools.d.ts.map +1 -0
  297. package/lib/types/ink/devtools.js +1 -0
  298. package/lib/types/ink/dom.d.ts +178 -0
  299. package/lib/types/ink/dom.d.ts.map +1 -0
  300. package/lib/types/ink/dom.js +424 -0
  301. package/lib/types/ink/events/click-event.d.ts +32 -0
  302. package/lib/types/ink/events/click-event.d.ts.map +1 -0
  303. package/lib/types/ink/events/click-event.js +36 -0
  304. package/lib/types/ink/events/dispatcher.d.ts +63 -0
  305. package/lib/types/ink/events/dispatcher.d.ts.map +1 -0
  306. package/lib/types/ink/events/dispatcher.js +194 -0
  307. package/lib/types/ink/events/emitter.d.ts +20 -0
  308. package/lib/types/ink/events/emitter.d.ts.map +1 -0
  309. package/lib/types/ink/events/emitter.js +43 -0
  310. package/lib/types/ink/events/event-handlers.d.ts +47 -0
  311. package/lib/types/ink/events/event-handlers.d.ts.map +1 -0
  312. package/lib/types/ink/events/event-handlers.js +30 -0
  313. package/lib/types/ink/events/event.d.ts +19 -0
  314. package/lib/types/ink/events/event.d.ts.map +1 -0
  315. package/lib/types/ink/events/event.js +22 -0
  316. package/lib/types/ink/events/focus-event.d.ts +19 -0
  317. package/lib/types/ink/events/focus-event.d.ts.map +1 -0
  318. package/lib/types/ink/events/focus-event.js +21 -0
  319. package/lib/types/ink/events/input-event.d.ts +53 -0
  320. package/lib/types/ink/events/input-event.d.ts.map +1 -0
  321. package/lib/types/ink/events/input-event.js +180 -0
  322. package/lib/types/ink/events/keyboard-event.d.ts +40 -0
  323. package/lib/types/ink/events/keyboard-event.d.ts.map +1 -0
  324. package/lib/types/ink/events/keyboard-event.js +65 -0
  325. package/lib/types/ink/events/paste-event.d.ts +11 -0
  326. package/lib/types/ink/events/paste-event.d.ts.map +1 -0
  327. package/lib/types/ink/events/paste-event.js +13 -0
  328. package/lib/types/ink/events/resize-event.d.ts +13 -0
  329. package/lib/types/ink/events/resize-event.d.ts.map +1 -0
  330. package/lib/types/ink/events/resize-event.js +16 -0
  331. package/lib/types/ink/events/terminal-event.d.ts +112 -0
  332. package/lib/types/ink/events/terminal-event.d.ts.map +1 -0
  333. package/lib/types/ink/events/terminal-event.js +131 -0
  334. package/lib/types/ink/events/terminal-focus-event.d.ts +21 -0
  335. package/lib/types/ink/events/terminal-focus-event.d.ts.map +1 -0
  336. package/lib/types/ink/events/terminal-focus-event.js +18 -0
  337. package/lib/types/ink/focus.d.ts +74 -0
  338. package/lib/types/ink/focus.d.ts.map +1 -0
  339. package/lib/types/ink/focus.js +188 -0
  340. package/lib/types/ink/frame.d.ts +119 -0
  341. package/lib/types/ink/frame.d.ts.map +1 -0
  342. package/lib/types/ink/frame.js +43 -0
  343. package/lib/types/ink/get-max-width.d.ts +20 -0
  344. package/lib/types/ink/get-max-width.d.ts.map +1 -0
  345. package/lib/types/ink/get-max-width.js +25 -0
  346. package/lib/types/ink/hit-test.d.ts +47 -0
  347. package/lib/types/ink/hit-test.d.ts.map +1 -0
  348. package/lib/types/ink/hit-test.js +126 -0
  349. package/lib/types/ink/hooks/use-animation-frame.d.ts +27 -0
  350. package/lib/types/ink/hooks/use-animation-frame.d.ts.map +1 -0
  351. package/lib/types/ink/hooks/use-animation-frame.js +48 -0
  352. package/lib/types/ink/hooks/use-app.d.ts +8 -0
  353. package/lib/types/ink/hooks/use-app.d.ts.map +1 -0
  354. package/lib/types/ink/hooks/use-app.js +8 -0
  355. package/lib/types/ink/hooks/use-copy-on-select.d.ts +22 -0
  356. package/lib/types/ink/hooks/use-copy-on-select.d.ts.map +1 -0
  357. package/lib/types/ink/hooks/use-copy-on-select.js +40 -0
  358. package/lib/types/ink/hooks/use-declared-cursor.d.ts +31 -0
  359. package/lib/types/ink/hooks/use-declared-cursor.d.ts.map +1 -0
  360. package/lib/types/ink/hooks/use-declared-cursor.js +65 -0
  361. package/lib/types/ink/hooks/use-input.d.ts +41 -0
  362. package/lib/types/ink/hooks/use-input.d.ts.map +1 -0
  363. package/lib/types/ink/hooks/use-input.js +73 -0
  364. package/lib/types/ink/hooks/use-interval.d.ts +23 -0
  365. package/lib/types/ink/hooks/use-interval.d.ts.map +1 -0
  366. package/lib/types/ink/hooks/use-interval.js +58 -0
  367. package/lib/types/ink/hooks/use-search-highlight.d.ts +34 -0
  368. package/lib/types/ink/hooks/use-search-highlight.d.ts.map +1 -0
  369. package/lib/types/ink/hooks/use-search-highlight.js +35 -0
  370. package/lib/types/ink/hooks/use-selection.d.ts +44 -0
  371. package/lib/types/ink/hooks/use-selection.d.ts.map +1 -0
  372. package/lib/types/ink/hooks/use-selection.js +64 -0
  373. package/lib/types/ink/hooks/use-stdin.d.ts +8 -0
  374. package/lib/types/ink/hooks/use-stdin.d.ts.map +1 -0
  375. package/lib/types/ink/hooks/use-stdin.js +8 -0
  376. package/lib/types/ink/hooks/use-tab-status.d.ts +18 -0
  377. package/lib/types/ink/hooks/use-tab-status.d.ts.map +1 -0
  378. package/lib/types/ink/hooks/use-tab-status.js +58 -0
  379. package/lib/types/ink/hooks/use-terminal-focus.d.ts +11 -0
  380. package/lib/types/ink/hooks/use-terminal-focus.d.ts.map +1 -0
  381. package/lib/types/ink/hooks/use-terminal-focus.js +15 -0
  382. package/lib/types/ink/hooks/use-terminal-size.d.ts +6 -0
  383. package/lib/types/ink/hooks/use-terminal-size.d.ts.map +1 -0
  384. package/lib/types/ink/hooks/use-terminal-size.js +12 -0
  385. package/lib/types/ink/hooks/use-terminal-title.d.ts +14 -0
  386. package/lib/types/ink/hooks/use-terminal-title.d.ts.map +1 -0
  387. package/lib/types/ink/hooks/use-terminal-title.js +30 -0
  388. package/lib/types/ink/hooks/use-terminal-viewport.d.ts +32 -0
  389. package/lib/types/ink/hooks/use-terminal-viewport.d.ts.map +1 -0
  390. package/lib/types/ink/hooks/use-terminal-viewport.js +79 -0
  391. package/lib/types/ink/ink.d.ts +370 -0
  392. package/lib/types/ink/ink.d.ts.map +1 -0
  393. package/lib/types/ink/ink.js +1665 -0
  394. package/lib/types/ink/instances.d.ts +10 -0
  395. package/lib/types/ink/instances.d.ts.map +1 -0
  396. package/lib/types/ink/instances.js +13 -0
  397. package/lib/types/ink/layout/engine.d.ts +7 -0
  398. package/lib/types/ink/layout/engine.d.ts.map +1 -0
  399. package/lib/types/ink/layout/engine.js +8 -0
  400. package/lib/types/ink/layout/geometry.d.ts +86 -0
  401. package/lib/types/ink/layout/geometry.d.ts.map +1 -0
  402. package/lib/types/ink/layout/geometry.js +95 -0
  403. package/lib/types/ink/layout/node.d.ts +151 -0
  404. package/lib/types/ink/layout/node.d.ts.map +1 -0
  405. package/lib/types/ink/layout/node.js +72 -0
  406. package/lib/types/ink/layout/yoga.d.ts +69 -0
  407. package/lib/types/ink/layout/yoga.d.ts.map +1 -0
  408. package/lib/types/ink/layout/yoga.js +249 -0
  409. package/lib/types/ink/line-width-cache.d.ts +9 -0
  410. package/lib/types/ink/line-width-cache.d.ts.map +1 -0
  411. package/lib/types/ink/line-width-cache.js +45 -0
  412. package/lib/types/ink/log-update.d.ts +57 -0
  413. package/lib/types/ink/log-update.d.ts.map +1 -0
  414. package/lib/types/ink/log-update.js +710 -0
  415. package/lib/types/ink/measure-element.d.ts +19 -0
  416. package/lib/types/ink/measure-element.d.ts.map +1 -0
  417. package/lib/types/ink/measure-element.js +10 -0
  418. package/lib/types/ink/measure-text.d.ts +13 -0
  419. package/lib/types/ink/measure-text.d.ts.map +1 -0
  420. package/lib/types/ink/measure-text.js +38 -0
  421. package/lib/types/ink/node-cache.d.ts +33 -0
  422. package/lib/types/ink/node-cache.d.ts.map +1 -0
  423. package/lib/types/ink/node-cache.js +42 -0
  424. package/lib/types/ink/optimizer.d.ts +18 -0
  425. package/lib/types/ink/optimizer.d.ts.map +1 -0
  426. package/lib/types/ink/optimizer.js +83 -0
  427. package/lib/types/ink/output.d.ts +200 -0
  428. package/lib/types/ink/output.d.ts.map +1 -0
  429. package/lib/types/ink/output.js +663 -0
  430. package/lib/types/ink/parse-keypress.d.ts +132 -0
  431. package/lib/types/ink/parse-keypress.d.ts.map +1 -0
  432. package/lib/types/ink/parse-keypress.js +707 -0
  433. package/lib/types/ink/reconciler.d.ts +43 -0
  434. package/lib/types/ink/reconciler.d.ts.map +1 -0
  435. package/lib/types/ink/reconciler.js +413 -0
  436. package/lib/types/ink/render-border.d.ts +36 -0
  437. package/lib/types/ink/render-border.d.ts.map +1 -0
  438. package/lib/types/ink/render-border.js +143 -0
  439. package/lib/types/ink/render-node-to-output.d.ts +93 -0
  440. package/lib/types/ink/render-node-to-output.d.ts.map +1 -0
  441. package/lib/types/ink/render-node-to-output.js +1290 -0
  442. package/lib/types/ink/render-to-screen.d.ts +65 -0
  443. package/lib/types/ink/render-to-screen.d.ts.map +1 -0
  444. package/lib/types/ink/render-to-screen.js +189 -0
  445. package/lib/types/ink/renderer.d.ts +24 -0
  446. package/lib/types/ink/renderer.d.ts.map +1 -0
  447. package/lib/types/ink/renderer.js +136 -0
  448. package/lib/types/ink/root.d.ts +91 -0
  449. package/lib/types/ink/root.d.ts.map +1 -0
  450. package/lib/types/ink/root.js +93 -0
  451. package/lib/types/ink/screen.d.ts +443 -0
  452. package/lib/types/ink/screen.d.ts.map +1 -0
  453. package/lib/types/ink/screen.js +1295 -0
  454. package/lib/types/ink/searchHighlight.d.ts +25 -0
  455. package/lib/types/ink/searchHighlight.d.ts.map +1 -0
  456. package/lib/types/ink/searchHighlight.js +82 -0
  457. package/lib/types/ink/selection.d.ts +323 -0
  458. package/lib/types/ink/selection.d.ts.map +1 -0
  459. package/lib/types/ink/selection.js +881 -0
  460. package/lib/types/ink/squash-text-nodes.d.ts +30 -0
  461. package/lib/types/ink/squash-text-nodes.d.ts.map +1 -0
  462. package/lib/types/ink/squash-text-nodes.js +63 -0
  463. package/lib/types/ink/stringWidth.d.ts +11 -0
  464. package/lib/types/ink/stringWidth.d.ts.map +1 -0
  465. package/lib/types/ink/stringWidth.js +209 -0
  466. package/lib/types/ink/styles.d.ts +324 -0
  467. package/lib/types/ink/styles.d.ts.map +1 -0
  468. package/lib/types/ink/styles.js +307 -0
  469. package/lib/types/ink/supports-hyperlinks.d.ts +20 -0
  470. package/lib/types/ink/supports-hyperlinks.d.ts.map +1 -0
  471. package/lib/types/ink/supports-hyperlinks.js +44 -0
  472. package/lib/types/ink/tabstops.d.ts +9 -0
  473. package/lib/types/ink/tabstops.d.ts.map +1 -0
  474. package/lib/types/ink/tabstops.js +46 -0
  475. package/lib/types/ink/terminal-focus-state.d.ts +35 -0
  476. package/lib/types/ink/terminal-focus-state.d.ts.map +1 -0
  477. package/lib/types/ink/terminal-focus-state.js +57 -0
  478. package/lib/types/ink/terminal-querier.d.ts +161 -0
  479. package/lib/types/ink/terminal-querier.d.ts.map +1 -0
  480. package/lib/types/ink/terminal-querier.js +204 -0
  481. package/lib/types/ink/terminal.d.ts +80 -0
  482. package/lib/types/ink/terminal.d.ts.map +1 -0
  483. package/lib/types/ink/terminal.js +268 -0
  484. package/lib/types/ink/termio/ansi.d.ts +75 -0
  485. package/lib/types/ink/termio/ansi.d.ts.map +1 -0
  486. package/lib/types/ink/termio/ansi.js +79 -0
  487. package/lib/types/ink/termio/csi.d.ts +253 -0
  488. package/lib/types/ink/termio/csi.d.ts.map +1 -0
  489. package/lib/types/ink/termio/csi.js +347 -0
  490. package/lib/types/ink/termio/dec.d.ts +61 -0
  491. package/lib/types/ink/termio/dec.d.ts.map +1 -0
  492. package/lib/types/ink/termio/dec.js +76 -0
  493. package/lib/types/ink/termio/esc.d.ts +15 -0
  494. package/lib/types/ink/termio/esc.d.ts.map +1 -0
  495. package/lib/types/ink/termio/esc.js +57 -0
  496. package/lib/types/ink/termio/osc.d.ts +208 -0
  497. package/lib/types/ink/termio/osc.d.ts.map +1 -0
  498. package/lib/types/ink/termio/osc.js +466 -0
  499. package/lib/types/ink/termio/parser.d.ts +46 -0
  500. package/lib/types/ink/termio/parser.d.ts.map +1 -0
  501. package/lib/types/ink/termio/parser.js +366 -0
  502. package/lib/types/ink/termio/sgr.d.ts +17 -0
  503. package/lib/types/ink/termio/sgr.d.ts.map +1 -0
  504. package/lib/types/ink/termio/sgr.js +300 -0
  505. package/lib/types/ink/termio/tokenize.d.ts +50 -0
  506. package/lib/types/ink/termio/tokenize.d.ts.map +1 -0
  507. package/lib/types/ink/termio/tokenize.js +266 -0
  508. package/lib/types/ink/termio/types.d.ts +211 -0
  509. package/lib/types/ink/termio/types.d.ts.map +1 -0
  510. package/lib/types/ink/termio/types.js +68 -0
  511. package/lib/types/ink/termio.d.ts +25 -0
  512. package/lib/types/ink/termio.d.ts.map +1 -0
  513. package/lib/types/ink/termio.js +24 -0
  514. package/lib/types/ink/truncateToWidth.d.ts +7 -0
  515. package/lib/types/ink/truncateToWidth.d.ts.map +1 -0
  516. package/lib/types/ink/truncateToWidth.js +18 -0
  517. package/lib/types/ink/useTerminalNotification.d.ts +45 -0
  518. package/lib/types/ink/useTerminalNotification.d.ts.map +1 -0
  519. package/lib/types/ink/useTerminalNotification.js +70 -0
  520. package/lib/types/ink/warn.d.ts +7 -0
  521. package/lib/types/ink/warn.d.ts.map +1 -0
  522. package/lib/types/ink/warn.js +15 -0
  523. package/lib/types/ink/widest-line.d.ts +7 -0
  524. package/lib/types/ink/widest-line.d.ts.map +1 -0
  525. package/lib/types/ink/widest-line.js +19 -0
  526. package/lib/types/ink/wrap-text.d.ts +10 -0
  527. package/lib/types/ink/wrap-text.d.ts.map +1 -0
  528. package/lib/types/ink/wrap-text.js +61 -0
  529. package/lib/types/ink/wrapAnsi.d.ts +18 -0
  530. package/lib/types/ink/wrapAnsi.d.ts.map +1 -0
  531. package/lib/types/ink/wrapAnsi.js +16 -0
  532. package/lib/types/invariant.d.ts +20 -0
  533. package/lib/types/invariant.d.ts.map +1 -0
  534. package/lib/types/invariant.js +26 -0
  535. package/lib/types/modelPrefs.d.ts +37 -0
  536. package/lib/types/modelPrefs.d.ts.map +1 -0
  537. package/lib/types/modelPrefs.js +66 -0
  538. package/lib/types/modelRoute.d.ts +79 -0
  539. package/lib/types/modelRoute.d.ts.map +1 -0
  540. package/lib/types/modelRoute.js +96 -0
  541. package/lib/types/native-ts/yoga-layout/enums.d.ts +183 -0
  542. package/lib/types/native-ts/yoga-layout/enums.d.ts.map +1 -0
  543. package/lib/types/native-ts/yoga-layout/enums.js +150 -0
  544. package/lib/types/native-ts/yoga-layout/index.d.ts +788 -0
  545. package/lib/types/native-ts/yoga-layout/index.d.ts.map +1 -0
  546. package/lib/types/native-ts/yoga-layout/index.js +2571 -0
  547. package/lib/types/packaged-skills.d.ts +10 -0
  548. package/lib/types/packaged-skills.d.ts.map +1 -0
  549. package/lib/types/packaged-skills.js +63 -0
  550. package/lib/types/plugin.d.ts +33 -0
  551. package/lib/types/plugin.d.ts.map +1 -0
  552. package/lib/types/plugin.js +454 -0
  553. package/lib/types/presetPrefs.d.ts +29 -0
  554. package/lib/types/presetPrefs.d.ts.map +1 -0
  555. package/lib/types/presetPrefs.js +61 -0
  556. package/lib/types/presets.d.ts +110 -0
  557. package/lib/types/presets.d.ts.map +1 -0
  558. package/lib/types/presets.js +114 -0
  559. package/lib/types/questions.d.ts +97 -0
  560. package/lib/types/questions.d.ts.map +1 -0
  561. package/lib/types/questions.js +201 -0
  562. package/lib/types/screens/Chat.d.ts +23 -0
  563. package/lib/types/screens/Chat.d.ts.map +1 -0
  564. package/lib/types/screens/Chat.js +1263 -0
  565. package/lib/types/screens/StatusLine.d.ts +16 -0
  566. package/lib/types/screens/StatusLine.d.ts.map +1 -0
  567. package/lib/types/screens/StatusLine.js +105 -0
  568. package/lib/types/screens/StatusMetrics.d.ts +87 -0
  569. package/lib/types/screens/StatusMetrics.d.ts.map +1 -0
  570. package/lib/types/screens/StatusMetrics.js +252 -0
  571. package/lib/types/sessionHistory.d.ts +32 -0
  572. package/lib/types/sessionHistory.d.ts.map +1 -0
  573. package/lib/types/sessionHistory.js +87 -0
  574. package/lib/types/theme.d.ts +115 -0
  575. package/lib/types/theme.d.ts.map +1 -0
  576. package/lib/types/theme.js +300 -0
  577. package/lib/types/themePrefs.d.ts +28 -0
  578. package/lib/types/themePrefs.d.ts.map +1 -0
  579. package/lib/types/themePrefs.js +59 -0
  580. package/lib/types/ui.d.ts +28 -0
  581. package/lib/types/ui.d.ts.map +1 -0
  582. package/lib/types/ui.js +25 -0
  583. package/lib/types/update.d.ts +76 -0
  584. package/lib/types/update.d.ts.map +1 -0
  585. package/lib/types/update.js +203 -0
  586. package/lib/types/utils/clipboard.d.ts +43 -0
  587. package/lib/types/utils/clipboard.d.ts.map +1 -0
  588. package/lib/types/utils/clipboard.js +82 -0
  589. package/lib/types/utils/debug.d.ts +8 -0
  590. package/lib/types/utils/debug.d.ts.map +1 -0
  591. package/lib/types/utils/debug.js +12 -0
  592. package/lib/types/utils/earlyInput.d.ts +7 -0
  593. package/lib/types/utils/earlyInput.d.ts.map +1 -0
  594. package/lib/types/utils/earlyInput.js +6 -0
  595. package/lib/types/utils/env.d.ts +10 -0
  596. package/lib/types/utils/env.d.ts.map +1 -0
  597. package/lib/types/utils/env.js +9 -0
  598. package/lib/types/utils/envUtils.d.ts +8 -0
  599. package/lib/types/utils/envUtils.d.ts.map +1 -0
  600. package/lib/types/utils/envUtils.js +13 -0
  601. package/lib/types/utils/execFileNoThrow.d.ts +34 -0
  602. package/lib/types/utils/execFileNoThrow.d.ts.map +1 -0
  603. package/lib/types/utils/execFileNoThrow.js +31 -0
  604. package/lib/types/utils/fullscreen.d.ts +8 -0
  605. package/lib/types/utils/fullscreen.d.ts.map +1 -0
  606. package/lib/types/utils/fullscreen.js +10 -0
  607. package/lib/types/utils/intl.d.ts +7 -0
  608. package/lib/types/utils/intl.d.ts.map +1 -0
  609. package/lib/types/utils/intl.js +9 -0
  610. package/lib/types/utils/loaded-context.d.ts +20 -0
  611. package/lib/types/utils/loaded-context.d.ts.map +1 -0
  612. package/lib/types/utils/loaded-context.js +36 -0
  613. package/lib/types/utils/log.d.ts +7 -0
  614. package/lib/types/utils/log.d.ts.map +1 -0
  615. package/lib/types/utils/log.js +9 -0
  616. package/lib/types/utils/mentions.d.ts +30 -0
  617. package/lib/types/utils/mentions.d.ts.map +1 -0
  618. package/lib/types/utils/mentions.js +72 -0
  619. package/lib/types/utils/narration.d.ts +11 -0
  620. package/lib/types/utils/narration.d.ts.map +1 -0
  621. package/lib/types/utils/narration.js +16 -0
  622. package/lib/types/utils/semver.d.ts +9 -0
  623. package/lib/types/utils/semver.d.ts.map +1 -0
  624. package/lib/types/utils/semver.js +24 -0
  625. package/lib/types/utils/sliceAnsi.d.ts +12 -0
  626. package/lib/types/utils/sliceAnsi.d.ts.map +1 -0
  627. package/lib/types/utils/sliceAnsi.js +79 -0
  628. package/lib/types/working-activity.d.ts +19 -0
  629. package/lib/types/working-activity.d.ts.map +1 -0
  630. package/lib/types/working-activity.js +18 -0
  631. package/package.json +141 -0
  632. package/skills/audit/SKILL.md +24 -0
  633. package/skills/bug/SKILL.md +27 -0
  634. package/skills/pr-comments/SKILL.md +20 -0
  635. package/skills/practice/SKILL.md +22 -0
  636. package/skills/release-notes/SKILL.md +25 -0
  637. package/skills/review/SKILL.md +25 -0
  638. package/skills/vuln-check/SKILL.md +25 -0
@@ -0,0 +1,16 @@
1
+ import wrapAnsiNpm from 'wrap-ansi';
2
+ const wrapAnsiBun = typeof Bun !== 'undefined' && typeof Bun.wrapAnsi === 'function'
3
+ ? Bun.wrapAnsi
4
+ : null;
5
+ /**
6
+ * Wrap a string to a maximum column width, preserving ANSI escape sequences.
7
+ *
8
+ * Uses Bun.wrapAnsi when available; otherwise falls back to the wrap-ansi
9
+ * package.
10
+ * @param input - the string to wrap.
11
+ * @param columns - the maximum width in columns.
12
+ * @param options - wrap options: hard breaks long words, wordWrap splits on word boundaries, trim strips trailing whitespace.
13
+ * @returns the wrapped string.
14
+ */
15
+ const wrapAnsi = wrapAnsiBun ?? wrapAnsiNpm;
16
+ export { wrapAnsi };
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Package-owned invariant companion for `@deepseek-harness-tui/dsh-tui`.
3
+ *
4
+ * The vendored Ink core under `src/ink` is third-party code written against
5
+ * looser compiler flags; the relaxed `tsconfig` options exist only for that
6
+ * subtree and must not spread to new code.
7
+ * @module @deepseek-harness-tui/dsh-tui/invariant
8
+ */
9
+ import type { Context } from '@deepseek-ai/cordis';
10
+ /** Cordis companion plugin name. */
11
+ export declare const name = "dsh-tui-invariant";
12
+ /** Service required before the companion can reserve package ownership. */
13
+ export declare const inject: string[];
14
+ /**
15
+ * Register this package's invariant companion.
16
+ * @param ctx - Cordis context carrying the invariant service.
17
+ * @returns the installed registration's disposer after setup succeeds.
18
+ */
19
+ export declare const apply: (ctx: Context) => Promise<() => void>;
20
+ //# sourceMappingURL=invariant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invariant.d.ts","sourceRoot":"","sources":["../../src/invariant.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAKlD,oCAAoC;AACpC,eAAO,MAAM,IAAI,sBAAsB,CAAA;AACvC,2EAA2E;AAC3E,eAAO,MAAM,MAAM,UAAiB,CAAA;AASpC;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,KAAK,OAAO,KAAG,OAAO,CAAC,MAAM,IAAI,CACU,CAAA"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Package-owned invariant companion for `@deepseek-harness-tui/dsh-tui`.
3
+ *
4
+ * The vendored Ink core under `src/ink` is third-party code written against
5
+ * looser compiler flags; the relaxed `tsconfig` options exist only for that
6
+ * subtree and must not spread to new code.
7
+ * @module @deepseek-harness-tui/dsh-tui/invariant
8
+ */
9
+ const PACKAGE_NAME = '@deepseek-harness-tui/dsh-tui';
10
+ /** Cordis companion plugin name. */
11
+ export const name = 'dsh-tui-invariant';
12
+ /** Service required before the companion can reserve package ownership. */
13
+ export const inject = ['invariants'];
14
+ /**
15
+ * No runtime invariant: this interactive TUI front door owns no independent
16
+ * lifecycle stream; state relations are owned by the agent/session seams it
17
+ * renders.
18
+ */
19
+ const install = () => { };
20
+ /**
21
+ * Register this package's invariant companion.
22
+ * @param ctx - Cordis context carrying the invariant service.
23
+ * @returns the installed registration's disposer after setup succeeds.
24
+ */
25
+ export const apply = (ctx) => Promise.resolve(ctx.invariants.register(PACKAGE_NAME, install));
26
+ /* jscpd:ignore-end */
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Persisted model-route preference (`/model` picker choice), kept at
3
+ * `~/.dsh-cc/model.json` (`provider` + `model` keys) so the choice survives
4
+ * restarts — same pattern as agent-preset.json. The file is best-effort: a
5
+ * missing/corrupt file or an incomplete route simply falls back to the
6
+ * harness default. Explicit `provider`/`model` keys in cordis.yml win over
7
+ * this preference (deployment choice over runtime preference, matching
8
+ * activityFrames and agent-preset) — but only as a COMPLETE pair; the
9
+ * atomic resolution itself lives in modelRoute.ts (issue #67).
10
+ */
11
+ /** One persisted model route: the provider route plus its model id. */
12
+ export interface ModelPref {
13
+ provider: string;
14
+ model: string;
15
+ }
16
+ /**
17
+ * Parse a persisted `{ provider, model }` value; anything else yields
18
+ * undefined.
19
+ * @param text - Raw file contents.
20
+ * @returns The route when both halves are non-empty strings, else undefined.
21
+ */
22
+ export declare function parseModelPref(text: string): ModelPref | undefined;
23
+ /**
24
+ * The persisted model route, or undefined when unset or invalid.
25
+ * @param dir - Prefs directory (injectable for tests).
26
+ * @returns The persisted route, if any.
27
+ */
28
+ export declare function readModelPref(dir?: string): ModelPref | undefined;
29
+ /**
30
+ * Persist the chosen model route (best effort).
31
+ * @param provider - Provider route to persist.
32
+ * @param model - Provider-owned model id to persist.
33
+ * @param dir - Prefs directory (injectable for tests).
34
+ * @returns True when the file was written, false on failure.
35
+ */
36
+ export declare function writeModelPref(provider: string, model: string, dir?: string): boolean;
37
+ //# sourceMappingURL=modelPrefs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelPrefs.d.ts","sourceRoot":"","sources":["../../src/modelPrefs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,uEAAuE;AACvE,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAWlE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,GAAE,MAAkB,GAAG,SAAS,GAAG,SAAS,CAM5E;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAE,MAAkB,GAAG,OAAO,CAQhG"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Persisted model-route preference (`/model` picker choice), kept at
3
+ * `~/.dsh-cc/model.json` (`provider` + `model` keys) so the choice survives
4
+ * restarts — same pattern as agent-preset.json. The file is best-effort: a
5
+ * missing/corrupt file or an incomplete route simply falls back to the
6
+ * harness default. Explicit `provider`/`model` keys in cordis.yml win over
7
+ * this preference (deployment choice over runtime preference, matching
8
+ * activityFrames and agent-preset) — but only as a COMPLETE pair; the
9
+ * atomic resolution itself lives in modelRoute.ts (issue #67).
10
+ */
11
+ import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
12
+ import { homedir } from 'node:os';
13
+ import { join } from 'node:path';
14
+ const PREFS_DIR = join(homedir(), '.dsh-cc');
15
+ /**
16
+ * Parse a persisted `{ provider, model }` value; anything else yields
17
+ * undefined.
18
+ * @param text - Raw file contents.
19
+ * @returns The route when both halves are non-empty strings, else undefined.
20
+ */
21
+ export function parseModelPref(text) {
22
+ try {
23
+ const parsed = JSON.parse(text);
24
+ if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed))
25
+ return undefined;
26
+ const { provider, model } = parsed;
27
+ if (typeof provider !== 'string' || provider === '')
28
+ return undefined;
29
+ if (typeof model !== 'string' || model === '')
30
+ return undefined;
31
+ return { provider, model };
32
+ }
33
+ catch {
34
+ return undefined;
35
+ }
36
+ }
37
+ /**
38
+ * The persisted model route, or undefined when unset or invalid.
39
+ * @param dir - Prefs directory (injectable for tests).
40
+ * @returns The persisted route, if any.
41
+ */
42
+ export function readModelPref(dir = PREFS_DIR) {
43
+ try {
44
+ return parseModelPref(readFileSync(join(dir, 'model.json'), 'utf8'));
45
+ }
46
+ catch {
47
+ return undefined;
48
+ }
49
+ }
50
+ /**
51
+ * Persist the chosen model route (best effort).
52
+ * @param provider - Provider route to persist.
53
+ * @param model - Provider-owned model id to persist.
54
+ * @param dir - Prefs directory (injectable for tests).
55
+ * @returns True when the file was written, false on failure.
56
+ */
57
+ export function writeModelPref(provider, model, dir = PREFS_DIR) {
58
+ try {
59
+ mkdirSync(dir, { recursive: true });
60
+ writeFileSync(join(dir, 'model.json'), JSON.stringify({ provider, model }, null, 2));
61
+ return true;
62
+ }
63
+ catch {
64
+ return false;
65
+ }
66
+ }
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Model route resolution (issue #67). The `(provider, model)` pair is a
3
+ * single value: every source either supplies the WHOLE route or is skipped,
4
+ * so a cordis.yml `provider`-only pin (the bundle ships
5
+ * `provider: deepseek-official` without `model`) can never merge with the
6
+ * model half of the persisted `/model` choice into a route no adapter
7
+ * recognizes. Startup, `/new`, resume and the status line all resolve through
8
+ * these helpers so the displayed route is the route requests actually take.
9
+ */
10
+ import type { ModelPref } from './modelPrefs.js';
11
+ /** One complete model route. */
12
+ export interface ModelRoute {
13
+ provider: string;
14
+ model: string;
15
+ }
16
+ /** Harness default route: the final fallback when neither cordis.yml nor the persisted `/model` choice supplies one. */
17
+ export declare const DEFAULT_MODEL_ROUTE: ModelRoute;
18
+ /**
19
+ * The route cordis.yml pins explicitly — only when it names BOTH halves. A
20
+ * half-pinned config counts as unset here so it cannot override half of the
21
+ * persisted preference (issue #67).
22
+ * @param configured - Raw `provider`/`model` keys from cordis.yml.
23
+ * @returns The configured route, or undefined when either half is missing.
24
+ */
25
+ export declare function explicitModelRoute(configured: {
26
+ provider?: string;
27
+ model?: string;
28
+ }): ModelRoute | undefined;
29
+ /**
30
+ * Resolve the effective route atomically: a complete cordis.yml route wins
31
+ * whole; otherwise the persisted `/model` choice wins whole; otherwise the
32
+ * defaults win whole — a half-pinned config is IGNORED rather than merged
33
+ * with the defaults' other half, so no source ever contributes just one
34
+ * half of the final route.
35
+ * @param configured - Raw `provider`/`model` keys from cordis.yml.
36
+ * @param pref - The persisted `/model` choice, if any.
37
+ * @param defaults - Final fallback route (the channel's startup route for
38
+ * `/new`, the harness default at boot).
39
+ * @returns The resolved route.
40
+ */
41
+ export declare function resolveModelRoute(configured: {
42
+ provider?: string;
43
+ model?: string;
44
+ }, pref: ModelPref | undefined, defaults?: ModelRoute): ModelRoute;
45
+ /**
46
+ * The route a persisted session's own log records (issues #30/#67): the last
47
+ * `request/header` snapshot carries the call config the agent loop builds its
48
+ * requests from, so it IS the route a resume continues on when cordis.yml
49
+ * does not pin a complete override. The status line derives the resumed
50
+ * session's route from this so the display follows the session, not the
51
+ * startup resolution. A log without any header (a session that never started
52
+ * a turn) records no route.
53
+ * @param events - The session's durable event log.
54
+ * @returns The last recorded route, or undefined when the log has none.
55
+ */
56
+ export declare function recordedModelRoute(events: readonly {
57
+ type: string;
58
+ data?: unknown;
59
+ }[]): ModelRoute | undefined;
60
+ /**
61
+ * Best-effort combination check (issue #67): when the llm runtime advertises
62
+ * a non-empty catalog for the route's provider and the model is not in it,
63
+ * reject the whole route in favor of `fallback` so a stale persisted choice
64
+ * surfaces at startup instead of as a server-side model-name error. Any
65
+ * uncertainty — no llm service, a failed or empty catalog — trusts the route.
66
+ * @param llm - The llm runtime seam, when mounted.
67
+ * @param route - The resolved route to check.
68
+ * @param fallback - Route to adopt when the check rejects.
69
+ * @returns The adopted route plus the rejected one (for a warning), if any.
70
+ */
71
+ export declare function validateModelRoute(llm: {
72
+ listModels(provider: string): Promise<readonly {
73
+ id: string;
74
+ }[]>;
75
+ } | undefined, route: ModelRoute, fallback?: ModelRoute): Promise<{
76
+ route: ModelRoute;
77
+ rejected?: ModelRoute;
78
+ }>;
79
+ //# sourceMappingURL=modelRoute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelRoute.d.ts","sourceRoot":"","sources":["../../src/modelRoute.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD,gCAAgC;AAChC,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,wHAAwH;AACxH,eAAO,MAAM,mBAAmB,EAAE,UAGjC,CAAA;AAID;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,GAAG,SAAS,CAI5G;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACjD,IAAI,EAAE,SAAS,GAAG,SAAS,EAC3B,QAAQ,GAAE,UAAgC,GACzC,UAAU,CAKZ;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,GAClD,UAAU,GAAG,SAAS,CAWxB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE;IAAE,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAA;CAAE,GAAG,SAAS,EACrF,KAAK,EAAE,UAAU,EACjB,QAAQ,GAAE,UAAgC,GACzC,OAAO,CAAC;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,UAAU,CAAA;CAAE,CAAC,CAUvD"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Model route resolution (issue #67). The `(provider, model)` pair is a
3
+ * single value: every source either supplies the WHOLE route or is skipped,
4
+ * so a cordis.yml `provider`-only pin (the bundle ships
5
+ * `provider: deepseek-official` without `model`) can never merge with the
6
+ * model half of the persisted `/model` choice into a route no adapter
7
+ * recognizes. Startup, `/new`, resume and the status line all resolve through
8
+ * these helpers so the displayed route is the route requests actually take.
9
+ */
10
+ /** Harness default route: the final fallback when neither cordis.yml nor the persisted `/model` choice supplies one. */
11
+ export const DEFAULT_MODEL_ROUTE = {
12
+ provider: 'deepseek-official',
13
+ model: 'deepseek-v4-flash',
14
+ };
15
+ const nonEmpty = (value) => value !== undefined && value !== '';
16
+ /**
17
+ * The route cordis.yml pins explicitly — only when it names BOTH halves. A
18
+ * half-pinned config counts as unset here so it cannot override half of the
19
+ * persisted preference (issue #67).
20
+ * @param configured - Raw `provider`/`model` keys from cordis.yml.
21
+ * @returns The configured route, or undefined when either half is missing.
22
+ */
23
+ export function explicitModelRoute(configured) {
24
+ return nonEmpty(configured.provider) && nonEmpty(configured.model)
25
+ ? { provider: configured.provider, model: configured.model }
26
+ : undefined;
27
+ }
28
+ /**
29
+ * Resolve the effective route atomically: a complete cordis.yml route wins
30
+ * whole; otherwise the persisted `/model` choice wins whole; otherwise the
31
+ * defaults win whole — a half-pinned config is IGNORED rather than merged
32
+ * with the defaults' other half, so no source ever contributes just one
33
+ * half of the final route.
34
+ * @param configured - Raw `provider`/`model` keys from cordis.yml.
35
+ * @param pref - The persisted `/model` choice, if any.
36
+ * @param defaults - Final fallback route (the channel's startup route for
37
+ * `/new`, the harness default at boot).
38
+ * @returns The resolved route.
39
+ */
40
+ export function resolveModelRoute(configured, pref, defaults = DEFAULT_MODEL_ROUTE) {
41
+ const explicit = explicitModelRoute(configured);
42
+ if (explicit !== undefined)
43
+ return explicit;
44
+ if (pref !== undefined)
45
+ return { provider: pref.provider, model: pref.model };
46
+ return { provider: defaults.provider, model: defaults.model };
47
+ }
48
+ /**
49
+ * The route a persisted session's own log records (issues #30/#67): the last
50
+ * `request/header` snapshot carries the call config the agent loop builds its
51
+ * requests from, so it IS the route a resume continues on when cordis.yml
52
+ * does not pin a complete override. The status line derives the resumed
53
+ * session's route from this so the display follows the session, not the
54
+ * startup resolution. A log without any header (a session that never started
55
+ * a turn) records no route.
56
+ * @param events - The session's durable event log.
57
+ * @returns The last recorded route, or undefined when the log has none.
58
+ */
59
+ export function recordedModelRoute(events) {
60
+ for (let i = events.length - 1; i >= 0; i--) {
61
+ const event = events[i];
62
+ if (event === undefined || event.type !== 'request/header')
63
+ continue;
64
+ const config = event.data
65
+ ?.header?.config;
66
+ if (typeof config?.provider === 'string' && typeof config?.model === 'string') {
67
+ return { provider: config.provider, model: config.model };
68
+ }
69
+ }
70
+ return undefined;
71
+ }
72
+ /**
73
+ * Best-effort combination check (issue #67): when the llm runtime advertises
74
+ * a non-empty catalog for the route's provider and the model is not in it,
75
+ * reject the whole route in favor of `fallback` so a stale persisted choice
76
+ * surfaces at startup instead of as a server-side model-name error. Any
77
+ * uncertainty — no llm service, a failed or empty catalog — trusts the route.
78
+ * @param llm - The llm runtime seam, when mounted.
79
+ * @param route - The resolved route to check.
80
+ * @param fallback - Route to adopt when the check rejects.
81
+ * @returns The adopted route plus the rejected one (for a warning), if any.
82
+ */
83
+ export async function validateModelRoute(llm, route, fallback = DEFAULT_MODEL_ROUTE) {
84
+ if (llm === undefined)
85
+ return { route };
86
+ let models;
87
+ try {
88
+ models = await llm.listModels(route.provider);
89
+ }
90
+ catch {
91
+ return { route };
92
+ }
93
+ if (models.length === 0 || models.some(model => model.id === route.model))
94
+ return { route };
95
+ return { route: fallback, rejected: route };
96
+ }
@@ -0,0 +1,183 @@
1
+ /**
2
+ * Yoga enums — ported from yoga-layout/src/generated/YGEnums.ts
3
+ * Kept as `const` objects (not TS enums) per repo convention.
4
+ * Values match upstream exactly so callers don't change.
5
+ */
6
+ /**
7
+ * Align values for align-items, align-self, and align-content.
8
+ */
9
+ export declare const Align: {
10
+ readonly Auto: 0;
11
+ readonly FlexStart: 1;
12
+ readonly Center: 2;
13
+ readonly FlexEnd: 3;
14
+ readonly Stretch: 4;
15
+ readonly Baseline: 5;
16
+ readonly SpaceBetween: 6;
17
+ readonly SpaceAround: 7;
18
+ readonly SpaceEvenly: 8;
19
+ };
20
+ /** Union type of the Align values. */
21
+ export type Align = (typeof Align)[keyof typeof Align];
22
+ /**
23
+ * Box-sizing modes: border-box or content-box.
24
+ */
25
+ export declare const BoxSizing: {
26
+ readonly BorderBox: 0;
27
+ readonly ContentBox: 1;
28
+ };
29
+ /** Union type of the BoxSizing values. */
30
+ export type BoxSizing = (typeof BoxSizing)[keyof typeof BoxSizing];
31
+ /**
32
+ * Dimension axes: width or height.
33
+ */
34
+ export declare const Dimension: {
35
+ readonly Width: 0;
36
+ readonly Height: 1;
37
+ };
38
+ /** Union type of the Dimension values. */
39
+ export type Dimension = (typeof Dimension)[keyof typeof Dimension];
40
+ /**
41
+ * Text direction: inherit, LTR, or RTL.
42
+ */
43
+ export declare const Direction: {
44
+ readonly Inherit: 0;
45
+ readonly LTR: 1;
46
+ readonly RTL: 2;
47
+ };
48
+ /** Union type of the Direction values. */
49
+ export type Direction = (typeof Direction)[keyof typeof Direction];
50
+ /**
51
+ * Display modes: flex, none, or contents.
52
+ */
53
+ export declare const Display: {
54
+ readonly Flex: 0;
55
+ readonly None: 1;
56
+ readonly Contents: 2;
57
+ };
58
+ /** Union type of the Display values. */
59
+ export type Display = (typeof Display)[keyof typeof Display];
60
+ /**
61
+ * Edges and edge groups for per-edge style properties.
62
+ */
63
+ export declare const Edge: {
64
+ readonly Left: 0;
65
+ readonly Top: 1;
66
+ readonly Right: 2;
67
+ readonly Bottom: 3;
68
+ readonly Start: 4;
69
+ readonly End: 5;
70
+ readonly Horizontal: 6;
71
+ readonly Vertical: 7;
72
+ readonly All: 8;
73
+ };
74
+ /** Union type of the Edge values. */
75
+ export type Edge = (typeof Edge)[keyof typeof Edge];
76
+ /**
77
+ * Errata flag bitmask for known yoga spec deviations.
78
+ */
79
+ export declare const Errata: {
80
+ readonly None: 0;
81
+ readonly StretchFlexBasis: 1;
82
+ readonly AbsolutePositionWithoutInsetsExcludesPadding: 2;
83
+ readonly AbsolutePercentAgainstInnerSize: 4;
84
+ readonly All: 2147483647;
85
+ readonly Classic: 2147483646;
86
+ };
87
+ /** Union type of the Errata values. */
88
+ export type Errata = (typeof Errata)[keyof typeof Errata];
89
+ /**
90
+ * Experimental feature flags.
91
+ */
92
+ export declare const ExperimentalFeature: {
93
+ readonly WebFlexBasis: 0;
94
+ };
95
+ /** Union type of the ExperimentalFeature values. */
96
+ export type ExperimentalFeature = (typeof ExperimentalFeature)[keyof typeof ExperimentalFeature];
97
+ /**
98
+ * Flex container main-axis directions.
99
+ */
100
+ export declare const FlexDirection: {
101
+ readonly Column: 0;
102
+ readonly ColumnReverse: 1;
103
+ readonly Row: 2;
104
+ readonly RowReverse: 3;
105
+ };
106
+ /** Union type of the FlexDirection values. */
107
+ export type FlexDirection = (typeof FlexDirection)[keyof typeof FlexDirection];
108
+ /**
109
+ * Gutter axes for gap properties: column, row, or all.
110
+ */
111
+ export declare const Gutter: {
112
+ readonly Column: 0;
113
+ readonly Row: 1;
114
+ readonly All: 2;
115
+ };
116
+ /** Union type of the Gutter values. */
117
+ export type Gutter = (typeof Gutter)[keyof typeof Gutter];
118
+ /**
119
+ * Justify-content values for distributing free space along the main axis.
120
+ */
121
+ export declare const Justify: {
122
+ readonly FlexStart: 0;
123
+ readonly Center: 1;
124
+ readonly FlexEnd: 2;
125
+ readonly SpaceBetween: 3;
126
+ readonly SpaceAround: 4;
127
+ readonly SpaceEvenly: 5;
128
+ };
129
+ /** Union type of the Justify values. */
130
+ export type Justify = (typeof Justify)[keyof typeof Justify];
131
+ /**
132
+ * Measure modes for the available size passed to layout: undefined, exactly,
133
+ * or at most.
134
+ */
135
+ export declare const MeasureMode: {
136
+ readonly Undefined: 0;
137
+ readonly Exactly: 1;
138
+ readonly AtMost: 2;
139
+ };
140
+ /** Union type of the MeasureMode values. */
141
+ export type MeasureMode = (typeof MeasureMode)[keyof typeof MeasureMode];
142
+ /**
143
+ * Overflow behavior: visible, hidden, or scroll.
144
+ */
145
+ export declare const Overflow: {
146
+ readonly Visible: 0;
147
+ readonly Hidden: 1;
148
+ readonly Scroll: 2;
149
+ };
150
+ /** Union type of the Overflow values. */
151
+ export type Overflow = (typeof Overflow)[keyof typeof Overflow];
152
+ /**
153
+ * Positioning modes: static, relative, or absolute.
154
+ */
155
+ export declare const PositionType: {
156
+ readonly Static: 0;
157
+ readonly Relative: 1;
158
+ readonly Absolute: 2;
159
+ };
160
+ /** Union type of the PositionType values. */
161
+ export type PositionType = (typeof PositionType)[keyof typeof PositionType];
162
+ /**
163
+ * Dimension value units: undefined, point, percent, or auto.
164
+ */
165
+ export declare const Unit: {
166
+ readonly Undefined: 0;
167
+ readonly Point: 1;
168
+ readonly Percent: 2;
169
+ readonly Auto: 3;
170
+ };
171
+ /** Union type of the Unit values. */
172
+ export type Unit = (typeof Unit)[keyof typeof Unit];
173
+ /**
174
+ * Flex-wrap behavior: no-wrap, wrap, or wrap-reverse.
175
+ */
176
+ export declare const Wrap: {
177
+ readonly NoWrap: 0;
178
+ readonly Wrap: 1;
179
+ readonly WrapReverse: 2;
180
+ };
181
+ /** Union type of the Wrap values. */
182
+ export type Wrap = (typeof Wrap)[keyof typeof Wrap];
183
+ //# sourceMappingURL=enums.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../../src/native-ts/yoga-layout/enums.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;CAUR,CAAA;AACV,sCAAsC;AACtC,MAAM,MAAM,KAAK,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAA;AAEtD;;GAEG;AACH,eAAO,MAAM,SAAS;;;CAGZ,CAAA;AACV,0CAA0C;AAC1C,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAA;AAElE;;GAEG;AACH,eAAO,MAAM,SAAS;;;CAGZ,CAAA;AACV,0CAA0C;AAC1C,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAA;AAElE;;GAEG;AACH,eAAO,MAAM,SAAS;;;;CAIZ,CAAA;AACV,0CAA0C;AAC1C,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAA;AAElE;;GAEG;AACH,eAAO,MAAM,OAAO;;;;CAIV,CAAA;AACV,wCAAwC;AACxC,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAA;AAE5D;;GAEG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;CAUP,CAAA;AACV,qCAAqC;AACrC,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,OAAO,IAAI,CAAC,CAAA;AAEnD;;GAEG;AACH,eAAO,MAAM,MAAM;;;;;;;CAOT,CAAA;AACV,uCAAuC;AACvC,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAA;AAEzD;;GAEG;AACH,eAAO,MAAM,mBAAmB;;CAEtB,CAAA;AACV,oDAAoD;AACpD,MAAM,MAAM,mBAAmB,GAC7B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAA;AAEhE;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;CAKhB,CAAA;AACV,8CAA8C;AAC9C,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAA;AAE9E;;GAEG;AACH,eAAO,MAAM,MAAM;;;;CAIT,CAAA;AACV,uCAAuC;AACvC,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAA;AAEzD;;GAEG;AACH,eAAO,MAAM,OAAO;;;;;;;CAOV,CAAA;AACV,wCAAwC;AACxC,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAA;AAE5D;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;CAId,CAAA;AACV,4CAA4C;AAC5C,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAA;AAExE;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;CAIX,CAAA;AACV,yCAAyC;AACzC,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAA;AAE/D;;GAEG;AACH,eAAO,MAAM,YAAY;;;;CAIf,CAAA;AACV,6CAA6C;AAC7C,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAA;AAE3E;;GAEG;AACH,eAAO,MAAM,IAAI;;;;;CAKP,CAAA;AACV,qCAAqC;AACrC,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,OAAO,IAAI,CAAC,CAAA;AAEnD;;GAEG;AACH,eAAO,MAAM,IAAI;;;;CAIP,CAAA;AACV,qCAAqC;AACrC,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,OAAO,IAAI,CAAC,CAAA"}