1- import { memo , useEffect , useRef , useState , useMemo } from "react"
1+ import { memo , useRef , useState , useMemo } from "react"
22import { useTranslation } from "react-i18next"
3- import { useCloudUpsell } from "@src/hooks/useCloudUpsell"
4- import { CloudUpsellDialog } from "@src/components/cloud/CloudUpsellDialog"
5- import DismissibleUpsell from "@src/components/common/DismissibleUpsell"
63import {
74 ChevronUp ,
85 ChevronDown ,
@@ -18,7 +15,6 @@ import prettyBytes from "pretty-bytes"
1815import type { ClineMessage } from "@roo-code/types"
1916
2017import { getModelMaxOutputTokens } from "@roo/api"
21- import { findLastIndex } from "@roo/array"
2218
2319import { formatLargeNumber } from "@src/utils/format"
2420import { cn } from "@src/lib/utils"
@@ -64,34 +60,6 @@ const TaskHeader = ({
6460 const { apiConfiguration, currentTaskItem, clineMessages, isBrowserSessionActive } = useExtensionState ( )
6561 const { id : modelId , info : model } = useSelectedModel ( apiConfiguration )
6662 const [ isTaskExpanded , setIsTaskExpanded ] = useState ( false )
67- const [ showLongRunningTaskMessage , setShowLongRunningTaskMessage ] = useState ( false )
68- const { isOpen, openUpsell, closeUpsell, handleConnect } = useCloudUpsell ( {
69- autoOpenOnAuth : false ,
70- } )
71-
72- // Check if the task is complete by looking at the last relevant message (skipping resume messages)
73- const isTaskComplete =
74- clineMessages && clineMessages . length > 0
75- ? ( ( ) => {
76- const lastRelevantIndex = findLastIndex (
77- clineMessages ,
78- ( m ) => ! ( m . ask === "resume_task" || m . ask === "resume_completed_task" ) ,
79- )
80- return lastRelevantIndex !== - 1
81- ? clineMessages [ lastRelevantIndex ] ?. ask === "completion_result"
82- : false
83- } ) ( )
84- : false
85-
86- useEffect ( ( ) => {
87- const timer = setTimeout ( ( ) => {
88- if ( currentTaskItem && ! isTaskComplete ) {
89- setShowLongRunningTaskMessage ( true )
90- }
91- } , 120_000 ) // Show upsell after 2 minutes
92-
93- return ( ) => clearTimeout ( timer )
94- } , [ currentTaskItem , isTaskComplete ] )
9563
9664 const textContainerRef = useRef < HTMLDivElement > ( null )
9765 const textRef = useRef < HTMLDivElement > ( null )
0 commit comments