Skip to content

Commit

Permalink
fix: add pierce selector
Browse files Browse the repository at this point in the history
  • Loading branch information
pgagnidze committed Dec 15, 2023
1 parent a1afe00 commit 184e776
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 3 deletions.
18 changes: 15 additions & 3 deletions src/bird/birdActions.ts
Expand Up @@ -1800,6 +1800,11 @@ export const birdActionsData = [
"title": "TextSelector",
"description": "TextSelector of the element to click on"
},
"pierceSelector": {
"type": "string",
"title": "PierceSelector",
"description": "PierceSelector of the element to click on"
},
"querySelector": {
"type": "string",
"title": "QuerySelector",
Expand All @@ -1815,7 +1820,8 @@ export const birdActionsData = [
"querySelector",
"ariaSelector",
"xpathSelector",
"textSelector"
"textSelector",
"pierceSelector"
],
"type": "string",
"title": "PreferredSelector",
Expand Down Expand Up @@ -1897,6 +1903,11 @@ export const birdActionsData = [
"title": "TextSelector",
"description": "TextSelector of the input field"
},
"pierceSelector": {
"type": "string",
"title": "PierceSelector",
"description": "PierceSelector of the input field"
},
"querySelector": {
"type": "string",
"title": "QuerySelector",
Expand All @@ -1917,11 +1928,12 @@ export const birdActionsData = [
"querySelector",
"ariaSelector",
"xpathSelector",
"textSelector"
"textSelector",
"pierceSelector"
],
"type": "string",
"title": "PreferredSelector",
"pattern": "^(?:querySelector|ariaSelector|xpathSelector|textSelector)$",
"pattern": "^(?:querySelector|ariaSelector|xpathSelector|textSelector|pierceSelector)$",
"description": "PreferredSelector of the input field"
}
},
Expand Down
6 changes: 6 additions & 0 deletions src/bird/operations/click.ts
Expand Up @@ -46,6 +46,12 @@ export const a_click = async (
selectors.push([options.textSelector]);
}
}
if (options.pierceSelector) {
// @ts-ignore
if (options.pierceSelector !== selectors[0][0]) {
selectors.push([options.pierceSelector]);
}
}
await scrollIntoViewIfNeeded(
selectors,
page,
Expand Down
6 changes: 6 additions & 0 deletions src/bird/operations/input.ts
Expand Up @@ -61,6 +61,12 @@ export const a_input = async (
selectors.push([options.textSelector]);
}
}
if (options.pierceSelector) {
// @ts-ignore
if (options.pierceSelector !== selectors[0][0]) {
selectors.push([options.pierceSelector]);
}
}
await scrollIntoViewIfNeeded(
selectors,
page,
Expand Down
2 changes: 2 additions & 0 deletions src/types/actions.ts
Expand Up @@ -212,6 +212,7 @@ export interface InputActionType {
ariaSelector?: string;
xpathSelector?: string;
textSelector?: string;
pierceSelector?: string;
value?: string;
delay?: string;
encrypt?: boolean;
Expand All @@ -227,6 +228,7 @@ export interface ClickActionType {
ariaSelector?: string;
xpathSelector?: string;
textSelector?: string;
pierceSelector?: string;
offsetX?: number;
offsetY?: number;
rightClick?: boolean;
Expand Down

0 comments on commit 184e776

Please sign in to comment.