diff --git a/apps/provider-console/src/components/shared/ActivityLogDetails.tsx b/apps/provider-console/src/components/shared/ActivityLogDetails.tsx index 21907b04b7..f079a92563 100644 --- a/apps/provider-console/src/components/shared/ActivityLogDetails.tsx +++ b/apps/provider-console/src/components/shared/ActivityLogDetails.tsx @@ -17,6 +17,7 @@ export const ActivityLogDetails: React.FC<{ actionId: string | null }> = ({ acti const [taskLogs, setTaskLogs] = useState({}); const [loadingLogs, setLoadingLogs] = useState<{ [taskId: string]: boolean }>({}); const [elapsedTimes, setElapsedTimes] = useState<{ [taskId: string]: string }>({}); + const [followScroll, setFollowScroll] = useState<{ [taskId: string]: boolean }>({}); const logStreams = useRef<{ [taskId: string]: EventSourcePolyfill | null }>({}); const { data: actionDetails, isLoading } = useProviderActionStatus(actionId); @@ -184,16 +185,29 @@ export const ActivityLogDetails: React.FC<{ actionId: string | null }> = ({ acti try { const sanitizedLogs = logs.trim(); + const shouldFollow = followScroll[taskId] !== false; // Default to true, but allow user to disable return (
( { + // Check if user has scrolled to the bottom + const isAtBottom = scrollTop + clientHeight >= scrollHeight - 10; // 10px threshold + + // Update follow state based on scroll position + setFollowScroll(prev => ({ + ...prev, + [taskId]: isAtBottom + })); + + // Call the original onScroll handler + onScroll({ scrollTop, scrollHeight, clientHeight }); + }} highlight={[]} extraLines={1} ansi @@ -206,7 +220,6 @@ export const ActivityLogDetails: React.FC<{ actionId: string | null }> = ({ acti backgroundColor: "var(--log-background, #1e1e1e)", color: "var(--log-text, #ffffff)" }} - key={`${taskId}-${sanitizedLogs.length}`} /> )} /> diff --git a/packages/net/src/generated/netConfigData.ts b/packages/net/src/generated/netConfigData.ts index 2c6f132b14..2b2898adba 100644 --- a/packages/net/src/generated/netConfigData.ts +++ b/packages/net/src/generated/netConfigData.ts @@ -1,6 +1,6 @@ export const netConfigData = { mainnet: { - version: "v0.38.1", + version: "v1.0.0", faucetUrl: null, apiUrls: [ "https://rest-akash.ecostake.com",