From 525097d465414c44a7a0b3f307ff532bac7768d5 Mon Sep 17 00:00:00 2001 From: Dmitry Gozman Date: Mon, 27 Mar 2023 14:29:30 -0700 Subject: [PATCH] feat: Locator.filter(locator) (#21975) Produces a locator that matches both locators. Implemented through `internal:and` selector. Fixes #19551. --- docs/src/api/class-locator.md | 42 ++++++++++++++++++- docs/src/api/params.md | 4 +- docs/src/locators.md | 32 ++++++++++++-- docs/src/other-locators.md | 2 +- docs/src/release-notes-csharp.md | 2 +- docs/src/release-notes-java.md | 2 +- docs/src/release-notes-js.md | 4 +- docs/src/release-notes-python.md | 2 +- .../playwright-core/src/client/locator.ts | 11 ++++- .../src/server/injected/consoleApi.ts | 6 ++- .../src/server/injected/injectedScript.ts | 12 ++---- .../playwright-core/src/server/selectors.ts | 2 +- .../src/utils/isomorphic/locatorGenerators.ts | 15 ++++++- .../src/utils/isomorphic/locatorParser.ts | 2 +- .../src/utils/isomorphic/selectorParser.ts | 2 +- packages/playwright-core/types/types.d.ts | 27 +++++++++--- tests/library/inspector/console-api.spec.ts | 7 +++- tests/library/locator-generator.spec.ts | 7 ++++ tests/page/locator-query.spec.ts | 13 ++++++ tests/page/selectors-misc.spec.ts | 13 ++++++ utils/doclint/missingDocs.js | 8 ++-- 21 files changed, 175 insertions(+), 40 deletions(-) diff --git a/docs/src/api/class-locator.md b/docs/src/api/class-locator.md index f5da0a3995..0d2b7b677c 100644 --- a/docs/src/api/class-locator.md +++ b/docs/src/api/class-locator.md @@ -888,7 +888,7 @@ Value to set for the ``, `