MCPcopy Index your code
hub / github.com/CodebuffAI/codebuff / useQueueUi

Function useQueueUi

cli/src/hooks/use-queue-ui.ts:16–56  ·  view source on GitHub ↗
({
  queuePaused,
  queuedMessages,
  separatorWidth,
  terminalWidth,
}: UseQueueUiParams)

Source from the content-addressed store, hash-verified

14}
15
16export const useQueueUi = ({
17 queuePaused,
18 queuedMessages,
19 separatorWidth,
20 terminalWidth,
21}: UseQueueUiParams) => {
22 const queuedCount = queuedMessages.length
23 const shouldShowQueuePreview = queuedCount > 0 && !queuePaused
24
25 const queuePreviewTitle = useMemo(() => {
26 if (!shouldShowQueuePreview) return undefined
27 const previewWidth = Math.max(30, separatorWidth - 20)
28 return formatQueuedPreview(queuedMessages, previewWidth)
29 }, [shouldShowQueuePreview, queuedMessages, separatorWidth])
30
31 const pausedQueueText = useMemo(() => {
32 if (!queuePaused || queuedCount === 0) return undefined
33 return `${pluralize(queuedCount, 'message')} queued — your next message sends first`
34 }, [queuePaused, queuedCount])
35
36 const inputPlaceholder = useMemo(() => {
37 const base =
38 terminalWidth < 65
39 ? 'Enter a coding task'
40 : 'Enter a coding task or / for commands'
41
42 if (queuePaused && queuedCount > 0) {
43 return 'Ctrl-C to cancel queued messages'
44 }
45
46 return base
47 }, [queuePaused, queuedCount, terminalWidth])
48
49 return {
50 queuedCount,
51 shouldShowQueuePreview,
52 queuePreviewTitle,
53 pausedQueueText,
54 inputPlaceholder,
55 }
56}

Callers 1

useChatStreamingFunction · 0.90

Calls 2

formatQueuedPreviewFunction · 0.90
pluralizeFunction · 0.90

Tested by

no test coverage detected