feat: add update screenshot step data

This commit is contained in:
Rohit
2025-06-25 12:44:27 +05:30
parent 026a0d953a
commit 09064e9533

View File

@@ -6,14 +6,15 @@ export interface TextStep {
label: string;
data: string;
selectorObj: SelectorObject;
actionId?: string; // Add actionId to track which action created this step
actionId?: string;
}
interface ScreenshotStep {
id: number;
type: 'screenshot';
fullPage: boolean;
actionId?: string; // Add actionId to track which action created this step
actionId?: string;
screenshotData?: string;
}
export interface ListStep {
@@ -26,7 +27,7 @@ export interface ListStep {
selector: string;
};
limit?: number;
actionId?: string; // Add actionId to track which action created this step
actionId?: string;
}
export type BrowserStep = TextStep | ScreenshotStep | ListStep;
@@ -50,7 +51,8 @@ interface BrowserStepsContextType {
updateListStepLimit: (listId: number, limit: number) => void;
updateListStepData: (listId: number, extractedData: any[]) => void;
removeListTextField: (listId: number, fieldKey: string) => void;
deleteStepsByActionId: (actionId: string) => void; // New function to delete steps by actionId
deleteStepsByActionId: (actionId: string) => void;
updateScreenshotStepData: (id: number, screenshotData: string) => void;
}
const BrowserStepsContext = createContext<BrowserStepsContextType | undefined>(undefined);
@@ -179,6 +181,20 @@ export const BrowserStepsProvider: React.FC<{ children: React.ReactNode }> = ({
});
};
const updateScreenshotStepData = (id: number, screenshotData: string) => {
setBrowserSteps(prevSteps => {
return prevSteps.map(step => {
if (step.type === 'screenshot' && step.id === id) {
return {
...step,
screenshotData: screenshotData
};
}
return step;
});
});
};
const updateListStepLimit = (listId: number, limit: number) => {
setBrowserSteps(prevSteps =>
prevSteps.map(step => {
@@ -220,7 +236,8 @@ export const BrowserStepsProvider: React.FC<{ children: React.ReactNode }> = ({
updateListStepLimit,
updateListStepData,
removeListTextField,
deleteStepsByActionId, // Export the new function
deleteStepsByActionId,
updateScreenshotStepData,
}}>
{children}
</BrowserStepsContext.Provider>