Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: support argument overrides #5200

Merged
merged 4 commits into from
Jan 29, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 0 additions & 1 deletion docs/src/api/class-browsercontext.md
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,6 @@ The order of evaluation of multiple scripts installed via [`method: BrowserConte
:::

### param: BrowserContext.addInitScript.script
* langs: js
- `script` <[function]|[string]|[Object]>
- `path` <[path]> Path to the JavaScript file. If `path` is a relative path, then it is resolved relative to the
current working directory. Optional.
Expand Down
12 changes: 2 additions & 10 deletions docs/src/api/class-elementhandle.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,11 +114,7 @@ assert tweet_handle.eval_on_selector(".retweets", "node => node.innerText") = "1

### param: ElementHandle.$eval.selector = %%-query-selector-%%

### param: ElementHandle.$eval.pageFunction
* langs: js
- `pageFunction` <[function]\([Element]\)>

Function to be evaluated in browser context
### param: ElementHandle.$eval.expression = %%-evaluate-expression-%%

### param: ElementHandle.$eval.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -165,11 +161,7 @@ assert feed_handle.eval_on_selector_all(".tweet", "nodes => nodes.map(n => n.inn

### param: ElementHandle.$$eval.selector = %%-query-selector-%%

### param: ElementHandle.$$eval.pageFunction
* langs: js
- `pageFunction` <[function]\([Array]<[Element]>\)>

Function to be evaluated in browser context
### param: ElementHandle.$$eval.expression = %%-evaluate-expression-%%

### param: ElementHandle.$$eval.arg
- `arg` <[EvaluationArgument]>
Expand Down
30 changes: 5 additions & 25 deletions docs/src/api/class-frame.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,11 +136,7 @@ html = frame.eval_on_selector(".main-container", "(e, suffix) => e.outerHTML + s

### param: Frame.$eval.selector = %%-query-selector-%%

### param: Frame.$eval.pageFunction
* langs: js
- `pageFunction` <[function]\([Element]\)>

Function to be evaluated in browser context
### param: Frame.$eval.expression = %%-evaluate-expression-%%

### param: Frame.$eval.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -177,11 +173,7 @@ divs_counts = frame.eval_on_selector_all("div", "(divs, min) => divs.length >= m

### param: Frame.$$eval.selector = %%-query-selector-%%

### param: Frame.$$eval.pageFunction
* langs: js
- `pageFunction` <[function]\([Array]<[Element]>\)>

Function to be evaluated in browser context
### param: Frame.$$eval.expression = %%-evaluate-expression-%%

### param: Frame.$$eval.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -477,11 +469,7 @@ html = frame.evaluate("([body, suffix]) => body.innerHTML + suffix", [body_handl
body_handle.dispose()
```

### param: Frame.evaluate.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in browser context
### param: Frame.evaluate.expression = %%-evaluate-expression-%%

### param: Frame.evaluate.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -551,11 +539,7 @@ print(result_handle.json_value())
result_handle.dispose()
```

### param: Frame.evaluateHandle.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in the page context
### param: Frame.evaluateHandle.expression = %%-evaluate-expression-%%

### param: Frame.evaluateHandle.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -1089,11 +1073,7 @@ selector = ".foo"
frame.wait_for_function("selector => !!document.querySelector(selector)", selector)
```

### param: Frame.waitForFunction.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in browser context
### param: Frame.waitForFunction.expression = %%-evaluate-expression-%%

### param: Frame.waitForFunction.arg
- `arg` <[EvaluationArgument]>
Expand Down
12 changes: 2 additions & 10 deletions docs/src/api/class-jshandle.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,11 +61,7 @@ tweet_handle = page.query_selector(".tweet .retweets")
assert tweet_handle.evaluate("node => node.innerText") == "10 retweets"
```

### param: JSHandle.evaluate.pageFunction
* langs: js
- `pageFunction` <[function]>

Function to be evaluated in browser context
### param: JSHandle.evaluate.expression = %%-evaluate-expression-%%

### param: JSHandle.evaluate.arg
- `arg` <[EvaluationArgument]>
Expand All @@ -87,11 +83,7 @@ for the promise to resolve and return its value.

See [`method: Page.evaluateHandle`] for more details.

### param: JSHandle.evaluateHandle.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated
### param: JSHandle.evaluateHandle.expression = %%-evaluate-expression-%%

### param: JSHandle.evaluateHandle.arg
- `arg` <[EvaluationArgument]>
Expand Down
31 changes: 5 additions & 26 deletions docs/src/api/class-page.md
Original file line number Diff line number Diff line change
Expand Up @@ -369,11 +369,7 @@ Shortcut for main frame's [`method: Frame.$eval`].

### param: Page.$eval.selector = %%-query-selector-%%

### param: Page.$eval.pageFunction
* langs: js
- `pageFunction` <[function]\([Element]\)>

Function to be evaluated in browser context
### param: Page.$eval.expression = %%-evaluate-expression-%%

### param: Page.$eval.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -407,11 +403,7 @@ div_counts = page.eval_on_selector_all("div", "(divs, min) => divs.length >= min

### param: Page.$$eval.selector = %%-query-selector-%%

### param: Page.$$eval.pageFunction
* langs: js
- `pageFunction` <[function]\([Array]<[Element]>\)>

Function to be evaluated in browser context
### param: Page.$$eval.expression = %%-evaluate-expression-%%

### param: Page.$$eval.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -459,7 +451,6 @@ The order of evaluation of multiple scripts installed via [`method: BrowserConte
:::

### param: Page.addInitScript.script
* langs: js
- `script` <[function]|[string]|[Object]>
- `path` <[path]> Path to the JavaScript file. If `path` is a relative path, then it is resolved relative to the
current working directory. Optional.
Expand Down Expand Up @@ -903,11 +894,7 @@ body_handle.dispose()

Shortcut for main frame's [`method: Frame.evaluate`].

### param: Page.evaluate.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in the page context
### param: Page.evaluate.expression = %%-evaluate-expression-%%

### param: Page.evaluate.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -977,11 +964,7 @@ print(result_handle.json_value())
result_handle.dispose()
```

### param: Page.evaluateHandle.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in the page context
### param: Page.evaluateHandle.expression = %%-evaluate-expression-%%

### param: Page.evaluateHandle.arg
- `arg` <[EvaluationArgument]>
Expand Down Expand Up @@ -2279,11 +2262,7 @@ page.wait_for_function("selector => !!document.querySelector(selector)", selecto

Shortcut for main frame's [`method: Frame.waitForFunction`].

### param: Page.waitForFunction.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in browser context
### param: Page.waitForFunction.expression = %%-evaluate-expression-%%

### param: Page.waitForFunction.arg
- `arg` <[EvaluationArgument]>
Expand Down
12 changes: 2 additions & 10 deletions docs/src/api/class-worker.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,7 @@ If the function passed to the `worker.evaluate` returns a non-[Serializable] val
`undefined`. DevTools Protocol also supports transferring some additional values that are not serializable by `JSON`:
`-0`, `NaN`, `Infinity`, `-Infinity`, and bigint literals.

### param: Worker.evaluate.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in the worker context
### param: Worker.evaluate.expression = %%-evaluate-expression-%%

### param: Worker.evaluate.arg
- `arg` <[EvaluationArgument]>
Expand All @@ -66,11 +62,7 @@ in-page object (JSHandle).
If the function passed to the `worker.evaluateHandle` returns a [Promise], then `worker.evaluateHandle` would wait for
the promise to resolve and return its value.

### param: Worker.evaluateHandle.pageFunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in the page context
### param: Worker.evaluateHandle.expression = %%-evaluate-expression-%%

### param: Worker.evaluateHandle.arg
- `arg` <[EvaluationArgument]>
Expand Down
16 changes: 16 additions & 0 deletions docs/src/api/javascript.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
### param: ElementHandle.$eval.expression = %%-js-evalonselector-pagefunction-%%
### param: ElementHandle.$$eval.expression = %%-js-evalonselectorall-pagefunction-%%
### param: Frame.$eval.expression = %%-js-evalonselector-pagefunction-%%
### param: Frame.$$eval.expression = %%-js-evalonselectorall-pagefunction-%%
### param: Frame.evaluate.expression = %%-js-evaluate-pagefunction-%%
### param: Frame.evaluateHandle.expression = %%-js-evaluate-pagefunction-%%
### param: Frame.waitForFunction.expression = %%-js-evaluate-pagefunction-%%
### param: JSHandle.evaluate.expression = %%-js-evaluate-pagefunction-%%
### param: JSHandle.evaluateHandle.expression = %%-js-evaluate-pagefunction-%%
### param: Page.$eval.expression = %%-js-evalonselector-pagefunction-%%
### param: Page.$$eval.expression = %%-js-evalonselectorall-pagefunction-%%
### param: Page.evaluate.expression = %%-js-evaluate-pagefunction-%%
### param: Page.evaluateHandle.expression = %%-js-evaluate-pagefunction-%%
### param: Page.waitForFunction.expression = %%-js-evaluate-pagefunction-%%
### param: Worker.evaluate.expression = %%-js-worker-evaluate-workerfunction-%%
### param: Worker.evaluateHandle.expression = %%-js-worker-evaluate-workerfunction-%%
37 changes: 30 additions & 7 deletions docs/src/api/params.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,36 @@ Toggles bypassing page's Content-Security-Policy.

Sets a consistent viewport for each page. Defaults to an 1280x720 viewport. `null` disables the default viewport.

## evaluate-expression
- `expression` <[string]>

JavaScript expression to be evaluated in the browser context. If it looks like a function declaration,
it is interpreted as a function. Otherwise, evaluated as an expression.

## js-evaluate-pagefunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in the page context

## js-evalonselector-pagefunction
* langs: js
- `pageFunction` <[function]\([Element]\)>

Function to be evaluated in the page context

## js-evalonselectorall-pagefunction
* langs: js
- `pageFunction` <[function]\([Array]<[Element]>\)>

Function to be evaluated in the page context

## js-worker-evaluate-workerfunction
* langs: js
- `pageFunction` <[function]|[string]>

Function to be evaluated in the worker context

## python-context-option-viewport
* langs: python
- `viewport` <[null]|[Object]>
Expand Down Expand Up @@ -394,13 +424,6 @@ Receives the event data and resolves to truthy value when the waiting should res
Maximum time to wait for in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
The default value can be changed by using the [`method: BrowserContext.setDefaultTimeout`].

## python-evaluate-expression
* langs: python
- `expression` <string>

JavaScript expression to be evaluated in the browser context. If it looks like a function declaration,
it is interpreted as a function. Otherwise, evaluated as an expression.

## python-evaluate-force-expression
* langs: python
- `force_expr` <boolean>
Expand Down
49 changes: 16 additions & 33 deletions docs/src/api/python.md
Original file line number Diff line number Diff line change
Expand Up @@ -275,36 +275,19 @@ Will throw an error if the socket is closed before the `event` is fired.
### option: WebSocket.waitForEvent2.predicate = %%-python-wait-for-event-predicate-%%
### option: WebSocket.waitForEvent2.timeout = %%-python-wait-for-event-timeout-%%

### param: ElementHandle.$eval.expression = %%-python-evaluate-expression-%%
### param: ElementHandle.$$eval.expression = %%-python-evaluate-expression-%%
### param: Frame.$eval.expression = %%-python-evaluate-expression-%%
### param: Frame.$$eval.expression = %%-python-evaluate-expression-%%
### param: Frame.evaluate.expression = %%-python-evaluate-expression-%%
### param: Frame.evaluateHandle.expression = %%-python-evaluate-expression-%%
### param: Frame.waitForFunction.expression = %%-python-evaluate-expression-%%
### param: JSHandle.evaluate.expression = %%-python-evaluate-expression-%%
### param: JSHandle.evaluateHandle.expression = %%-python-evaluate-expression-%%
### param: Page.$eval.expression = %%-python-evaluate-expression-%%
### param: Page.$$eval.expression = %%-python-evaluate-expression-%%
### param: Page.evaluate.expression = %%-python-evaluate-expression-%%
### param: Page.evaluateHandle.expression = %%-python-evaluate-expression-%%
### param: Page.waitForFunction.expression = %%-python-evaluate-expression-%%
### param: Worker.evaluate.expression = %%-python-evaluate-expression-%%
### param: Worker.evaluateHandle.expression = %%-python-evaluate-expression-%%

### param: ElementHandle.$eval.expression = %%-python-evaluate-force-expression-%%
### param: ElementHandle.$$eval.expression = %%-python-evaluate-force-expression-%%
### param: Frame.$eval.expression = %%-python-evaluate-force-expression-%%
### param: Frame.$$eval.expression = %%-python-evaluate-force-expression-%%
### param: Frame.evaluate.expression = %%-python-evaluate-force-expression-%%
### param: Frame.evaluateHandle.expression = %%-python-evaluate-force-expression-%%
### param: Frame.waitForFunction.expression = %%-python-evaluate-force-expression-%%
### param: JSHandle.evaluate.expression = %%-python-evaluate-force-expression-%%
### param: JSHandle.evaluateHandle.expression = %%-python-evaluate-force-expression-%%
### param: Page.$eval.expression = %%-python-evaluate-force-expression-%%
### param: Page.$$eval.expression = %%-python-evaluate-force-expression-%%
### param: Page.evaluate.expression = %%-python-evaluate-force-expression-%%
### param: Page.evaluateHandle.expression = %%-python-evaluate-force-expression-%%
### param: Page.waitForFunction.expression = %%-python-evaluate-force-expression-%%
### param: Worker.evaluate.expression = %%-python-evaluate-force-expression-%%
### param: Worker.evaluateHandle.expression = %%-python-evaluate-force-expression-%%
### param: ElementHandle.$eval.foce_expression = %%-python-evaluate-force-expression-%%
### param: ElementHandle.$$eval.foce_expression = %%-python-evaluate-force-expression-%%
### param: Frame.$eval.foce_expression = %%-python-evaluate-force-expression-%%
### param: Frame.$$eval.foce_expression = %%-python-evaluate-force-expression-%%
### param: Frame.evaluate.foce_expression = %%-python-evaluate-force-expression-%%
### param: Frame.evaluateHandle.foce_expression = %%-python-evaluate-force-expression-%%
### param: Frame.waitForFunction.foce_expression = %%-python-evaluate-force-expression-%%
### param: JSHandle.evaluate.foce_expression = %%-python-evaluate-force-expression-%%
### param: JSHandle.evaluateHandle.foce_expression = %%-python-evaluate-force-expression-%%
### param: Page.$eval.foce_expression = %%-python-evaluate-force-expression-%%
### param: Page.$$eval.foce_expression = %%-python-evaluate-force-expression-%%
### param: Page.evaluate.foce_expression = %%-python-evaluate-force-expression-%%
### param: Page.evaluateHandle.foce_expression = %%-python-evaluate-force-expression-%%
### param: Page.waitForFunction.foce_expression = %%-python-evaluate-force-expression-%%
### param: Worker.evaluate.foce_expression = %%-python-evaluate-force-expression-%%
### param: Worker.evaluateHandle.foce_expression = %%-python-evaluate-force-expression-%%