import React, { ReactNode } from 'react'; import styled from 'styled-components'; import { PaginationType, useActionContext, LimitType } from '../../context/browserActions'; import { Typography, FormControlLabel, Checkbox, Box } from '@mui/material'; const CustomBoxContainer = styled.div` position: relative; width: 300px; /* Adjust width as needed */ height: 200px; /* Adjust height as needed */ border: 2px solid #ff00c3; background-color: white; margin: 30px auto; `; const Triangle = styled.div` position: absolute; top: -20px; /* Adjust this value to control the height of the triangle */ left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 20px solid transparent; border-right: 20px solid transparent; border-bottom: 20px solid #ff00c3; `; const Content = styled.div` padding: 20px; text-align: left; `; const ActionDescriptionBox = () => { const { getText, getScreenshot, getList, captureStage } = useActionContext(); const messages = [ { stage: 'initial' as const, text: 'Select the list you want to extract along with the texts inside it', }, { stage: 'pagination' as const, text: 'Select how the robot can capture the rest of the list', }, { stage: 'limit' as const, text: 'Choose the number of items to extract', }, { stage: 'complete' as const, text: 'Capture is complete', }, ]; const renderActionDescription = () => { if (getText) { return ( <> Capture Text Hover over the texts you want to extract and click to select them ) } else if (getScreenshot) { return ( <> Capture Screenshot Capture a partial or full page screenshot of the current page. ) } else if (getList) { return ( <> Capture List Hover over the list you want to extract. Once selected, you can hover over all texts inside the list you selected. Click to select them. {messages.map(({ stage, text }, index) => ( } label={ {text} } /> ))} ); } else { return ( <> What data do you want to extract? A robot is designed to perform one action at a time. You can choose any of the options below. ) } } return ( {renderActionDescription()} ); }; export default ActionDescriptionBox;