@stigmer/react 3.12.5 → 3.12.7

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 (329) hide show
  1. package/agent/AgentDetailView.js +2 -2
  2. package/agent/AgentDetailView.js.map +1 -1
  3. package/agent/index.d.ts +0 -1
  4. package/agent/index.d.ts.map +1 -1
  5. package/agent/index.js +0 -1
  6. package/agent/index.js.map +1 -1
  7. package/agent/useUpdateAgent.d.ts +3 -3
  8. package/agent/useUpdateAgent.js +3 -3
  9. package/agent-instance/AgentInstanceDetailPanel.d.ts.map +1 -1
  10. package/agent-instance/AgentInstanceDetailPanel.js +5 -7
  11. package/agent-instance/AgentInstanceDetailPanel.js.map +1 -1
  12. package/agent-instance/useUpdateAgentInstance.d.ts +1 -1
  13. package/agent-instance/useUpdateAgentInstance.js +1 -1
  14. package/channel/AgentChannelsPanel.d.ts.map +1 -1
  15. package/channel/AgentChannelsPanel.js +10 -5
  16. package/channel/AgentChannelsPanel.js.map +1 -1
  17. package/channel/ChannelRunConfigDialog.d.ts +51 -0
  18. package/channel/ChannelRunConfigDialog.d.ts.map +1 -0
  19. package/channel/ChannelRunConfigDialog.js +121 -0
  20. package/channel/ChannelRunConfigDialog.js.map +1 -0
  21. package/channel/index.d.ts +2 -0
  22. package/channel/index.d.ts.map +1 -1
  23. package/channel/index.js +1 -0
  24. package/channel/index.js.map +1 -1
  25. package/channel/useSaveAgentChannel.d.ts.map +1 -1
  26. package/channel/useSaveAgentChannel.js +6 -3
  27. package/channel/useSaveAgentChannel.js.map +1 -1
  28. package/channel-app/ChannelAppDetailPanel.js +9 -9
  29. package/channel-app/ChannelAppDetailPanel.js.map +1 -1
  30. package/composer/ComposerToolbar.d.ts +24 -1
  31. package/composer/ComposerToolbar.d.ts.map +1 -1
  32. package/composer/ComposerToolbar.js +7 -2
  33. package/composer/ComposerToolbar.js.map +1 -1
  34. package/composer/SessionComposer.d.ts +19 -0
  35. package/composer/SessionComposer.d.ts.map +1 -1
  36. package/composer/SessionComposer.js +24 -5
  37. package/composer/SessionComposer.js.map +1 -1
  38. package/composer/index.d.ts +1 -0
  39. package/composer/index.d.ts.map +1 -1
  40. package/composer/index.js.map +1 -1
  41. package/cursor-accounts/CursorAccountsConsole.d.ts.map +1 -1
  42. package/cursor-accounts/CursorAccountsConsole.js +12 -3
  43. package/cursor-accounts/CursorAccountsConsole.js.map +1 -1
  44. package/cursor-accounts/cursor-account-coverage.d.ts +30 -1
  45. package/cursor-accounts/cursor-account-coverage.d.ts.map +1 -1
  46. package/cursor-accounts/cursor-account-coverage.js +21 -0
  47. package/cursor-accounts/cursor-account-coverage.js.map +1 -1
  48. package/execution/MessageThread.d.ts.map +1 -1
  49. package/execution/MessageThread.js +8 -11
  50. package/execution/MessageThread.js.map +1 -1
  51. package/execution/useCreateAgentExecution.d.ts +15 -0
  52. package/execution/useCreateAgentExecution.d.ts.map +1 -1
  53. package/execution/useCreateAgentExecution.js +5 -0
  54. package/execution/useCreateAgentExecution.js.map +1 -1
  55. package/execution/useFileChangeContent.d.ts +2 -6
  56. package/execution/useFileChangeContent.d.ts.map +1 -1
  57. package/execution/useFileChangeContent.js +4 -12
  58. package/execution/useFileChangeContent.js.map +1 -1
  59. package/identity-account/AccountPreferencesPanel.d.ts +2 -1
  60. package/identity-account/AccountPreferencesPanel.d.ts.map +1 -1
  61. package/identity-account/AccountPreferencesPanel.js +33 -18
  62. package/identity-account/AccountPreferencesPanel.js.map +1 -1
  63. package/identity-provider/IdentityProviderDetailPanel.d.ts.map +1 -1
  64. package/identity-provider/IdentityProviderDetailPanel.js +16 -15
  65. package/identity-provider/IdentityProviderDetailPanel.js.map +1 -1
  66. package/index.d.ts +10 -7
  67. package/index.d.ts.map +1 -1
  68. package/index.js +8 -4
  69. package/index.js.map +1 -1
  70. package/internal/download.d.ts +8 -0
  71. package/internal/download.d.ts.map +1 -0
  72. package/internal/download.js +25 -0
  73. package/internal/download.js.map +1 -0
  74. package/library/useExportResource.d.ts.map +1 -1
  75. package/library/useExportResource.js +3 -17
  76. package/library/useExportResource.js.map +1 -1
  77. package/mcp-server/McpServerDetailView.js +2 -2
  78. package/mcp-server/McpServerDetailView.js.map +1 -1
  79. package/mcp-server/index.d.ts +0 -1
  80. package/mcp-server/index.d.ts.map +1 -1
  81. package/mcp-server/index.js +0 -1
  82. package/mcp-server/index.js.map +1 -1
  83. package/mcp-server/internal/definitionDrift.d.ts +14 -12
  84. package/mcp-server/internal/definitionDrift.d.ts.map +1 -1
  85. package/mcp-server/internal/definitionDrift.js +22 -19
  86. package/mcp-server/internal/definitionDrift.js.map +1 -1
  87. package/mcp-server/useUpdateMcpServer.d.ts +3 -3
  88. package/mcp-server/useUpdateMcpServer.js +3 -3
  89. package/memory/MemoryListPanel.d.ts +35 -0
  90. package/memory/MemoryListPanel.d.ts.map +1 -0
  91. package/memory/MemoryListPanel.js +141 -0
  92. package/memory/MemoryListPanel.js.map +1 -0
  93. package/memory/index.d.ts +8 -0
  94. package/memory/index.d.ts.map +1 -0
  95. package/memory/index.js +12 -0
  96. package/memory/index.js.map +1 -0
  97. package/memory/memoryGroups.d.ts +31 -0
  98. package/memory/memoryGroups.d.ts.map +1 -0
  99. package/memory/memoryGroups.js +52 -0
  100. package/memory/memoryGroups.js.map +1 -0
  101. package/memory/useConfirmMemory.d.ts +31 -0
  102. package/memory/useConfirmMemory.d.ts.map +1 -0
  103. package/memory/useConfirmMemory.js +43 -0
  104. package/memory/useConfirmMemory.js.map +1 -0
  105. package/memory/useDeleteMemory.d.ts +30 -0
  106. package/memory/useDeleteMemory.d.ts.map +1 -0
  107. package/memory/useDeleteMemory.js +42 -0
  108. package/memory/useDeleteMemory.js.map +1 -0
  109. package/memory/useMemories.d.ts +33 -0
  110. package/memory/useMemories.d.ts.map +1 -0
  111. package/memory/useMemories.js +42 -0
  112. package/memory/useMemories.js.map +1 -0
  113. package/memory/useRejectMemory.d.ts +34 -0
  114. package/memory/useRejectMemory.d.ts.map +1 -0
  115. package/memory/useRejectMemory.js +46 -0
  116. package/memory/useRejectMemory.js.map +1 -0
  117. package/memory/useUpdateMemoryContent.d.ts +32 -0
  118. package/memory/useUpdateMemoryContent.d.ts.map +1 -0
  119. package/memory/useUpdateMemoryContent.js +48 -0
  120. package/memory/useUpdateMemoryContent.js.map +1 -0
  121. package/models/ModelSelector.d.ts +33 -1
  122. package/models/ModelSelector.d.ts.map +1 -1
  123. package/models/ModelSelector.js +37 -4
  124. package/models/ModelSelector.js.map +1 -1
  125. package/models/index.d.ts +2 -0
  126. package/models/index.d.ts.map +1 -1
  127. package/models/index.js +1 -0
  128. package/models/index.js.map +1 -1
  129. package/models/registry.d.ts +16 -0
  130. package/models/registry.d.ts.map +1 -1
  131. package/models/registry.js +13 -0
  132. package/models/registry.js.map +1 -1
  133. package/models/thinking-mode.d.ts +27 -0
  134. package/models/thinking-mode.d.ts.map +1 -0
  135. package/models/thinking-mode.js +32 -0
  136. package/models/thinking-mode.js.map +1 -0
  137. package/oauth-app/OAuthAppDetailPanel.d.ts.map +1 -1
  138. package/oauth-app/OAuthAppDetailPanel.js +21 -20
  139. package/oauth-app/OAuthAppDetailPanel.js.map +1 -1
  140. package/package.json +4 -4
  141. package/platform-client/PlatformClientDetailPanel.d.ts.map +1 -1
  142. package/platform-client/PlatformClientDetailPanel.js +12 -13
  143. package/platform-client/PlatformClientDetailPanel.js.map +1 -1
  144. package/schedule/ScheduleDetailView.d.ts.map +1 -1
  145. package/schedule/ScheduleDetailView.js +21 -10
  146. package/schedule/ScheduleDetailView.js.map +1 -1
  147. package/schedule/ScheduleForm.d.ts.map +1 -1
  148. package/schedule/ScheduleForm.js +13 -3
  149. package/schedule/ScheduleForm.js.map +1 -1
  150. package/session/NewSessionViewer.d.ts.map +1 -1
  151. package/session/NewSessionViewer.js +9 -1
  152. package/session/NewSessionViewer.js.map +1 -1
  153. package/session/SessionViewer.d.ts +14 -1
  154. package/session/SessionViewer.d.ts.map +1 -1
  155. package/session/SessionViewer.js +21 -25
  156. package/session/SessionViewer.js.map +1 -1
  157. package/session/TranscriptExportMenu.d.ts +24 -0
  158. package/session/TranscriptExportMenu.d.ts.map +1 -0
  159. package/session/TranscriptExportMenu.js +26 -0
  160. package/session/TranscriptExportMenu.js.map +1 -0
  161. package/session/index.d.ts +4 -0
  162. package/session/index.d.ts.map +1 -1
  163. package/session/index.js +2 -0
  164. package/session/index.js.map +1 -1
  165. package/session/run-config.d.ts +9 -0
  166. package/session/run-config.d.ts.map +1 -1
  167. package/session/run-config.js +5 -0
  168. package/session/run-config.js.map +1 -1
  169. package/session/useExportTranscript.d.ts +44 -0
  170. package/session/useExportTranscript.d.ts.map +1 -0
  171. package/session/useExportTranscript.js +109 -0
  172. package/session/useExportTranscript.js.map +1 -0
  173. package/session/useNewSessionFlow.d.ts +11 -0
  174. package/session/useNewSessionFlow.d.ts.map +1 -1
  175. package/session/useNewSessionFlow.js +20 -6
  176. package/session/useNewSessionFlow.js.map +1 -1
  177. package/session/useSessionConversation.d.ts +12 -1
  178. package/session/useSessionConversation.d.ts.map +1 -1
  179. package/session/useSessionConversation.js +21 -42
  180. package/session/useSessionConversation.js.map +1 -1
  181. package/session/useSessionExecutions.d.ts +2 -14
  182. package/session/useSessionExecutions.d.ts.map +1 -1
  183. package/session/useSessionExecutions.js +4 -26
  184. package/session/useSessionExecutions.js.map +1 -1
  185. package/session/useSessionPageFlow.d.ts +23 -10
  186. package/session/useSessionPageFlow.d.ts.map +1 -1
  187. package/session/useSessionPageFlow.js +75 -19
  188. package/session/useSessionPageFlow.js.map +1 -1
  189. package/session/useUpdateSession.d.ts +18 -24
  190. package/session/useUpdateSession.d.ts.map +1 -1
  191. package/session/useUpdateSession.js +18 -24
  192. package/session/useUpdateSession.js.map +1 -1
  193. package/settings/MemorySection.d.ts +12 -0
  194. package/settings/MemorySection.d.ts.map +1 -0
  195. package/settings/MemorySection.js +21 -0
  196. package/settings/MemorySection.js.map +1 -0
  197. package/settings/index.d.ts +1 -0
  198. package/settings/index.d.ts.map +1 -1
  199. package/settings/index.js +1 -0
  200. package/settings/index.js.map +1 -1
  201. package/settings/settings-nav.d.ts.map +1 -1
  202. package/settings/settings-nav.js +2 -1
  203. package/settings/settings-nav.js.map +1 -1
  204. package/src/__tests__/public-api.test.ts +21 -0
  205. package/src/agent/AgentDetailView.tsx +2 -2
  206. package/src/agent/index.ts +0 -2
  207. package/src/agent/useUpdateAgent.ts +3 -3
  208. package/src/agent-instance/AgentInstanceDetailPanel.tsx +5 -7
  209. package/src/agent-instance/__tests__/AgentInstanceDetailPanel.test.tsx +75 -0
  210. package/src/agent-instance/useUpdateAgentInstance.ts +1 -1
  211. package/src/channel/AgentChannelsPanel.tsx +26 -1
  212. package/src/channel/ChannelRunConfigDialog.tsx +351 -0
  213. package/src/channel/__tests__/ChannelRunConfigDialog.test.tsx +210 -0
  214. package/src/channel/index.ts +2 -0
  215. package/src/channel/useSaveAgentChannel.ts +6 -3
  216. package/src/channel-app/ChannelAppDetailPanel.tsx +9 -9
  217. package/src/channel-app/__tests__/channelAppWhatsApp.test.tsx +2 -0
  218. package/src/channel-app/__tests__/channelAppWipeSafety.test.tsx +87 -0
  219. package/src/composer/ComposerToolbar.tsx +67 -0
  220. package/src/composer/SessionComposer.tsx +49 -3
  221. package/src/composer/__tests__/ComposerToolbar-autoApprove.test.tsx +80 -0
  222. package/src/composer/__tests__/SessionComposer-thinkingMode.test.tsx +176 -0
  223. package/src/composer/index.ts +1 -0
  224. package/src/cursor-accounts/CursorAccountsConsole.tsx +40 -5
  225. package/src/cursor-accounts/__tests__/CursorAccountsConsole.test.tsx +32 -0
  226. package/src/cursor-accounts/__tests__/cursor-account-coverage.test.ts +58 -1
  227. package/src/cursor-accounts/cursor-account-coverage.ts +55 -0
  228. package/src/execution/MessageThread.tsx +8 -11
  229. package/src/execution/useCreateAgentExecution.ts +19 -0
  230. package/src/execution/useFileChangeContent.ts +5 -12
  231. package/src/identity-account/AccountPreferencesPanel.tsx +154 -68
  232. package/src/identity-account/__tests__/AccountPreferencesPanel.test.tsx +36 -2
  233. package/src/identity-provider/IdentityProviderDetailPanel.tsx +18 -15
  234. package/src/identity-provider/__tests__/IdentityProviderDetailPanel.test.tsx +80 -0
  235. package/src/index.ts +36 -2
  236. package/src/internal/download.ts +29 -0
  237. package/src/library/useExportResource.ts +3 -19
  238. package/src/mcp-server/McpServerDetailView.tsx +2 -2
  239. package/src/mcp-server/index.ts +0 -2
  240. package/src/mcp-server/internal/definitionDrift.ts +22 -20
  241. package/src/mcp-server/useUpdateMcpServer.ts +3 -3
  242. package/src/memory/MemoryListPanel.tsx +532 -0
  243. package/src/memory/__tests__/MemoryListPanel.test.tsx +259 -0
  244. package/src/memory/__tests__/memoryHooks.test.tsx +220 -0
  245. package/src/memory/index.ts +19 -0
  246. package/src/memory/memoryGroups.ts +64 -0
  247. package/src/memory/useConfirmMemory.ts +62 -0
  248. package/src/memory/useDeleteMemory.ts +61 -0
  249. package/src/memory/useMemories.ts +66 -0
  250. package/src/memory/useRejectMemory.ts +65 -0
  251. package/src/memory/useUpdateMemoryContent.ts +67 -0
  252. package/src/models/ModelSelector.tsx +94 -1
  253. package/src/models/index.ts +2 -0
  254. package/src/models/registry.ts +29 -0
  255. package/src/models/thinking-mode.ts +48 -0
  256. package/src/oauth-app/OAuthAppDetailPanel.tsx +23 -21
  257. package/src/oauth-app/__tests__/OAuthAppDetailPanel.test.tsx +94 -0
  258. package/src/platform-client/PlatformClientDetailPanel.tsx +14 -13
  259. package/src/platform-client/__tests__/PlatformClientDetailPanel.test.tsx +82 -0
  260. package/src/schedule/ScheduleDetailView.tsx +29 -4
  261. package/src/schedule/ScheduleForm.tsx +14 -1
  262. package/src/session/NewSessionViewer.tsx +15 -1
  263. package/src/session/SessionViewer.tsx +48 -49
  264. package/src/session/TranscriptExportMenu.tsx +78 -0
  265. package/src/session/__tests__/SessionViewer-autoApproveToggle.test.tsx +178 -0
  266. package/src/session/__tests__/SessionViewer-transcriptExport.test.tsx +151 -0
  267. package/src/session/__tests__/TranscriptExportMenu.test.tsx +97 -0
  268. package/src/session/__tests__/useExportTranscript.test.tsx +187 -0
  269. package/src/session/__tests__/useNewSessionFlow.test.tsx +33 -0
  270. package/src/session/__tests__/useSessionPageFlow.autoApprove.test.tsx +176 -2
  271. package/src/session/index.ts +9 -0
  272. package/src/session/run-config.ts +16 -0
  273. package/src/session/useExportTranscript.ts +171 -0
  274. package/src/session/useNewSessionFlow.ts +34 -7
  275. package/src/session/useSessionConversation.ts +42 -56
  276. package/src/session/useSessionExecutions.ts +5 -26
  277. package/src/session/useSessionPageFlow.ts +98 -32
  278. package/src/session/useUpdateSession.ts +18 -24
  279. package/src/settings/MemorySection.tsx +45 -0
  280. package/src/settings/index.ts +1 -0
  281. package/src/settings/settings-nav.ts +2 -0
  282. package/src/usage/useExportCSV.ts +2 -14
  283. package/src/workflow/ApprovalFormBuilder.tsx +20 -5
  284. package/src/workflow/WorkflowDetailView.tsx +2 -2
  285. package/src/workflow/__tests__/WorkflowInstanceDetailPanel.test.tsx +83 -0
  286. package/src/workflow/index.ts +0 -2
  287. package/src/workflow/instance/WorkflowInstanceDetailPanel.tsx +6 -7
  288. package/src/workflow/useUpdateWorkflow.ts +3 -3
  289. package/styles.css +1 -1
  290. package/usage/useExportCSV.d.ts.map +1 -1
  291. package/usage/useExportCSV.js +2 -13
  292. package/usage/useExportCSV.js.map +1 -1
  293. package/workflow/ApprovalFormBuilder.d.ts.map +1 -1
  294. package/workflow/ApprovalFormBuilder.js +10 -8
  295. package/workflow/ApprovalFormBuilder.js.map +1 -1
  296. package/workflow/WorkflowDetailView.js +2 -2
  297. package/workflow/WorkflowDetailView.js.map +1 -1
  298. package/workflow/index.d.ts +0 -1
  299. package/workflow/index.d.ts.map +1 -1
  300. package/workflow/index.js +0 -1
  301. package/workflow/index.js.map +1 -1
  302. package/workflow/instance/WorkflowInstanceDetailPanel.d.ts.map +1 -1
  303. package/workflow/instance/WorkflowInstanceDetailPanel.js +6 -7
  304. package/workflow/instance/WorkflowInstanceDetailPanel.js.map +1 -1
  305. package/workflow/useUpdateWorkflow.d.ts +3 -3
  306. package/workflow/useUpdateWorkflow.js +3 -3
  307. package/agent/internal/agentToInput.d.ts +0 -15
  308. package/agent/internal/agentToInput.d.ts.map +0 -1
  309. package/agent/internal/agentToInput.js +0 -84
  310. package/agent/internal/agentToInput.js.map +0 -1
  311. package/mcp-server/internal/mcpServerToInput.d.ts +0 -12
  312. package/mcp-server/internal/mcpServerToInput.d.ts.map +0 -1
  313. package/mcp-server/internal/mcpServerToInput.js +0 -84
  314. package/mcp-server/internal/mcpServerToInput.js.map +0 -1
  315. package/session/session-spec-converters.d.ts +0 -24
  316. package/session/session-spec-converters.d.ts.map +0 -1
  317. package/session/session-spec-converters.js +0 -72
  318. package/session/session-spec-converters.js.map +0 -1
  319. package/src/agent/internal/__tests__/agentToInput.test.ts +0 -145
  320. package/src/agent/internal/agentToInput.ts +0 -102
  321. package/src/mcp-server/__tests__/mcpServerToInput.test.ts +0 -201
  322. package/src/mcp-server/internal/mcpServerToInput.ts +0 -98
  323. package/src/session/__tests__/session-spec-converters.test.ts +0 -183
  324. package/src/session/session-spec-converters.ts +0 -86
  325. package/src/workflow/internal/workflowToInput.ts +0 -96
  326. package/workflow/internal/workflowToInput.d.ts +0 -12
  327. package/workflow/internal/workflowToInput.d.ts.map +0 -1
  328. package/workflow/internal/workflowToInput.js +0 -73
  329. package/workflow/internal/workflowToInput.js.map +0 -1
