From 9962eb5c6ef979e957002cc1d104d418bb98a36f Mon Sep 17 00:00:00 2001 From: amhsirak Date: Mon, 27 Oct 2025 17:48:11 +0530 Subject: [PATCH 1/7] feat: set margin top --- src/components/robot/pages/RobotEditPage.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/robot/pages/RobotEditPage.tsx b/src/components/robot/pages/RobotEditPage.tsx index 3f17560c..0101d5dc 100644 --- a/src/components/robot/pages/RobotEditPage.tsx +++ b/src/components/robot/pages/RobotEditPage.tsx @@ -506,7 +506,7 @@ export const RobotEditPage = ({ handleStart }: RobotSettingsProps) => { return ( <> - + {t("List Limits")} From 7e0ea386355ea6c223289334deacb8b5961d78d2 Mon Sep 17 00:00:00 2001 From: amhsirak Date: Mon, 27 Oct 2025 17:48:55 +0530 Subject: [PATCH 2/7] feat: set margin top --- src/components/robot/pages/RobotEditPage.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/robot/pages/RobotEditPage.tsx b/src/components/robot/pages/RobotEditPage.tsx index 0101d5dc..e85b81fb 100644 --- a/src/components/robot/pages/RobotEditPage.tsx +++ b/src/components/robot/pages/RobotEditPage.tsx @@ -571,7 +571,7 @@ export const RobotEditPage = ({ handleStart }: RobotSettingsProps) => { return ( <> - + {t('Actions')} {inputs} From 158347bf90be2110af2c3356d60ca09bcbe2cc4e Mon Sep 17 00:00:00 2001 From: amhsirak Date: Mon, 27 Oct 2025 17:58:28 +0530 Subject: [PATCH 3/7] feat: group actions by type --- src/components/robot/pages/RobotEditPage.tsx | 107 +++++++++++++------ 1 file changed, 73 insertions(+), 34 deletions(-) diff --git a/src/components/robot/pages/RobotEditPage.tsx b/src/components/robot/pages/RobotEditPage.tsx index e85b81fb..7d3cee74 100644 --- a/src/components/robot/pages/RobotEditPage.tsx +++ b/src/components/robot/pages/RobotEditPage.tsx @@ -536,48 +536,87 @@ export const RobotEditPage = ({ handleStart }: RobotSettingsProps) => { }; const renderActionNameFields = () => { - if (!robot || !robot.recording || !robot.recording.workflow) return null; + if (!robot || !robot.recording || !robot.recording.workflow) return null; - const editableActions = new Set(['screenshot', 'scrapeList', 'scrapeSchema']); - const inputs: JSX.Element[] = []; + const editableActions = new Set(['screenshot', 'scrapeList', 'scrapeSchema']); + const textInputs: JSX.Element[] = []; + const screenshotInputs: JSX.Element[] = []; + const listInputs: JSX.Element[] = []; - robot.recording.workflow.forEach((pair, pairIndex) => { - if (!pair.what) return; + robot.recording.workflow.forEach((pair, pairIndex) => { + if (!pair.what) return; - pair.what.forEach((action, actionIndex) => { - // Only show editable name inputs for meaningful action types - if (!editableActions.has(String(action.action))) return; + pair.what.forEach((action, actionIndex) => { + if (!editableActions.has(String(action.action))) return; - // derive current name from possible fields - const currentName = - action.name || - (action.args && action.args[0] && typeof action.args[0] === 'object' && action.args[0].__name) || - ''; + const currentName = + action.name || + (action.args && action.args[0] && typeof action.args[0] === 'object' && action.args[0].__name) || + ''; - inputs.push( - handleActionNameChange(pairIndex, actionIndex, e.target.value)} - style={{ marginBottom: '12px' }} - fullWidth - /> - ); - }); + const textField = ( + handleActionNameChange(pairIndex, actionIndex, e.target.value)} + style={{ marginBottom: '12px' }} + fullWidth + /> + ); + + switch (action.action) { + case 'scrapeSchema': + textInputs.push(textField); + break; + case 'screenshot': + screenshotInputs.push(textField); + break; + case 'scrapeList': + listInputs.push(textField); + break; + } }); + }); - if (inputs.length === 0) return null; + const hasAnyInputs = textInputs.length > 0 || screenshotInputs.length > 0 || listInputs.length > 0; + if (!hasAnyInputs) return null; - return ( - <> - - {t('Actions')} - - {inputs} - - ); - }; + return ( + <> + + {t('Actions')} + + + {textInputs.length > 0 && ( + <> + + Texts + + {textInputs} + + )} + + {screenshotInputs.length > 0 && ( + <> + 0 ? '16px' : '0' }}> + Screenshots + + {screenshotInputs} + + )} + + {listInputs.length > 0 && ( + <> + 0 || screenshotInputs.length > 0) ? '16px' : '0' }}> + Lists + + {listInputs} + + )} + + ); +}; const renderCredentialFields = ( selectors: string[], From e6d3323236c59ceb91d568646e5068ff9c896e10 Mon Sep 17 00:00:00 2001 From: amhsirak Date: Mon, 27 Oct 2025 17:58:40 +0530 Subject: [PATCH 4/7] chore: lint --- src/components/robot/pages/RobotEditPage.tsx | 140 +++++++++---------- 1 file changed, 70 insertions(+), 70 deletions(-) diff --git a/src/components/robot/pages/RobotEditPage.tsx b/src/components/robot/pages/RobotEditPage.tsx index 7d3cee74..6b323c6e 100644 --- a/src/components/robot/pages/RobotEditPage.tsx +++ b/src/components/robot/pages/RobotEditPage.tsx @@ -536,87 +536,87 @@ export const RobotEditPage = ({ handleStart }: RobotSettingsProps) => { }; const renderActionNameFields = () => { - if (!robot || !robot.recording || !robot.recording.workflow) return null; + if (!robot || !robot.recording || !robot.recording.workflow) return null; - const editableActions = new Set(['screenshot', 'scrapeList', 'scrapeSchema']); - const textInputs: JSX.Element[] = []; - const screenshotInputs: JSX.Element[] = []; - const listInputs: JSX.Element[] = []; + const editableActions = new Set(['screenshot', 'scrapeList', 'scrapeSchema']); + const textInputs: JSX.Element[] = []; + const screenshotInputs: JSX.Element[] = []; + const listInputs: JSX.Element[] = []; - robot.recording.workflow.forEach((pair, pairIndex) => { - if (!pair.what) return; + robot.recording.workflow.forEach((pair, pairIndex) => { + if (!pair.what) return; - pair.what.forEach((action, actionIndex) => { - if (!editableActions.has(String(action.action))) return; + pair.what.forEach((action, actionIndex) => { + if (!editableActions.has(String(action.action))) return; - const currentName = - action.name || - (action.args && action.args[0] && typeof action.args[0] === 'object' && action.args[0].__name) || - ''; + const currentName = + action.name || + (action.args && action.args[0] && typeof action.args[0] === 'object' && action.args[0].__name) || + ''; - const textField = ( - handleActionNameChange(pairIndex, actionIndex, e.target.value)} - style={{ marginBottom: '12px' }} - fullWidth - /> - ); + const textField = ( + handleActionNameChange(pairIndex, actionIndex, e.target.value)} + style={{ marginBottom: '12px' }} + fullWidth + /> + ); - switch (action.action) { - case 'scrapeSchema': - textInputs.push(textField); - break; - case 'screenshot': - screenshotInputs.push(textField); - break; - case 'scrapeList': - listInputs.push(textField); - break; - } + switch (action.action) { + case 'scrapeSchema': + textInputs.push(textField); + break; + case 'screenshot': + screenshotInputs.push(textField); + break; + case 'scrapeList': + listInputs.push(textField); + break; + } + }); }); - }); - const hasAnyInputs = textInputs.length > 0 || screenshotInputs.length > 0 || listInputs.length > 0; - if (!hasAnyInputs) return null; + const hasAnyInputs = textInputs.length > 0 || screenshotInputs.length > 0 || listInputs.length > 0; + if (!hasAnyInputs) return null; - return ( - <> - - {t('Actions')} - - - {textInputs.length > 0 && ( - <> - - Texts - - {textInputs} - - )} + return ( + <> + + {t('Actions')} + - {screenshotInputs.length > 0 && ( - <> - 0 ? '16px' : '0' }}> - Screenshots - - {screenshotInputs} - - )} + {textInputs.length > 0 && ( + <> + + Texts + + {textInputs} + + )} - {listInputs.length > 0 && ( - <> - 0 || screenshotInputs.length > 0) ? '16px' : '0' }}> - Lists - - {listInputs} - - )} - - ); -}; + {screenshotInputs.length > 0 && ( + <> + 0 ? '16px' : '0' }}> + Screenshots + + {screenshotInputs} + + )} + + {listInputs.length > 0 && ( + <> + 0 || screenshotInputs.length > 0) ? '16px' : '0' }}> + Lists + + {listInputs} + + )} + + ); + }; const renderCredentialFields = ( selectors: string[], From 6692de2b130fc1523870b38ceb0f84ef6f154805 Mon Sep 17 00:00:00 2001 From: amhsirak Date: Mon, 27 Oct 2025 17:59:58 +0530 Subject: [PATCH 5/7] fix: use h6 typography --- src/components/robot/pages/RobotEditPage.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/robot/pages/RobotEditPage.tsx b/src/components/robot/pages/RobotEditPage.tsx index 6b323c6e..1eabc5d4 100644 --- a/src/components/robot/pages/RobotEditPage.tsx +++ b/src/components/robot/pages/RobotEditPage.tsx @@ -584,7 +584,7 @@ export const RobotEditPage = ({ handleStart }: RobotSettingsProps) => { return ( <> - + {t('Actions')} From d5e250001788b614ebfb22549ff1ae2aa697335a Mon Sep 17 00:00:00 2001 From: amhsirak Date: Mon, 27 Oct 2025 18:09:21 +0530 Subject: [PATCH 6/7] fix: use h6 typography --- src/components/robot/pages/RobotEditPage.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/robot/pages/RobotEditPage.tsx b/src/components/robot/pages/RobotEditPage.tsx index 1eabc5d4..96f7c9d3 100644 --- a/src/components/robot/pages/RobotEditPage.tsx +++ b/src/components/robot/pages/RobotEditPage.tsx @@ -506,7 +506,7 @@ export const RobotEditPage = ({ handleStart }: RobotSettingsProps) => { return ( <> - + {t("List Limits")} From f5e9cec74f07e0e39c879efa567d36b30505ef9d Mon Sep 17 00:00:00 2001 From: amhsirak Date: Mon, 27 Oct 2025 18:09:38 +0530 Subject: [PATCH 7/7] fix: remove maxHeight --- src/components/robot/pages/RobotConfigPage.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/components/robot/pages/RobotConfigPage.tsx b/src/components/robot/pages/RobotConfigPage.tsx index 53ae90ab..d52b985e 100644 --- a/src/components/robot/pages/RobotConfigPage.tsx +++ b/src/components/robot/pages/RobotConfigPage.tsx @@ -62,7 +62,6 @@ export const RobotConfigPage: React.FC = ({