@flanksource/clicky-ui 0.3.17 → 0.3.19

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 (923) hide show
  1. package/dist/ai.cjs +12 -6
  2. package/dist/ai.cjs.map +1 -1
  3. package/dist/ai.js +10 -4
  4. package/dist/ai.js.map +1 -1
  5. package/dist/chat.cjs +36 -0
  6. package/dist/chat.cjs.map +1 -1
  7. package/dist/chat.js +37 -1
  8. package/dist/chat.js.map +1 -1
  9. package/dist/components/Combobox.cjs +122 -153
  10. package/dist/components/Combobox.cjs.map +1 -1
  11. package/dist/components/Combobox.d.ts.map +1 -1
  12. package/dist/components/Combobox.js +124 -155
  13. package/dist/components/Combobox.js.map +1 -1
  14. package/dist/components/ComboboxControl.cjs +145 -0
  15. package/dist/components/ComboboxControl.cjs.map +1 -0
  16. package/dist/components/ComboboxControl.d.ts +37 -0
  17. package/dist/components/ComboboxControl.d.ts.map +1 -0
  18. package/dist/components/ComboboxControl.js +145 -0
  19. package/dist/components/ComboboxControl.js.map +1 -0
  20. package/dist/components/ComboboxMenu.cjs +35 -14
  21. package/dist/components/ComboboxMenu.cjs.map +1 -1
  22. package/dist/components/ComboboxMenu.d.ts.map +1 -1
  23. package/dist/components/ComboboxMenu.js +35 -14
  24. package/dist/components/ComboboxMenu.js.map +1 -1
  25. package/dist/components/ComboboxTags.cjs +40 -0
  26. package/dist/components/ComboboxTags.cjs.map +1 -0
  27. package/dist/components/ComboboxTags.d.ts +8 -0
  28. package/dist/components/ComboboxTags.d.ts.map +1 -0
  29. package/dist/components/ComboboxTags.js +40 -0
  30. package/dist/components/ComboboxTags.js.map +1 -0
  31. package/dist/components/EndpointSelector.model.cjs +96 -0
  32. package/dist/components/EndpointSelector.model.cjs.map +1 -0
  33. package/dist/components/EndpointSelector.model.d.ts +2 -0
  34. package/dist/components/EndpointSelector.model.d.ts.map +1 -1
  35. package/dist/components/EndpointSelector.model.js +96 -0
  36. package/dist/components/EndpointSelector.model.js.map +1 -0
  37. package/dist/components/ErrorWrapper.cjs +168 -0
  38. package/dist/components/ErrorWrapper.cjs.map +1 -0
  39. package/dist/components/ErrorWrapper.d.ts +19 -0
  40. package/dist/components/ErrorWrapper.d.ts.map +1 -0
  41. package/dist/components/ErrorWrapper.js +168 -0
  42. package/dist/components/ErrorWrapper.js.map +1 -0
  43. package/dist/components/FilterBar.cjs +116 -4
  44. package/dist/components/FilterBar.cjs.map +1 -1
  45. package/dist/components/FilterBar.d.ts +37 -2
  46. package/dist/components/FilterBar.d.ts.map +1 -1
  47. package/dist/components/FilterBar.js +116 -4
  48. package/dist/components/FilterBar.js.map +1 -1
  49. package/dist/components/JSONPathField.cjs +112 -0
  50. package/dist/components/JSONPathField.cjs.map +1 -0
  51. package/dist/components/JSONPathField.d.ts +36 -0
  52. package/dist/components/JSONPathField.d.ts.map +1 -0
  53. package/dist/components/JSONPathField.js +112 -0
  54. package/dist/components/JSONPathField.js.map +1 -0
  55. package/dist/components/JSONPathPlayground.cjs +225 -0
  56. package/dist/components/JSONPathPlayground.cjs.map +1 -0
  57. package/dist/components/JSONPathPlayground.d.ts +59 -0
  58. package/dist/components/JSONPathPlayground.d.ts.map +1 -0
  59. package/dist/components/JSONPathPlayground.js +225 -0
  60. package/dist/components/JSONPathPlayground.js.map +1 -0
  61. package/dist/components/JsonSchemaForm.cjs +8 -4
  62. package/dist/components/JsonSchemaForm.cjs.map +1 -1
  63. package/dist/components/JsonSchemaForm.d.ts.map +1 -1
  64. package/dist/components/JsonSchemaForm.js +8 -4
  65. package/dist/components/JsonSchemaForm.js.map +1 -1
  66. package/dist/components/OnePasswordSelector.cjs +178 -0
  67. package/dist/components/OnePasswordSelector.cjs.map +1 -0
  68. package/dist/components/OnePasswordSelector.d.ts +8 -0
  69. package/dist/components/OnePasswordSelector.d.ts.map +1 -0
  70. package/dist/components/OnePasswordSelector.js +178 -0
  71. package/dist/components/OnePasswordSelector.js.map +1 -0
  72. package/dist/components/OnePasswordSelector.model.cjs +31 -0
  73. package/dist/components/OnePasswordSelector.model.cjs.map +1 -0
  74. package/dist/components/OnePasswordSelector.model.d.ts +27 -0
  75. package/dist/components/OnePasswordSelector.model.d.ts.map +1 -0
  76. package/dist/components/OnePasswordSelector.model.js +31 -0
  77. package/dist/components/OnePasswordSelector.model.js.map +1 -0
  78. package/dist/components/SecretFormField.cjs +142 -0
  79. package/dist/components/SecretFormField.cjs.map +1 -0
  80. package/dist/components/SecretFormField.d.ts +9 -0
  81. package/dist/components/SecretFormField.d.ts.map +1 -0
  82. package/dist/components/SecretFormField.js +142 -0
  83. package/dist/components/SecretFormField.js.map +1 -0
  84. package/dist/components/SecretKeySelector.cjs +20 -14
  85. package/dist/components/SecretKeySelector.cjs.map +1 -1
  86. package/dist/components/SecretKeySelector.d.ts +4 -1
  87. package/dist/components/SecretKeySelector.d.ts.map +1 -1
  88. package/dist/components/SecretKeySelector.js +20 -14
  89. package/dist/components/SecretKeySelector.js.map +1 -1
  90. package/dist/components/TreePickerField.cjs +71 -27
  91. package/dist/components/TreePickerField.cjs.map +1 -1
  92. package/dist/components/TreePickerField.d.ts +31 -2
  93. package/dist/components/TreePickerField.d.ts.map +1 -1
  94. package/dist/components/TreePickerField.js +72 -28
  95. package/dist/components/TreePickerField.js.map +1 -1
  96. package/dist/components/TriStateToggle.cjs +53 -0
  97. package/dist/components/TriStateToggle.cjs.map +1 -0
  98. package/dist/components/TriStateToggle.d.ts +27 -0
  99. package/dist/components/TriStateToggle.d.ts.map +1 -0
  100. package/dist/components/TriStateToggle.js +53 -0
  101. package/dist/components/TriStateToggle.js.map +1 -0
  102. package/dist/components/combobox-types.d.ts +25 -1
  103. package/dist/components/combobox-types.d.ts.map +1 -1
  104. package/dist/components/combobox-utils.cjs +26 -0
  105. package/dist/components/combobox-utils.cjs.map +1 -1
  106. package/dist/components/combobox-utils.d.ts +10 -0
  107. package/dist/components/combobox-utils.d.ts.map +1 -1
  108. package/dist/components/combobox-utils.js +26 -0
  109. package/dist/components/combobox-utils.js.map +1 -1
  110. package/dist/components/filter-bar-utils.cjs +12 -0
  111. package/dist/components/filter-bar-utils.cjs.map +1 -1
  112. package/dist/components/filter-bar-utils.d.ts.map +1 -1
  113. package/dist/components/filter-bar-utils.js +12 -0
  114. package/dist/components/filter-bar-utils.js.map +1 -1
  115. package/dist/components/jotai-bindings-core.cjs.map +1 -1
  116. package/dist/components/jotai-bindings-core.d.ts +4 -1
  117. package/dist/components/jotai-bindings-core.d.ts.map +1 -1
  118. package/dist/components/jotai-bindings-core.js.map +1 -1
  119. package/dist/components/json-schema-form-accordion-array.cjs +290 -0
  120. package/dist/components/json-schema-form-accordion-array.cjs.map +1 -0
  121. package/dist/components/json-schema-form-accordion-array.d.ts +7 -0
  122. package/dist/components/json-schema-form-accordion-array.d.ts.map +1 -0
  123. package/dist/components/json-schema-form-accordion-array.js +290 -0
  124. package/dist/components/json-schema-form-accordion-array.js.map +1 -0
  125. package/dist/components/json-schema-form-array.cjs +99 -110
  126. package/dist/components/json-schema-form-array.cjs.map +1 -1
  127. package/dist/components/json-schema-form-array.d.ts +1 -1
  128. package/dist/components/json-schema-form-array.d.ts.map +1 -1
  129. package/dist/components/json-schema-form-array.js +98 -109
  130. package/dist/components/json-schema-form-array.js.map +1 -1
  131. package/dist/components/json-schema-form-error-display.cjs +4 -2
  132. package/dist/components/json-schema-form-error-display.cjs.map +1 -1
  133. package/dist/components/json-schema-form-error-display.d.ts +4 -2
  134. package/dist/components/json-schema-form-error-display.d.ts.map +1 -1
  135. package/dist/components/json-schema-form-error-display.js +4 -2
  136. package/dist/components/json-schema-form-error-display.js.map +1 -1
  137. package/dist/components/json-schema-form-extensions.cjs +10 -0
  138. package/dist/components/json-schema-form-extensions.cjs.map +1 -0
  139. package/dist/components/json-schema-form-extensions.d.ts +8 -0
  140. package/dist/components/json-schema-form-extensions.d.ts.map +1 -0
  141. package/dist/components/json-schema-form-extensions.js +10 -0
  142. package/dist/components/json-schema-form-extensions.js.map +1 -0
  143. package/dist/components/json-schema-form-fields.cjs +25 -101
  144. package/dist/components/json-schema-form-fields.cjs.map +1 -1
  145. package/dist/components/json-schema-form-fields.d.ts +1 -32
  146. package/dist/components/json-schema-form-fields.d.ts.map +1 -1
  147. package/dist/components/json-schema-form-fields.js +28 -104
  148. package/dist/components/json-schema-form-fields.js.map +1 -1
  149. package/dist/components/json-schema-form-item-summary.cjs +131 -0
  150. package/dist/components/json-schema-form-item-summary.cjs.map +1 -0
  151. package/dist/components/json-schema-form-item-summary.d.ts +13 -0
  152. package/dist/components/json-schema-form-item-summary.d.ts.map +1 -0
  153. package/dist/components/json-schema-form-item-summary.js +131 -0
  154. package/dist/components/json-schema-form-item-summary.js.map +1 -0
  155. package/dist/components/json-schema-form-layout.cjs +156 -0
  156. package/dist/components/json-schema-form-layout.cjs.map +1 -0
  157. package/dist/components/json-schema-form-layout.d.ts +43 -0
  158. package/dist/components/json-schema-form-layout.d.ts.map +1 -0
  159. package/dist/components/json-schema-form-layout.js +156 -0
  160. package/dist/components/json-schema-form-layout.js.map +1 -0
  161. package/dist/components/json-schema-form-lookup-tree.cjs +149 -0
  162. package/dist/components/json-schema-form-lookup-tree.cjs.map +1 -0
  163. package/dist/components/json-schema-form-lookup-tree.d.ts +22 -0
  164. package/dist/components/json-schema-form-lookup-tree.d.ts.map +1 -0
  165. package/dist/components/json-schema-form-lookup-tree.js +149 -0
  166. package/dist/components/json-schema-form-lookup-tree.js.map +1 -0
  167. package/dist/components/json-schema-form-object.cjs +11 -4
  168. package/dist/components/json-schema-form-object.cjs.map +1 -1
  169. package/dist/components/json-schema-form-object.d.ts.map +1 -1
  170. package/dist/components/json-schema-form-object.js +11 -4
  171. package/dist/components/json-schema-form-object.js.map +1 -1
  172. package/dist/components/json-schema-form-render.cjs +53 -29
  173. package/dist/components/json-schema-form-render.cjs.map +1 -1
  174. package/dist/components/json-schema-form-render.d.ts.map +1 -1
  175. package/dist/components/json-schema-form-render.js +53 -29
  176. package/dist/components/json-schema-form-render.js.map +1 -1
  177. package/dist/components/json-schema-form-resolve.cjs +62 -13
  178. package/dist/components/json-schema-form-resolve.cjs.map +1 -1
  179. package/dist/components/json-schema-form-resolve.d.ts +1 -0
  180. package/dist/components/json-schema-form-resolve.d.ts.map +1 -1
  181. package/dist/components/json-schema-form-resolve.js +62 -13
  182. package/dist/components/json-schema-form-resolve.js.map +1 -1
  183. package/dist/components/json-schema-form-table-array.cjs +123 -0
  184. package/dist/components/json-schema-form-table-array.cjs.map +1 -0
  185. package/dist/components/json-schema-form-table-array.d.ts +7 -0
  186. package/dist/components/json-schema-form-table-array.d.ts.map +1 -0
  187. package/dist/components/json-schema-form-table-array.js +123 -0
  188. package/dist/components/json-schema-form-table-array.js.map +1 -0
  189. package/dist/components/json-schema-form-tone.cjs +34 -0
  190. package/dist/components/json-schema-form-tone.cjs.map +1 -0
  191. package/dist/components/json-schema-form-tone.d.ts +8 -0
  192. package/dist/components/json-schema-form-tone.d.ts.map +1 -0
  193. package/dist/components/json-schema-form-tone.js +34 -0
  194. package/dist/components/json-schema-form-tone.js.map +1 -0
  195. package/dist/components/json-schema-form-types.d.ts +88 -10
  196. package/dist/components/json-schema-form-types.d.ts.map +1 -1
  197. package/dist/components/json-schema-form-utils.cjs +47 -4
  198. package/dist/components/json-schema-form-utils.cjs.map +1 -1
  199. package/dist/components/json-schema-form-utils.d.ts +19 -4
  200. package/dist/components/json-schema-form-utils.d.ts.map +1 -1
  201. package/dist/components/json-schema-form-utils.js +47 -4
  202. package/dist/components/json-schema-form-utils.js.map +1 -1
  203. package/dist/components/jsonPathTree.cjs +189 -0
  204. package/dist/components/jsonPathTree.cjs.map +1 -0
  205. package/dist/components/jsonPathTree.d.ts +92 -0
  206. package/dist/components/jsonPathTree.d.ts.map +1 -0
  207. package/dist/components/jsonPathTree.js +189 -0
  208. package/dist/components/jsonPathTree.js.map +1 -0
  209. package/dist/components/secret-form-extension.cjs +30 -0
  210. package/dist/components/secret-form-extension.cjs.map +1 -0
  211. package/dist/components/secret-form-extension.d.ts +23 -0
  212. package/dist/components/secret-form-extension.d.ts.map +1 -0
  213. package/dist/components/secret-form-extension.js +30 -0
  214. package/dist/components/secret-form-extension.js.map +1 -0
  215. package/dist/components/tri-state.cjs +8 -0
  216. package/dist/components/tri-state.cjs.map +1 -0
  217. package/dist/components/tri-state.d.ts +5 -0
  218. package/dist/components/tri-state.d.ts.map +1 -0
  219. package/dist/components/tri-state.js +8 -0
  220. package/dist/components/tri-state.js.map +1 -0
  221. package/dist/components/useComboboxLayout.cjs +59 -0
  222. package/dist/components/useComboboxLayout.cjs.map +1 -0
  223. package/dist/components/useComboboxLayout.d.ts +5 -0
  224. package/dist/components/useComboboxLayout.d.ts.map +1 -0
  225. package/dist/components/useComboboxLayout.js +59 -0
  226. package/dist/components/useComboboxLayout.js.map +1 -0
  227. package/dist/components.cjs +37 -0
  228. package/dist/components.cjs.map +1 -1
  229. package/dist/components.d.ts +20 -4
  230. package/dist/components.d.ts.map +1 -1
  231. package/dist/components.js +38 -1
  232. package/dist/components.js.map +1 -1
  233. package/dist/data/Clicky.cjs +51 -2
  234. package/dist/data/Clicky.cjs.map +1 -1
  235. package/dist/data/Clicky.d.ts +10 -1
  236. package/dist/data/Clicky.d.ts.map +1 -1
  237. package/dist/data/Clicky.js +51 -2
  238. package/dist/data/Clicky.js.map +1 -1
  239. package/dist/data/DataTable.cjs +185 -53
  240. package/dist/data/DataTable.cjs.map +1 -1
  241. package/dist/data/DataTable.d.ts +63 -3
  242. package/dist/data/DataTable.d.ts.map +1 -1
  243. package/dist/data/DataTable.js +185 -53
  244. package/dist/data/DataTable.js.map +1 -1
  245. package/dist/data/LogsTable.cjs +10 -1
  246. package/dist/data/LogsTable.cjs.map +1 -1
  247. package/dist/data/LogsTable.d.ts +3 -1
  248. package/dist/data/LogsTable.d.ts.map +1 -1
  249. package/dist/data/LogsTable.js +10 -1
  250. package/dist/data/LogsTable.js.map +1 -1
  251. package/dist/data/TaskExecDetails.cjs +40 -0
  252. package/dist/data/TaskExecDetails.cjs.map +1 -0
  253. package/dist/data/TaskExecDetails.d.ts +5 -0
  254. package/dist/data/TaskExecDetails.d.ts.map +1 -0
  255. package/dist/data/TaskExecDetails.js +40 -0
  256. package/dist/data/TaskExecDetails.js.map +1 -0
  257. package/dist/data/TaskManager.cjs +99 -14
  258. package/dist/data/TaskManager.cjs.map +1 -1
  259. package/dist/data/TaskManager.d.ts.map +1 -1
  260. package/dist/data/TaskManager.js +100 -15
  261. package/dist/data/TaskManager.js.map +1 -1
  262. package/dist/data/TaskProgress.cjs +59 -14
  263. package/dist/data/TaskProgress.cjs.map +1 -1
  264. package/dist/data/TaskProgress.d.ts +2 -1
  265. package/dist/data/TaskProgress.d.ts.map +1 -1
  266. package/dist/data/TaskProgress.js +59 -14
  267. package/dist/data/TaskProgress.js.map +1 -1
  268. package/dist/data/TaskSnapshot.cjs.map +1 -1
  269. package/dist/data/TaskSnapshot.d.ts +12 -1
  270. package/dist/data/TaskSnapshot.d.ts.map +1 -1
  271. package/dist/data/TaskSnapshot.js.map +1 -1
  272. package/dist/data/TreeNode.cjs +3 -0
  273. package/dist/data/TreeNode.cjs.map +1 -1
  274. package/dist/data/TreeNode.d.ts.map +1 -1
  275. package/dist/data/TreeNode.js +3 -0
  276. package/dist/data/TreeNode.js.map +1 -1
  277. package/dist/data/ai/AdvancedChatConfig.cjs +289 -0
  278. package/dist/data/ai/AdvancedChatConfig.cjs.map +1 -0
  279. package/dist/data/ai/AdvancedChatConfig.d.ts +21 -0
  280. package/dist/data/ai/AdvancedChatConfig.d.ts.map +1 -0
  281. package/dist/data/ai/AdvancedChatConfig.js +289 -0
  282. package/dist/data/ai/AdvancedChatConfig.js.map +1 -0
  283. package/dist/data/ai/AdvancedCostsPanel.cjs +120 -0
  284. package/dist/data/ai/AdvancedCostsPanel.cjs.map +1 -0
  285. package/dist/data/ai/AdvancedCostsPanel.d.ts +16 -0
  286. package/dist/data/ai/AdvancedCostsPanel.d.ts.map +1 -0
  287. package/dist/data/ai/AdvancedCostsPanel.js +120 -0
  288. package/dist/data/ai/AdvancedCostsPanel.js.map +1 -0
  289. package/dist/data/ai/ChatWindow.catalogs.cjs +74 -0
  290. package/dist/data/ai/ChatWindow.catalogs.cjs.map +1 -0
  291. package/dist/data/ai/ChatWindow.catalogs.d.ts +16 -0
  292. package/dist/data/ai/ChatWindow.catalogs.d.ts.map +1 -0
  293. package/dist/data/ai/ChatWindow.catalogs.js +74 -0
  294. package/dist/data/ai/ChatWindow.catalogs.js.map +1 -0
  295. package/dist/data/ai/ChatWindow.cjs +78 -100
  296. package/dist/data/ai/ChatWindow.cjs.map +1 -1
  297. package/dist/data/ai/ChatWindow.d.ts +1 -1
  298. package/dist/data/ai/ChatWindow.d.ts.map +1 -1
  299. package/dist/data/ai/ChatWindow.js +80 -102
  300. package/dist/data/ai/ChatWindow.js.map +1 -1
  301. package/dist/data/ai/ChatWindow.preferences.cjs.map +1 -1
  302. package/dist/data/ai/ChatWindow.preferences.d.ts +2 -4
  303. package/dist/data/ai/ChatWindow.preferences.d.ts.map +1 -1
  304. package/dist/data/ai/ChatWindow.preferences.js.map +1 -1
  305. package/dist/data/ai/ChatWindow.runtime.cjs +120 -0
  306. package/dist/data/ai/ChatWindow.runtime.cjs.map +1 -0
  307. package/dist/data/ai/ChatWindow.runtime.d.ts +20 -0
  308. package/dist/data/ai/ChatWindow.runtime.d.ts.map +1 -0
  309. package/dist/data/ai/ChatWindow.runtime.js +120 -0
  310. package/dist/data/ai/ChatWindow.runtime.js.map +1 -0
  311. package/dist/data/ai/ChatWindow.thread.cjs +1 -1
  312. package/dist/data/ai/ChatWindow.thread.cjs.map +1 -1
  313. package/dist/data/ai/ChatWindow.thread.js +1 -1
  314. package/dist/data/ai/ChatWindow.thread.js.map +1 -1
  315. package/dist/data/ai/ChatWindow.tool-catalog.cjs +20 -0
  316. package/dist/data/ai/ChatWindow.tool-catalog.cjs.map +1 -1
  317. package/dist/data/ai/ChatWindow.tool-catalog.d.ts +17 -1
  318. package/dist/data/ai/ChatWindow.tool-catalog.d.ts.map +1 -1
  319. package/dist/data/ai/ChatWindow.tool-catalog.js +20 -0
  320. package/dist/data/ai/ChatWindow.tool-catalog.js.map +1 -1
  321. package/dist/data/ai/ChatWindow.types.d.ts +13 -5
  322. package/dist/data/ai/ChatWindow.types.d.ts.map +1 -1
  323. package/dist/data/ai/ChatWindowManager.cjs +3 -1
  324. package/dist/data/ai/ChatWindowManager.cjs.map +1 -1
  325. package/dist/data/ai/ChatWindowManager.d.ts.map +1 -1
  326. package/dist/data/ai/ChatWindowManager.js +3 -1
  327. package/dist/data/ai/ChatWindowManager.js.map +1 -1
  328. package/dist/data/ai/PromptPicker/PromptPicker.cjs +1 -1
  329. package/dist/data/ai/PromptPicker/PromptPicker.cjs.map +1 -1
  330. package/dist/data/ai/PromptPicker/PromptPicker.d.ts +1 -1
  331. package/dist/data/ai/PromptPicker/PromptPicker.d.ts.map +1 -1
  332. package/dist/data/ai/PromptPicker/PromptPicker.js +1 -1
  333. package/dist/data/ai/PromptPicker/PromptPicker.js.map +1 -1
  334. package/dist/data/ai/PromptRunEditor/index.cjs +2 -2
  335. package/dist/data/ai/PromptRunEditor/index.cjs.map +1 -1
  336. package/dist/data/ai/PromptRunEditor/index.d.ts +1 -1
  337. package/dist/data/ai/PromptRunEditor/index.d.ts.map +1 -1
  338. package/dist/data/ai/PromptRunEditor/index.js +2 -2
  339. package/dist/data/ai/PromptRunEditor/index.js.map +1 -1
  340. package/dist/data/ai/RuntimeModePicker.cjs +1 -1
  341. package/dist/data/ai/RuntimeModePicker.cjs.map +1 -1
  342. package/dist/data/ai/RuntimeModePicker.d.ts +1 -1
  343. package/dist/data/ai/RuntimeModePicker.d.ts.map +1 -1
  344. package/dist/data/ai/RuntimeModePicker.js +1 -1
  345. package/dist/data/ai/RuntimeModePicker.js.map +1 -1
  346. package/dist/data/ai/SessionInspector.files.cjs +26 -43
  347. package/dist/data/ai/SessionInspector.files.cjs.map +1 -1
  348. package/dist/data/ai/SessionInspector.files.d.ts.map +1 -1
  349. package/dist/data/ai/SessionInspector.files.js +26 -43
  350. package/dist/data/ai/SessionInspector.files.js.map +1 -1
  351. package/dist/data/ai/SessionInspector.hierarchy.cjs +1 -1
  352. package/dist/data/ai/SessionInspector.hierarchy.cjs.map +1 -1
  353. package/dist/data/ai/SessionInspector.hierarchy.js +1 -1
  354. package/dist/data/ai/SessionInspector.hierarchy.js.map +1 -1
  355. package/dist/data/ai/SessionInspector.model.cjs +1 -1
  356. package/dist/data/ai/SessionInspector.model.cjs.map +1 -1
  357. package/dist/data/ai/SessionInspector.model.js +1 -1
  358. package/dist/data/ai/SessionInspector.model.js.map +1 -1
  359. package/dist/data/ai/SessionViewer.rows.cjs +4 -16
  360. package/dist/data/ai/SessionViewer.rows.cjs.map +1 -1
  361. package/dist/data/ai/SessionViewer.rows.d.ts.map +1 -1
  362. package/dist/data/ai/SessionViewer.rows.js +4 -16
  363. package/dist/data/ai/SessionViewer.rows.js.map +1 -1
  364. package/dist/data/ai/SpecRuntimeEditor/ModelSection.cjs +12 -3
  365. package/dist/data/ai/SpecRuntimeEditor/ModelSection.cjs.map +1 -1
  366. package/dist/data/ai/SpecRuntimeEditor/ModelSection.d.ts +1 -1
  367. package/dist/data/ai/SpecRuntimeEditor/ModelSection.d.ts.map +1 -1
  368. package/dist/data/ai/SpecRuntimeEditor/ModelSection.js +12 -3
  369. package/dist/data/ai/SpecRuntimeEditor/ModelSection.js.map +1 -1
  370. package/dist/data/ai/SpecRuntimeEditor/VerifySection.cjs.map +1 -1
  371. package/dist/data/ai/SpecRuntimeEditor/VerifySection.d.ts +1 -1
  372. package/dist/data/ai/SpecRuntimeEditor/VerifySection.d.ts.map +1 -1
  373. package/dist/data/ai/SpecRuntimeEditor/VerifySection.js.map +1 -1
  374. package/dist/data/ai/SpecRuntimeEditor/fields.js +1 -1
  375. package/dist/data/ai/SpecRuntimeEditor/index.cjs.map +1 -1
  376. package/dist/data/ai/SpecRuntimeEditor/index.d.ts +2 -2
  377. package/dist/data/ai/SpecRuntimeEditor/index.d.ts.map +1 -1
  378. package/dist/data/ai/SpecRuntimeEditor/index.js.map +1 -1
  379. package/dist/data/ai/ThreadPicker.cjs +65 -3
  380. package/dist/data/ai/ThreadPicker.cjs.map +1 -1
  381. package/dist/data/ai/ThreadPicker.d.ts +11 -5
  382. package/dist/data/ai/ThreadPicker.d.ts.map +1 -1
  383. package/dist/data/ai/ThreadPicker.js +65 -3
  384. package/dist/data/ai/ThreadPicker.js.map +1 -1
  385. package/dist/data/ai/ToolPreferences.cjs +65 -685
  386. package/dist/data/ai/ToolPreferences.cjs.map +1 -1
  387. package/dist/data/ai/ToolPreferences.d.ts +15 -17
  388. package/dist/data/ai/ToolPreferences.d.ts.map +1 -1
  389. package/dist/data/ai/ToolPreferences.js +64 -683
  390. package/dist/data/ai/ToolPreferences.js.map +1 -1
  391. package/dist/data/ai/ToolPreferences.model.cjs +148 -0
  392. package/dist/data/ai/ToolPreferences.model.cjs.map +1 -0
  393. package/dist/data/ai/ToolPreferences.model.d.ts +31 -0
  394. package/dist/data/ai/ToolPreferences.model.d.ts.map +1 -0
  395. package/dist/data/ai/ToolPreferences.model.js +148 -0
  396. package/dist/data/ai/ToolPreferences.model.js.map +1 -0
  397. package/dist/data/ai/ToolPreferencesList.cjs +270 -0
  398. package/dist/data/ai/ToolPreferencesList.cjs.map +1 -0
  399. package/dist/data/ai/ToolPreferencesList.d.ts +18 -0
  400. package/dist/data/ai/ToolPreferencesList.d.ts.map +1 -0
  401. package/dist/data/ai/ToolPreferencesList.js +270 -0
  402. package/dist/data/ai/ToolPreferencesList.js.map +1 -0
  403. package/dist/data/ai/agent-action-icons.cjs.map +1 -1
  404. package/dist/data/ai/agent-action-icons.js.map +1 -1
  405. package/dist/data/ai/chat-window-context.cjs +4 -1
  406. package/dist/data/ai/chat-window-context.cjs.map +1 -1
  407. package/dist/data/ai/chat-window-context.d.ts +7 -0
  408. package/dist/data/ai/chat-window-context.d.ts.map +1 -1
  409. package/dist/data/ai/chat-window-context.js +4 -1
  410. package/dist/data/ai/chat-window-context.js.map +1 -1
  411. package/dist/data/ai/index.d.ts +6 -3
  412. package/dist/data/ai/index.d.ts.map +1 -1
  413. package/dist/data/ai/session-tones.cjs +67 -0
  414. package/dist/data/ai/session-tones.cjs.map +1 -0
  415. package/dist/data/ai/session-tones.d.ts +34 -0
  416. package/dist/data/ai/session-tones.d.ts.map +1 -0
  417. package/dist/data/ai/session-tones.js +67 -0
  418. package/dist/data/ai/session-tones.js.map +1 -0
  419. package/dist/data/ai/thread-costs.cjs +39 -0
  420. package/dist/data/ai/thread-costs.cjs.map +1 -0
  421. package/dist/data/ai/thread-costs.d.ts +62 -0
  422. package/dist/data/ai/thread-costs.d.ts.map +1 -0
  423. package/dist/data/ai/thread-costs.js +39 -0
  424. package/dist/data/ai/thread-costs.js.map +1 -0
  425. package/dist/data/cells/CellFilterActions.cjs +68 -0
  426. package/dist/data/cells/CellFilterActions.cjs.map +1 -0
  427. package/dist/data/cells/CellFilterActions.d.ts +15 -0
  428. package/dist/data/cells/CellFilterActions.d.ts.map +1 -0
  429. package/dist/data/cells/CellFilterActions.js +68 -0
  430. package/dist/data/cells/CellFilterActions.js.map +1 -0
  431. package/dist/data/chat/Chat.cjs +156 -113
  432. package/dist/data/chat/Chat.cjs.map +1 -1
  433. package/dist/data/chat/Chat.d.ts +24 -7
  434. package/dist/data/chat/Chat.d.ts.map +1 -1
  435. package/dist/data/chat/Chat.fixtures.cjs +48 -3
  436. package/dist/data/chat/Chat.fixtures.cjs.map +1 -1
  437. package/dist/data/chat/Chat.fixtures.d.ts +1 -1
  438. package/dist/data/chat/Chat.fixtures.d.ts.map +1 -1
  439. package/dist/data/chat/Chat.fixtures.js +48 -3
  440. package/dist/data/chat/Chat.fixtures.js.map +1 -1
  441. package/dist/data/chat/Chat.js +160 -117
  442. package/dist/data/chat/Chat.js.map +1 -1
  443. package/dist/data/chat/Chat.runtime.cjs +63 -0
  444. package/dist/data/chat/Chat.runtime.cjs.map +1 -0
  445. package/dist/data/chat/Chat.runtime.d.ts +16 -0
  446. package/dist/data/chat/Chat.runtime.d.ts.map +1 -0
  447. package/dist/data/chat/Chat.runtime.js +63 -0
  448. package/dist/data/chat/Chat.runtime.js.map +1 -0
  449. package/dist/data/chat/ChatRuntimeToolbar.cjs +62 -0
  450. package/dist/data/chat/ChatRuntimeToolbar.cjs.map +1 -0
  451. package/dist/data/chat/ChatRuntimeToolbar.d.ts +14 -0
  452. package/dist/data/chat/ChatRuntimeToolbar.d.ts.map +1 -0
  453. package/dist/data/chat/ChatRuntimeToolbar.js +62 -0
  454. package/dist/data/chat/ChatRuntimeToolbar.js.map +1 -0
  455. package/dist/data/chat/ToolCall.cjs +86 -24
  456. package/dist/data/chat/ToolCall.cjs.map +1 -1
  457. package/dist/data/chat/ToolCall.d.ts +12 -5
  458. package/dist/data/chat/ToolCall.d.ts.map +1 -1
  459. package/dist/data/chat/ToolCall.js +86 -24
  460. package/dist/data/chat/ToolCall.js.map +1 -1
  461. package/dist/data/chat/approval.cjs +49 -6
  462. package/dist/data/chat/approval.cjs.map +1 -1
  463. package/dist/data/chat/approval.d.ts +11 -4
  464. package/dist/data/chat/approval.d.ts.map +1 -1
  465. package/dist/data/chat/approval.js +49 -6
  466. package/dist/data/chat/approval.js.map +1 -1
  467. package/dist/data/chat/index.d.ts +5 -3
  468. package/dist/data/chat/index.d.ts.map +1 -1
  469. package/dist/data/chat/tool-render/ToolArgs.cjs +50 -0
  470. package/dist/data/chat/tool-render/ToolArgs.cjs.map +1 -0
  471. package/dist/data/chat/tool-render/ToolArgs.d.ts +7 -0
  472. package/dist/data/chat/tool-render/ToolArgs.d.ts.map +1 -0
  473. package/dist/data/chat/tool-render/ToolArgs.js +50 -0
  474. package/dist/data/chat/tool-render/ToolArgs.js.map +1 -0
  475. package/dist/data/chat/tool-render/ToolParams.cjs +155 -0
  476. package/dist/data/chat/tool-render/ToolParams.cjs.map +1 -0
  477. package/dist/data/chat/tool-render/ToolParams.d.ts +20 -0
  478. package/dist/data/chat/tool-render/ToolParams.d.ts.map +1 -0
  479. package/dist/data/chat/tool-render/ToolParams.js +155 -0
  480. package/dist/data/chat/tool-render/ToolParams.js.map +1 -0
  481. package/dist/data/chat/tool-render/ToolValue.cjs +140 -0
  482. package/dist/data/chat/tool-render/ToolValue.cjs.map +1 -0
  483. package/dist/data/chat/tool-render/ToolValue.d.ts +16 -0
  484. package/dist/data/chat/tool-render/ToolValue.d.ts.map +1 -0
  485. package/dist/data/chat/tool-render/ToolValue.js +140 -0
  486. package/dist/data/chat/tool-render/ToolValue.js.map +1 -0
  487. package/dist/data/chat/tool-render/adapter.cjs +48 -0
  488. package/dist/data/chat/tool-render/adapter.cjs.map +1 -0
  489. package/dist/data/chat/tool-render/adapter.d.ts +57 -0
  490. package/dist/data/chat/tool-render/adapter.d.ts.map +1 -0
  491. package/dist/data/chat/tool-render/adapter.js +48 -0
  492. package/dist/data/chat/tool-render/adapter.js.map +1 -0
  493. package/dist/data/chat/tool-render/context.cjs +16 -0
  494. package/dist/data/chat/tool-render/context.cjs.map +1 -0
  495. package/dist/data/chat/tool-render/context.d.ts +6 -0
  496. package/dist/data/chat/tool-render/context.d.ts.map +1 -0
  497. package/dist/data/chat/tool-render/context.js +16 -0
  498. package/dist/data/chat/tool-render/context.js.map +1 -0
  499. package/dist/data/chat/tool-render/defaults.cjs +45 -0
  500. package/dist/data/chat/tool-render/defaults.cjs.map +1 -0
  501. package/dist/data/chat/tool-render/defaults.d.ts +11 -0
  502. package/dist/data/chat/tool-render/defaults.d.ts.map +1 -0
  503. package/dist/data/chat/tool-render/defaults.js +45 -0
  504. package/dist/data/chat/tool-render/defaults.js.map +1 -0
  505. package/dist/data/chat/tool-render/index.d.ts +13 -0
  506. package/dist/data/chat/tool-render/index.d.ts.map +1 -0
  507. package/dist/data/chat/tool-render/known-tool-views.cjs +208 -0
  508. package/dist/data/chat/tool-render/known-tool-views.cjs.map +1 -0
  509. package/dist/data/chat/tool-render/known-tool-views.d.ts +10 -0
  510. package/dist/data/chat/tool-render/known-tool-views.d.ts.map +1 -0
  511. package/dist/data/chat/tool-render/known-tool-views.js +208 -0
  512. package/dist/data/chat/tool-render/known-tool-views.js.map +1 -0
  513. package/dist/data/chat/tool-render/known-tools.cjs +58 -0
  514. package/dist/data/chat/tool-render/known-tools.cjs.map +1 -0
  515. package/dist/data/chat/tool-render/known-tools.d.ts +4 -0
  516. package/dist/data/chat/tool-render/known-tools.d.ts.map +1 -0
  517. package/dist/data/chat/tool-render/known-tools.js +58 -0
  518. package/dist/data/chat/tool-render/known-tools.js.map +1 -0
  519. package/dist/data/chat/tool-render/normalize.cjs +42 -0
  520. package/dist/data/chat/tool-render/normalize.cjs.map +1 -0
  521. package/dist/data/chat/tool-render/normalize.d.ts +13 -0
  522. package/dist/data/chat/tool-render/normalize.d.ts.map +1 -0
  523. package/dist/data/chat/tool-render/normalize.js +42 -0
  524. package/dist/data/chat/tool-render/normalize.js.map +1 -0
  525. package/dist/data/chat/tool-render/registry.cjs +14 -0
  526. package/dist/data/chat/tool-render/registry.cjs.map +1 -0
  527. package/dist/data/chat/tool-render/registry.d.ts +7 -0
  528. package/dist/data/chat/tool-render/registry.d.ts.map +1 -0
  529. package/dist/data/chat/tool-render/registry.js +14 -0
  530. package/dist/data/chat/tool-render/registry.js.map +1 -0
  531. package/dist/data/chat/tool-render/schema.cjs +57 -0
  532. package/dist/data/chat/tool-render/schema.cjs.map +1 -0
  533. package/dist/data/chat/tool-render/schema.d.ts +28 -0
  534. package/dist/data/chat/tool-render/schema.d.ts.map +1 -0
  535. package/dist/data/chat/tool-render/schema.js +57 -0
  536. package/dist/data/chat/tool-render/schema.js.map +1 -0
  537. package/dist/data/chat/tool-render/shape.cjs +94 -0
  538. package/dist/data/chat/tool-render/shape.cjs.map +1 -0
  539. package/dist/data/chat/tool-render/shape.d.ts +39 -0
  540. package/dist/data/chat/tool-render/shape.d.ts.map +1 -0
  541. package/dist/data/chat/tool-render/shape.js +94 -0
  542. package/dist/data/chat/tool-render/shape.js.map +1 -0
  543. package/dist/data/chat/tool-render/summary.cjs +34 -0
  544. package/dist/data/chat/tool-render/summary.cjs.map +1 -0
  545. package/dist/data/chat/tool-render/summary.d.ts +8 -0
  546. package/dist/data/chat/tool-render/summary.d.ts.map +1 -0
  547. package/dist/data/chat/tool-render/summary.js +34 -0
  548. package/dist/data/chat/tool-render/summary.js.map +1 -0
  549. package/dist/data/chat/types.cjs.map +1 -1
  550. package/dist/data/chat/types.d.ts +7 -0
  551. package/dist/data/chat/types.d.ts.map +1 -1
  552. package/dist/data/chat/types.js.map +1 -1
  553. package/dist/data/chat/usage-snapshot.cjs +17 -0
  554. package/dist/data/chat/usage-snapshot.cjs.map +1 -0
  555. package/dist/data/chat/usage-snapshot.d.ts +21 -0
  556. package/dist/data/chat/usage-snapshot.d.ts.map +1 -0
  557. package/dist/data/chat/usage-snapshot.js +17 -0
  558. package/dist/data/chat/usage-snapshot.js.map +1 -0
  559. package/dist/data/data-table-filter-values.cjs +103 -0
  560. package/dist/data/data-table-filter-values.cjs.map +1 -0
  561. package/dist/data/data-table-filter-values.d.ts +34 -0
  562. package/dist/data/data-table-filter-values.d.ts.map +1 -0
  563. package/dist/data/data-table-filter-values.js +103 -0
  564. package/dist/data/data-table-filter-values.js.map +1 -0
  565. package/dist/data/data-table-server-filters.cjs +165 -0
  566. package/dist/data/data-table-server-filters.cjs.map +1 -0
  567. package/dist/data/data-table-server-filters.d.ts +128 -0
  568. package/dist/data/data-table-server-filters.d.ts.map +1 -0
  569. package/dist/data/data-table-server-filters.js +165 -0
  570. package/dist/data/data-table-server-filters.js.map +1 -0
  571. package/dist/data/query-browser/QueryBrowser.cjs +204 -155
  572. package/dist/data/query-browser/QueryBrowser.cjs.map +1 -1
  573. package/dist/data/query-browser/QueryBrowser.d.ts +2 -41
  574. package/dist/data/query-browser/QueryBrowser.d.ts.map +1 -1
  575. package/dist/data/query-browser/QueryBrowser.editor.cjs +88 -0
  576. package/dist/data/query-browser/QueryBrowser.editor.cjs.map +1 -0
  577. package/dist/data/query-browser/QueryBrowser.editor.d.ts +12 -0
  578. package/dist/data/query-browser/QueryBrowser.editor.d.ts.map +1 -0
  579. package/dist/data/query-browser/QueryBrowser.editor.js +88 -0
  580. package/dist/data/query-browser/QueryBrowser.editor.js.map +1 -0
  581. package/dist/data/query-browser/QueryBrowser.js +205 -156
  582. package/dist/data/query-browser/QueryBrowser.js.map +1 -1
  583. package/dist/data/query-browser/QueryBrowser.types.cjs +11 -0
  584. package/dist/data/query-browser/QueryBrowser.types.cjs.map +1 -0
  585. package/dist/data/query-browser/QueryBrowser.types.d.ts +92 -0
  586. package/dist/data/query-browser/QueryBrowser.types.d.ts.map +1 -0
  587. package/dist/data/query-browser/QueryBrowser.types.js +11 -0
  588. package/dist/data/query-browser/QueryBrowser.types.js.map +1 -0
  589. package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.cjs +56 -0
  590. package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.cjs.map +1 -0
  591. package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.d.ts +5 -0
  592. package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.d.ts.map +1 -0
  593. package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.js +56 -0
  594. package/dist/data/query-browser/QueryBrowserDiagnosticsPanel.js.map +1 -0
  595. package/dist/data/query-browser/QueryBrowserResults.cjs +80 -0
  596. package/dist/data/query-browser/QueryBrowserResults.cjs.map +1 -0
  597. package/dist/data/query-browser/QueryBrowserResults.d.ts +16 -0
  598. package/dist/data/query-browser/QueryBrowserResults.d.ts.map +1 -0
  599. package/dist/data/query-browser/QueryBrowserResults.js +80 -0
  600. package/dist/data/query-browser/QueryBrowserResults.js.map +1 -0
  601. package/dist/data/query-browser/index.d.ts +2 -1
  602. package/dist/data/query-browser/index.d.ts.map +1 -1
  603. package/dist/data/runtime/ProviderStatusPanel.cjs +187 -0
  604. package/dist/data/runtime/ProviderStatusPanel.cjs.map +1 -0
  605. package/dist/data/runtime/ProviderStatusPanel.d.ts +10 -0
  606. package/dist/data/runtime/ProviderStatusPanel.d.ts.map +1 -0
  607. package/dist/data/runtime/ProviderStatusPanel.js +187 -0
  608. package/dist/data/runtime/ProviderStatusPanel.js.map +1 -0
  609. package/dist/data/runtime/RuntimeBar.cjs +147 -0
  610. package/dist/data/runtime/RuntimeBar.cjs.map +1 -0
  611. package/dist/data/{ai → runtime}/RuntimeBar.d.ts +8 -6
  612. package/dist/data/runtime/RuntimeBar.d.ts.map +1 -0
  613. package/dist/data/runtime/RuntimeBar.js +147 -0
  614. package/dist/data/runtime/RuntimeBar.js.map +1 -0
  615. package/dist/data/runtime/RuntimeBar.model.cjs.map +1 -0
  616. package/dist/data/{ai → runtime}/RuntimeBar.model.d.ts +2 -2
  617. package/dist/data/runtime/RuntimeBar.model.d.ts.map +1 -0
  618. package/dist/data/runtime/RuntimeBar.model.js.map +1 -0
  619. package/dist/data/{ai → runtime}/RuntimeBarCombo.cjs +25 -30
  620. package/dist/data/runtime/RuntimeBarCombo.cjs.map +1 -0
  621. package/dist/data/{ai → runtime}/RuntimeBarCombo.d.ts +4 -3
  622. package/dist/data/runtime/RuntimeBarCombo.d.ts.map +1 -0
  623. package/dist/data/{ai → runtime}/RuntimeBarCombo.js +25 -30
  624. package/dist/data/runtime/RuntimeBarCombo.js.map +1 -0
  625. package/dist/data/{ai/RuntimeBar.cjs → runtime/RuntimeBarSegments.cjs} +54 -120
  626. package/dist/data/runtime/RuntimeBarSegments.cjs.map +1 -0
  627. package/dist/data/runtime/RuntimeBarSegments.d.ts +25 -0
  628. package/dist/data/runtime/RuntimeBarSegments.d.ts.map +1 -0
  629. package/dist/data/{ai/RuntimeBar.js → runtime/RuntimeBarSegments.js} +58 -124
  630. package/dist/data/runtime/RuntimeBarSegments.js.map +1 -0
  631. package/dist/data/runtime/availability.cjs +11 -0
  632. package/dist/data/runtime/availability.cjs.map +1 -0
  633. package/dist/data/runtime/availability.d.ts +6 -0
  634. package/dist/data/runtime/availability.d.ts.map +1 -0
  635. package/dist/data/runtime/availability.js +11 -0
  636. package/dist/data/runtime/availability.js.map +1 -0
  637. package/dist/data/runtime/model-capabilities.cjs.map +1 -0
  638. package/dist/data/runtime/model-capabilities.d.ts.map +1 -0
  639. package/dist/data/runtime/model-capabilities.js.map +1 -0
  640. package/dist/data/runtime/provider-status.cjs +106 -0
  641. package/dist/data/runtime/provider-status.cjs.map +1 -0
  642. package/dist/data/runtime/provider-status.d.ts +24 -0
  643. package/dist/data/runtime/provider-status.d.ts.map +1 -0
  644. package/dist/data/runtime/provider-status.js +106 -0
  645. package/dist/data/runtime/provider-status.js.map +1 -0
  646. package/dist/data/{ai → runtime}/runtime-mode.cjs +119 -27
  647. package/dist/data/runtime/runtime-mode.cjs.map +1 -0
  648. package/dist/data/{ai → runtime}/runtime-mode.d.ts +7 -1
  649. package/dist/data/runtime/runtime-mode.d.ts.map +1 -0
  650. package/dist/data/{ai → runtime}/runtime-mode.js +120 -28
  651. package/dist/data/runtime/runtime-mode.js.map +1 -0
  652. package/dist/data/task-exec-details.cjs +9 -0
  653. package/dist/data/task-exec-details.cjs.map +1 -0
  654. package/dist/data/task-exec-details.d.ts +3 -0
  655. package/dist/data/task-exec-details.d.ts.map +1 -0
  656. package/dist/data/task-exec-details.js +9 -0
  657. package/dist/data/task-exec-details.js.map +1 -0
  658. package/dist/data/task-query-keys.cjs +26 -0
  659. package/dist/data/task-query-keys.cjs.map +1 -0
  660. package/dist/data/task-query-keys.d.ts +27 -0
  661. package/dist/data/task-query-keys.d.ts.map +1 -0
  662. package/dist/data/task-query-keys.js +26 -0
  663. package/dist/data/task-query-keys.js.map +1 -0
  664. package/dist/data/version-info.cjs +3 -3
  665. package/dist/data/version-info.js +3 -3
  666. package/dist/data.cjs +18 -0
  667. package/dist/data.cjs.map +1 -1
  668. package/dist/data.d.ts +6 -2
  669. package/dist/data.d.ts.map +1 -1
  670. package/dist/data.js +18 -0
  671. package/dist/data.js.map +1 -1
  672. package/dist/hooks/use-hotkey.cjs +6 -1
  673. package/dist/hooks/use-hotkey.cjs.map +1 -1
  674. package/dist/hooks/use-hotkey.d.ts.map +1 -1
  675. package/dist/hooks/use-hotkey.js +6 -1
  676. package/dist/hooks/use-hotkey.js.map +1 -1
  677. package/dist/hooks/use-task-run.cjs +7 -4
  678. package/dist/hooks/use-task-run.cjs.map +1 -1
  679. package/dist/hooks/use-task-run.d.ts +12 -0
  680. package/dist/hooks/use-task-run.d.ts.map +1 -1
  681. package/dist/hooks/use-task-run.js +7 -4
  682. package/dist/hooks/use-task-run.js.map +1 -1
  683. package/dist/icons/index.d.ts +1 -0
  684. package/dist/icons/index.d.ts.map +1 -1
  685. package/dist/icons/registry.cjs +692 -0
  686. package/dist/icons/registry.cjs.map +1 -0
  687. package/dist/icons/registry.d.ts +21 -0
  688. package/dist/icons/registry.d.ts.map +1 -0
  689. package/dist/icons/registry.js +692 -0
  690. package/dist/icons/registry.js.map +1 -0
  691. package/dist/icons.cjs +3 -0
  692. package/dist/icons.cjs.map +1 -1
  693. package/dist/icons.js +4 -1
  694. package/dist/icons.js.map +1 -1
  695. package/dist/index.cjs +65 -0
  696. package/dist/index.cjs.map +1 -1
  697. package/dist/index.js +67 -2
  698. package/dist/index.js.map +1 -1
  699. package/dist/layout/AppShell.cjs +92 -56
  700. package/dist/layout/AppShell.cjs.map +1 -1
  701. package/dist/layout/AppShell.d.ts +49 -1
  702. package/dist/layout/AppShell.d.ts.map +1 -1
  703. package/dist/layout/AppShell.js +92 -56
  704. package/dist/layout/AppShell.js.map +1 -1
  705. package/dist/layout/AppShell.nav.cjs +144 -19
  706. package/dist/layout/AppShell.nav.cjs.map +1 -1
  707. package/dist/layout/AppShell.nav.d.ts +6 -1
  708. package/dist/layout/AppShell.nav.d.ts.map +1 -1
  709. package/dist/layout/AppShell.nav.js +144 -19
  710. package/dist/layout/AppShell.nav.js.map +1 -1
  711. package/dist/layout/SplitPane.cjs +23 -7
  712. package/dist/layout/SplitPane.cjs.map +1 -1
  713. package/dist/layout/SplitPane.d.ts +3 -1
  714. package/dist/layout/SplitPane.d.ts.map +1 -1
  715. package/dist/layout/SplitPane.js +23 -7
  716. package/dist/layout/SplitPane.js.map +1 -1
  717. package/dist/lib/format.cjs +86 -4
  718. package/dist/lib/format.cjs.map +1 -1
  719. package/dist/lib/format.d.ts +69 -0
  720. package/dist/lib/format.d.ts.map +1 -1
  721. package/dist/lib/format.js +86 -4
  722. package/dist/lib/format.js.map +1 -1
  723. package/dist/lib/path-tree.cjs +69 -0
  724. package/dist/lib/path-tree.cjs.map +1 -0
  725. package/dist/lib/path-tree.d.ts +54 -0
  726. package/dist/lib/path-tree.d.ts.map +1 -0
  727. package/dist/lib/path-tree.js +69 -0
  728. package/dist/lib/path-tree.js.map +1 -0
  729. package/dist/monaco.d.ts +1 -0
  730. package/dist/monaco.d.ts.map +1 -1
  731. package/dist/overlay/DropdownMenuSubmenu.cjs +13 -7
  732. package/dist/overlay/DropdownMenuSubmenu.cjs.map +1 -1
  733. package/dist/overlay/DropdownMenuSubmenu.d.ts.map +1 -1
  734. package/dist/overlay/DropdownMenuSubmenu.js +13 -7
  735. package/dist/overlay/DropdownMenuSubmenu.js.map +1 -1
  736. package/dist/overlay/Tour.cjs +173 -0
  737. package/dist/overlay/Tour.cjs.map +1 -0
  738. package/dist/overlay/Tour.d.ts +61 -0
  739. package/dist/overlay/Tour.d.ts.map +1 -0
  740. package/dist/overlay/Tour.js +173 -0
  741. package/dist/overlay/Tour.js.map +1 -0
  742. package/dist/overlay/TourCard.cjs +108 -0
  743. package/dist/overlay/TourCard.cjs.map +1 -0
  744. package/dist/overlay/TourCard.d.ts +23 -0
  745. package/dist/overlay/TourCard.d.ts.map +1 -0
  746. package/dist/overlay/TourCard.js +108 -0
  747. package/dist/overlay/TourCard.js.map +1 -0
  748. package/dist/overlay/TourProvider.cjs +160 -0
  749. package/dist/overlay/TourProvider.cjs.map +1 -0
  750. package/dist/overlay/TourProvider.d.ts +31 -0
  751. package/dist/overlay/TourProvider.d.ts.map +1 -0
  752. package/dist/overlay/TourProvider.js +160 -0
  753. package/dist/overlay/TourProvider.js.map +1 -0
  754. package/dist/overlay/TourSpotlight.cjs +47 -0
  755. package/dist/overlay/TourSpotlight.cjs.map +1 -0
  756. package/dist/overlay/TourSpotlight.d.ts +12 -0
  757. package/dist/overlay/TourSpotlight.d.ts.map +1 -0
  758. package/dist/overlay/TourSpotlight.js +47 -0
  759. package/dist/overlay/TourSpotlight.js.map +1 -0
  760. package/dist/overlay/modalStack.cjs +18 -4
  761. package/dist/overlay/modalStack.cjs.map +1 -1
  762. package/dist/overlay/modalStack.d.ts +10 -2
  763. package/dist/overlay/modalStack.d.ts.map +1 -1
  764. package/dist/overlay/modalStack.js +19 -5
  765. package/dist/overlay/modalStack.js.map +1 -1
  766. package/dist/overlay/tour-anchor.cjs +114 -0
  767. package/dist/overlay/tour-anchor.cjs.map +1 -0
  768. package/dist/overlay/tour-anchor.d.ts +30 -0
  769. package/dist/overlay/tour-anchor.d.ts.map +1 -0
  770. package/dist/overlay/tour-anchor.js +114 -0
  771. package/dist/overlay/tour-anchor.js.map +1 -0
  772. package/dist/overlay/tour-context.cjs +12 -0
  773. package/dist/overlay/tour-context.cjs.map +1 -0
  774. package/dist/overlay/tour-context.d.ts +40 -0
  775. package/dist/overlay/tour-context.d.ts.map +1 -0
  776. package/dist/overlay/tour-context.js +12 -0
  777. package/dist/overlay/tour-context.js.map +1 -0
  778. package/dist/overlay/tour-geometry.cjs +65 -0
  779. package/dist/overlay/tour-geometry.cjs.map +1 -0
  780. package/dist/overlay/tour-geometry.d.ts +47 -0
  781. package/dist/overlay/tour-geometry.d.ts.map +1 -0
  782. package/dist/overlay/tour-geometry.js +65 -0
  783. package/dist/overlay/tour-geometry.js.map +1 -0
  784. package/dist/overlay/tour-model.cjs +79 -0
  785. package/dist/overlay/tour-model.cjs.map +1 -0
  786. package/dist/overlay/tour-model.d.ts +29 -0
  787. package/dist/overlay/tour-model.d.ts.map +1 -0
  788. package/dist/overlay/tour-model.js +79 -0
  789. package/dist/overlay/tour-model.js.map +1 -0
  790. package/dist/overlay/tour-progress.cjs +54 -0
  791. package/dist/overlay/tour-progress.cjs.map +1 -0
  792. package/dist/overlay/tour-progress.d.ts +40 -0
  793. package/dist/overlay/tour-progress.d.ts.map +1 -0
  794. package/dist/overlay/tour-progress.js +54 -0
  795. package/dist/overlay/tour-progress.js.map +1 -0
  796. package/dist/overlay/tour-types.d.ts +144 -0
  797. package/dist/overlay/tour-types.d.ts.map +1 -0
  798. package/dist/overlay/use-tour-anchor.cjs +43 -0
  799. package/dist/overlay/use-tour-anchor.cjs.map +1 -0
  800. package/dist/overlay/use-tour-anchor.d.ts +23 -0
  801. package/dist/overlay/use-tour-anchor.d.ts.map +1 -0
  802. package/dist/overlay/use-tour-anchor.js +43 -0
  803. package/dist/overlay/use-tour-anchor.js.map +1 -0
  804. package/dist/overlay/use-tour-rect.cjs +33 -0
  805. package/dist/overlay/use-tour-rect.cjs.map +1 -0
  806. package/dist/overlay/use-tour-rect.d.ts +12 -0
  807. package/dist/overlay/use-tour-rect.d.ts.map +1 -0
  808. package/dist/overlay/use-tour-rect.js +33 -0
  809. package/dist/overlay/use-tour-rect.js.map +1 -0
  810. package/dist/overlay/use-tour-step.cjs +66 -0
  811. package/dist/overlay/use-tour-step.cjs.map +1 -0
  812. package/dist/overlay/use-tour-step.d.ts +45 -0
  813. package/dist/overlay/use-tour-step.d.ts.map +1 -0
  814. package/dist/overlay/use-tour-step.js +66 -0
  815. package/dist/overlay/use-tour-step.js.map +1 -0
  816. package/dist/overlay/zIndex.cjs +8 -0
  817. package/dist/overlay/zIndex.cjs.map +1 -1
  818. package/dist/overlay/zIndex.d.ts +8 -0
  819. package/dist/overlay/zIndex.d.ts.map +1 -1
  820. package/dist/overlay/zIndex.js +8 -0
  821. package/dist/overlay/zIndex.js.map +1 -1
  822. package/dist/rpc/CommandOutput.cjs +8 -0
  823. package/dist/rpc/CommandOutput.cjs.map +1 -1
  824. package/dist/rpc/CommandOutput.d.ts +4 -1
  825. package/dist/rpc/CommandOutput.d.ts.map +1 -1
  826. package/dist/rpc/CommandOutput.js +8 -0
  827. package/dist/rpc/CommandOutput.js.map +1 -1
  828. package/dist/rpc/EntityExplorerApp.cjs +10 -16
  829. package/dist/rpc/EntityExplorerApp.cjs.map +1 -1
  830. package/dist/rpc/EntityExplorerApp.d.ts.map +1 -1
  831. package/dist/rpc/EntityExplorerApp.js +10 -16
  832. package/dist/rpc/EntityExplorerApp.js.map +1 -1
  833. package/dist/rpc/FilterForm.cjs +20 -0
  834. package/dist/rpc/FilterForm.cjs.map +1 -1
  835. package/dist/rpc/FilterForm.js +20 -0
  836. package/dist/rpc/FilterForm.js.map +1 -1
  837. package/dist/rpc/OperationActionBar.cjs +1 -1
  838. package/dist/rpc/OperationActionBar.cjs.map +1 -1
  839. package/dist/rpc/OperationActionBar.js +1 -1
  840. package/dist/rpc/OperationActionBar.js.map +1 -1
  841. package/dist/rpc/OperationCatalog.cjs +83 -7
  842. package/dist/rpc/OperationCatalog.cjs.map +1 -1
  843. package/dist/rpc/OperationCatalog.d.ts.map +1 -1
  844. package/dist/rpc/OperationCatalog.js +84 -8
  845. package/dist/rpc/OperationCatalog.js.map +1 -1
  846. package/dist/rpc/OperationResultView.cjs +2 -0
  847. package/dist/rpc/OperationResultView.cjs.map +1 -1
  848. package/dist/rpc/OperationResultView.d.ts +6 -0
  849. package/dist/rpc/OperationResultView.d.ts.map +1 -1
  850. package/dist/rpc/OperationResultView.js +2 -0
  851. package/dist/rpc/OperationResultView.js.map +1 -1
  852. package/dist/rpc/SchemaActionForm.cjs +2 -21
  853. package/dist/rpc/SchemaActionForm.cjs.map +1 -1
  854. package/dist/rpc/SchemaActionForm.d.ts.map +1 -1
  855. package/dist/rpc/SchemaActionForm.js +3 -22
  856. package/dist/rpc/SchemaActionForm.js.map +1 -1
  857. package/dist/rpc/apiClient.cjs +16 -2
  858. package/dist/rpc/apiClient.cjs.map +1 -1
  859. package/dist/rpc/apiClient.d.ts.map +1 -1
  860. package/dist/rpc/apiClient.js +16 -2
  861. package/dist/rpc/apiClient.js.map +1 -1
  862. package/dist/rpc/formMetadata.cjs +123 -49
  863. package/dist/rpc/formMetadata.cjs.map +1 -1
  864. package/dist/rpc/formMetadata.d.ts +14 -6
  865. package/dist/rpc/formMetadata.d.ts.map +1 -1
  866. package/dist/rpc/formMetadata.js +121 -47
  867. package/dist/rpc/formMetadata.js.map +1 -1
  868. package/dist/rpc/operationFilterSearch.cjs +23 -0
  869. package/dist/rpc/operationFilterSearch.cjs.map +1 -0
  870. package/dist/rpc/operationFilterSearch.d.ts +22 -0
  871. package/dist/rpc/operationFilterSearch.d.ts.map +1 -0
  872. package/dist/rpc/operationFilterSearch.js +23 -0
  873. package/dist/rpc/operationFilterSearch.js.map +1 -0
  874. package/dist/rpc/operationLookupFetcher.cjs +28 -0
  875. package/dist/rpc/operationLookupFetcher.cjs.map +1 -0
  876. package/dist/rpc/operationLookupFetcher.d.ts +17 -0
  877. package/dist/rpc/operationLookupFetcher.d.ts.map +1 -0
  878. package/dist/rpc/operationLookupFetcher.js +28 -0
  879. package/dist/rpc/operationLookupFetcher.js.map +1 -0
  880. package/dist/rpc/surfaceNav.cjs +77 -0
  881. package/dist/rpc/surfaceNav.cjs.map +1 -0
  882. package/dist/rpc/surfaceNav.d.ts +19 -0
  883. package/dist/rpc/surfaceNav.d.ts.map +1 -0
  884. package/dist/rpc/surfaceNav.js +77 -0
  885. package/dist/rpc/surfaceNav.js.map +1 -0
  886. package/dist/rpc/types.cjs.map +1 -1
  887. package/dist/rpc/types.d.ts +21 -2
  888. package/dist/rpc/types.d.ts.map +1 -1
  889. package/dist/rpc/types.js.map +1 -1
  890. package/dist/rpc.cjs +2 -0
  891. package/dist/rpc.cjs.map +1 -1
  892. package/dist/rpc.d.ts +1 -0
  893. package/dist/rpc.d.ts.map +1 -1
  894. package/dist/rpc.js +2 -0
  895. package/dist/rpc.js.map +1 -1
  896. package/dist/styles.css +1 -1
  897. package/dist/utils.cjs +8 -0
  898. package/dist/utils.cjs.map +1 -1
  899. package/dist/utils.d.ts +2 -1
  900. package/dist/utils.d.ts.map +1 -1
  901. package/dist/utils.js +10 -2
  902. package/dist/utils.js.map +1 -1
  903. package/package.json +1 -1
  904. package/dist/data/ai/RuntimeBar.cjs.map +0 -1
  905. package/dist/data/ai/RuntimeBar.d.ts.map +0 -1
  906. package/dist/data/ai/RuntimeBar.js.map +0 -1
  907. package/dist/data/ai/RuntimeBar.model.cjs.map +0 -1
  908. package/dist/data/ai/RuntimeBar.model.d.ts.map +0 -1
  909. package/dist/data/ai/RuntimeBar.model.js.map +0 -1
  910. package/dist/data/ai/RuntimeBarCombo.cjs.map +0 -1
  911. package/dist/data/ai/RuntimeBarCombo.d.ts.map +0 -1
  912. package/dist/data/ai/RuntimeBarCombo.js.map +0 -1
  913. package/dist/data/ai/model-capabilities.cjs.map +0 -1
  914. package/dist/data/ai/model-capabilities.d.ts.map +0 -1
  915. package/dist/data/ai/model-capabilities.js.map +0 -1
  916. package/dist/data/ai/runtime-mode.cjs.map +0 -1
  917. package/dist/data/ai/runtime-mode.d.ts.map +0 -1
  918. package/dist/data/ai/runtime-mode.js.map +0 -1
  919. /package/dist/data/{ai → runtime}/RuntimeBar.model.cjs +0 -0
  920. /package/dist/data/{ai → runtime}/RuntimeBar.model.js +0 -0
  921. /package/dist/data/{ai → runtime}/model-capabilities.cjs +0 -0
  922. /package/dist/data/{ai → runtime}/model-capabilities.d.ts +0 -0
  923. /package/dist/data/{ai → runtime}/model-capabilities.js +0 -0
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const CodeBlock = require("../../CodeBlock.cjs");
5
+ const CodeDiff = require("../../CodeDiff.cjs");
6
+ const codeHighlight = require("../../code-highlight.cjs");
7
+ const ToolParams = require("./ToolParams.cjs");
8
+ const ToolValue = require("./ToolValue.cjs");
9
+ function inputRecord(ctx) {
10
+ return typeof ctx.input === "object" && ctx.input !== null && !Array.isArray(ctx.input) ? ctx.input : null;
11
+ }
12
+ function stringField(input, ...keys) {
13
+ for (const key of keys) {
14
+ const value = input[key];
15
+ if (typeof value === "string" && value !== "") return value;
16
+ }
17
+ return "";
18
+ }
19
+ function remainingInput(input, consumed) {
20
+ return Object.fromEntries(
21
+ Object.entries(input).filter(([key, value]) => {
22
+ return !consumed.includes(key) && value !== void 0 && value !== null && value !== "";
23
+ })
24
+ );
25
+ }
26
+ function ExtraParams({
27
+ ctx,
28
+ consumed
29
+ }) {
30
+ var _a;
31
+ const input = inputRecord(ctx);
32
+ if (!input) return null;
33
+ const remaining = remainingInput(input, consumed);
34
+ if (Object.keys(remaining).length === 0) return null;
35
+ return /* @__PURE__ */ jsxRuntime.jsx(
36
+ ToolParams.ToolParams,
37
+ {
38
+ input: remaining,
39
+ ...((_a = ctx.tool) == null ? void 0 : _a.inputSchema) ? { schema: ctx.tool.inputSchema } : {}
40
+ }
41
+ );
42
+ }
43
+ function renderTextOutput(ctx, slot) {
44
+ if (typeof ctx.output !== "string") return ctx.defaultView;
45
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": slot, children: /* @__PURE__ */ jsxRuntime.jsx(CodeBlock.CodeBlock, { bare: true, language: "text", source: ctx.output }) });
46
+ }
47
+ function ShellInput(ctx) {
48
+ const input = inputRecord(ctx);
49
+ if (!input) return ctx.defaultView;
50
+ const command = stringField(input, "command", "cmd");
51
+ if (!command) return ctx.defaultView;
52
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-slot": "tool-render-shell-input", className: "space-y-1.5", children: [
53
+ /* @__PURE__ */ jsxRuntime.jsx(CodeBlock.CodeBlock, { bare: true, language: "bash", source: command }),
54
+ /* @__PURE__ */ jsxRuntime.jsx(ExtraParams, { ctx, consumed: ["command", "cmd"] })
55
+ ] });
56
+ }
57
+ function ShellOutput(ctx) {
58
+ return renderTextOutput(ctx, "tool-render-shell-output");
59
+ }
60
+ function TextToolOutput(ctx) {
61
+ return renderTextOutput(ctx, "tool-render-text-output");
62
+ }
63
+ function FileReadOutput(ctx) {
64
+ if (typeof ctx.output !== "string") return ctx.defaultView;
65
+ const input = inputRecord(ctx);
66
+ const path = input ? stringField(input, "file_path", "notebook_path", "path") : "";
67
+ const language = codeHighlight.languageFromPath(path);
68
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "tool-render-file-read", children: /* @__PURE__ */ jsxRuntime.jsx(CodeBlock.CodeBlock, { bare: true, source: ctx.output, ...language ? { language } : {} }) });
69
+ }
70
+ function editSegments(toolName, input) {
71
+ if (toolName === "Write") {
72
+ const content = stringField(input, "content");
73
+ return content ? [{ original: "", modified: content }] : [];
74
+ }
75
+ if (toolName === "Edit" || toolName === "NotebookEdit") {
76
+ const original = stringField(input, "old_string", "old_source");
77
+ const modified = stringField(input, "new_string", "new_source");
78
+ return original || modified ? [{ original, modified }] : [];
79
+ }
80
+ if (toolName !== "MultiEdit" || !Array.isArray(input["edits"])) return [];
81
+ return input["edits"].flatMap((edit) => {
82
+ if (typeof edit !== "object" || edit === null || Array.isArray(edit))
83
+ return [];
84
+ const record = edit;
85
+ const original = stringField(record, "old_string");
86
+ const modified = stringField(record, "new_string");
87
+ return original || modified ? [{ original, modified }] : [];
88
+ });
89
+ }
90
+ function FileEditInput(ctx) {
91
+ const input = inputRecord(ctx);
92
+ if (!input) return ctx.defaultView;
93
+ const path = stringField(input, "file_path", "notebook_path", "path");
94
+ const patch = ctx.toolName === "apply_patch" ? stringField(input, "patch") : "";
95
+ const segments = editSegments(ctx.toolName, input);
96
+ if (!patch && segments.length === 0) return ctx.defaultView;
97
+ const language = codeHighlight.languageFromPath(path);
98
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-slot": "tool-render-file-edit", className: "space-y-1.5", children: [
99
+ path && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate font-mono text-[11px] text-muted-foreground", children: path }),
100
+ patch ? /* @__PURE__ */ jsxRuntime.jsx(CodeBlock.CodeBlock, { bare: true, language: "diff", source: patch }) : segments.map((segment, index) => /* @__PURE__ */ jsxRuntime.jsx(
101
+ CodeDiff.CodeDiff,
102
+ {
103
+ bare: true,
104
+ showLineNumbers: false,
105
+ original: segment.original,
106
+ modified: segment.modified,
107
+ ...language ? { language } : {}
108
+ },
109
+ index
110
+ )),
111
+ /* @__PURE__ */ jsxRuntime.jsx(
112
+ ExtraParams,
113
+ {
114
+ ctx,
115
+ consumed: [
116
+ "file_path",
117
+ "notebook_path",
118
+ "path",
119
+ "content",
120
+ "old_string",
121
+ "old_source",
122
+ "new_string",
123
+ "new_source",
124
+ "edits",
125
+ "patch"
126
+ ]
127
+ }
128
+ )
129
+ ] });
130
+ }
131
+ function PlanInput(ctx) {
132
+ const input = inputRecord(ctx);
133
+ if (!input) return ctx.defaultView;
134
+ const key = Array.isArray(input["plan"]) ? "plan" : Array.isArray(input["todos"]) ? "todos" : "";
135
+ if (!key) return ctx.defaultView;
136
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-slot": "tool-render-plan", className: "space-y-1.5", children: [
137
+ /* @__PURE__ */ jsxRuntime.jsx(ExtraParams, { ctx, consumed: [key] }),
138
+ /* @__PURE__ */ jsxRuntime.jsx(
139
+ ToolValue.ToolValue,
140
+ {
141
+ value: input[key],
142
+ ...ctx.options.maxRows !== void 0 ? { maxRows: ctx.options.maxRows } : {}
143
+ }
144
+ )
145
+ ] });
146
+ }
147
+ function questionFromValue(value) {
148
+ if (typeof value === "string") {
149
+ return value.trim() ? { heading: "", text: value.trim(), options: [] } : null;
150
+ }
151
+ if (typeof value !== "object" || value === null || Array.isArray(value))
152
+ return null;
153
+ const question = value;
154
+ const text = stringField(question, "question", "text", "prompt", "label");
155
+ if (!text) return null;
156
+ const options = Array.isArray(question["options"]) ? question["options"].flatMap((option) => {
157
+ if (typeof option === "string") {
158
+ return option ? [{ label: option, description: "" }] : [];
159
+ }
160
+ if (typeof option !== "object" || option === null || Array.isArray(option))
161
+ return [];
162
+ const record = option;
163
+ const label = stringField(record, "label", "value", "id");
164
+ return label ? [{ label, description: stringField(record, "description") }] : [];
165
+ }) : [];
166
+ return {
167
+ heading: stringField(question, "header", "context", "description"),
168
+ text,
169
+ options
170
+ };
171
+ }
172
+ function QuestionInput(ctx) {
173
+ const input = inputRecord(ctx);
174
+ if (!input) return ctx.defaultView;
175
+ const raw = Array.isArray(input["questions"]) ? input["questions"] : [input];
176
+ const questions = raw.map(questionFromValue).filter((question) => question !== null);
177
+ if (questions.length === 0) return ctx.defaultView;
178
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "tool-render-question", className: "space-y-1.5", children: questions.map((question, index) => /* @__PURE__ */ jsxRuntime.jsxs(
179
+ "div",
180
+ {
181
+ className: "rounded-md border border-sky-500/20 bg-sky-500/5 px-density-3 py-density-2",
182
+ children: [
183
+ question.heading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-[11px] font-medium uppercase text-muted-foreground", children: question.heading }),
184
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "whitespace-pre-wrap break-words text-sm text-foreground", children: question.text }),
185
+ question.options.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-1.5 flex flex-wrap gap-1", children: question.options.map((option) => /* @__PURE__ */ jsxRuntime.jsxs(
186
+ "span",
187
+ {
188
+ className: "rounded border border-border bg-background px-1.5 py-0.5 text-[11px] text-muted-foreground",
189
+ children: [
190
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium text-foreground", children: option.label }),
191
+ option.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1", children: option.description })
192
+ ]
193
+ },
194
+ option.label
195
+ )) })
196
+ ]
197
+ },
198
+ `${question.text}-${index}`
199
+ )) });
200
+ }
201
+ exports.FileEditInput = FileEditInput;
202
+ exports.FileReadOutput = FileReadOutput;
203
+ exports.PlanInput = PlanInput;
204
+ exports.QuestionInput = QuestionInput;
205
+ exports.ShellInput = ShellInput;
206
+ exports.ShellOutput = ShellOutput;
207
+ exports.TextToolOutput = TextToolOutput;
208
+ //# sourceMappingURL=known-tool-views.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"known-tool-views.cjs","sources":["../../../../src/data/chat/tool-render/known-tool-views.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { CodeBlock } from \"../../CodeBlock\";\nimport { CodeDiff } from \"../../CodeDiff\";\nimport { languageFromPath } from \"../../code-highlight\";\nimport type { ToolRenderAdapterContext } from \"./adapter\";\nimport { ToolParams } from \"./ToolParams\";\nimport { ToolValue } from \"./ToolValue\";\n\nfunction inputRecord(\n ctx: ToolRenderAdapterContext,\n): Record<string, unknown> | null {\n return typeof ctx.input === \"object\" &&\n ctx.input !== null &&\n !Array.isArray(ctx.input)\n ? (ctx.input as Record<string, unknown>)\n : null;\n}\n\nfunction stringField(\n input: Record<string, unknown>,\n ...keys: string[]\n): string {\n for (const key of keys) {\n const value = input[key];\n if (typeof value === \"string\" && value !== \"\") return value;\n }\n return \"\";\n}\n\nfunction remainingInput(\n input: Record<string, unknown>,\n consumed: readonly string[],\n): Record<string, unknown> {\n return Object.fromEntries(\n Object.entries(input).filter(([key, value]) => {\n return (\n !consumed.includes(key) &&\n value !== undefined &&\n value !== null &&\n value !== \"\"\n );\n }),\n );\n}\n\nfunction ExtraParams({\n ctx,\n consumed,\n}: {\n ctx: ToolRenderAdapterContext;\n consumed: readonly string[];\n}): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return null;\n const remaining = remainingInput(input, consumed);\n if (Object.keys(remaining).length === 0) return null;\n return (\n <ToolParams\n input={remaining}\n {...(ctx.tool?.inputSchema ? { schema: ctx.tool.inputSchema } : {})}\n />\n );\n}\n\nfunction renderTextOutput(\n ctx: ToolRenderAdapterContext,\n slot: string,\n): ReactNode {\n if (typeof ctx.output !== \"string\") return ctx.defaultView;\n return (\n <div data-slot={slot}>\n <CodeBlock bare language=\"text\" source={ctx.output} />\n </div>\n );\n}\n\nexport function ShellInput(ctx: ToolRenderAdapterContext): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return ctx.defaultView;\n const command = stringField(input, \"command\", \"cmd\");\n if (!command) return ctx.defaultView;\n return (\n <div data-slot=\"tool-render-shell-input\" className=\"space-y-1.5\">\n <CodeBlock bare language=\"bash\" source={command} />\n <ExtraParams ctx={ctx} consumed={[\"command\", \"cmd\"]} />\n </div>\n );\n}\n\nexport function ShellOutput(ctx: ToolRenderAdapterContext): ReactNode {\n return renderTextOutput(ctx, \"tool-render-shell-output\");\n}\n\nexport function TextToolOutput(ctx: ToolRenderAdapterContext): ReactNode {\n return renderTextOutput(ctx, \"tool-render-text-output\");\n}\n\nexport function FileReadOutput(ctx: ToolRenderAdapterContext): ReactNode {\n if (typeof ctx.output !== \"string\") return ctx.defaultView;\n const input = inputRecord(ctx);\n const path = input\n ? stringField(input, \"file_path\", \"notebook_path\", \"path\")\n : \"\";\n const language = languageFromPath(path);\n return (\n <div data-slot=\"tool-render-file-read\">\n <CodeBlock bare source={ctx.output} {...(language ? { language } : {})} />\n </div>\n );\n}\n\ntype EditSegment = {\n original: string;\n modified: string;\n};\n\nfunction editSegments(\n toolName: string,\n input: Record<string, unknown>,\n): EditSegment[] {\n if (toolName === \"Write\") {\n const content = stringField(input, \"content\");\n return content ? [{ original: \"\", modified: content }] : [];\n }\n if (toolName === \"Edit\" || toolName === \"NotebookEdit\") {\n const original = stringField(input, \"old_string\", \"old_source\");\n const modified = stringField(input, \"new_string\", \"new_source\");\n return original || modified ? [{ original, modified }] : [];\n }\n if (toolName !== \"MultiEdit\" || !Array.isArray(input[\"edits\"])) return [];\n return input[\"edits\"].flatMap((edit) => {\n if (typeof edit !== \"object\" || edit === null || Array.isArray(edit))\n return [];\n const record = edit as Record<string, unknown>;\n const original = stringField(record, \"old_string\");\n const modified = stringField(record, \"new_string\");\n return original || modified ? [{ original, modified }] : [];\n });\n}\n\nexport function FileEditInput(ctx: ToolRenderAdapterContext): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return ctx.defaultView;\n const path = stringField(input, \"file_path\", \"notebook_path\", \"path\");\n const patch =\n ctx.toolName === \"apply_patch\" ? stringField(input, \"patch\") : \"\";\n const segments = editSegments(ctx.toolName, input);\n if (!patch && segments.length === 0) return ctx.defaultView;\n const language = languageFromPath(path);\n return (\n <div data-slot=\"tool-render-file-edit\" className=\"space-y-1.5\">\n {path && (\n <div className=\"truncate font-mono text-[11px] text-muted-foreground\">\n {path}\n </div>\n )}\n {patch ? (\n <CodeBlock bare language=\"diff\" source={patch} />\n ) : (\n segments.map((segment, index) => (\n <CodeDiff\n key={index}\n bare\n showLineNumbers={false}\n original={segment.original}\n modified={segment.modified}\n {...(language ? { language } : {})}\n />\n ))\n )}\n <ExtraParams\n ctx={ctx}\n consumed={[\n \"file_path\",\n \"notebook_path\",\n \"path\",\n \"content\",\n \"old_string\",\n \"old_source\",\n \"new_string\",\n \"new_source\",\n \"edits\",\n \"patch\",\n ]}\n />\n </div>\n );\n}\n\nexport function PlanInput(ctx: ToolRenderAdapterContext): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return ctx.defaultView;\n const key = Array.isArray(input[\"plan\"])\n ? \"plan\"\n : Array.isArray(input[\"todos\"])\n ? \"todos\"\n : \"\";\n if (!key) return ctx.defaultView;\n return (\n <div data-slot=\"tool-render-plan\" className=\"space-y-1.5\">\n <ExtraParams ctx={ctx} consumed={[key]} />\n <ToolValue\n value={input[key]}\n {...(ctx.options.maxRows !== undefined\n ? { maxRows: ctx.options.maxRows }\n : {})}\n />\n </div>\n );\n}\n\ntype Question = {\n heading: string;\n text: string;\n options: { label: string; description: string }[];\n};\n\nfunction questionFromValue(value: unknown): Question | null {\n if (typeof value === \"string\") {\n return value.trim()\n ? { heading: \"\", text: value.trim(), options: [] }\n : null;\n }\n if (typeof value !== \"object\" || value === null || Array.isArray(value))\n return null;\n const question = value as Record<string, unknown>;\n const text = stringField(question, \"question\", \"text\", \"prompt\", \"label\");\n if (!text) return null;\n const options = Array.isArray(question[\"options\"])\n ? question[\"options\"].flatMap((option) => {\n if (typeof option === \"string\") {\n return option ? [{ label: option, description: \"\" }] : [];\n }\n if (\n typeof option !== \"object\" ||\n option === null ||\n Array.isArray(option)\n )\n return [];\n const record = option as Record<string, unknown>;\n const label = stringField(record, \"label\", \"value\", \"id\");\n return label\n ? [{ label, description: stringField(record, \"description\") }]\n : [];\n })\n : [];\n return {\n heading: stringField(question, \"header\", \"context\", \"description\"),\n text,\n options,\n };\n}\n\nexport function QuestionInput(ctx: ToolRenderAdapterContext): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return ctx.defaultView;\n const raw = Array.isArray(input[\"questions\"]) ? input[\"questions\"] : [input];\n const questions = raw\n .map(questionFromValue)\n .filter((question): question is Question => question !== null);\n if (questions.length === 0) return ctx.defaultView;\n return (\n <div data-slot=\"tool-render-question\" className=\"space-y-1.5\">\n {questions.map((question, index) => (\n <div\n key={`${question.text}-${index}`}\n className=\"rounded-md border border-sky-500/20 bg-sky-500/5 px-density-3 py-density-2\"\n >\n {question.heading && (\n <div className=\"text-[11px] font-medium uppercase text-muted-foreground\">\n {question.heading}\n </div>\n )}\n <div className=\"whitespace-pre-wrap break-words text-sm text-foreground\">\n {question.text}\n </div>\n {question.options.length > 0 && (\n <div className=\"mt-1.5 flex flex-wrap gap-1\">\n {question.options.map((option) => (\n <span\n key={option.label}\n className=\"rounded border border-border bg-background px-1.5 py-0.5 text-[11px] text-muted-foreground\"\n >\n <span className=\"font-medium text-foreground\">\n {option.label}\n </span>\n {option.description && (\n <span className=\"ml-1\">{option.description}</span>\n )}\n </span>\n ))}\n </div>\n )}\n </div>\n ))}\n </div>\n );\n}\n"],"names":["jsx","ToolParams","CodeBlock","jsxs","languageFromPath","CodeDiff","ToolValue"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from 'react';
2
+ import { ToolRenderAdapterContext } from './adapter';
3
+ export declare function ShellInput(ctx: ToolRenderAdapterContext): ReactNode;
4
+ export declare function ShellOutput(ctx: ToolRenderAdapterContext): ReactNode;
5
+ export declare function TextToolOutput(ctx: ToolRenderAdapterContext): ReactNode;
6
+ export declare function FileReadOutput(ctx: ToolRenderAdapterContext): ReactNode;
7
+ export declare function FileEditInput(ctx: ToolRenderAdapterContext): ReactNode;
8
+ export declare function PlanInput(ctx: ToolRenderAdapterContext): ReactNode;
9
+ export declare function QuestionInput(ctx: ToolRenderAdapterContext): ReactNode;
10
+ //# sourceMappingURL=known-tool-views.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"known-tool-views.d.ts","sourceRoot":"","sources":["../../../../src/data/chat/tool-render/known-tool-views.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAwE1D,wBAAgB,UAAU,CAAC,GAAG,EAAE,wBAAwB,GAAG,SAAS,CAWnE;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,SAAS,CAEpE;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,wBAAwB,GAAG,SAAS,CAEvE;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,wBAAwB,GAAG,SAAS,CAYvE;AA+BD,wBAAgB,aAAa,CAAC,GAAG,EAAE,wBAAwB,GAAG,SAAS,CA+CtE;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,wBAAwB,GAAG,SAAS,CAoBlE;AA4CD,wBAAgB,aAAa,CAAC,GAAG,EAAE,wBAAwB,GAAG,SAAS,CA4CtE"}
@@ -0,0 +1,208 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { CodeBlock } from "../../CodeBlock.js";
3
+ import { CodeDiff } from "../../CodeDiff.js";
4
+ import { languageFromPath } from "../../code-highlight.js";
5
+ import { ToolParams } from "./ToolParams.js";
6
+ import { ToolValue } from "./ToolValue.js";
7
+ function inputRecord(ctx) {
8
+ return typeof ctx.input === "object" && ctx.input !== null && !Array.isArray(ctx.input) ? ctx.input : null;
9
+ }
10
+ function stringField(input, ...keys) {
11
+ for (const key of keys) {
12
+ const value = input[key];
13
+ if (typeof value === "string" && value !== "") return value;
14
+ }
15
+ return "";
16
+ }
17
+ function remainingInput(input, consumed) {
18
+ return Object.fromEntries(
19
+ Object.entries(input).filter(([key, value]) => {
20
+ return !consumed.includes(key) && value !== void 0 && value !== null && value !== "";
21
+ })
22
+ );
23
+ }
24
+ function ExtraParams({
25
+ ctx,
26
+ consumed
27
+ }) {
28
+ var _a;
29
+ const input = inputRecord(ctx);
30
+ if (!input) return null;
31
+ const remaining = remainingInput(input, consumed);
32
+ if (Object.keys(remaining).length === 0) return null;
33
+ return /* @__PURE__ */ jsx(
34
+ ToolParams,
35
+ {
36
+ input: remaining,
37
+ ...((_a = ctx.tool) == null ? void 0 : _a.inputSchema) ? { schema: ctx.tool.inputSchema } : {}
38
+ }
39
+ );
40
+ }
41
+ function renderTextOutput(ctx, slot) {
42
+ if (typeof ctx.output !== "string") return ctx.defaultView;
43
+ return /* @__PURE__ */ jsx("div", { "data-slot": slot, children: /* @__PURE__ */ jsx(CodeBlock, { bare: true, language: "text", source: ctx.output }) });
44
+ }
45
+ function ShellInput(ctx) {
46
+ const input = inputRecord(ctx);
47
+ if (!input) return ctx.defaultView;
48
+ const command = stringField(input, "command", "cmd");
49
+ if (!command) return ctx.defaultView;
50
+ return /* @__PURE__ */ jsxs("div", { "data-slot": "tool-render-shell-input", className: "space-y-1.5", children: [
51
+ /* @__PURE__ */ jsx(CodeBlock, { bare: true, language: "bash", source: command }),
52
+ /* @__PURE__ */ jsx(ExtraParams, { ctx, consumed: ["command", "cmd"] })
53
+ ] });
54
+ }
55
+ function ShellOutput(ctx) {
56
+ return renderTextOutput(ctx, "tool-render-shell-output");
57
+ }
58
+ function TextToolOutput(ctx) {
59
+ return renderTextOutput(ctx, "tool-render-text-output");
60
+ }
61
+ function FileReadOutput(ctx) {
62
+ if (typeof ctx.output !== "string") return ctx.defaultView;
63
+ const input = inputRecord(ctx);
64
+ const path = input ? stringField(input, "file_path", "notebook_path", "path") : "";
65
+ const language = languageFromPath(path);
66
+ return /* @__PURE__ */ jsx("div", { "data-slot": "tool-render-file-read", children: /* @__PURE__ */ jsx(CodeBlock, { bare: true, source: ctx.output, ...language ? { language } : {} }) });
67
+ }
68
+ function editSegments(toolName, input) {
69
+ if (toolName === "Write") {
70
+ const content = stringField(input, "content");
71
+ return content ? [{ original: "", modified: content }] : [];
72
+ }
73
+ if (toolName === "Edit" || toolName === "NotebookEdit") {
74
+ const original = stringField(input, "old_string", "old_source");
75
+ const modified = stringField(input, "new_string", "new_source");
76
+ return original || modified ? [{ original, modified }] : [];
77
+ }
78
+ if (toolName !== "MultiEdit" || !Array.isArray(input["edits"])) return [];
79
+ return input["edits"].flatMap((edit) => {
80
+ if (typeof edit !== "object" || edit === null || Array.isArray(edit))
81
+ return [];
82
+ const record = edit;
83
+ const original = stringField(record, "old_string");
84
+ const modified = stringField(record, "new_string");
85
+ return original || modified ? [{ original, modified }] : [];
86
+ });
87
+ }
88
+ function FileEditInput(ctx) {
89
+ const input = inputRecord(ctx);
90
+ if (!input) return ctx.defaultView;
91
+ const path = stringField(input, "file_path", "notebook_path", "path");
92
+ const patch = ctx.toolName === "apply_patch" ? stringField(input, "patch") : "";
93
+ const segments = editSegments(ctx.toolName, input);
94
+ if (!patch && segments.length === 0) return ctx.defaultView;
95
+ const language = languageFromPath(path);
96
+ return /* @__PURE__ */ jsxs("div", { "data-slot": "tool-render-file-edit", className: "space-y-1.5", children: [
97
+ path && /* @__PURE__ */ jsx("div", { className: "truncate font-mono text-[11px] text-muted-foreground", children: path }),
98
+ patch ? /* @__PURE__ */ jsx(CodeBlock, { bare: true, language: "diff", source: patch }) : segments.map((segment, index) => /* @__PURE__ */ jsx(
99
+ CodeDiff,
100
+ {
101
+ bare: true,
102
+ showLineNumbers: false,
103
+ original: segment.original,
104
+ modified: segment.modified,
105
+ ...language ? { language } : {}
106
+ },
107
+ index
108
+ )),
109
+ /* @__PURE__ */ jsx(
110
+ ExtraParams,
111
+ {
112
+ ctx,
113
+ consumed: [
114
+ "file_path",
115
+ "notebook_path",
116
+ "path",
117
+ "content",
118
+ "old_string",
119
+ "old_source",
120
+ "new_string",
121
+ "new_source",
122
+ "edits",
123
+ "patch"
124
+ ]
125
+ }
126
+ )
127
+ ] });
128
+ }
129
+ function PlanInput(ctx) {
130
+ const input = inputRecord(ctx);
131
+ if (!input) return ctx.defaultView;
132
+ const key = Array.isArray(input["plan"]) ? "plan" : Array.isArray(input["todos"]) ? "todos" : "";
133
+ if (!key) return ctx.defaultView;
134
+ return /* @__PURE__ */ jsxs("div", { "data-slot": "tool-render-plan", className: "space-y-1.5", children: [
135
+ /* @__PURE__ */ jsx(ExtraParams, { ctx, consumed: [key] }),
136
+ /* @__PURE__ */ jsx(
137
+ ToolValue,
138
+ {
139
+ value: input[key],
140
+ ...ctx.options.maxRows !== void 0 ? { maxRows: ctx.options.maxRows } : {}
141
+ }
142
+ )
143
+ ] });
144
+ }
145
+ function questionFromValue(value) {
146
+ if (typeof value === "string") {
147
+ return value.trim() ? { heading: "", text: value.trim(), options: [] } : null;
148
+ }
149
+ if (typeof value !== "object" || value === null || Array.isArray(value))
150
+ return null;
151
+ const question = value;
152
+ const text = stringField(question, "question", "text", "prompt", "label");
153
+ if (!text) return null;
154
+ const options = Array.isArray(question["options"]) ? question["options"].flatMap((option) => {
155
+ if (typeof option === "string") {
156
+ return option ? [{ label: option, description: "" }] : [];
157
+ }
158
+ if (typeof option !== "object" || option === null || Array.isArray(option))
159
+ return [];
160
+ const record = option;
161
+ const label = stringField(record, "label", "value", "id");
162
+ return label ? [{ label, description: stringField(record, "description") }] : [];
163
+ }) : [];
164
+ return {
165
+ heading: stringField(question, "header", "context", "description"),
166
+ text,
167
+ options
168
+ };
169
+ }
170
+ function QuestionInput(ctx) {
171
+ const input = inputRecord(ctx);
172
+ if (!input) return ctx.defaultView;
173
+ const raw = Array.isArray(input["questions"]) ? input["questions"] : [input];
174
+ const questions = raw.map(questionFromValue).filter((question) => question !== null);
175
+ if (questions.length === 0) return ctx.defaultView;
176
+ return /* @__PURE__ */ jsx("div", { "data-slot": "tool-render-question", className: "space-y-1.5", children: questions.map((question, index) => /* @__PURE__ */ jsxs(
177
+ "div",
178
+ {
179
+ className: "rounded-md border border-sky-500/20 bg-sky-500/5 px-density-3 py-density-2",
180
+ children: [
181
+ question.heading && /* @__PURE__ */ jsx("div", { className: "text-[11px] font-medium uppercase text-muted-foreground", children: question.heading }),
182
+ /* @__PURE__ */ jsx("div", { className: "whitespace-pre-wrap break-words text-sm text-foreground", children: question.text }),
183
+ question.options.length > 0 && /* @__PURE__ */ jsx("div", { className: "mt-1.5 flex flex-wrap gap-1", children: question.options.map((option) => /* @__PURE__ */ jsxs(
184
+ "span",
185
+ {
186
+ className: "rounded border border-border bg-background px-1.5 py-0.5 text-[11px] text-muted-foreground",
187
+ children: [
188
+ /* @__PURE__ */ jsx("span", { className: "font-medium text-foreground", children: option.label }),
189
+ option.description && /* @__PURE__ */ jsx("span", { className: "ml-1", children: option.description })
190
+ ]
191
+ },
192
+ option.label
193
+ )) })
194
+ ]
195
+ },
196
+ `${question.text}-${index}`
197
+ )) });
198
+ }
199
+ export {
200
+ FileEditInput,
201
+ FileReadOutput,
202
+ PlanInput,
203
+ QuestionInput,
204
+ ShellInput,
205
+ ShellOutput,
206
+ TextToolOutput
207
+ };
208
+ //# sourceMappingURL=known-tool-views.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"known-tool-views.js","sources":["../../../../src/data/chat/tool-render/known-tool-views.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { CodeBlock } from \"../../CodeBlock\";\nimport { CodeDiff } from \"../../CodeDiff\";\nimport { languageFromPath } from \"../../code-highlight\";\nimport type { ToolRenderAdapterContext } from \"./adapter\";\nimport { ToolParams } from \"./ToolParams\";\nimport { ToolValue } from \"./ToolValue\";\n\nfunction inputRecord(\n ctx: ToolRenderAdapterContext,\n): Record<string, unknown> | null {\n return typeof ctx.input === \"object\" &&\n ctx.input !== null &&\n !Array.isArray(ctx.input)\n ? (ctx.input as Record<string, unknown>)\n : null;\n}\n\nfunction stringField(\n input: Record<string, unknown>,\n ...keys: string[]\n): string {\n for (const key of keys) {\n const value = input[key];\n if (typeof value === \"string\" && value !== \"\") return value;\n }\n return \"\";\n}\n\nfunction remainingInput(\n input: Record<string, unknown>,\n consumed: readonly string[],\n): Record<string, unknown> {\n return Object.fromEntries(\n Object.entries(input).filter(([key, value]) => {\n return (\n !consumed.includes(key) &&\n value !== undefined &&\n value !== null &&\n value !== \"\"\n );\n }),\n );\n}\n\nfunction ExtraParams({\n ctx,\n consumed,\n}: {\n ctx: ToolRenderAdapterContext;\n consumed: readonly string[];\n}): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return null;\n const remaining = remainingInput(input, consumed);\n if (Object.keys(remaining).length === 0) return null;\n return (\n <ToolParams\n input={remaining}\n {...(ctx.tool?.inputSchema ? { schema: ctx.tool.inputSchema } : {})}\n />\n );\n}\n\nfunction renderTextOutput(\n ctx: ToolRenderAdapterContext,\n slot: string,\n): ReactNode {\n if (typeof ctx.output !== \"string\") return ctx.defaultView;\n return (\n <div data-slot={slot}>\n <CodeBlock bare language=\"text\" source={ctx.output} />\n </div>\n );\n}\n\nexport function ShellInput(ctx: ToolRenderAdapterContext): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return ctx.defaultView;\n const command = stringField(input, \"command\", \"cmd\");\n if (!command) return ctx.defaultView;\n return (\n <div data-slot=\"tool-render-shell-input\" className=\"space-y-1.5\">\n <CodeBlock bare language=\"bash\" source={command} />\n <ExtraParams ctx={ctx} consumed={[\"command\", \"cmd\"]} />\n </div>\n );\n}\n\nexport function ShellOutput(ctx: ToolRenderAdapterContext): ReactNode {\n return renderTextOutput(ctx, \"tool-render-shell-output\");\n}\n\nexport function TextToolOutput(ctx: ToolRenderAdapterContext): ReactNode {\n return renderTextOutput(ctx, \"tool-render-text-output\");\n}\n\nexport function FileReadOutput(ctx: ToolRenderAdapterContext): ReactNode {\n if (typeof ctx.output !== \"string\") return ctx.defaultView;\n const input = inputRecord(ctx);\n const path = input\n ? stringField(input, \"file_path\", \"notebook_path\", \"path\")\n : \"\";\n const language = languageFromPath(path);\n return (\n <div data-slot=\"tool-render-file-read\">\n <CodeBlock bare source={ctx.output} {...(language ? { language } : {})} />\n </div>\n );\n}\n\ntype EditSegment = {\n original: string;\n modified: string;\n};\n\nfunction editSegments(\n toolName: string,\n input: Record<string, unknown>,\n): EditSegment[] {\n if (toolName === \"Write\") {\n const content = stringField(input, \"content\");\n return content ? [{ original: \"\", modified: content }] : [];\n }\n if (toolName === \"Edit\" || toolName === \"NotebookEdit\") {\n const original = stringField(input, \"old_string\", \"old_source\");\n const modified = stringField(input, \"new_string\", \"new_source\");\n return original || modified ? [{ original, modified }] : [];\n }\n if (toolName !== \"MultiEdit\" || !Array.isArray(input[\"edits\"])) return [];\n return input[\"edits\"].flatMap((edit) => {\n if (typeof edit !== \"object\" || edit === null || Array.isArray(edit))\n return [];\n const record = edit as Record<string, unknown>;\n const original = stringField(record, \"old_string\");\n const modified = stringField(record, \"new_string\");\n return original || modified ? [{ original, modified }] : [];\n });\n}\n\nexport function FileEditInput(ctx: ToolRenderAdapterContext): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return ctx.defaultView;\n const path = stringField(input, \"file_path\", \"notebook_path\", \"path\");\n const patch =\n ctx.toolName === \"apply_patch\" ? stringField(input, \"patch\") : \"\";\n const segments = editSegments(ctx.toolName, input);\n if (!patch && segments.length === 0) return ctx.defaultView;\n const language = languageFromPath(path);\n return (\n <div data-slot=\"tool-render-file-edit\" className=\"space-y-1.5\">\n {path && (\n <div className=\"truncate font-mono text-[11px] text-muted-foreground\">\n {path}\n </div>\n )}\n {patch ? (\n <CodeBlock bare language=\"diff\" source={patch} />\n ) : (\n segments.map((segment, index) => (\n <CodeDiff\n key={index}\n bare\n showLineNumbers={false}\n original={segment.original}\n modified={segment.modified}\n {...(language ? { language } : {})}\n />\n ))\n )}\n <ExtraParams\n ctx={ctx}\n consumed={[\n \"file_path\",\n \"notebook_path\",\n \"path\",\n \"content\",\n \"old_string\",\n \"old_source\",\n \"new_string\",\n \"new_source\",\n \"edits\",\n \"patch\",\n ]}\n />\n </div>\n );\n}\n\nexport function PlanInput(ctx: ToolRenderAdapterContext): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return ctx.defaultView;\n const key = Array.isArray(input[\"plan\"])\n ? \"plan\"\n : Array.isArray(input[\"todos\"])\n ? \"todos\"\n : \"\";\n if (!key) return ctx.defaultView;\n return (\n <div data-slot=\"tool-render-plan\" className=\"space-y-1.5\">\n <ExtraParams ctx={ctx} consumed={[key]} />\n <ToolValue\n value={input[key]}\n {...(ctx.options.maxRows !== undefined\n ? { maxRows: ctx.options.maxRows }\n : {})}\n />\n </div>\n );\n}\n\ntype Question = {\n heading: string;\n text: string;\n options: { label: string; description: string }[];\n};\n\nfunction questionFromValue(value: unknown): Question | null {\n if (typeof value === \"string\") {\n return value.trim()\n ? { heading: \"\", text: value.trim(), options: [] }\n : null;\n }\n if (typeof value !== \"object\" || value === null || Array.isArray(value))\n return null;\n const question = value as Record<string, unknown>;\n const text = stringField(question, \"question\", \"text\", \"prompt\", \"label\");\n if (!text) return null;\n const options = Array.isArray(question[\"options\"])\n ? question[\"options\"].flatMap((option) => {\n if (typeof option === \"string\") {\n return option ? [{ label: option, description: \"\" }] : [];\n }\n if (\n typeof option !== \"object\" ||\n option === null ||\n Array.isArray(option)\n )\n return [];\n const record = option as Record<string, unknown>;\n const label = stringField(record, \"label\", \"value\", \"id\");\n return label\n ? [{ label, description: stringField(record, \"description\") }]\n : [];\n })\n : [];\n return {\n heading: stringField(question, \"header\", \"context\", \"description\"),\n text,\n options,\n };\n}\n\nexport function QuestionInput(ctx: ToolRenderAdapterContext): ReactNode {\n const input = inputRecord(ctx);\n if (!input) return ctx.defaultView;\n const raw = Array.isArray(input[\"questions\"]) ? input[\"questions\"] : [input];\n const questions = raw\n .map(questionFromValue)\n .filter((question): question is Question => question !== null);\n if (questions.length === 0) return ctx.defaultView;\n return (\n <div data-slot=\"tool-render-question\" className=\"space-y-1.5\">\n {questions.map((question, index) => (\n <div\n key={`${question.text}-${index}`}\n className=\"rounded-md border border-sky-500/20 bg-sky-500/5 px-density-3 py-density-2\"\n >\n {question.heading && (\n <div className=\"text-[11px] font-medium uppercase text-muted-foreground\">\n {question.heading}\n </div>\n )}\n <div className=\"whitespace-pre-wrap break-words text-sm text-foreground\">\n {question.text}\n </div>\n {question.options.length > 0 && (\n <div className=\"mt-1.5 flex flex-wrap gap-1\">\n {question.options.map((option) => (\n <span\n key={option.label}\n className=\"rounded border border-border bg-background px-1.5 py-0.5 text-[11px] text-muted-foreground\"\n >\n <span className=\"font-medium text-foreground\">\n {option.label}\n </span>\n {option.description && (\n <span className=\"ml-1\">{option.description}</span>\n )}\n </span>\n ))}\n </div>\n )}\n </div>\n ))}\n </div>\n );\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const knownToolViews = require("./known-tool-views.cjs");
4
+ const SHELL_TOOLS = /* @__PURE__ */ new Set(["Bash", "exec_command", "run_command", "shell"]);
5
+ const FILE_READ_TOOLS = /* @__PURE__ */ new Set(["Read", "read_file"]);
6
+ const FILE_EDIT_TOOLS = /* @__PURE__ */ new Set([
7
+ "Write",
8
+ "Edit",
9
+ "MultiEdit",
10
+ "NotebookEdit",
11
+ "apply_patch"
12
+ ]);
13
+ const PLAN_TOOLS = /* @__PURE__ */ new Set(["TodoWrite", "Plan", "update_plan"]);
14
+ const QUESTION_TOOLS = /* @__PURE__ */ new Set(["AskUserQuestion", "request_user_input"]);
15
+ const TEXT_OUTPUT_TOOLS = /* @__PURE__ */ new Set([
16
+ "Grep",
17
+ "Glob",
18
+ "ToolSearch",
19
+ "WebFetch",
20
+ "WebSearch",
21
+ "list_dir",
22
+ "web_search"
23
+ ]);
24
+ const knownToolRenderAdapters = [
25
+ {
26
+ id: "clicky:shell",
27
+ match: (ctx) => SHELL_TOOLS.has(ctx.toolName),
28
+ renderInput: knownToolViews.ShellInput,
29
+ renderOutput: knownToolViews.ShellOutput
30
+ },
31
+ {
32
+ id: "clicky:file-read",
33
+ match: (ctx) => FILE_READ_TOOLS.has(ctx.toolName),
34
+ renderOutput: knownToolViews.FileReadOutput
35
+ },
36
+ {
37
+ id: "clicky:file-edit",
38
+ match: (ctx) => FILE_EDIT_TOOLS.has(ctx.toolName),
39
+ renderInput: knownToolViews.FileEditInput
40
+ },
41
+ {
42
+ id: "clicky:plan",
43
+ match: (ctx) => PLAN_TOOLS.has(ctx.toolName),
44
+ renderInput: knownToolViews.PlanInput
45
+ },
46
+ {
47
+ id: "clicky:question",
48
+ match: (ctx) => QUESTION_TOOLS.has(ctx.toolName),
49
+ renderInput: knownToolViews.QuestionInput
50
+ },
51
+ {
52
+ id: "clicky:text-output",
53
+ match: (ctx) => TEXT_OUTPUT_TOOLS.has(ctx.toolName),
54
+ renderOutput: knownToolViews.TextToolOutput
55
+ }
56
+ ];
57
+ exports.knownToolRenderAdapters = knownToolRenderAdapters;
58
+ //# sourceMappingURL=known-tools.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"known-tools.cjs","sources":["../../../../src/data/chat/tool-render/known-tools.ts"],"sourcesContent":["import type { ToolRenderAdapter } from \"./adapter\";\nimport {\n FileEditInput,\n FileReadOutput,\n PlanInput,\n QuestionInput,\n ShellInput,\n ShellOutput,\n TextToolOutput,\n} from \"./known-tool-views\";\n\nconst SHELL_TOOLS = new Set([\"Bash\", \"exec_command\", \"run_command\", \"shell\"]);\nconst FILE_READ_TOOLS = new Set([\"Read\", \"read_file\"]);\nconst FILE_EDIT_TOOLS = new Set([\n \"Write\",\n \"Edit\",\n \"MultiEdit\",\n \"NotebookEdit\",\n \"apply_patch\",\n]);\nconst PLAN_TOOLS = new Set([\"TodoWrite\", \"Plan\", \"update_plan\"]);\nconst QUESTION_TOOLS = new Set([\"AskUserQuestion\", \"request_user_input\"]);\nconst TEXT_OUTPUT_TOOLS = new Set([\n \"Grep\",\n \"Glob\",\n \"ToolSearch\",\n \"WebFetch\",\n \"WebSearch\",\n \"list_dir\",\n \"web_search\",\n]);\n\n/** Standard renderers for common Claude/Codex coding-agent tools. */\nexport const knownToolRenderAdapters: ToolRenderAdapter[] = [\n {\n id: \"clicky:shell\",\n match: (ctx) => SHELL_TOOLS.has(ctx.toolName),\n renderInput: ShellInput,\n renderOutput: ShellOutput,\n },\n {\n id: \"clicky:file-read\",\n match: (ctx) => FILE_READ_TOOLS.has(ctx.toolName),\n renderOutput: FileReadOutput,\n },\n {\n id: \"clicky:file-edit\",\n match: (ctx) => FILE_EDIT_TOOLS.has(ctx.toolName),\n renderInput: FileEditInput,\n },\n {\n id: \"clicky:plan\",\n match: (ctx) => PLAN_TOOLS.has(ctx.toolName),\n renderInput: PlanInput,\n },\n {\n id: \"clicky:question\",\n match: (ctx) => QUESTION_TOOLS.has(ctx.toolName),\n renderInput: QuestionInput,\n },\n {\n id: \"clicky:text-output\",\n match: (ctx) => TEXT_OUTPUT_TOOLS.has(ctx.toolName),\n renderOutput: TextToolOutput,\n },\n];\n"],"names":["ShellInput","ShellOutput","FileReadOutput","FileEditInput","PlanInput","QuestionInput","TextToolOutput"],"mappings":";;;AAWA,MAAM,kCAAkB,IAAI,CAAC,QAAQ,gBAAgB,eAAe,OAAO,CAAC;AAC5E,MAAM,kBAAkB,oBAAI,IAAI,CAAC,QAAQ,WAAW,CAAC;AACrD,MAAM,sCAAsB,IAAI;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,aAAa,oBAAI,IAAI,CAAC,aAAa,QAAQ,aAAa,CAAC;AAC/D,MAAM,iBAAiB,oBAAI,IAAI,CAAC,mBAAmB,oBAAoB,CAAC;AACxE,MAAM,wCAAwB,IAAI;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAGM,MAAM,0BAA+C;AAAA,EAC1D;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,YAAY,IAAI,IAAI,QAAQ;AAAA,IAC5C,aAAaA,eAAAA;AAAAA,IACb,cAAcC,eAAAA;AAAAA,EAAA;AAAA,EAEhB;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,gBAAgB,IAAI,IAAI,QAAQ;AAAA,IAChD,cAAcC,eAAAA;AAAAA,EAAA;AAAA,EAEhB;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,gBAAgB,IAAI,IAAI,QAAQ;AAAA,IAChD,aAAaC,eAAAA;AAAAA,EAAA;AAAA,EAEf;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,WAAW,IAAI,IAAI,QAAQ;AAAA,IAC3C,aAAaC,eAAAA;AAAAA,EAAA;AAAA,EAEf;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,eAAe,IAAI,IAAI,QAAQ;AAAA,IAC/C,aAAaC,eAAAA;AAAAA,EAAA;AAAA,EAEf;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,kBAAkB,IAAI,IAAI,QAAQ;AAAA,IAClD,cAAcC,eAAAA;AAAAA,EAAA;AAElB;;"}
@@ -0,0 +1,4 @@
1
+ import { ToolRenderAdapter } from './adapter';
2
+ /** Standard renderers for common Claude/Codex coding-agent tools. */
3
+ export declare const knownToolRenderAdapters: ToolRenderAdapter[];
4
+ //# sourceMappingURL=known-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"known-tools.d.ts","sourceRoot":"","sources":["../../../../src/data/chat/tool-render/known-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAgCnD,qEAAqE;AACrE,eAAO,MAAM,uBAAuB,EAAE,iBAAiB,EAgCtD,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { ShellOutput, ShellInput, FileReadOutput, FileEditInput, PlanInput, QuestionInput, TextToolOutput } from "./known-tool-views.js";
2
+ const SHELL_TOOLS = /* @__PURE__ */ new Set(["Bash", "exec_command", "run_command", "shell"]);
3
+ const FILE_READ_TOOLS = /* @__PURE__ */ new Set(["Read", "read_file"]);
4
+ const FILE_EDIT_TOOLS = /* @__PURE__ */ new Set([
5
+ "Write",
6
+ "Edit",
7
+ "MultiEdit",
8
+ "NotebookEdit",
9
+ "apply_patch"
10
+ ]);
11
+ const PLAN_TOOLS = /* @__PURE__ */ new Set(["TodoWrite", "Plan", "update_plan"]);
12
+ const QUESTION_TOOLS = /* @__PURE__ */ new Set(["AskUserQuestion", "request_user_input"]);
13
+ const TEXT_OUTPUT_TOOLS = /* @__PURE__ */ new Set([
14
+ "Grep",
15
+ "Glob",
16
+ "ToolSearch",
17
+ "WebFetch",
18
+ "WebSearch",
19
+ "list_dir",
20
+ "web_search"
21
+ ]);
22
+ const knownToolRenderAdapters = [
23
+ {
24
+ id: "clicky:shell",
25
+ match: (ctx) => SHELL_TOOLS.has(ctx.toolName),
26
+ renderInput: ShellInput,
27
+ renderOutput: ShellOutput
28
+ },
29
+ {
30
+ id: "clicky:file-read",
31
+ match: (ctx) => FILE_READ_TOOLS.has(ctx.toolName),
32
+ renderOutput: FileReadOutput
33
+ },
34
+ {
35
+ id: "clicky:file-edit",
36
+ match: (ctx) => FILE_EDIT_TOOLS.has(ctx.toolName),
37
+ renderInput: FileEditInput
38
+ },
39
+ {
40
+ id: "clicky:plan",
41
+ match: (ctx) => PLAN_TOOLS.has(ctx.toolName),
42
+ renderInput: PlanInput
43
+ },
44
+ {
45
+ id: "clicky:question",
46
+ match: (ctx) => QUESTION_TOOLS.has(ctx.toolName),
47
+ renderInput: QuestionInput
48
+ },
49
+ {
50
+ id: "clicky:text-output",
51
+ match: (ctx) => TEXT_OUTPUT_TOOLS.has(ctx.toolName),
52
+ renderOutput: TextToolOutput
53
+ }
54
+ ];
55
+ export {
56
+ knownToolRenderAdapters
57
+ };
58
+ //# sourceMappingURL=known-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"known-tools.js","sources":["../../../../src/data/chat/tool-render/known-tools.ts"],"sourcesContent":["import type { ToolRenderAdapter } from \"./adapter\";\nimport {\n FileEditInput,\n FileReadOutput,\n PlanInput,\n QuestionInput,\n ShellInput,\n ShellOutput,\n TextToolOutput,\n} from \"./known-tool-views\";\n\nconst SHELL_TOOLS = new Set([\"Bash\", \"exec_command\", \"run_command\", \"shell\"]);\nconst FILE_READ_TOOLS = new Set([\"Read\", \"read_file\"]);\nconst FILE_EDIT_TOOLS = new Set([\n \"Write\",\n \"Edit\",\n \"MultiEdit\",\n \"NotebookEdit\",\n \"apply_patch\",\n]);\nconst PLAN_TOOLS = new Set([\"TodoWrite\", \"Plan\", \"update_plan\"]);\nconst QUESTION_TOOLS = new Set([\"AskUserQuestion\", \"request_user_input\"]);\nconst TEXT_OUTPUT_TOOLS = new Set([\n \"Grep\",\n \"Glob\",\n \"ToolSearch\",\n \"WebFetch\",\n \"WebSearch\",\n \"list_dir\",\n \"web_search\",\n]);\n\n/** Standard renderers for common Claude/Codex coding-agent tools. */\nexport const knownToolRenderAdapters: ToolRenderAdapter[] = [\n {\n id: \"clicky:shell\",\n match: (ctx) => SHELL_TOOLS.has(ctx.toolName),\n renderInput: ShellInput,\n renderOutput: ShellOutput,\n },\n {\n id: \"clicky:file-read\",\n match: (ctx) => FILE_READ_TOOLS.has(ctx.toolName),\n renderOutput: FileReadOutput,\n },\n {\n id: \"clicky:file-edit\",\n match: (ctx) => FILE_EDIT_TOOLS.has(ctx.toolName),\n renderInput: FileEditInput,\n },\n {\n id: \"clicky:plan\",\n match: (ctx) => PLAN_TOOLS.has(ctx.toolName),\n renderInput: PlanInput,\n },\n {\n id: \"clicky:question\",\n match: (ctx) => QUESTION_TOOLS.has(ctx.toolName),\n renderInput: QuestionInput,\n },\n {\n id: \"clicky:text-output\",\n match: (ctx) => TEXT_OUTPUT_TOOLS.has(ctx.toolName),\n renderOutput: TextToolOutput,\n },\n];\n"],"names":[],"mappings":";AAWA,MAAM,kCAAkB,IAAI,CAAC,QAAQ,gBAAgB,eAAe,OAAO,CAAC;AAC5E,MAAM,kBAAkB,oBAAI,IAAI,CAAC,QAAQ,WAAW,CAAC;AACrD,MAAM,sCAAsB,IAAI;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,aAAa,oBAAI,IAAI,CAAC,aAAa,QAAQ,aAAa,CAAC;AAC/D,MAAM,iBAAiB,oBAAI,IAAI,CAAC,mBAAmB,oBAAoB,CAAC;AACxE,MAAM,wCAAwB,IAAI;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAGM,MAAM,0BAA+C;AAAA,EAC1D;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,YAAY,IAAI,IAAI,QAAQ;AAAA,IAC5C,aAAa;AAAA,IACb,cAAc;AAAA,EAAA;AAAA,EAEhB;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,gBAAgB,IAAI,IAAI,QAAQ;AAAA,IAChD,cAAc;AAAA,EAAA;AAAA,EAEhB;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,gBAAgB,IAAI,IAAI,QAAQ;AAAA,IAChD,aAAa;AAAA,EAAA;AAAA,EAEf;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,WAAW,IAAI,IAAI,QAAQ;AAAA,IAC3C,aAAa;AAAA,EAAA;AAAA,EAEf;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,eAAe,IAAI,IAAI,QAAQ;AAAA,IAC/C,aAAa;AAAA,EAAA;AAAA,EAEf;AAAA,IACE,IAAI;AAAA,IACJ,OAAO,CAAC,QAAQ,kBAAkB,IAAI,IAAI,QAAQ;AAAA,IAClD,cAAc;AAAA,EAAA;AAElB;"}