@@ -0,0 +1,46 @@
1
+ "use client";
2
+ import { useCallback, useState } from "react";
3
+ import { useStigmer } from "../hooks.js";
4
+ import { toError } from "../internal/toError.js";
5
+ /**
6
+ * Behavior hook that wraps `memory.reject()`. A rejected memory is never
7
+ * recalled; the record is kept as an audit trail until deleted.
8
+ *
9
+ * Rejecting an already-rejected memory succeeds and changes nothing.
10
+ * Rejecting a confirmed memory fails with FAILED_PRECONDITION —
11
+ * deleting a confirmed memory is how it is revoked.
12
+ *
13
+ * Rejection is deliberately one click on every surface, with no
14
+ * confirmation dialog (DD-005 D4): expensive review teaches users to
15
+ * ignore the proposal queue.
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * const { rejectMemory, isRejecting } = useRejectMemory();
20
+ *
21
+ * await rejectMemory(memory.metadata?.id ?? "");
22
+ * refetch(); // refresh the list after the decision
23
+ * ```
24
+ */
25
+ export function useRejectMemory() {
26
+ const stigmer = useStigmer();
27
+ const [isRejecting, setIsRejecting] = useState(false);
28
+ const [error, setError] = useState(null);
29
+ const clearError = useCallback(() => setError(null), []);
30
+ const rejectMemory = useCallback(async (id) => {
31
+ setIsRejecting(true);
32
+ setError(null);
33
+ try {
34
+ return await stigmer.memory.reject(id);
35
+ }
36
+ catch (err) {
37
+ setError(toError(err));
38
+ throw err;
39
+ }
40
+ finally {
41
+ setIsRejecting(false);
42
+ }
43
+ }, [stigmer]);
44
+ return { rejectMemory, isRejecting, error, clearError };
45
+ }
46
+ //# sourceMappingURL=useRejectMemory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRejectMemory.js","sourceRoot":"","sources":["../../src/memory/useRejectMemory.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAcjD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAEzD,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,EAAU,EAAmB,EAAE;QACpC,cAAc,CAAC,IAAI,CAAC,CAAC;QACrB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YACvB,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,cAAc,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC1D,CAAC"}
@@ -0,0 +1,32 @@
1
+ import type { Memory } from "@stigmer/protos/ai/stigmer/agentic/memory/v1/api_pb";
2
+ /** Return value of {@link useUpdateMemoryContent}. */
3
+ export interface UseUpdateMemoryContentReturn {
4
+ /** Replace a memory's fact text. Resolves with the updated record. */
5
+ readonly updateContent: (memory: Memory, content: string) => Promise<Memory>;
6
+ /** `true` while the update request is in flight. */
7
+ readonly isUpdating: boolean;
8
+ /** Error from the last failed update, or `null` when healthy. */
9
+ readonly error: Error | null;
10
+ /** Reset `error` to `null`. */
11
+ readonly clearError: () => void;
12
+ }
13
+ /**
14
+ * Behavior hook that edits a memory's fact text — the one field the
15
+ * subject owns after capture (DD-004).
16
+ *
17
+ * The update RPC replaces the entire spec, so the loaded record is
18
+ * mapped through the generated `toMemoryUpdateInput` and only `content`
19
+ * is overridden — the wipe-safe editing rule. Subject and provenance
20
+ * ride along verbatim (they are update-immutable server-side), and the
21
+ * consent lifecycle is never touched by updates.
22
+ *
23
+ * @example
24
+ * ```tsx
25
+ * const { updateContent, isUpdating } = useUpdateMemoryContent();
26
+ *
27
+ * await updateContent(memory, editedText);
28
+ * refetch(); // refresh the list after the edit
29
+ * ```
30
+ */
31
+ export declare function useUpdateMemoryContent(): UseUpdateMemoryContentReturn;
32
+ //# sourceMappingURL=useUpdateMemoryContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUpdateMemoryContent.d.ts","sourceRoot":"","sources":["../../src/memory/useUpdateMemoryContent.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qDAAqD,CAAC;AAKlF,sDAAsD;AACtD,MAAM,WAAW,4BAA4B;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7E,oDAAoD;IACpD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,+BAA+B;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,IAAI,4BAA4B,CA4BrE"}
@@ -0,0 +1,48 @@
1
+ "use client";
2
+ import { useCallback, useState } from "react";
3
+ import { toMemoryUpdateInput } from "@stigmer/sdk";
4
+ import { useStigmer } from "../hooks.js";
5
+ import { toError } from "../internal/toError.js";
6
+ /**
7
+ * Behavior hook that edits a memory's fact text — the one field the
8
+ * subject owns after capture (DD-004).
9
+ *
10
+ * The update RPC replaces the entire spec, so the loaded record is
11
+ * mapped through the generated `toMemoryUpdateInput` and only `content`
12
+ * is overridden — the wipe-safe editing rule. Subject and provenance
13
+ * ride along verbatim (they are update-immutable server-side), and the
14
+ * consent lifecycle is never touched by updates.
15
+ *
16
+ * @example
17
+ * ```tsx
18
+ * const { updateContent, isUpdating } = useUpdateMemoryContent();
19
+ *
20
+ * await updateContent(memory, editedText);
21
+ * refetch(); // refresh the list after the edit
22
+ * ```
23
+ */
24
+ export function useUpdateMemoryContent() {
25
+ const stigmer = useStigmer();
26
+ const [isUpdating, setIsUpdating] = useState(false);
27
+ const [error, setError] = useState(null);
28
+ const clearError = useCallback(() => setError(null), []);
29
+ const updateContent = useCallback(async (memory, content) => {
30
+ setIsUpdating(true);
31
+ setError(null);
32
+ try {
33
+ return await stigmer.memory.update({
34
+ ...toMemoryUpdateInput(memory),
35
+ content,
36
+ });
37
+ }
38
+ catch (err) {
39
+ setError(toError(err));
40
+ throw err;
41
+ }
42
+ finally {
43
+ setIsUpdating(false);
44
+ }
45
+ }, [stigmer]);
46
+ return { updateContent, isUpdating, error, clearError };
47
+ }
48
+ //# sourceMappingURL=useUpdateMemoryContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUpdateMemoryContent.js","sourceRoot":"","sources":["../../src/memory/useUpdateMemoryContent.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAcjD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAEzD,MAAM,aAAa,GAAG,WAAW,CAC/B,KAAK,EAAE,MAAc,EAAE,OAAe,EAAmB,EAAE;QACzD,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;gBACjC,GAAG,mBAAmB,CAAC,MAAM,CAAC;gBAC9B,OAAO;aACR,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YACvB,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AAC1D,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { type HarnessOption } from "./harness.js";
2
2
  import { type ServiceTierOption } from "./service-tier.js";
