(m: NavigableMessage)
| 344 | }, [getItemHeight, messages]); |
| 345 | useImperativeHandle(cursorNavRef, (): MessageActionsNav => { |
| 346 | const select = (m: NavigableMessage) => setCursor?.({ |
| 347 | uuid: m.uuid, |
| 348 | msgType: m.type, |
| 349 | expanded: false, |
| 350 | toolName: toolCallOf(m)?.name |
| 351 | }); |
| 352 | const selIdx = selectedIndex ?? -1; |
| 353 | const scan = (from: number, dir: 1 | -1, pred: (i: number) => boolean = isVisible) => { |
| 354 | for (let i = from; i >= 0 && i < messages.length; i += dir) { |