Merge branch 'develop' into all-record
This commit is contained in:
@@ -224,9 +224,15 @@ const onMousemove = async (socket: AuthenticatedSocket, coordinates: Coordinates
|
||||
*/
|
||||
const handleMousemove = async (generator: WorkflowGenerator, page: Page, { x, y }: Coordinates) => {
|
||||
try {
|
||||
if (page.isClosed()) {
|
||||
logger.log('debug', `Ignoring mousemove event: page is closed`);
|
||||
return;
|
||||
}
|
||||
await page.mouse.move(x, y);
|
||||
throttle(async () => {
|
||||
await generator.generateDataForHighlighter(page, { x, y });
|
||||
if (!page.isClosed()) {
|
||||
await generator.generateDataForHighlighter(page, { x, y });
|
||||
}
|
||||
}, 100)();
|
||||
logger.log('debug', `Moved over position x:${x}, y:${y}`);
|
||||
} catch (e) {
|
||||
@@ -402,7 +408,7 @@ const handleChangeUrl = async (generator: WorkflowGenerator, page: Page, url: st
|
||||
if (url) {
|
||||
await generator.onChangeUrl(url, page);
|
||||
try {
|
||||
await page.goto(url);
|
||||
await page.goto(url, { waitUntil: 'networkidle', timeout: 10000 });
|
||||
logger.log('debug', `Went to ${url}`);
|
||||
} catch (e) {
|
||||
const { message } = e as Error;
|
||||
@@ -514,4 +520,4 @@ const registerInputHandlers = (socket: Socket) => {
|
||||
socket.on("action", (data) => onGenerateAction(authSocket, data));
|
||||
};
|
||||
|
||||
export default registerInputHandlers;
|
||||
export default registerInputHandlers;
|
||||
|
||||
@@ -93,7 +93,7 @@ async function resetBrowserState(browser: RemoteBrowser): Promise<boolean> {
|
||||
}
|
||||
|
||||
// Navigate to blank page to reset state
|
||||
await currentPage.goto('about:blank');
|
||||
await currentPage.goto('about:blank', { waitUntil: 'networkidle', timeout: 10000 });
|
||||
|
||||
// Clear browser storage
|
||||
await currentPage.evaluate(() => {
|
||||
|
||||
@@ -10,6 +10,7 @@ import {
|
||||
getRemoteBrowserCurrentUrl,
|
||||
getRemoteBrowserCurrentTabs,
|
||||
getActiveBrowserIdByState,
|
||||
destroyRemoteBrowser,
|
||||
} from '../browser-management/controller';
|
||||
import { chromium } from 'playwright-extra';
|
||||
import stealthPlugin from 'puppeteer-extra-plugin-stealth';
|
||||
@@ -146,8 +147,8 @@ router.get('/stop/:browserId', requireSignIn, async (req: AuthenticatedRequest,
|
||||
});
|
||||
|
||||
if (!jobId) {
|
||||
const browserId = initializeRemoteBrowserForRecording(req.user.id);
|
||||
return res.send( browserId );
|
||||
await destroyRemoteBrowser(req.params.browserId, req.user.id);
|
||||
return res.send(false);
|
||||
}
|
||||
|
||||
logger.log('info', `Queued browser destruction job: ${jobId}, waiting for completion...`);
|
||||
|
||||
Reference in New Issue
Block a user