3
+ import type { ThinkingModeOption } from "./thinking-mode.js";
3
4
  /** Props for {@link ModelSelector}. */
4
5
  export interface ModelSelectorProps {
5
6
  /** Currently selected model ID. */
@@ -70,6 +71,29 @@ export interface ModelSelectorProps {
70
71
  * (#357, refused at create time).
71
72
  */
72
73
  readonly onServiceTierChange?: (tier: ServiceTierOption) => void;
74
+ /**
75
+ * Current thinking mode for the selected model (stigmer/stigmer#772).
76
+ * Defaults to "disabled". Only meaningful together with
77
+ * {@link onThinkingModeChange}.
78
+ */
79
+ readonly thinkingMode?: ThinkingModeOption;
80
+ /**
81
+ * Called when the user toggles extended reasoning. Providing this enables
82
+ * the "Thinking" switch as a sibling of the fast-tier switch in the
83
+ * popover's options area, which renders ONLY while the selected model is
84
+ * a cursor-harness model declaring the thinking capability
85
+ * ({@link ModelInfo.thinkingCapable}) — no dead controls, and v1 honors
86
+ * the selection on the cursor harness only.
87
+ *
88
+ * The same persistence rule as the fast tier: an active thinking mode
89
+ * survives switches between thinking-capable models (trigger badge +
90
+ * options switch keep it visible) and resets to "disabled" only when the
91
+ * new model lacks the capability — an unsupported combination can never
92
+ * be submitted (#772, refused at create time). Unlike fast, thinking
93
+ * bills at base per-token rates; enabled turns consume more output
94
+ * (reasoning) tokens.
95
+ */
96
+ readonly onThinkingModeChange?: (mode: ThinkingModeOption) => void;
73
97
  /**
74
98
  * @deprecated Use {@link onHarnessChange} instead.
75
99
  */
@@ -99,6 +123,14 @@ export interface ModelSelectorProps {
99
123
  * switch keep the state honest — and resets only for models with no fast
100
124
  * variant, where it would be refused at create time.
101
125
  *
126
+ * **Thinking mode (#772).** The same options-area pattern for the second
127
+ * variant dimension: opting in via
128
+ * {@link ModelSelectorProps.onThinkingModeChange} renders a "Thinking"
129
+ * switch for cursor-harness models declaring the thinking capability.
130
+ * Capability-gated rather than priced-variant-gated — thinking bills at
131
+ * base per-token rates and costs more only through extra reasoning
132
+ * (output) tokens. Persistence and reset rules mirror the fast tier's.
133
+ *
102
134
  * @example
103
135
  * ```tsx
104
136
  * <ModelSelector
@@ -109,5 +141,5 @@ export interface ModelSelectorProps {
109
141
  * />
110
142
  * ```
111
143
  */
112
- export declare function ModelSelector({ value, onValueChange, harness, initialHarness, onHarnessChange, onHarnessResolved, availableHarnesses, curatedModels, groupBy, showSpeedBadge, showDescriptions, compact, className, disabled, placeholderLabel, serviceTier, onServiceTierChange, }: ModelSelectorProps): import("react/jsx-runtime").JSX.Element;
144
+ export declare function ModelSelector({ value, onValueChange, harness, initialHarness, onHarnessChange, onHarnessResolved, availableHarnesses, curatedModels, groupBy, showSpeedBadge, showDescriptions, compact, className, disabled, placeholderLabel, serviceTier, onServiceTierChange, thinkingMode, onThinkingModeChange, }: ModelSelectorProps): import("react/jsx-runtime").JSX.Element;
113
145
  //# sourceMappingURL=ModelSelector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModelSelector.d.ts","sourceRoot":"","sources":["../../src/models/ModelSelector.tsx"],"names":[],"mappings":"AASA,OAAO,EAAiC,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAe9E,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,mCAAmC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;IACxC,wDAAwD;IACxD,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5D;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACvD,oEAAoE;IACpE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,qEAAqE;IACrE,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;IAChD,4CAA4C;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,sEAAsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;OAOG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IACzC;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAEjE;;OAEG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;CAC/D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,aAAa,EACb,OAAO,EACP,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,OAAoB,EACpB,cAAqB,EACrB,gBAAuB,EACvB,OAAe,EACf,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,WAAwB,EACxB,mBAAmB,GACpB,EAAE,kBAAkB,2CAqbpB"}
1
+ {"version":3,"file":"ModelSelector.d.ts","sourceRoot":"","sources":["../../src/models/ModelSelector.tsx"],"names":[],"mappings":"AASA,OAAO,EAAiC,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AA0B7D,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,mCAAmC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;IACxC,wDAAwD;IACxD,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5D;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACvD,oEAAoE;IACpE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,qEAAqE;IACrE,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;IAChD,4CAA4C;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,sEAAsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;OAOG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IACzC;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAEjE;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAC3C;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAEnE;;OAEG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;CAC/D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,aAAa,EACb,OAAO,EACP,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,OAAoB,EACpB,cAAqB,EACrB,gBAAuB,EACvB,OAAe,EACf,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,WAAwB,EACxB,mBAAmB,EACnB,YAAyB,EACzB,oBAAoB,GACrB,EAAE,kBAAkB,2CAoepB"}
@@ -19,6 +19,16 @@ const SPEED_TIER_LABEL = {
19
19
  balanced: "Balanced",
20
20
  slow: "Powerful",
21
21
  };
22
+ /**
23
+ * Whether the thinking switch may act on this model (stigmer/stigmer#772):
24
+ * the registry declares the capability AND the model is cursor-harness —
25
+ * the only harness with a thinking translation in v1. Native models
26
+ * truthfully declare the capability too, but selecting it there would be
27
+ * refused at create time, so the control never renders for them.
28
+ */
29
+ function supportsThinking(model) {
30
+ return model.harness === "cursor" && model.thinkingCapable === true;
31
+ }
22
32
  /**
23
33
  * Combined harness + model picker with a compact trigger button.
24
34
  *
@@ -43,6 +53,14 @@ const SPEED_TIER_LABEL = {
43
53
  * switch keep the state honest — and resets only for models with no fast
44
54
  * variant, where it would be refused at create time.
45
55
  *
56
+ * **Thinking mode (#772).** The same options-area pattern for the second
57
+ * variant dimension: opting in via
58
+ * {@link ModelSelectorProps.onThinkingModeChange} renders a "Thinking"
59
+ * switch for cursor-harness models declaring the thinking capability.
60
+ * Capability-gated rather than priced-variant-gated — thinking bills at
61
+ * base per-token rates and costs more only through extra reasoning
62
+ * (output) tokens. Persistence and reset rules mirror the fast tier's.
63
+ *
46
64
  * @example
47
65
  * ```tsx
48
66
  * <ModelSelector
@@ -53,7 +71,7 @@ const SPEED_TIER_LABEL = {
53
71
  * />
54
72
  * ```
55
73
  */
56
- export function ModelSelector({ value, onValueChange, harness, initialHarness, onHarnessChange, onHarnessResolved, availableHarnesses, curatedModels, groupBy = "provider", showSpeedBadge = true, showDescriptions = true, compact = false, className, disabled, placeholderLabel, serviceTier = "standard", onServiceTierChange, }) {
74
+ export function ModelSelector({ value, onValueChange, harness, initialHarness, onHarnessChange, onHarnessResolved, availableHarnesses, curatedModels, groupBy = "provider", showSpeedBadge = true, showDescriptions = true, compact = false, className, disabled, placeholderLabel, serviceTier = "standard", onServiceTierChange, thinkingMode = "disabled", onThinkingModeChange, }) {
57
75
  const portalContainer = useStigmerPortalContainer();
58
76
  const isHarnessLocked = harness !== undefined;
59
77
  const [internalHarness, setInternalHarness] = useState(harness ?? initialHarness ?? "native");
@@ -153,8 +171,16 @@ export function ModelSelector({ value, onValueChange, harness, initialHarness, o
153
171
  && !model.serviceTiers.includes(FAST_SERVICE_TIER)) {
154
172
  onServiceTierChange("standard");
155
173
  }
174
+ // The identical persistence rule for the thinking mode (#772):
175
+ // survives between thinking-capable cursor models, resets only
176
+ // where the selection would be refused at create time.
177
+ if (thinkingMode === "enabled"
178
+ && onThinkingModeChange
179
+ && !supportsThinking(model)) {
180
+ onThinkingModeChange("disabled");
181
+ }
156
182
  setOpen(false);
157
- }, [onValueChange, serviceTier, onServiceTierChange]);
183
+ }, [onValueChange, serviceTier, onServiceTierChange, thinkingMode, onThinkingModeChange]);
158
184
  const scrollHighlightIntoView = useCallback((idx) => {
159
185
  const container = listRef.current;
160
186
  if (!container)
@@ -205,6 +231,13 @@ export function ModelSelector({ value, onValueChange, harness, initialHarness, o
205
231
  // fast AND the selected model actually prices the variant.
206
232
  const fastActive = serviceTier === "fast"
207
233
  && (selectedModel?.serviceTiers.includes(FAST_SERVICE_TIER) ?? false);
234
+ // The thinking switch renders under the same no-dead-controls rule,
235
+ // gated on the capability instead of a priced variant (#772).
236
+ const showThinkingToggle = onThinkingModeChange !== undefined
237
+ && selectedModel !== undefined
238
+ && supportsThinking(selectedModel);
239
+ const thinkingActive = thinkingMode === "enabled"
240
+ && (selectedModel !== undefined && supportsThinking(selectedModel));
208
241
  const usingPlaceholder = !value && placeholderLabel !== undefined;
209
242
  const triggerLabel = usingPlaceholder
210
243
  ? placeholderLabel
@@ -212,7 +245,7 @@ export function ModelSelector({ value, onValueChange, harness, initialHarness, o
212
245
  const triggerHarness = !isHarnessLocked && !usingPlaceholder
213
246
  ? HARNESS_META[activeHarness].label
214
247
  : undefined;
215
- return (_jsxs(Popover.Root, { open: open, onOpenChange: setOpen, children: [_jsxs(Popover.Trigger, { disabled: disabled, className: cn("stg:inline-flex stg:items-center stg:gap-1.5 stg:rounded-md stg:border stg:border-border", "stg:bg-background stg:px-2.5 stg:py-1.5 stg:text-xs stg:text-foreground", "stg:hover:bg-accent-hover stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", "stg:disabled:pointer-events-none stg:disabled:opacity-50", "stg:transition-colors stg:max-w-[20rem] stg:max-sm:max-w-[12rem]", className), children: [triggerHarness && (_jsx("span", { className: "stg:shrink-0 stg:text-muted-foreground", children: triggerHarness })), triggerHarness && (_jsx("span", { className: "stg:shrink-0 stg:text-border", "aria-hidden": true, children: "\u00B7" })), _jsx("span", { className: "stg:truncate", children: triggerLabel }), fastActive && (_jsxs("span", { className: cn("stg:inline-flex stg:shrink-0 stg:items-center stg:gap-0.5 stg:rounded-full stg:border stg:border-primary stg:px-1.5 stg:py-px", "stg:text-[0.6rem] stg:font-medium stg:uppercase stg:tracking-wider stg:text-primary"), children: [_jsx(BoltIcon, {}), "Fast"] })), _jsx(ChevronIcon, {})] }), _jsx(Popover.Portal, { container: portalContainer, children: _jsx(Popover.Positioner, { sideOffset: 4, children: _jsxs(Popover.Popup, { role: "dialog", "aria-label": "Model selector", className: cn("stg:z-popover stg:w-72 stg:rounded-lg stg:border stg:border-border stg:bg-popover stg:shadow-md", "stg:text-popover-foreground"), children: [_jsxs("div", { className: "stg:relative stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Harness" }), _jsxs("button", { type: "button", "aria-haspopup": "listbox", "aria-expanded": harnessOpen, "aria-label": "Select harness", disabled: isHarnessLocked, className: cn("stg:inline-flex stg:items-center stg:gap-1.5 stg:rounded-md stg:border stg:border-border", "stg:bg-background stg:px-2.5 stg:py-1.5 stg:text-xs stg:text-foreground", "stg:transition-colors", "stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", isHarnessLocked
248
+ return (_jsxs(Popover.Root, { open: open, onOpenChange: setOpen, children: [_jsxs(Popover.Trigger, { disabled: disabled, className: cn("stg:inline-flex stg:items-center stg:gap-1.5 stg:rounded-md stg:border stg:border-border", "stg:bg-background stg:px-2.5 stg:py-1.5 stg:text-xs stg:text-foreground", "stg:hover:bg-accent-hover stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", "stg:disabled:pointer-events-none stg:disabled:opacity-50", "stg:transition-colors stg:max-w-[20rem] stg:max-sm:max-w-[12rem]", className), children: [triggerHarness && (_jsx("span", { className: "stg:shrink-0 stg:text-muted-foreground", children: triggerHarness })), triggerHarness && (_jsx("span", { className: "stg:shrink-0 stg:text-border", "aria-hidden": true, children: "\u00B7" })), _jsx("span", { className: "stg:truncate", children: triggerLabel }), fastActive && (_jsxs("span", { className: cn("stg:inline-flex stg:shrink-0 stg:items-center stg:gap-0.5 stg:rounded-full stg:border stg:border-primary stg:px-1.5 stg:py-px", "stg:text-[0.6rem] stg:font-medium stg:uppercase stg:tracking-wider stg:text-primary"), children: [_jsx(BoltIcon, {}), "Fast"] })), thinkingActive && (_jsx("span", { className: cn("stg:inline-flex stg:shrink-0 stg:items-center stg:gap-0.5 stg:rounded-full stg:border stg:border-primary stg:px-1.5 stg:py-px", "stg:text-[0.6rem] stg:font-medium stg:uppercase stg:tracking-wider stg:text-primary"), children: "Thinking" })), _jsx(ChevronIcon, {})] }), _jsx(Popover.Portal, { container: portalContainer, children: _jsx(Popover.Positioner, { sideOffset: 4, children: _jsxs(Popover.Popup, { role: "dialog", "aria-label": "Model selector", className: cn("stg:z-popover stg:w-72 stg:rounded-lg stg:border stg:border-border stg:bg-popover stg:shadow-md", "stg:text-popover-foreground"), children: [_jsxs("div", { className: "stg:relative stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Harness" }), _jsxs("button", { type: "button", "aria-haspopup": "listbox", "aria-expanded": harnessOpen, "aria-label": "Select harness", disabled: isHarnessLocked, className: cn("stg:inline-flex stg:items-center stg:gap-1.5 stg:rounded-md stg:border stg:border-border", "stg:bg-background stg:px-2.5 stg:py-1.5 stg:text-xs stg:text-foreground", "stg:transition-colors", "stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", isHarnessLocked
216
249
  ? "stg:cursor-not-allowed stg:opacity-50"
217
250
  : "stg:hover:bg-accent-hover"), onClick: () => {
218
251
  if (!isHarnessLocked)
@@ -228,7 +261,7 @@ export function ModelSelector({ value, onValueChange, harness, initialHarness, o
228
261
  handleHarnessChange(h);
229
262
  setHarnessOpen(false);
230
263
  }, children: [_jsx("span", { className: "stg:flex-1 stg:text-left", children: HARNESS_META[h].label }), isActive && _jsx(CheckIcon, { className: "stg:shrink-0 stg:text-primary" })] }, h));
231
- }) }))] }), showServiceTierToggle && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsxs("div", { className: "stg:flex stg:flex-col", children: [_jsx("span", { className: "stg:text-xs stg:text-foreground", children: "Fast tier" }), _jsx("span", { className: "stg:text-[0.65rem] stg:text-muted-foreground", children: "Faster responses at higher per-token rates" })] }), _jsx(Switch, { checked: fastActive, onCheckedChange: (next) => onServiceTierChange?.(next ? "fast" : "standard"), "aria-label": "Fast tier" })] })), _jsx("div", { className: "stg:border-b stg:border-border stg:px-3 stg:py-1.5", children: _jsx("input", { ref: searchRef, role: "searchbox", "aria-label": "Search models", placeholder: "Search models\u2026", value: searchQuery, onChange: (e) => setSearchQuery(e.target.value), onKeyDown: handleKeyDown, className: cn("stg:w-full stg:bg-transparent stg:text-xs stg:text-foreground stg:placeholder:text-muted-foreground", "stg:outline-none") }) }), _jsxs("div", { ref: listRef, role: "listbox", "aria-label": "Available models", className: "stg:max-h-72 stg:overflow-y-auto stg:p-1", children: [visibleModels.length === 0 && isLoading && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-center stg:gap-2 stg:px-2 stg:py-3", children: [_jsx("div", { className: "stg:size-3 stg:animate-spin stg:rounded-full stg:border stg:border-muted stg:border-t-primary" }), _jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Loading models\u2026" })] })), visibleModels.length === 0 && !isLoading && error != null && (_jsxs("div", { className: "stg:flex stg:flex-col stg:items-center stg:gap-1.5 stg:px-2 stg:py-3", children: [_jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Failed to load models" }), _jsx("button", { type: "button", className: cn("stg:rounded-md stg:border stg:border-border stg:bg-background stg:px-2.5 stg:py-1 stg:text-xs stg:text-foreground", "stg:hover:bg-accent-hover stg:transition-colors stg:cursor-pointer"), onClick: refetch, children: "Retry" })] })), visibleModels.length === 0 && !isLoading && error == null && (_jsx("div", { className: "stg:px-2 stg:py-3 stg:text-center stg:text-xs stg:text-muted-foreground", children: "No models found" })), groupedModels ? (Array.from(groupedModels.entries()).map(([group, groupModels]) => (_jsxs("div", { children: [_jsx("div", { className: "stg:px-2 stg:pb-0.5 stg:pt-2 stg:text-[0.6rem] stg:font-medium stg:uppercase stg:tracking-wider stg:text-muted-foreground", children: group }), groupModels.map((model) => (_jsx(ModelRow, { model: model, isSelected: model.modelId === selectedModel?.modelId, showDescription: false, showSpeedBadge: showSpeedBadge, onClick: () => selectModel(model) }, model.modelId)))] }, group)))) : (visibleModels.map((model, idx) => (_jsx(ModelRow, { model: model, isSelected: model.modelId === selectedModel?.modelId, isHighlighted: idx === highlightIdx, showDescription: showDescriptions && !compact && !isSearching && !showAll, showSpeedBadge: showSpeedBadge, onClick: () => selectModel(model), onMouseEnter: () => setHighlightIdx(idx) }, model.modelId)))), showShowAllButton && (_jsx("button", { type: "button", className: cn("stg:mt-1 stg:flex stg:w-full stg:items-center stg:justify-center stg:rounded-md stg:border stg:border-dashed stg:border-border", "stg:px-2 stg:py-1.5 stg:text-xs stg:text-muted-foreground", "stg:hover:bg-accent-hover stg:hover:text-foreground stg:transition-colors stg:cursor-pointer"), onClick: () => setShowAll(true), children: "Show all models" }))] })] }) }) })] }));
264
+ }) }))] }), showServiceTierToggle && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsxs("div", { className: "stg:flex stg:flex-col", children: [_jsx("span", { className: "stg:text-xs stg:text-foreground", children: "Fast tier" }), _jsx("span", { className: "stg:text-[0.65rem] stg:text-muted-foreground", children: "Faster responses at higher per-token rates" })] }), _jsx(Switch, { checked: fastActive, onCheckedChange: (next) => onServiceTierChange?.(next ? "fast" : "standard"), "aria-label": "Fast tier" })] })), showThinkingToggle && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-between stg:border-b stg:border-border stg:px-3 stg:py-2", children: [_jsxs("div", { className: "stg:flex stg:flex-col", children: [_jsx("span", { className: "stg:text-xs stg:text-foreground", children: "Thinking" }), _jsx("span", { className: "stg:text-[0.65rem] stg:text-muted-foreground", children: "Extended reasoning; uses more output tokens" })] }), _jsx(Switch, { checked: thinkingActive, onCheckedChange: (next) => onThinkingModeChange?.(next ? "enabled" : "disabled"), "aria-label": "Thinking" })] })), _jsx("div", { className: "stg:border-b stg:border-border stg:px-3 stg:py-1.5", children: _jsx("input", { ref: searchRef, role: "searchbox", "aria-label": "Search models", placeholder: "Search models\u2026", value: searchQuery, onChange: (e) => setSearchQuery(e.target.value), onKeyDown: handleKeyDown, className: cn("stg:w-full stg:bg-transparent stg:text-xs stg:text-foreground stg:placeholder:text-muted-foreground", "stg:outline-none") }) }), _jsxs("div", { ref: listRef, role: "listbox", "aria-label": "Available models", className: "stg:max-h-72 stg:overflow-y-auto stg:p-1", children: [visibleModels.length === 0 && isLoading && (_jsxs("div", { className: "stg:flex stg:items-center stg:justify-center stg:gap-2 stg:px-2 stg:py-3", children: [_jsx("div", { className: "stg:size-3 stg:animate-spin stg:rounded-full stg:border stg:border-muted stg:border-t-primary" }), _jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Loading models\u2026" })] })), visibleModels.length === 0 && !isLoading && error != null && (_jsxs("div", { className: "stg:flex stg:flex-col stg:items-center stg:gap-1.5 stg:px-2 stg:py-3", children: [_jsx("span", { className: "stg:text-xs stg:text-muted-foreground", children: "Failed to load models" }), _jsx("button", { type: "button", className: cn("stg:rounded-md stg:border stg:border-border stg:bg-background stg:px-2.5 stg:py-1 stg:text-xs stg:text-foreground", "stg:hover:bg-accent-hover stg:transition-colors stg:cursor-pointer"), onClick: refetch, children: "Retry" })] })), visibleModels.length === 0 && !isLoading && error == null && (_jsx("div", { className: "stg:px-2 stg:py-3 stg:text-center stg:text-xs stg:text-muted-foreground", children: "No models found" })), groupedModels ? (Array.from(groupedModels.entries()).map(([group, groupModels]) => (_jsxs("div", { children: [_jsx("div", { className: "stg:px-2 stg:pb-0.5 stg:pt-2 stg:text-[0.6rem] stg:font-medium stg:uppercase stg:tracking-wider stg:text-muted-foreground", children: group }), groupModels.map((model) => (_jsx(ModelRow, { model: model, isSelected: model.modelId === selectedModel?.modelId, showDescription: false, showSpeedBadge: showSpeedBadge, onClick: () => selectModel(model) }, model.modelId)))] }, group)))) : (visibleModels.map((model, idx) => (_jsx(ModelRow, { model: model, isSelected: model.modelId === selectedModel?.modelId, isHighlighted: idx === highlightIdx, showDescription: showDescriptions && !compact && !isSearching && !showAll, showSpeedBadge: showSpeedBadge, onClick: () => selectModel(model), onMouseEnter: () => setHighlightIdx(idx) }, model.modelId)))), showShowAllButton && (_jsx("button", { type: "button", className: cn("stg:mt-1 stg:flex stg:w-full stg:items-center stg:justify-center stg:rounded-md stg:border stg:border-dashed stg:border-border", "stg:px-2 stg:py-1.5 stg:text-xs stg:text-muted-foreground", "stg:hover:bg-accent-hover stg:hover:text-foreground stg:transition-colors stg:cursor-pointer"), onClick: () => setShowAll(true), children: "Show all models" }))] })] }) }) })] }));
232
265
  }
