Skip to content

Commit

Permalink
docs: support argument overrides (#5200)
Browse files Browse the repository at this point in the history
  • Loading branch information
yury-s committed Jan 29, 2021
1 parent 8581e3e commit 21041bc
Show file tree
Hide file tree
Showing 14 changed files with 128 additions and 159 deletions.
1 change: 0 additions & 1 deletion docs/src/api/class-browsercontext.md
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
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
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
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
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
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
@@ -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
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
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-%%

0 comments on commit 21041bc

Please sign in to comment.