@@ -121,22 +121,29 @@ let make = (
121121 let usageInfo = Client__State .useSelector (Client__State .Selectors .usageInfo )
122122 let configOptions = Client__State .useSelector (Client__State .Selectors .configOptions )
123123 let selectedModelValue = Client__State .useSelector (Client__State .Selectors .selectedModelValue )
124- let hasProviderConfigured = Client__State .useSelector (Client__State .Selectors .hasAnyProviderConfigured )
125- let webPreviewIsSelecting = Client__State .useSelector (Client__State .Selectors .webPreviewIsSelecting )
124+ let hasProviderConfigured = Client__State .useSelector (
125+ Client__State .Selectors .hasAnyProviderConfigured ,
126+ )
127+ let webPreviewIsSelecting = Client__State .useSelector (
128+ Client__State .Selectors .webPreviewIsSelecting ,
129+ )
126130 let annotations = Client__State .useSelector (Client__State .Selectors .annotations )
127- let hasEnrichingAnnotations = Client__State .useSelector (Client__State .Selectors .hasEnrichingAnnotations )
131+ let hasEnrichingAnnotations = Client__State .useSelector (
132+ Client__State .Selectors .hasEnrichingAnnotations ,
133+ )
128134 let runtimeConfig = RuntimeConfig .read ()
129- let hasEnvKey = RuntimeConfig .hasOpenrouterKey (runtimeConfig ) || RuntimeConfig .hasAnthropicKey (runtimeConfig )
135+ let hasEnvKey =
136+ RuntimeConfig .hasOpenrouterKey (runtimeConfig ) || RuntimeConfig .hasAnthropicKey (runtimeConfig )
130137 let hasAnyKey = hasProviderConfigured || hasEnvKey
131138
132- let modelConfigOption = configOptions -> Option .flatMap (opts =>
133- FrontmanAiFrontmanProtocol .FrontmanProtocol__ACP .findConfigOptionByCategory (opts , Model )
134- )
139+ let modelConfigOption =
140+ configOptions -> Option .flatMap (opts =>
141+ FrontmanAiFrontmanProtocol .FrontmanProtocol__ACP .findConfigOptionByCategory (opts , Model )
142+ )
135143 let isModelsConfigLoading = configOptions -> Option .isNone
136144
137145 let isUsageExhausted = switch (usageInfo , hasAnyKey ) {
138- | (Some ({remaining : Some (remaining ), hasServerKey : Some (true )}), false )
139- if remaining <= 0 => true
146+ | (Some ({remaining : Some (remaining ), hasServerKey : Some (true )}), false ) if remaining <= 0 => true
140147 | _ => false
141148 }
142149
@@ -154,15 +161,20 @@ let make = (
154161
155162 let handleSubmit = (~text : string , ~inputItems : array <Client__PromptInput .inputItem >) => {
156163 // Snapshot live annotations into serializable MessageAnnotation records
157- let messageAnnotations = annotations -> Array .map (Client__Message .MessageAnnotation .fromAnnotation )
164+ let messageAnnotations =
165+ annotations -> Array .map (Client__Message .MessageAnnotation .fromAnnotation )
158166
159- let sendWithContent = ( content ) => {
167+ let sendWithContent = content => {
160168 // Allow send if there's content OR annotations (annotations are first-class message content)
161169 switch Array .length (content ) > 0 || Array .length (messageAnnotations ) > 0 {
162170 | false => ()
163171 | true =>
164172 let sendMessage = (sessionId : string ) => {
165- Client__State .Actions .addUserMessage (~sessionId , ~content , ~annotations = messageAnnotations )
173+ Client__State .Actions .addUserMessage (
174+ ~sessionId ,
175+ ~content ,
176+ ~annotations = messageAnnotations ,
177+ )
166178 }
167179 switch session {
168180 | Some (sess ) => sendMessage (sess .sessionId )
@@ -196,8 +208,10 @@ let make = (
196208 let _ =
197209 fileData
198210 -> Array .map (((id , name , mediaType , dataUrl )) => {
199- Client__ImageLimits .constrainDataUrl (dataUrl , Client__ImageLimits .conservative )
200- -> Promise .then (constrained => {
211+ Client__ImageLimits .constrainDataUrl (
212+ dataUrl ,
213+ Client__ImageLimits .conservative ,
214+ )-> Promise .then (constrained => {
201215 let actualMediaType = switch constrained -> String .startsWith ("data:image/jpeg" ) {
202216 | true => "image/jpeg"
203217 | false => mediaType
@@ -242,9 +256,11 @@ let make = (
242256 let stableGroup : ToolGroupTypes .toolGroup = switch prevCache -> Dict .get (group .id ) {
243257 | Some (prev )
244258 if Array .length (prev .toolCalls ) == Array .length (group .toolCalls ) &&
245- prev .toolCalls -> Array .everyWithIndex ((prevTc , i ) => {
246- prevTc === group .toolCalls -> Array .getUnsafe (i )
247- }) => prev
259+ prev .toolCalls -> Array .everyWithIndex (
260+ (prevTc , i ) => {
261+ prevTc === group .toolCalls -> Array .getUnsafe (i )
262+ },
263+ ) => prev
248264 | _ => group
249265 }
250266 newCache -> Dict .set (stableGroup .id , stableGroup )
@@ -360,11 +376,7 @@ let make = (
360376 }
361377
362378 <div key = {messageId } className = "frontman-content-auto" >
363- <TodoListBlock
364- todos
365- isLoading
366- messageId
367- />
379+ <TodoListBlock todos isLoading messageId />
368380 </div >
369381
370382 | ErrorMsg (Message .Error (err ), _ ) =>
@@ -411,7 +423,6 @@ let make = (
411423 messageId = {thinkingMessageId }
412424 />
413425 </ScrollContainer .ContentWrapper >
414- <ScrollContainer .ScrollButton />
415426 </ScrollContainer >
416427 <Client__PlanDisplay entries = planEntries />
417428 <Client__SelectedElementDisplay />
@@ -433,8 +444,7 @@ let make = (
433444 modelConfigOption
434445 isModelsConfigLoading
435446 selectedModelValue
436- onModelChange = {value =>
437- Client__State .Actions .setSelectedModelValue (~value )}
447+ onModelChange = {value => Client__State .Actions .setSelectedModelValue (~value )}
438448 isAgentRunning
439449 hasActiveACPSession
440450 disabled = {isUsageExhausted }
0 commit comments