233
266
  function ModelRow({ model, isSelected, isHighlighted, showDescription, showSpeedBadge, onClick, onMouseEnter, }) {
234
267
  return (_jsxs("button", { "data-model-option": "", role: "option", "aria-selected": isSelected, type: "button", className: cn("stg:flex stg:w-full stg:cursor-pointer stg:flex-col stg:rounded-md stg:px-2 stg:py-1.5 stg:text-xs stg:outline-none", "stg:transition-colors", isHighlighted && "stg:bg-accent stg:text-accent-foreground", !isHighlighted && "stg:hover:bg-accent-hover"), onClick: onClick, onMouseEnter: onMouseEnter, children: [_jsxs("div", { className: "stg:flex stg:w-full stg:items-center stg:gap-2", children: [_jsx("span", { className: "stg:flex-1 stg:truncate stg:text-left stg:font-medium", children: model.displayName }), model.visionCapability === false && (_jsxs("span", { className: "stg:flex stg:shrink-0 stg:items-center stg:gap-0.5 stg:text-[0.6rem] stg:text-muted-foreground", children: [_jsx(NoImageInputIcon, {}), "No image input"] })), _jsx("span", { className: "stg:shrink-0 stg:text-[0.6rem] stg:text-muted-foreground", children: showSpeedBadge
@@ -1 +1 @@
1
- {"version":3,"file":"ModelSelector.js","sourceRoot":"","sources":["../../src/models/ModelSelector.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModelSelector.js","sourceRoot":"","sources":["../../src/models/ModelSelector.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAsB,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAA0B,MAAM,mBAAmB,CAAC;AAG9E,MAAM,eAAe,GAA6B;IAChD,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,KAAK;CACf,CAAC;AAEF,MAAM,gBAAgB,GAA8B;IAClD,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,UAAU;CACjB,CAAC;AAEF;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,KAAgB;IACxC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,eAAe,KAAK,IAAI,CAAC;AACtE,CAAC;AAwGD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,UAAU,aAAa,CAAC,EAC5B,KAAK,EACL,aAAa,EACb,OAAO,EACP,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,OAAO,GAAG,UAAU,EACpB,cAAc,GAAG,IAAI,EACrB,gBAAgB,GAAG,IAAI,EACvB,OAAO,GAAG,KAAK,EACf,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,WAAW,GAAG,UAAU,EACxB,mBAAmB,EACnB,YAAY,GAAG,UAAU,EACzB,oBAAoB,GACD;IACnB,MAAM,eAAe,GAAG,yBAAyB,EAAE,CAAC;IAEpD,MAAM,eAAe,GAAG,OAAO,KAAK,SAAS,CAAC;IAC9C,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CACpD,OAAO,IAAI,cAAc,IAAI,QAAQ,CACtC,CAAC;IACF,MAAM,aAAa,GAAG,OAAO,IAAI,eAAe,CAAC;IAEjD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,eAAe,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACrD,kBAAkB,CAAC,cAAc,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;IAEtC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAC1G,EAAE,OAAO,EAAE,aAAa,EAAE,CAC3B,CAAC;IAEF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,MAAM,SAAS,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE7C,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,EAAE;QACrC,IAAI,kBAAkB;YAAE,OAAO,kBAAkB,CAAC;QAClD,mFAAmF;QACnF,gFAAgF;QAChF,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC;IACzE,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEzB,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,YAAY,IAAI,SAAS,CAAC;IAEzF,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IAE7C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE;QAC9B,IAAI,aAAa;YAAE,OAAO,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAEnC,MAAM,aAAa,GAAyB,OAAO,CAAC,GAAG,EAAE;QACvD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACzB,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;mBAC7C,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;mBAC5C,CAAC,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CACzD,CAAC;QACJ,CAAC;QACD,IAAI,OAAO;YAAE,OAAO,MAAM,CAAC;QAC3B,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC;IAC7D,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAE/D,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,MAAM,IAAI,WAAW;YAAE,OAAO,IAAI,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;QAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;YACrE,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;IAE5C,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YACpB,cAAc,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,EAAE,CAAC;YACT,qBAAqB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,UAAyB,EAAE,EAAE;QAC5B,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC/B,eAAe,EAAE,CAAC,UAAU,CAAC,CAAC;QAC9B,iBAAiB,EAAE,CAAC,UAAU,CAAC,CAAC;QAChC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,cAAc,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC,EACD,CAAC,eAAe,EAAE,iBAAiB,CAAC,CACrC,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAgB,EAAE,EAAE;QACnB,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,sEAAsE;QACtE,oEAAoE;QACpE,qEAAqE;QACrE,mEAAmE;QACnE,2DAA2D;QAC3D,IACE,WAAW,KAAK,MAAM;eACnB,mBAAmB;eACnB,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAClD,CAAC;YACD,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC;QACD,+DAA+D;QAC/D,+DAA+D;QAC/D,uDAAuD;QACvD,IACE,YAAY,KAAK,SAAS;eACvB,oBAAoB;eACpB,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAC3B,CAAC;YACD,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC,EACD,CAAC,aAAa,EAAE,WAAW,EAAE,mBAAmB,EAAE,YAAY,EAAE,oBAAoB,CAAC,CACtF,CAAC;IAEF,MAAM,uBAAuB,GAAG,WAAW,CAAC,CAAC,GAAW,EAAE,EAAE;QAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAc,qBAAqB,CAAC,CAAC;QAC7E,KAAK,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACnD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,CAAwC,EAAE,EAAE;QAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC;QACjC,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO;QAEtB,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC;YACd,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,IAAI,GAAG,YAAY,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3D,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtB,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBAC9B,MAAM;YACR,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,IAAI,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC3D,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtB,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBAC9B,MAAM;YACR,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBAClF,IAAI,MAAM;oBAAE,WAAW,CAAC,MAAM,CAAC,CAAC;gBAChC,MAAM;YACR,CAAC;YACD,KAAK,QAAQ;gBACX,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,MAAM;QACV,CAAC;IACH,CAAC,EACD,CAAC,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,uBAAuB,CAAC,CACpE,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAEzH,yEAAyE;IACzE,oEAAoE;IACpE,gEAAgE;IAChE,MAAM,qBAAqB,GACzB,mBAAmB,KAAK,SAAS;WAC9B,aAAa,KAAK,SAAS;WAC3B,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC5D,uEAAuE;IACvE,2DAA2D;IAC3D,MAAM,UAAU,GACd,WAAW,KAAK,MAAM;WACnB,CAAC,aAAa,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,CAAC;IACxE,oEAAoE;IACpE,8DAA8D;IAC9D,MAAM,kBAAkB,GACtB,oBAAoB,KAAK,SAAS;WAC/B,aAAa,KAAK,SAAS;WAC3B,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACrC,MAAM,cAAc,GAClB,YAAY,KAAK,SAAS;WACvB,CAAC,aAAa,KAAK,SAAS,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC;IAEtE,MAAM,gBAAgB,GAAG,CAAC,KAAK,IAAI,gBAAgB,KAAK,SAAS,CAAC;IAClE,MAAM,YAAY,GAAG,gBAAgB;QACnC,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,CAAC,aAAa,EAAE,WAAW,IAAI,cAAc,CAAC,CAAC;IACnD,MAAM,cAAc,GAClB,CAAC,eAAe,IAAI,CAAC,gBAAgB;QACnC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,KAAK;QACnC,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,CACL,MAAC,OAAO,CAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,aAC7C,MAAC,OAAO,CAAC,OAAO,IACd,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,EAAE,CACX,0FAA0F,EAC1F,yEAAyE,EACzE,+GAA+G,EAC/G,0DAA0D,EAC1D,kEAAkE,EAClE,SAAS,CACV,aAEA,cAAc,IAAI,CACjB,eAAM,SAAS,EAAC,wCAAwC,YAAE,cAAc,GAAQ,CACjF,EACA,cAAc,IAAI,CACjB,eAAM,SAAS,EAAC,8BAA8B,4CAAqB,CACpE,EACD,eAAM,SAAS,EAAC,cAAc,YAAE,YAAY,GAAQ,EACnD,UAAU,IAAI,CACb,gBACE,SAAS,EAAE,EAAE,CACX,+HAA+H,EAC/H,qFAAqF,CACtF,aAED,KAAC,QAAQ,KAAG,YAEP,CACR,EACA,cAAc,IAAI,CACjB,eACE,SAAS,EAAE,EAAE,CACX,+HAA+H,EAC/H,qFAAqF,CACtF,yBAGI,CACR,EACD,KAAC,WAAW,KAAG,IACC,EAElB,KAAC,OAAO,CAAC,MAAM,IAAC,SAAS,EAAE,eAAe,YACxC,KAAC,OAAO,CAAC,UAAU,IAAC,UAAU,EAAE,CAAC,YAC/B,MAAC,OAAO,CAAC,KAAK,IACZ,IAAI,EAAC,QAAQ,gBACF,gBAAgB,EAC3B,SAAS,EAAE,EAAE,CACX,iGAAiG,EACjG,6BAA6B,CAC9B,aAGD,eAAK,SAAS,EAAC,6GAA6G,aAC1H,eAAM,SAAS,EAAC,uCAAuC,wBAAe,EACtE,kBACE,IAAI,EAAC,QAAQ,mBACC,SAAS,mBACR,WAAW,gBACf,gBAAgB,EAC3B,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,EAAE,CACX,0FAA0F,EAC1F,yEAAyE,EACzE,uBAAuB,EACvB,qFAAqF,EACrF,eAAe;4CACb,CAAC,CAAC,uCAAuC;4CACzC,CAAC,CAAC,2BAA2B,CAChC,EACD,OAAO,EAAE,GAAG,EAAE;4CACZ,IAAI,CAAC,eAAe;gDAAE,cAAc,CAAC,CAAC,WAAW,CAAC,CAAC;wCACrD,CAAC,EACD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;4CACf,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,IAAI,WAAW,EAAE,CAAC;gDACtC,CAAC,CAAC,eAAe,EAAE,CAAC;gDACpB,cAAc,CAAC,KAAK,CAAC,CAAC;4CACxB,CAAC;wCACH,CAAC,aAED,yBAAO,YAAY,CAAC,aAAa,CAAC,CAAC,KAAK,GAAQ,EAC/C,CAAC,eAAe,IAAI,KAAC,WAAW,KAAG,IAC7B,EAER,CAAC,eAAe,IAAI,WAAW,IAAI,CAClC,cACE,IAAI,EAAC,SAAS,gBACH,qBAAqB,EAChC,SAAS,EAAE,EAAE,CACX,yHAAyH,EACzH,8BAA8B,CAC/B,YAEA,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;4CAC3B,MAAM,QAAQ,GAAG,CAAC,KAAK,aAAa,CAAC;4CACrC,OAAO,CACL,kBAEE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,QAAQ,mBACE,QAAQ,EACvB,SAAS,EAAE,EAAE,CACX,wGAAwG,EACxG,2BAA2B,EAC3B,QAAQ,IAAI,iBAAiB,CAC9B,EACD,OAAO,EAAE,GAAG,EAAE;oDACZ,mBAAmB,CAAC,CAAC,CAAC,CAAC;oDACvB,cAAc,CAAC,KAAK,CAAC,CAAC;gDACxB,CAAC,aAED,eAAM,SAAS,EAAC,0BAA0B,YAAE,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,GAAQ,EACxE,QAAQ,IAAI,KAAC,SAAS,IAAC,SAAS,EAAC,+BAA+B,GAAG,KAf/D,CAAC,CAgBC,CACV,CAAC;wCACJ,CAAC,CAAC,GACE,CACP,IACG,EAOL,qBAAqB,IAAI,CACxB,eAAK,SAAS,EAAC,gGAAgG,aAC7G,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAM,SAAS,EAAC,iCAAiC,0BAAiB,EAClE,eAAM,SAAS,EAAC,8CAA8C,2DAEvD,IACH,EACN,KAAC,MAAM,IACL,OAAO,EAAE,UAAU,EACnB,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,gBAExC,WAAW,GACtB,IACE,CACP,EAEA,kBAAkB,IAAI,CACrB,eAAK,SAAS,EAAC,gGAAgG,aAC7G,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAM,SAAS,EAAC,iCAAiC,yBAAgB,EACjE,eAAM,SAAS,EAAC,8CAA8C,4DAEvD,IACH,EACN,KAAC,MAAM,IACL,OAAO,EAAE,cAAc,EACvB,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,gBAE5C,UAAU,GACrB,IACE,CACP,EAGD,cAAK,SAAS,EAAC,oDAAoD,YACjE,gBACE,GAAG,EAAE,SAAS,EACd,IAAI,EAAC,WAAW,gBACL,eAAe,EAC1B,WAAW,EAAC,qBAAgB,EAC5B,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC/C,SAAS,EAAE,aAAa,EACxB,SAAS,EAAE,EAAE,CACX,qGAAqG,EACrG,kBAAkB,CACnB,GACD,GACE,EAGN,eACE,GAAG,EAAE,OAAO,EACZ,IAAI,EAAC,SAAS,gBACH,kBAAkB,EAC7B,SAAS,EAAC,0CAA0C,aAEnD,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,IAAI,CAC1C,eAAK,SAAS,EAAC,0EAA0E,aACvF,cAAK,SAAS,EAAC,+FAA+F,GAAG,EACjH,eAAM,SAAS,EAAC,uCAAuC,qCAAuB,IAC1E,CACP,EAEA,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,IAAI,IAAI,IAAI,CAC5D,eAAK,SAAS,EAAC,sEAAsE,aACnF,eAAM,SAAS,EAAC,uCAAuC,sCAA6B,EACpF,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,mHAAmH,EACnH,oEAAoE,CACrE,EACD,OAAO,EAAE,OAAO,sBAGT,IACL,CACP,EAEA,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,IAAI,IAAI,IAAI,CAC5D,cAAK,SAAS,EAAC,yEAAyE,gCAElF,CACP,EAGA,aAAa,CAAC,CAAC,CAAC,CACf,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAChE,0BACE,cAAK,SAAS,EAAC,2HAA2H,YACvI,KAAK,GACF,EACL,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAC1B,KAAC,QAAQ,IAEP,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE,OAAO,EACpD,eAAe,EAAE,KAAK,EACtB,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,IAL5B,KAAK,CAAC,OAAO,CAMlB,CACH,CAAC,KAbM,KAAK,CAcT,CACP,CAAC,CACH,CAAC,CAAC,CAAC,CACF,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAChC,KAAC,QAAQ,IAEP,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE,OAAO,EACpD,aAAa,EAAE,GAAG,KAAK,YAAY,EACnC,eAAe,EAAE,gBAAgB,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,EACzE,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EACjC,YAAY,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAPnC,KAAK,CAAC,OAAO,CAQlB,CACH,CAAC,CACH,EAGA,iBAAiB,IAAI,CACpB,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,gIAAgI,EAChI,2DAA2D,EAC3D,8FAA8F,CAC/F,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,gCAGxB,CACV,IACG,IACQ,GACG,GACN,IACJ,CAChB,CAAC;AACJ,CAAC;AAYD,SAAS,QAAQ,CAAC,EAChB,KAAK,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,cAAc,EACd,OAAO,EACP,YAAY,GACE;IACd,OAAO,CACL,uCACoB,EAAE,EACpB,IAAI,EAAC,QAAQ,mBACE,UAAU,EACzB,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,qHAAqH,EACrH,uBAAuB,EACvB,aAAa,IAAI,0CAA0C,EAC3D,CAAC,aAAa,IAAI,2BAA2B,CAC9C,EACD,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,YAAY,aAE1B,eAAK,SAAS,EAAC,gDAAgD,aAC7D,eAAM,SAAS,EAAC,uDAAuD,YAAE,KAAK,CAAC,WAAW,GAAQ,EAMjG,KAAK,CAAC,gBAAgB,KAAK,KAAK,IAAI,CACnC,gBAAM,SAAS,EAAC,gGAAgG,aAC9G,KAAC,gBAAgB,KAAG,sBAEf,CACR,EAED,eAAM,SAAS,EAAC,0DAA0D,YACvE,cAAc;4BACb,CAAC,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;4BAC3E,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,GAC9B,EAEN,UAAU,IAAI,KAAC,SAAS,IAAC,SAAS,EAAC,+BAA+B,GAAG,IAClE,EAEL,eAAe,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAC5C,eAAM,SAAS,EAAC,iFAAiF,YAC9F,KAAK,CAAC,gBAAgB,GAClB,CACR,IACM,CACV,CAAC;AACJ,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,CACL,cACE,SAAS,EAAC,wCAAwC,EAClD,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,YAEtB,eAAM,CAAC,EAAC,2BAA2B,GAAG,GAClC,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAA0B;IACtD,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,YAEtB,eAAM,CAAC,EAAC,eAAe,GAAG,GACtB,CACP,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB;IACvB,OAAO,CACL,eACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,kCAGtB,eAAM,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,KAAK,GAAG,EACpD,eAAM,CAAC,EAAC,wBAAwB,GAAG,EACnC,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,EACtE,eAAM,CAAC,EAAC,YAAY,GAAG,IACnB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,CACL,cACE,SAAS,EAAC,cAAc,EACxB,KAAK,EAAC,GAAG,EACT,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,cAAc,iCAGnB,eAAM,CAAC,EAAC,mDAAmD,GAAG,GAC1D,CACP,CAAC;AACJ,CAAC"}
package/models/index.d.ts CHANGED
@@ -13,4 +13,6 @@ export { DEFAULT_HARNESS, HARNESS_LABELS, HARNESS_META, HARNESS_OPTIONS, toProto
13
13
  export type { HarnessOption, HarnessDisplayInfo } from "./harness.js";
14
14
  export { FAST_SERVICE_TIER, toProtoServiceTier, fromProtoServiceTier } from "./service-tier.js";
15
15
  export type { ServiceTierOption } from "./service-tier.js";
16
+ export { toProtoThinkingMode, fromProtoThinkingMode } from "./thinking-mode.js";
17
+ export type { ThinkingModeOption } from "./thinking-mode.js";
16
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACxO,YAAY,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAChG,YAAY,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChI,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAChG,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACxO,YAAY,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAChG,YAAY,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,YAAY,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChI,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAChG,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChF,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
package/models/index.js CHANGED
@@ -5,4 +5,5 @@ export { ModelSelector } from "./ModelSelector.js";
5
5
  export { HarnessSelector } from "./HarnessSelector.js";
6
6
  export { DEFAULT_HARNESS, HARNESS_LABELS, HARNESS_META, HARNESS_OPTIONS, toProtoHarness, fromProtoHarness } from "./harness.js";
7
7
  export { FAST_SERVICE_TIER, toProtoServiceTier, fromProtoServiceTier } from "./service-tier.js";
8
+ export { toProtoThinkingMode, fromProtoThinkingMode } from "./thinking-mode.js";
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGxO,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAE1F,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhI,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAGxO,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAE1F,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhI,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEhG,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -99,6 +99,22 @@ export interface ModelInfo {
99
99
  * parse the same document and must agree on what absence means.
100
100
  */
101
101
  readonly visionCapability?: boolean;
102
+ /**
103
+ * Tri-state thinking capability from the registry's `capabilities` block
104
+ * (stigmer/stigmer#772), the same absence convention as
105
+ * {@link visionCapability}:
106
+ *
107
+ * - `true` — the model declares an extended-reasoning (thinking) variant;
108
+ * the thinking switch in the model popover's options area may render
109
+ * - `false` — explicitly assessed as having none
110
+ * - `undefined` — never assessed; **stay silent, never treat as false**
111
+ *
112
+ * Capability-gated, not pricing-gated (unlike {@link serviceTiers}):
113
+ * thinking bills at base per-token rates, so no priced variant exists to
114
+ * key on. v1 honors the selection on the cursor harness only — gate any
115
+ * control on `harness === "cursor"` as well as this flag.
116
+ */
117
+ readonly thinkingCapable?: boolean;
102
118
  }
103
119
  /**
104
120
  * Document-level vision byte budget advertised by the registry
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/models/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAE1D;;;;;;;GAOG;AACH,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAChB,WAAW,GACX,QAAQ,GACR,QAAQ,GACR,KAAK,GACL,QAAQ,GACR,UAAU,GACV,QAAQ,CAAC;AAEb;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,QAAQ,CAEnD,CAAC;AAEH;;;;;;;;;;GAUG;AACH,MAAM,WAAW,SAAS;IACxB,gFAAgF;IAChF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,qDAAqD;IACrD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,mFAAmF;IACnF,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,kFAAkF;IAClF,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,gDAAgD;IAChD,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;OASG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,YAAY;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,wDAAwD;IACxD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,uCAAuC;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAC;CAC3C;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,yDAAyD;AACzD,MAAM,WAAW,cAAc;IAC7B,2CAA2C;IAC3C,OAAO,EAAE,aAAa,CAAC;IACvB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAMrE;AA6ED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,qBAAqB,CAkC1E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,CAE5D;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,WAAW,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,GACpC,OAAO,CAAC,qBAAqB,CAAC,CAUhC;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,WAAW,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,GACpC,OAAO,CAAC,SAAS,EAAE,CAAC,CAGtB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,sBAAsB,CAAC;AAEpD,uFAAuF;AACvF,eAAO,MAAM,uBAAuB,YAAY,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAC1B,iBAAiB,GACjB,aAAa,GACb,eAAe,GACf,iBAAiB,GACjB,mBAAmB,CAAC;AAExB,8CAA8C;AAC9C,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,SAAS,SAAS,EAAE,EAC5B,OAAO,CAAC,EAAE;IACR,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GACA,sBAAsB,CAmDxB"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/models/registry.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,17 @@ function parseVisionCapability(capabilities) {
54
54
  const vision = capabilities.vision;
55
55
  return typeof vision === "boolean" ? vision : undefined;
56
56
  }
57
+ /**
58
+ * Extract `capabilities.thinking` with the same tri-state convention as
59
+ * {@link parseVisionCapability} (stigmer/stigmer#772): a missing or
60
+ * malformed `capabilities` block stays `undefined`, never coerced to false.
61
+ */
62
+ function parseThinkingCapability(capabilities) {
63
+ if (!capabilities || typeof capabilities !== "object")
64
+ return undefined;
65
+ const thinking = capabilities.thinking;
66
+ return typeof thinking === "boolean" ? thinking : undefined;
67
+ }
57
68
  /**
58
69
  * Parse the document-level `limits.vision` block. Returns `undefined` for
59
70
  * documents that predate the block or carry a malformed one — absence
@@ -104,6 +115,7 @@ export function parseRegistryDocument(data) {
104
115
  .filter(isModelEntry)
105
116
  .map((m) => {
106
117
  const visionCapability = parseVisionCapability(m.capabilities);
118
+ const thinkingCapable = parseThinkingCapability(m.capabilities);
107
119
  return {
108
120
  modelId: m.id,
109
121
  provider: m.provider,
@@ -119,6 +131,7 @@ export function parseRegistryDocument(data) {
119
131
  // Conditional spread keeps unassessed models free of the key
120
132
  // (tri-state absence, not an explicit undefined).
121
133
  ...(visionCapability !== undefined ? { visionCapability } : {}),
134
+ ...(thinkingCapable !== undefined ? { thinkingCapable } : {}),
122
135
  };
123
136
  });
124
137
  const visionLimits = parseVisionLimits(root);
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/models/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/models/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { ThinkingMode } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
2
+ /**
3
+ * String form of the thinking mode for component props and hook inputs
4
+ * (stigmer/stigmer#772). Mirrors {@link ServiceTierOption}: components
5
+ * speak strings, execution creation speaks proto.
6
+ *
7
+ * "disabled" is the model's base variant; "enabled" is the model's
8
+ * extended-reasoning variant — selectable only for models whose
9
+ * {@link ModelInfo.thinkingCapable} is true. Unlike the fast tier,
10
+ * thinking bills at base per-token rates; enabled turns simply consume
11
+ * more output (reasoning) tokens.
12
+ */
13
+ export type ThinkingModeOption = "disabled" | "enabled";
14
+ /**
15
+ * Convert a {@link ThinkingModeOption} string to the proto enum.
16
+ */
17
+ export declare function toProtoThinkingMode(mode: ThinkingModeOption): ThinkingMode;
18
+ /**
19
+ * Convert a proto {@link ThinkingMode} enum to its string form.
20
+ *
21
+ * `UNSPECIFIED` (and any unknown value) maps to `undefined` so callers can
22
+ * decide their own default — matching the proto contract (`UNSPECIFIED`
23
+ * resolves to `THINKING_MODE_DISABLED` in the runner, never the provider
24
+ * account default).
25
+ */
26
+ export declare function fromProtoThinkingMode(mode: ThinkingMode | undefined): ThinkingModeOption | undefined;
27
+ //# sourceMappingURL=thinking-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thinking-mode.d.ts","sourceRoot":"","sources":["../../src/models/thinking-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAC;AAE5F;;;;;;;;;;GAUG;AACH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,SAAS,CAAC;AAExD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,kBAAkB,GAAG,YAAY,CAQ1E;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,YAAY,GAAG,SAAS,GAC7B,kBAAkB,GAAG,SAAS,CAShC"}
@@ -0,0 +1,32 @@
1
+ import { ThinkingMode } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
2
+ /**
3
+ * Convert a {@link ThinkingModeOption} string to the proto enum.
4
+ */
5
+ export function toProtoThinkingMode(mode) {
6
+ switch (mode) {
7
+ case "enabled":
8
+ return ThinkingMode.ENABLED;
9
+ case "disabled":
10
+ default:
11
+ return ThinkingMode.DISABLED;
12
+ }
13
+ }
14
+ /**
15
+ * Convert a proto {@link ThinkingMode} enum to its string form.
16
+ *
17
+ * `UNSPECIFIED` (and any unknown value) maps to `undefined` so callers can
18
+ * decide their own default — matching the proto contract (`UNSPECIFIED`
19
+ * resolves to `THINKING_MODE_DISABLED` in the runner, never the provider
20
+ * account default).
21
+ */
22
+ export function fromProtoThinkingMode(mode) {
23
+ switch (mode) {
24
+ case ThinkingMode.DISABLED:
25
+ return "disabled";
26
+ case ThinkingMode.ENABLED:
27
+ return "enabled";
28
+ default:
29
+ return undefined;
30
+ }
31
+ }
32
+ //# sourceMappingURL=thinking-mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thinking-mode.js","sourceRoot":"","sources":["../../src/models/thinking-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8DAA8D,CAAC;AAe5F;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAwB;IAC1D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS;YACZ,OAAO,YAAY,CAAC,OAAO,CAAC;QAC9B,KAAK,UAAU,CAAC;QAChB;YACE,OAAO,YAAY,CAAC,QAAQ,CAAC;IACjC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAA8B;IAE9B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY,CAAC,QAAQ;YACxB,OAAO,UAAU,CAAC;QACpB,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,SAAS,CAAC;QACnB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OAuthAppDetailPanel.d.ts","sourceRoot":"","sources":["../../src/oauth-app/OAuthAppDetailPanel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAclF,6CAA6C;AAC7C,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,+DAA+D;IAC/D,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC7C,wDAAwD;IACxD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,kDAAkD;IAClD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,SAAS,EACT,SAAS,EACT,MAAM,EACN,SAAS,GACV,EAAE,wBAAwB,2CA6a1B"}
1
+ {"version":3,"file":"OAuthAppDetailPanel.d.ts","sourceRoot":"","sources":["../../src/oauth-app/OAuthAppDetailPanel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAclF,6CAA6C;AAC7C,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,+DAA+D;IAC/D,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC7C,wDAAwD;IACxD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,kDAAkD;IAClD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,SAAS,EACT,SAAS,EACT,MAAM,EACN,SAAS,GACV,EAAE,wBAAwB,2CA+a1B"}