From a7c101350d568ae3e52f88b1157b9c3f78647aeb Mon Sep 17 00:00:00 2001 From: Marat Abdullin Date: Mon, 23 Feb 2026 20:34:31 +0100 Subject: [PATCH 1/2] Setting the idle() call timeout to 0 for actions to avoid side effects. --- tools/playwright/package-lock.json | 4 ++-- tools/playwright/package.json | 2 +- tools/playwright/src/page-injector.ts | 14 ++++++++++---- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/tools/playwright/package-lock.json b/tools/playwright/package-lock.json index fb8c876..74886f6 100644 --- a/tools/playwright/package-lock.json +++ b/tools/playwright/package-lock.json @@ -1,12 +1,12 @@ { "name": "abledom-playwright", - "version": "0.0.18", + "version": "0.0.19", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "abledom-playwright", - "version": "0.0.18", + "version": "0.0.19", "license": "MIT", "devDependencies": { "@eslint/js": "^9.39.2", diff --git a/tools/playwright/package.json b/tools/playwright/package.json index 2816be8..5149600 100644 --- a/tools/playwright/package.json +++ b/tools/playwright/package.json @@ -1,6 +1,6 @@ { "name": "abledom-playwright", - "version": "0.0.18", + "version": "0.0.19", "description": "AbleDOM tools for Playwright", "author": "Marat Abdullin ", "license": "MIT", diff --git a/tools/playwright/src/page-injector.ts b/tools/playwright/src/page-injector.ts index 33a4e68..f8d87b2 100644 --- a/tools/playwright/src/page-injector.ts +++ b/tools/playwright/src/page-injector.ts @@ -141,7 +141,10 @@ export async function attachAbleDOMMethodsToPage( if (!locatorProto.__locatorIsMonkeyPatchedWithAbleDOM) { locatorProto.__locatorIsMonkeyPatchedWithAbleDOM = true; - const reportAbleDOMIssues = async (self: Locator) => { + const reportAbleDOMIssues = async ( + self: Locator, + timeoutOverride?: number, + ) => { const currentPage = self.page(); // Skip if the page is already closed @@ -152,8 +155,11 @@ export async function attachAbleDOMMethodsToPage( // Get options from the page object const pageMarkAsRead = (currentPage as unknown as Record) .__abledomMarkAsRead as boolean | undefined; - const pageTimeout = (currentPage as unknown as Record) - .__abledomTimeout as number | undefined; + const pageTimeout = + timeoutOverride === undefined + ? ((currentPage as unknown as Record) + .__abledomTimeout as number | undefined) + : timeoutOverride; let result: { hasInstance: boolean; @@ -296,7 +302,7 @@ export async function attachAbleDOMMethodsToPage( (locatorProto as unknown as LocatorProtoWithActions)[action] = async function (this: Locator, ...args: unknown[]) { const ret = await originalAction.apply(this, args); - await reportAbleDOMIssues(this); + await reportAbleDOMIssues(this, 0); // Overriding the timeout fo actions to avoid side effects. return ret; }; } From dd588c951fcc948eb15791d1f3646a2186bd026b Mon Sep 17 00:00:00 2001 From: Marat Abdullin Date: Mon, 23 Feb 2026 20:36:12 +0100 Subject: [PATCH 2/2] Fixing the comment. --- tools/playwright/src/page-injector.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/playwright/src/page-injector.ts b/tools/playwright/src/page-injector.ts index f8d87b2..976f8f8 100644 --- a/tools/playwright/src/page-injector.ts +++ b/tools/playwright/src/page-injector.ts @@ -302,7 +302,7 @@ export async function attachAbleDOMMethodsToPage( (locatorProto as unknown as LocatorProtoWithActions)[action] = async function (this: Locator, ...args: unknown[]) { const ret = await originalAction.apply(this, args); - await reportAbleDOMIssues(this, 0); // Overriding the timeout fo actions to avoid side effects. + await reportAbleDOMIssues(this, 0); // Setting the timeout for actions to 0 to avoid side effects. return ret; }; }