summaryrefslogtreecommitdiff
path: root/vendor/github.com/playwright-community/playwright-go/generated-structs.go
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-05-12 16:33:27 -0600
committermo khan <mo@mokhan.ca>2025-05-12 16:33:27 -0600
commit29b59441a4bbada64d8d07bd2609f15dfde670e5 (patch)
tree3b3583edb261279cfcdfd9eed904d118c4bf67b1 /vendor/github.com/playwright-community/playwright-go/generated-structs.go
parent78ccd9a4312eab7e11da4413733a12953f88a4fe (diff)
test: remove UI tests
Diffstat (limited to 'vendor/github.com/playwright-community/playwright-go/generated-structs.go')
-rw-r--r--vendor/github.com/playwright-community/playwright-go/generated-structs.go4364
1 files changed, 0 insertions, 4364 deletions
diff --git a/vendor/github.com/playwright-community/playwright-go/generated-structs.go b/vendor/github.com/playwright-community/playwright-go/generated-structs.go
deleted file mode 100644
index 7a90f5a..0000000
--- a/vendor/github.com/playwright-community/playwright-go/generated-structs.go
+++ /dev/null
@@ -1,4364 +0,0 @@
-package playwright
-
-type APIRequestNewContextOptions struct {
- // Methods like [APIRequestContext.Get] take the base URL into consideration by using the
- // [`URL()`] constructor for building the corresponding URL.
- // Examples:
- // - baseURL: `http://localhost:3000` and sending request to `/bar.html` results in `http://localhost:3000/bar.html`
- // - baseURL: `http://localhost:3000/foo/` and sending request to `./bar.html` results in
- // `http://localhost:3000/foo/bar.html`
- // - baseURL: `http://localhost:3000/foo` (without trailing slash) and navigating to `./bar.html` results in
- // `http://localhost:3000/bar.html`
- //
- // [`URL()`]: https://developer.mozilla.org/en-US/docs/Web/API/URL/URL
- BaseURL *string `json:"baseURL"`
- // TLS Client Authentication allows the server to request a client certificate and verify it.
- //
- // # Details
- //
- // An array of client certificates to be used. Each certificate object must have either both `certPath` and `keyPath`,
- // a single `pfxPath`, or their corresponding direct value equivalents (`cert` and `key`, or `pfx`). Optionally,
- // `passphrase` property should be provided if the certificate is encrypted. The `origin` property should be provided
- // with an exact match to the request origin that the certificate is valid for.
- // **NOTE** When using WebKit on macOS, accessing `localhost` will not pick up client certificates. You can make it
- // work by replacing `localhost` with `local.playwright`.
- ClientCertificates []ClientCertificate `json:"clientCertificates"`
- // An object containing additional HTTP headers to be sent with every request. Defaults to none.
- ExtraHttpHeaders map[string]string `json:"extraHTTPHeaders"`
- // Whether to throw on response codes other than 2xx and 3xx. By default response object is returned for all status
- // codes.
- FailOnStatusCode *bool `json:"failOnStatusCode"`
- // Credentials for [HTTP authentication]. If no
- // origin is specified, the username and password are sent to any servers upon unauthorized responses.
- //
- // [HTTP authentication]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication
- HttpCredentials *HttpCredentials `json:"httpCredentials"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects. This can be overwritten for each request
- // individually.
- MaxRedirects *int `json:"maxRedirects"`
- // Network proxy settings.
- Proxy *Proxy `json:"proxy"`
- // Populates context with given storage state. This option can be used to initialize context with logged-in
- // information obtained via [BrowserContext.StorageState] or [APIRequestContext.StorageState]. Either a path to the
- // file with saved storage, or the value returned by one of [BrowserContext.StorageState] or
- // [APIRequestContext.StorageState] methods.
- StorageState *StorageState `json:"storageState"`
- // Populates context with given storage state. This option can be used to initialize context with logged-in
- // information obtained via [BrowserContext.StorageState]. Path to the file with saved storage state.
- StorageStatePath *string `json:"storageStatePath"`
- // Maximum time in milliseconds to wait for the response. Defaults to `30000` (30 seconds). Pass `0` to disable
- // timeout.
- Timeout *float64 `json:"timeout"`
- // Specific user agent to use in this context.
- UserAgent *string `json:"userAgent"`
-}
-
-type APIRequestContextDeleteOptions struct {
- // Allows to set post data of the request. If the data parameter is an object, it will be serialized to json string
- // and `content-type` header will be set to `application/json` if not explicitly set. Otherwise the `content-type`
- // header will be set to `application/octet-stream` if not explicitly set.
- Data interface{} `json:"data"`
- // Whether to throw on response codes other than 2xx and 3xx. By default response object is returned for all status
- // codes.
- FailOnStatusCode *bool `json:"failOnStatusCode"`
- // Provides an object that will be serialized as html form using `application/x-www-form-urlencoded` encoding and sent
- // as this request body. If this parameter is specified `content-type` header will be set to
- // `application/x-www-form-urlencoded` unless explicitly provided.
- Form interface{} `json:"form"`
- // Allows to set HTTP headers. These headers will apply to the fetched request as well as any redirects initiated by
- // it.
- Headers map[string]string `json:"headers"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects.
- MaxRedirects *int `json:"maxRedirects"`
- // Maximum number of times network errors should be retried. Currently only `ECONNRESET` error is retried. Does not
- // retry based on HTTP response codes. An error will be thrown if the limit is exceeded. Defaults to `0` - no retries.
- MaxRetries *int `json:"maxRetries"`
- // Provides an object that will be serialized as html form using `multipart/form-data` encoding and sent as this
- // request body. If this parameter is specified `content-type` header will be set to `multipart/form-data` unless
- // explicitly provided. File values can be passed either as
- // [`fs.ReadStream`] or as file-like object containing file
- // name, mime-type and its content.
- //
- // [`fs.ReadStream`]: https://nodejs.org/api/fs.html#fs_class_fs_readstream
- Multipart interface{} `json:"multipart"`
- // Query parameters to be sent with the URL.
- Params map[string]interface{} `json:"params"`
- // Request timeout in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type APIRequestContextDisposeOptions struct {
- // The reason to be reported to the operations interrupted by the context disposal.
- Reason *string `json:"reason"`
-}
-
-type APIRequestContextFetchOptions struct {
- // Allows to set post data of the request. If the data parameter is an object, it will be serialized to json string
- // and `content-type` header will be set to `application/json` if not explicitly set. Otherwise the `content-type`
- // header will be set to `application/octet-stream` if not explicitly set.
- Data interface{} `json:"data"`
- // Whether to throw on response codes other than 2xx and 3xx. By default response object is returned for all status
- // codes.
- FailOnStatusCode *bool `json:"failOnStatusCode"`
- // Provides an object that will be serialized as html form using `application/x-www-form-urlencoded` encoding and sent
- // as this request body. If this parameter is specified `content-type` header will be set to
- // `application/x-www-form-urlencoded` unless explicitly provided.
- Form interface{} `json:"form"`
- // Allows to set HTTP headers. These headers will apply to the fetched request as well as any redirects initiated by
- // it.
- Headers map[string]string `json:"headers"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects.
- MaxRedirects *int `json:"maxRedirects"`
- // Maximum number of times network errors should be retried. Currently only `ECONNRESET` error is retried. Does not
- // retry based on HTTP response codes. An error will be thrown if the limit is exceeded. Defaults to `0` - no retries.
- MaxRetries *int `json:"maxRetries"`
- // If set changes the fetch method (e.g. [PUT] or
- // [POST]. If not specified, GET method is used.
- //
- // [PUT]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PUT
- // [POST]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST)
- Method *string `json:"method"`
- // Provides an object that will be serialized as html form using `multipart/form-data` encoding and sent as this
- // request body. If this parameter is specified `content-type` header will be set to `multipart/form-data` unless
- // explicitly provided. File values can be passed either as
- // [`fs.ReadStream`] or as file-like object containing file
- // name, mime-type and its content.
- //
- // [`fs.ReadStream`]: https://nodejs.org/api/fs.html#fs_class_fs_readstream
- Multipart interface{} `json:"multipart"`
- // Query parameters to be sent with the URL.
- Params map[string]interface{} `json:"params"`
- // Request timeout in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type APIRequestContextGetOptions struct {
- // Allows to set post data of the request. If the data parameter is an object, it will be serialized to json string
- // and `content-type` header will be set to `application/json` if not explicitly set. Otherwise the `content-type`
- // header will be set to `application/octet-stream` if not explicitly set.
- Data interface{} `json:"data"`
- // Whether to throw on response codes other than 2xx and 3xx. By default response object is returned for all status
- // codes.
- FailOnStatusCode *bool `json:"failOnStatusCode"`
- // Provides an object that will be serialized as html form using `application/x-www-form-urlencoded` encoding and sent
- // as this request body. If this parameter is specified `content-type` header will be set to
- // `application/x-www-form-urlencoded` unless explicitly provided.
- Form interface{} `json:"form"`
- // Allows to set HTTP headers. These headers will apply to the fetched request as well as any redirects initiated by
- // it.
- Headers map[string]string `json:"headers"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects.
- MaxRedirects *int `json:"maxRedirects"`
- // Maximum number of times network errors should be retried. Currently only `ECONNRESET` error is retried. Does not
- // retry based on HTTP response codes. An error will be thrown if the limit is exceeded. Defaults to `0` - no retries.
- MaxRetries *int `json:"maxRetries"`
- // Provides an object that will be serialized as html form using `multipart/form-data` encoding and sent as this
- // request body. If this parameter is specified `content-type` header will be set to `multipart/form-data` unless
- // explicitly provided. File values can be passed either as
- // [`fs.ReadStream`] or as file-like object containing file
- // name, mime-type and its content.
- //
- // [`fs.ReadStream`]: https://nodejs.org/api/fs.html#fs_class_fs_readstream
- Multipart interface{} `json:"multipart"`
- // Query parameters to be sent with the URL.
- Params map[string]interface{} `json:"params"`
- // Request timeout in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type APIRequestContextHeadOptions struct {
- // Allows to set post data of the request. If the data parameter is an object, it will be serialized to json string
- // and `content-type` header will be set to `application/json` if not explicitly set. Otherwise the `content-type`
- // header will be set to `application/octet-stream` if not explicitly set.
- Data interface{} `json:"data"`
- // Whether to throw on response codes other than 2xx and 3xx. By default response object is returned for all status
- // codes.
- FailOnStatusCode *bool `json:"failOnStatusCode"`
- // Provides an object that will be serialized as html form using `application/x-www-form-urlencoded` encoding and sent
- // as this request body. If this parameter is specified `content-type` header will be set to
- // `application/x-www-form-urlencoded` unless explicitly provided.
- Form interface{} `json:"form"`
- // Allows to set HTTP headers. These headers will apply to the fetched request as well as any redirects initiated by
- // it.
- Headers map[string]string `json:"headers"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects.
- MaxRedirects *int `json:"maxRedirects"`
- // Maximum number of times network errors should be retried. Currently only `ECONNRESET` error is retried. Does not
- // retry based on HTTP response codes. An error will be thrown if the limit is exceeded. Defaults to `0` - no retries.
- MaxRetries *int `json:"maxRetries"`
- // Provides an object that will be serialized as html form using `multipart/form-data` encoding and sent as this
- // request body. If this parameter is specified `content-type` header will be set to `multipart/form-data` unless
- // explicitly provided. File values can be passed either as
- // [`fs.ReadStream`] or as file-like object containing file
- // name, mime-type and its content.
- //
- // [`fs.ReadStream`]: https://nodejs.org/api/fs.html#fs_class_fs_readstream
- Multipart interface{} `json:"multipart"`
- // Query parameters to be sent with the URL.
- Params map[string]interface{} `json:"params"`
- // Request timeout in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type APIRequestContextPatchOptions struct {
- // Allows to set post data of the request. If the data parameter is an object, it will be serialized to json string
- // and `content-type` header will be set to `application/json` if not explicitly set. Otherwise the `content-type`
- // header will be set to `application/octet-stream` if not explicitly set.
- Data interface{} `json:"data"`
- // Whether to throw on response codes other than 2xx and 3xx. By default response object is returned for all status
- // codes.
- FailOnStatusCode *bool `json:"failOnStatusCode"`
- // Provides an object that will be serialized as html form using `application/x-www-form-urlencoded` encoding and sent
- // as this request body. If this parameter is specified `content-type` header will be set to
- // `application/x-www-form-urlencoded` unless explicitly provided.
- Form interface{} `json:"form"`
- // Allows to set HTTP headers. These headers will apply to the fetched request as well as any redirects initiated by
- // it.
- Headers map[string]string `json:"headers"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects.
- MaxRedirects *int `json:"maxRedirects"`
- // Maximum number of times network errors should be retried. Currently only `ECONNRESET` error is retried. Does not
- // retry based on HTTP response codes. An error will be thrown if the limit is exceeded. Defaults to `0` - no retries.
- MaxRetries *int `json:"maxRetries"`
- // Provides an object that will be serialized as html form using `multipart/form-data` encoding and sent as this
- // request body. If this parameter is specified `content-type` header will be set to `multipart/form-data` unless
- // explicitly provided. File values can be passed either as
- // [`fs.ReadStream`] or as file-like object containing file
- // name, mime-type and its content.
- //
- // [`fs.ReadStream`]: https://nodejs.org/api/fs.html#fs_class_fs_readstream
- Multipart interface{} `json:"multipart"`
- // Query parameters to be sent with the URL.
- Params map[string]interface{} `json:"params"`
- // Request timeout in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type APIRequestContextPostOptions struct {
- // Allows to set post data of the request. If the data parameter is an object, it will be serialized to json string
- // and `content-type` header will be set to `application/json` if not explicitly set. Otherwise the `content-type`
- // header will be set to `application/octet-stream` if not explicitly set.
- Data interface{} `json:"data"`
- // Whether to throw on response codes other than 2xx and 3xx. By default response object is returned for all status
- // codes.
- FailOnStatusCode *bool `json:"failOnStatusCode"`
- // Provides an object that will be serialized as html form using `application/x-www-form-urlencoded` encoding and sent
- // as this request body. If this parameter is specified `content-type` header will be set to
- // `application/x-www-form-urlencoded` unless explicitly provided.
- Form interface{} `json:"form"`
- // Allows to set HTTP headers. These headers will apply to the fetched request as well as any redirects initiated by
- // it.
- Headers map[string]string `json:"headers"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects.
- MaxRedirects *int `json:"maxRedirects"`
- // Maximum number of times network errors should be retried. Currently only `ECONNRESET` error is retried. Does not
- // retry based on HTTP response codes. An error will be thrown if the limit is exceeded. Defaults to `0` - no retries.
- MaxRetries *int `json:"maxRetries"`
- // Provides an object that will be serialized as html form using `multipart/form-data` encoding and sent as this
- // request body. If this parameter is specified `content-type` header will be set to `multipart/form-data` unless
- // explicitly provided. File values can be passed either as
- // [`fs.ReadStream`] or as file-like object containing file
- // name, mime-type and its content.
- //
- // [`fs.ReadStream`]: https://nodejs.org/api/fs.html#fs_class_fs_readstream
- Multipart interface{} `json:"multipart"`
- // Query parameters to be sent with the URL.
- Params map[string]interface{} `json:"params"`
- // Request timeout in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type APIRequestContextPutOptions struct {
- // Allows to set post data of the request. If the data parameter is an object, it will be serialized to json string
- // and `content-type` header will be set to `application/json` if not explicitly set. Otherwise the `content-type`
- // header will be set to `application/octet-stream` if not explicitly set.
- Data interface{} `json:"data"`
- // Whether to throw on response codes other than 2xx and 3xx. By default response object is returned for all status
- // codes.
- FailOnStatusCode *bool `json:"failOnStatusCode"`
- // Provides an object that will be serialized as html form using `application/x-www-form-urlencoded` encoding and sent
- // as this request body. If this parameter is specified `content-type` header will be set to
- // `application/x-www-form-urlencoded` unless explicitly provided.
- Form interface{} `json:"form"`
- // Allows to set HTTP headers. These headers will apply to the fetched request as well as any redirects initiated by
- // it.
- Headers map[string]string `json:"headers"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects.
- MaxRedirects *int `json:"maxRedirects"`
- // Maximum number of times network errors should be retried. Currently only `ECONNRESET` error is retried. Does not
- // retry based on HTTP response codes. An error will be thrown if the limit is exceeded. Defaults to `0` - no retries.
- MaxRetries *int `json:"maxRetries"`
- // Provides an object that will be serialized as html form using `multipart/form-data` encoding and sent as this
- // request body. If this parameter is specified `content-type` header will be set to `multipart/form-data` unless
- // explicitly provided. File values can be passed either as
- // [`fs.ReadStream`] or as file-like object containing file
- // name, mime-type and its content.
- //
- // [`fs.ReadStream`]: https://nodejs.org/api/fs.html#fs_class_fs_readstream
- Multipart interface{} `json:"multipart"`
- // Query parameters to be sent with the URL.
- Params map[string]interface{} `json:"params"`
- // Request timeout in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type StorageState struct {
- Cookies []Cookie `json:"cookies"`
- Origins []Origin `json:"origins"`
-}
-
-type NameValue struct {
- // Name of the header.
- Name string `json:"name"`
- // Value of the header.
- Value string `json:"value"`
-}
-
-type BrowserCloseOptions struct {
- // The reason to be reported to the operations interrupted by the browser closure.
- Reason *string `json:"reason"`
-}
-
-type BrowserNewContextOptions struct {
- // Whether to automatically download all the attachments. Defaults to `true` where all the downloads are accepted.
- AcceptDownloads *bool `json:"acceptDownloads"`
- // When using [Page.Goto], [Page.Route], [Page.WaitForURL], [Page.ExpectRequest], or [Page.ExpectResponse] it takes
- // the base URL in consideration by using the [`URL()`]
- // constructor for building the corresponding URL. Unset by default. Examples:
- // - baseURL: `http://localhost:3000` and navigating to `/bar.html` results in `http://localhost:3000/bar.html`
- // - baseURL: `http://localhost:3000/foo/` and navigating to `./bar.html` results in
- // `http://localhost:3000/foo/bar.html`
- // - baseURL: `http://localhost:3000/foo` (without trailing slash) and navigating to `./bar.html` results in
- // `http://localhost:3000/bar.html`
- //
- // [`URL()`]: https://developer.mozilla.org/en-US/docs/Web/API/URL/URL
- BaseURL *string `json:"baseURL"`
- // Toggles bypassing page's Content-Security-Policy. Defaults to `false`.
- BypassCSP *bool `json:"bypassCSP"`
- // TLS Client Authentication allows the server to request a client certificate and verify it.
- //
- // # Details
- //
- // An array of client certificates to be used. Each certificate object must have either both `certPath` and `keyPath`,
- // a single `pfxPath`, or their corresponding direct value equivalents (`cert` and `key`, or `pfx`). Optionally,
- // `passphrase` property should be provided if the certificate is encrypted. The `origin` property should be provided
- // with an exact match to the request origin that the certificate is valid for.
- // **NOTE** When using WebKit on macOS, accessing `localhost` will not pick up client certificates. You can make it
- // work by replacing `localhost` with `local.playwright`.
- ClientCertificates []ClientCertificate `json:"clientCertificates"`
- // Emulates [prefers-colors-scheme]
- // media feature, supported values are `light` and `dark`. See [Page.EmulateMedia] for more details. Passing
- // `no-override` resets emulation to system defaults. Defaults to `light`.
- //
- // [prefers-colors-scheme]: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme
- ColorScheme *ColorScheme `json:"colorScheme"`
- // Specify device scale factor (can be thought of as dpr). Defaults to `1`. Learn more about
- // [emulating devices with device scale factor].
- //
- // [emulating devices with device scale factor]: https://playwright.dev/docs/emulation#devices
- DeviceScaleFactor *float64 `json:"deviceScaleFactor"`
- // An object containing additional HTTP headers to be sent with every request. Defaults to none.
- ExtraHttpHeaders map[string]string `json:"extraHTTPHeaders"`
- // Emulates `forced-colors` media feature, supported values are `active`, `none`. See [Page.EmulateMedia] for
- // more details. Passing `no-override` resets emulation to system defaults. Defaults to `none`.
- ForcedColors *ForcedColors `json:"forcedColors"`
- Geolocation *Geolocation `json:"geolocation"`
- // Specifies if viewport supports touch events. Defaults to false. Learn more about
- // [mobile emulation].
- //
- // [mobile emulation]: https://playwright.dev/docs/emulation#devices
- HasTouch *bool `json:"hasTouch"`
- // Credentials for [HTTP authentication]. If no
- // origin is specified, the username and password are sent to any servers upon unauthorized responses.
- //
- // [HTTP authentication]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication
- HttpCredentials *HttpCredentials `json:"httpCredentials"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Whether the `meta viewport` tag is taken into account and touch events are enabled. isMobile is a part of device,
- // so you don't actually need to set it manually. Defaults to `false` and is not supported in Firefox. Learn more
- // about [mobile emulation].
- //
- // [mobile emulation]: https://playwright.dev/docs/emulation#ismobile
- IsMobile *bool `json:"isMobile"`
- // Whether or not to enable JavaScript in the context. Defaults to `true`. Learn more about
- // [disabling JavaScript].
- //
- // [disabling JavaScript]: https://playwright.dev/docs/emulation#javascript-enabled
- JavaScriptEnabled *bool `json:"javaScriptEnabled"`
- // Specify user locale, for example `en-GB`, `de-DE`, etc. Locale will affect `navigator.language` value,
- // `Accept-Language` request header value as well as number and date formatting rules. Defaults to the system default
- // locale. Learn more about emulation in our [emulation guide].
- //
- // [emulation guide]: https://playwright.dev/docs/emulation#locale--timezone
- Locale *string `json:"locale"`
- // Does not enforce fixed viewport, allows resizing window in the headed mode.
- NoViewport *bool `json:"noViewport"`
- // Whether to emulate network being offline. Defaults to `false`. Learn more about
- // [network emulation].
- //
- // [network emulation]: https://playwright.dev/docs/emulation#offline
- Offline *bool `json:"offline"`
- // A list of permissions to grant to all pages in this context. See [BrowserContext.GrantPermissions] for more
- // details. Defaults to none.
- Permissions []string `json:"permissions"`
- // Network proxy settings to use with this context. Defaults to none.
- Proxy *Proxy `json:"proxy"`
- // Optional setting to control resource content management. If `omit` is specified, content is not persisted. If
- // `attach` is specified, resources are persisted as separate files and all of these files are archived along with the
- // HAR file. Defaults to `embed`, which stores content inline the HAR file as per HAR specification.
- RecordHarContent *HarContentPolicy `json:"recordHarContent"`
- // When set to `minimal`, only record information necessary for routing from HAR. This omits sizes, timing, page,
- // cookies, security and other types of HAR information that are not used when replaying from HAR. Defaults to `full`.
- RecordHarMode *HarMode `json:"recordHarMode"`
- // Optional setting to control whether to omit request content from the HAR. Defaults to `false`.
- RecordHarOmitContent *bool `json:"recordHarOmitContent"`
- // Enables [HAR] recording for all pages into the specified HAR file
- // on the filesystem. If not specified, the HAR is not recorded. Make sure to call [BrowserContext.Close] for the HAR
- // to be saved.
- //
- // [HAR]: http://www.softwareishard.com/blog/har-12-spec
- RecordHarPath *string `json:"recordHarPath"`
- RecordHarURLFilter interface{} `json:"recordHarUrlFilter"`
- // Enables video recording for all pages into `recordVideo.dir` directory. If not specified videos are not recorded.
- // Make sure to await [BrowserContext.Close] for videos to be saved.
- RecordVideo *RecordVideo `json:"recordVideo"`
- // Emulates `prefers-reduced-motion` media feature, supported values are `reduce`, `no-preference`. See
- // [Page.EmulateMedia] for more details. Passing `no-override` resets emulation to system defaults. Defaults to
- // `no-preference`.
- ReducedMotion *ReducedMotion `json:"reducedMotion"`
- // Emulates consistent window screen size available inside web page via `window.screen`. Is only used when the
- // “[object Object]” is set.
- Screen *Size `json:"screen"`
- // Whether to allow sites to register Service workers. Defaults to `allow`.
- // - `allow`: [Service Workers] can be
- // registered.
- // - `block`: Playwright will block all registration of Service Workers.
- //
- // [Service Workers]: https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API
- ServiceWorkers *ServiceWorkerPolicy `json:"serviceWorkers"`
- // Learn more about [storage state and auth].
- // Populates context with given storage state. This option can be used to initialize context with logged-in
- // information obtained via [BrowserContext.StorageState].
- //
- // [storage state and auth]: https://playwright.dev/docs/auth
- StorageState *OptionalStorageState `json:"storageState"`
- // Populates context with given storage state. This option can be used to initialize context with logged-in
- // information obtained via [BrowserContext.StorageState]. Path to the file with saved storage state.
- StorageStatePath *string `json:"storageStatePath"`
- // If set to true, enables strict selectors mode for this context. In the strict selectors mode all operations on
- // selectors that imply single target DOM element will throw when more than one element matches the selector. This
- // option does not affect any Locator APIs (Locators are always strict). Defaults to `false`. See [Locator] to learn
- // more about the strict mode.
- StrictSelectors *bool `json:"strictSelectors"`
- // Changes the timezone of the context. See
- // [ICU's metaZones.txt]
- // for a list of supported timezone IDs. Defaults to the system timezone.
- //
- // [ICU's metaZones.txt]: https://cs.chromium.org/chromium/src/third_party/icu/source/data/misc/metaZones.txt?rcl=faee8bc70570192d82d2978a71e2a615788597d1
- TimezoneId *string `json:"timezoneId"`
- // Specific user agent to use in this context.
- UserAgent *string `json:"userAgent"`
- // Sets a consistent viewport for each page. Defaults to an 1280x720 viewport. `no_viewport` disables the fixed
- // viewport. Learn more about [viewport emulation].
- //
- // [viewport emulation]: https://playwright.dev/docs/emulation#viewport
- Viewport *Size `json:"viewport"`
-}
-
-type BrowserNewPageOptions struct {
- // Whether to automatically download all the attachments. Defaults to `true` where all the downloads are accepted.
- AcceptDownloads *bool `json:"acceptDownloads"`
- // When using [Page.Goto], [Page.Route], [Page.WaitForURL], [Page.ExpectRequest], or [Page.ExpectResponse] it takes
- // the base URL in consideration by using the [`URL()`]
- // constructor for building the corresponding URL. Unset by default. Examples:
- // - baseURL: `http://localhost:3000` and navigating to `/bar.html` results in `http://localhost:3000/bar.html`
- // - baseURL: `http://localhost:3000/foo/` and navigating to `./bar.html` results in
- // `http://localhost:3000/foo/bar.html`
- // - baseURL: `http://localhost:3000/foo` (without trailing slash) and navigating to `./bar.html` results in
- // `http://localhost:3000/bar.html`
- //
- // [`URL()`]: https://developer.mozilla.org/en-US/docs/Web/API/URL/URL
- BaseURL *string `json:"baseURL"`
- // Toggles bypassing page's Content-Security-Policy. Defaults to `false`.
- BypassCSP *bool `json:"bypassCSP"`
- // TLS Client Authentication allows the server to request a client certificate and verify it.
- //
- // # Details
- //
- // An array of client certificates to be used. Each certificate object must have either both `certPath` and `keyPath`,
- // a single `pfxPath`, or their corresponding direct value equivalents (`cert` and `key`, or `pfx`). Optionally,
- // `passphrase` property should be provided if the certificate is encrypted. The `origin` property should be provided
- // with an exact match to the request origin that the certificate is valid for.
- // **NOTE** When using WebKit on macOS, accessing `localhost` will not pick up client certificates. You can make it
- // work by replacing `localhost` with `local.playwright`.
- ClientCertificates []ClientCertificate `json:"clientCertificates"`
- // Emulates [prefers-colors-scheme]
- // media feature, supported values are `light` and `dark`. See [Page.EmulateMedia] for more details. Passing
- // `no-override` resets emulation to system defaults. Defaults to `light`.
- //
- // [prefers-colors-scheme]: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme
- ColorScheme *ColorScheme `json:"colorScheme"`
- // Specify device scale factor (can be thought of as dpr). Defaults to `1`. Learn more about
- // [emulating devices with device scale factor].
- //
- // [emulating devices with device scale factor]: https://playwright.dev/docs/emulation#devices
- DeviceScaleFactor *float64 `json:"deviceScaleFactor"`
- // An object containing additional HTTP headers to be sent with every request. Defaults to none.
- ExtraHttpHeaders map[string]string `json:"extraHTTPHeaders"`
- // Emulates `forced-colors` media feature, supported values are `active`, `none`. See [Page.EmulateMedia] for
- // more details. Passing `no-override` resets emulation to system defaults. Defaults to `none`.
- ForcedColors *ForcedColors `json:"forcedColors"`
- Geolocation *Geolocation `json:"geolocation"`
- // Specifies if viewport supports touch events. Defaults to false. Learn more about
- // [mobile emulation].
- //
- // [mobile emulation]: https://playwright.dev/docs/emulation#devices
- HasTouch *bool `json:"hasTouch"`
- // Credentials for [HTTP authentication]. If no
- // origin is specified, the username and password are sent to any servers upon unauthorized responses.
- //
- // [HTTP authentication]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication
- HttpCredentials *HttpCredentials `json:"httpCredentials"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Whether the `meta viewport` tag is taken into account and touch events are enabled. isMobile is a part of device,
- // so you don't actually need to set it manually. Defaults to `false` and is not supported in Firefox. Learn more
- // about [mobile emulation].
- //
- // [mobile emulation]: https://playwright.dev/docs/emulation#ismobile
- IsMobile *bool `json:"isMobile"`
- // Whether or not to enable JavaScript in the context. Defaults to `true`. Learn more about
- // [disabling JavaScript].
- //
- // [disabling JavaScript]: https://playwright.dev/docs/emulation#javascript-enabled
- JavaScriptEnabled *bool `json:"javaScriptEnabled"`
- // Specify user locale, for example `en-GB`, `de-DE`, etc. Locale will affect `navigator.language` value,
- // `Accept-Language` request header value as well as number and date formatting rules. Defaults to the system default
- // locale. Learn more about emulation in our [emulation guide].
- //
- // [emulation guide]: https://playwright.dev/docs/emulation#locale--timezone
- Locale *string `json:"locale"`
- // Does not enforce fixed viewport, allows resizing window in the headed mode.
- NoViewport *bool `json:"noViewport"`
- // Whether to emulate network being offline. Defaults to `false`. Learn more about
- // [network emulation].
- //
- // [network emulation]: https://playwright.dev/docs/emulation#offline
- Offline *bool `json:"offline"`
- // A list of permissions to grant to all pages in this context. See [BrowserContext.GrantPermissions] for more
- // details. Defaults to none.
- Permissions []string `json:"permissions"`
- // Network proxy settings to use with this context. Defaults to none.
- Proxy *Proxy `json:"proxy"`
- // Optional setting to control resource content management. If `omit` is specified, content is not persisted. If
- // `attach` is specified, resources are persisted as separate files and all of these files are archived along with the
- // HAR file. Defaults to `embed`, which stores content inline the HAR file as per HAR specification.
- RecordHarContent *HarContentPolicy `json:"recordHarContent"`
- // When set to `minimal`, only record information necessary for routing from HAR. This omits sizes, timing, page,
- // cookies, security and other types of HAR information that are not used when replaying from HAR. Defaults to `full`.
- RecordHarMode *HarMode `json:"recordHarMode"`
- // Optional setting to control whether to omit request content from the HAR. Defaults to `false`.
- RecordHarOmitContent *bool `json:"recordHarOmitContent"`
- // Enables [HAR] recording for all pages into the specified HAR file
- // on the filesystem. If not specified, the HAR is not recorded. Make sure to call [BrowserContext.Close] for the HAR
- // to be saved.
- //
- // [HAR]: http://www.softwareishard.com/blog/har-12-spec
- RecordHarPath *string `json:"recordHarPath"`
- RecordHarURLFilter interface{} `json:"recordHarUrlFilter"`
- // Enables video recording for all pages into `recordVideo.dir` directory. If not specified videos are not recorded.
- // Make sure to await [BrowserContext.Close] for videos to be saved.
- RecordVideo *RecordVideo `json:"recordVideo"`
- // Emulates `prefers-reduced-motion` media feature, supported values are `reduce`, `no-preference`. See
- // [Page.EmulateMedia] for more details. Passing `no-override` resets emulation to system defaults. Defaults to
- // `no-preference`.
- ReducedMotion *ReducedMotion `json:"reducedMotion"`
- // Emulates consistent window screen size available inside web page via `window.screen`. Is only used when the
- // “[object Object]” is set.
- Screen *Size `json:"screen"`
- // Whether to allow sites to register Service workers. Defaults to `allow`.
- // - `allow`: [Service Workers] can be
- // registered.
- // - `block`: Playwright will block all registration of Service Workers.
- //
- // [Service Workers]: https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API
- ServiceWorkers *ServiceWorkerPolicy `json:"serviceWorkers"`
- // Learn more about [storage state and auth].
- // Populates context with given storage state. This option can be used to initialize context with logged-in
- // information obtained via [BrowserContext.StorageState].
- //
- // [storage state and auth]: https://playwright.dev/docs/auth
- StorageState *OptionalStorageState `json:"storageState"`
- // Populates context with given storage state. This option can be used to initialize context with logged-in
- // information obtained via [BrowserContext.StorageState]. Path to the file with saved storage state.
- StorageStatePath *string `json:"storageStatePath"`
- // If set to true, enables strict selectors mode for this context. In the strict selectors mode all operations on
- // selectors that imply single target DOM element will throw when more than one element matches the selector. This
- // option does not affect any Locator APIs (Locators are always strict). Defaults to `false`. See [Locator] to learn
- // more about the strict mode.
- StrictSelectors *bool `json:"strictSelectors"`
- // Changes the timezone of the context. See
- // [ICU's metaZones.txt]
- // for a list of supported timezone IDs. Defaults to the system timezone.
- //
- // [ICU's metaZones.txt]: https://cs.chromium.org/chromium/src/third_party/icu/source/data/misc/metaZones.txt?rcl=faee8bc70570192d82d2978a71e2a615788597d1
- TimezoneId *string `json:"timezoneId"`
- // Specific user agent to use in this context.
- UserAgent *string `json:"userAgent"`
- // Sets a consistent viewport for each page. Defaults to an 1280x720 viewport. `no_viewport` disables the fixed
- // viewport. Learn more about [viewport emulation].
- //
- // [viewport emulation]: https://playwright.dev/docs/emulation#viewport
- Viewport *Size `json:"viewport"`
-}
-
-type BrowserStartTracingOptions struct {
- // specify custom categories to use instead of default.
- Categories []string `json:"categories"`
- // Optional, if specified, tracing includes screenshots of the given page.
- Page Page `json:"page"`
- // A path to write the trace file to.
- Path *string `json:"path"`
- // captures screenshots in the trace.
- Screenshots *bool `json:"screenshots"`
-}
-
-type OptionalCookie struct {
- Name string `json:"name"`
- Value string `json:"value"`
- // Either url or domain / path are required. Optional.
- URL *string `json:"url"`
- // For the cookie to apply to all subdomains as well, prefix domain with a dot, like this: ".example.com". Either url
- // or domain / path are required. Optional.
- Domain *string `json:"domain"`
- // Either url or domain / path are required Optional.
- Path *string `json:"path"`
- // Unix time in seconds. Optional.
- Expires *float64 `json:"expires"`
- // Optional.
- HttpOnly *bool `json:"httpOnly"`
- // Optional.
- Secure *bool `json:"secure"`
- // Optional.
- SameSite *SameSiteAttribute `json:"sameSite"`
-}
-
-type Script struct {
- // Path to the JavaScript file. If `path` is a relative path, then it is resolved relative to the current working
- // directory. Optional.
- Path *string `json:"path"`
- // Raw script content. Optional.
- Content *string `json:"content"`
-}
-
-type BrowserContextClearCookiesOptions struct {
- // Only removes cookies with the given domain.
- Domain interface{} `json:"domain"`
- // Only removes cookies with the given name.
- Name interface{} `json:"name"`
- // Only removes cookies with the given path.
- Path interface{} `json:"path"`
-}
-
-type BrowserContextCloseOptions struct {
- // The reason to be reported to the operations interrupted by the context closure.
- Reason *string `json:"reason"`
-}
-
-type Cookie struct {
- Name string `json:"name"`
- Value string `json:"value"`
- Domain string `json:"domain"`
- Path string `json:"path"`
- // Unix time in seconds.
- Expires float64 `json:"expires"`
- HttpOnly bool `json:"httpOnly"`
- Secure bool `json:"secure"`
- SameSite *SameSiteAttribute `json:"sameSite"`
-}
-
-type BrowserContextGrantPermissionsOptions struct {
- // The [origin] to grant permissions to, e.g. "https://example.com".
- Origin *string `json:"origin"`
-}
-
-type BrowserContextRouteFromHAROptions struct {
- // - If set to 'abort' any request not found in the HAR file will be aborted.
- // - If set to 'fallback' falls through to the next route handler in the handler chain.
- // Defaults to abort.
- NotFound *HarNotFound `json:"notFound"`
- // If specified, updates the given HAR with the actual network information instead of serving from file. The file is
- // written to disk when [BrowserContext.Close] is called.
- Update *bool `json:"update"`
- // Optional setting to control resource content management. If `attach` is specified, resources are persisted as
- // separate files or entries in the ZIP archive. If `embed` is specified, content is stored inline the HAR file.
- UpdateContent *RouteFromHarUpdateContentPolicy `json:"updateContent"`
- // When set to `minimal`, only record information necessary for routing from HAR. This omits sizes, timing, page,
- // cookies, security and other types of HAR information that are not used when replaying from HAR. Defaults to
- // `minimal`.
- UpdateMode *HarMode `json:"updateMode"`
- // A glob pattern, regular expression or predicate to match the request URL. Only requests with URL matching the
- // pattern will be served from the HAR file. If not specified, all requests are served from the HAR file.
- URL interface{} `json:"url"`
-}
-
-type Geolocation struct {
- // Latitude between -90 and 90.
- Latitude float64 `json:"latitude"`
- // Longitude between -180 and 180.
- Longitude float64 `json:"longitude"`
- // Non-negative accuracy value. Defaults to `0`.
- Accuracy *float64 `json:"accuracy"`
-}
-
-type BrowserContextUnrouteAllOptions struct {
- // Specifies whether to wait for already running handlers and what to do if they throw errors:
- // - `default` - do not wait for current handler calls (if any) to finish, if unrouted handler throws, it may
- // result in unhandled error
- // - `wait` - wait for current handler calls (if any) to finish
- // - `ignoreErrors` - do not wait for current handler calls (if any) to finish, all errors thrown by the handlers
- // after unrouting are silently caught
- Behavior *UnrouteBehavior `json:"behavior"`
-}
-
-type BrowserContextExpectConsoleMessageOptions struct {
- // Receives the [ConsoleMessage] object and resolves to truthy value when the waiting should resolve.
- Predicate func(ConsoleMessage) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type BrowserContextExpectEventOptions struct {
- // Receives the event data and resolves to truthy value when the waiting should resolve.
- Predicate interface{} `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type BrowserContextExpectPageOptions struct {
- // Receives the [Page] object and resolves to truthy value when the waiting should resolve.
- Predicate func(Page) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type BrowserContextWaitForEventOptions struct {
- // Receives the event data and resolves to truthy value when the waiting should resolve.
- Predicate interface{} `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type BrowserTypeConnectOptions struct {
- // This option exposes network available on the connecting client to the browser being connected to. Consists of a
- // list of rules separated by comma.
- // Available rules:
- // 1. Hostname pattern, for example: `example.com`, `*.org:99`, `x.*.y.com`, `*foo.org`.
- // 2. IP literal, for example: `127.0.0.1`, `0.0.0.0:99`, `[::1]`, `[0:0::1]:99`.
- // 3. `<loopback>` that matches local loopback interfaces: `localhost`, `*.localhost`, `127.0.0.1`, `[::1]`.
- // Some common examples:
- // 4. `"*"` to expose all network.
- // 5. `"<loopback>"` to expose localhost network.
- // 6. `"*.test.internal-domain,*.staging.internal-domain,<loopback>"` to expose test/staging deployments and
- // localhost.
- ExposeNetwork *string `json:"exposeNetwork"`
- // Additional HTTP headers to be sent with web socket connect request. Optional.
- Headers map[string]string `json:"headers"`
- // Slows down Playwright operations by the specified amount of milliseconds. Useful so that you can see what is going
- // on. Defaults to 0.
- SlowMo *float64 `json:"slowMo"`
- // Maximum time in milliseconds to wait for the connection to be established. Defaults to `0` (no timeout).
- Timeout *float64 `json:"timeout"`
-}
-
-type BrowserTypeConnectOverCDPOptions struct {
- // Additional HTTP headers to be sent with connect request. Optional.
- Headers map[string]string `json:"headers"`
- // Slows down Playwright operations by the specified amount of milliseconds. Useful so that you can see what is going
- // on. Defaults to 0.
- SlowMo *float64 `json:"slowMo"`
- // Maximum time in milliseconds to wait for the connection to be established. Defaults to `30000` (30 seconds). Pass
- // `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type BrowserTypeLaunchOptions struct {
- // **NOTE** Use custom browser args at your own risk, as some of them may break Playwright functionality.
- // Additional arguments to pass to the browser instance. The list of Chromium flags can be found
- // [here].
- //
- // [here]: https://peter.sh/experiments/chromium-command-line-switches/
- Args []string `json:"args"`
- // Browser distribution channel.
- // Use "chromium" to [opt in to new headless mode].
- // Use "chrome", "chrome-beta", "chrome-dev", "chrome-canary", "msedge", "msedge-beta", "msedge-dev", or
- // "msedge-canary" to use branded [Google Chrome and Microsoft Edge].
- //
- // [opt in to new headless mode]: https://playwright.dev/docs/browsers#chromium-new-headless-mode
- // [Google Chrome and Microsoft Edge]: https://playwright.dev/docs/browsers#google-chrome--microsoft-edge
- Channel *string `json:"channel"`
- // Enable Chromium sandboxing. Defaults to `false`.
- ChromiumSandbox *bool `json:"chromiumSandbox"`
- // **Chromium-only** Whether to auto-open a Developer Tools panel for each tab. If this option is `true`, the
- // “[object Object]” option will be set `false`.
- //
- // Deprecated: Use [debugging tools] instead.
- //
- // [debugging tools]: https://playwright.dev/docs/debug
- Devtools *bool `json:"devtools"`
- // If specified, accepted downloads are downloaded into this directory. Otherwise, temporary directory is created and
- // is deleted when browser is closed. In either case, the downloads are deleted when the browser context they were
- // created in is closed.
- DownloadsPath *string `json:"downloadsPath"`
- // Specify environment variables that will be visible to the browser. Defaults to `process.env`.
- Env map[string]string `json:"env"`
- // Path to a browser executable to run instead of the bundled one. If “[object Object]” is a relative path, then it is
- // resolved relative to the current working directory. Note that Playwright only works with the bundled Chromium,
- // Firefox or WebKit, use at your own risk.
- ExecutablePath *string `json:"executablePath"`
- // Firefox user preferences. Learn more about the Firefox user preferences at
- // [`about:config`].
- //
- // [`about:config`]: https://support.mozilla.org/en-US/kb/about-config-editor-firefox
- FirefoxUserPrefs map[string]interface{} `json:"firefoxUserPrefs"`
- // Close the browser process on SIGHUP. Defaults to `true`.
- HandleSIGHUP *bool `json:"handleSIGHUP"`
- // Close the browser process on Ctrl-C. Defaults to `true`.
- HandleSIGINT *bool `json:"handleSIGINT"`
- // Close the browser process on SIGTERM. Defaults to `true`.
- HandleSIGTERM *bool `json:"handleSIGTERM"`
- // Whether to run browser in headless mode. More details for
- // [Chromium] and
- // [Firefox]. Defaults to `true` unless the
- // “[object Object]” option is `true`.
- //
- // [Chromium]: https://developers.google.com/web/updates/2017/04/headless-chrome
- // [Firefox]: https://hacks.mozilla.org/2017/12/using-headless-mode-in-firefox/
- Headless *bool `json:"headless"`
- // If `true`, Playwright does not pass its own configurations args and only uses the ones from “[object Object]”.
- // Dangerous option; use with care. Defaults to `false`.
- IgnoreAllDefaultArgs *bool `json:"ignoreAllDefaultArgs"`
- // If `true`, Playwright does not pass its own configurations args and only uses the ones from “[object Object]”.
- // Dangerous option; use with care.
- IgnoreDefaultArgs []string `json:"ignoreDefaultArgs"`
- // Network proxy settings.
- Proxy *Proxy `json:"proxy"`
- // Slows down Playwright operations by the specified amount of milliseconds. Useful so that you can see what is going
- // on.
- SlowMo *float64 `json:"slowMo"`
- // Maximum time in milliseconds to wait for the browser instance to start. Defaults to `30000` (30 seconds). Pass `0`
- // to disable timeout.
- Timeout *float64 `json:"timeout"`
- // If specified, traces are saved into this directory.
- TracesDir *string `json:"tracesDir"`
-}
-
-type BrowserTypeLaunchPersistentContextOptions struct {
- // Whether to automatically download all the attachments. Defaults to `true` where all the downloads are accepted.
- AcceptDownloads *bool `json:"acceptDownloads"`
- // **NOTE** Use custom browser args at your own risk, as some of them may break Playwright functionality.
- // Additional arguments to pass to the browser instance. The list of Chromium flags can be found
- // [here].
- //
- // [here]: https://peter.sh/experiments/chromium-command-line-switches/
- Args []string `json:"args"`
- // When using [Page.Goto], [Page.Route], [Page.WaitForURL], [Page.ExpectRequest], or [Page.ExpectResponse] it takes
- // the base URL in consideration by using the [`URL()`]
- // constructor for building the corresponding URL. Unset by default. Examples:
- // - baseURL: `http://localhost:3000` and navigating to `/bar.html` results in `http://localhost:3000/bar.html`
- // - baseURL: `http://localhost:3000/foo/` and navigating to `./bar.html` results in
- // `http://localhost:3000/foo/bar.html`
- // - baseURL: `http://localhost:3000/foo` (without trailing slash) and navigating to `./bar.html` results in
- // `http://localhost:3000/bar.html`
- //
- // [`URL()`]: https://developer.mozilla.org/en-US/docs/Web/API/URL/URL
- BaseURL *string `json:"baseURL"`
- // Toggles bypassing page's Content-Security-Policy. Defaults to `false`.
- BypassCSP *bool `json:"bypassCSP"`
- // Browser distribution channel.
- // Use "chromium" to [opt in to new headless mode].
- // Use "chrome", "chrome-beta", "chrome-dev", "chrome-canary", "msedge", "msedge-beta", "msedge-dev", or
- // "msedge-canary" to use branded [Google Chrome and Microsoft Edge].
- //
- // [opt in to new headless mode]: https://playwright.dev/docs/browsers#chromium-new-headless-mode
- // [Google Chrome and Microsoft Edge]: https://playwright.dev/docs/browsers#google-chrome--microsoft-edge
- Channel *string `json:"channel"`
- // Enable Chromium sandboxing. Defaults to `false`.
- ChromiumSandbox *bool `json:"chromiumSandbox"`
- // TLS Client Authentication allows the server to request a client certificate and verify it.
- //
- // # Details
- //
- // An array of client certificates to be used. Each certificate object must have either both `certPath` and `keyPath`,
- // a single `pfxPath`, or their corresponding direct value equivalents (`cert` and `key`, or `pfx`). Optionally,
- // `passphrase` property should be provided if the certificate is encrypted. The `origin` property should be provided
- // with an exact match to the request origin that the certificate is valid for.
- // **NOTE** When using WebKit on macOS, accessing `localhost` will not pick up client certificates. You can make it
- // work by replacing `localhost` with `local.playwright`.
- ClientCertificates []ClientCertificate `json:"clientCertificates"`
- // Emulates [prefers-colors-scheme]
- // media feature, supported values are `light` and `dark`. See [Page.EmulateMedia] for more details. Passing
- // `no-override` resets emulation to system defaults. Defaults to `light`.
- //
- // [prefers-colors-scheme]: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme
- ColorScheme *ColorScheme `json:"colorScheme"`
- // Specify device scale factor (can be thought of as dpr). Defaults to `1`. Learn more about
- // [emulating devices with device scale factor].
- //
- // [emulating devices with device scale factor]: https://playwright.dev/docs/emulation#devices
- DeviceScaleFactor *float64 `json:"deviceScaleFactor"`
- // **Chromium-only** Whether to auto-open a Developer Tools panel for each tab. If this option is `true`, the
- // “[object Object]” option will be set `false`.
- //
- // Deprecated: Use [debugging tools] instead.
- //
- // [debugging tools]: https://playwright.dev/docs/debug
- Devtools *bool `json:"devtools"`
- // If specified, accepted downloads are downloaded into this directory. Otherwise, temporary directory is created and
- // is deleted when browser is closed. In either case, the downloads are deleted when the browser context they were
- // created in is closed.
- DownloadsPath *string `json:"downloadsPath"`
- // Specify environment variables that will be visible to the browser. Defaults to `process.env`.
- Env map[string]string `json:"env"`
- // Path to a browser executable to run instead of the bundled one. If “[object Object]” is a relative path, then it is
- // resolved relative to the current working directory. Note that Playwright only works with the bundled Chromium,
- // Firefox or WebKit, use at your own risk.
- ExecutablePath *string `json:"executablePath"`
- // An object containing additional HTTP headers to be sent with every request. Defaults to none.
- ExtraHttpHeaders map[string]string `json:"extraHTTPHeaders"`
- // Firefox user preferences. Learn more about the Firefox user preferences at
- // [`about:config`].
- //
- // [`about:config`]: https://support.mozilla.org/en-US/kb/about-config-editor-firefox
- FirefoxUserPrefs map[string]interface{} `json:"firefoxUserPrefs"`
- // Emulates `forced-colors` media feature, supported values are `active`, `none`. See [Page.EmulateMedia] for
- // more details. Passing `no-override` resets emulation to system defaults. Defaults to `none`.
- ForcedColors *ForcedColors `json:"forcedColors"`
- Geolocation *Geolocation `json:"geolocation"`
- // Close the browser process on SIGHUP. Defaults to `true`.
- HandleSIGHUP *bool `json:"handleSIGHUP"`
- // Close the browser process on Ctrl-C. Defaults to `true`.
- HandleSIGINT *bool `json:"handleSIGINT"`
- // Close the browser process on SIGTERM. Defaults to `true`.
- HandleSIGTERM *bool `json:"handleSIGTERM"`
- // Specifies if viewport supports touch events. Defaults to false. Learn more about
- // [mobile emulation].
- //
- // [mobile emulation]: https://playwright.dev/docs/emulation#devices
- HasTouch *bool `json:"hasTouch"`
- // Whether to run browser in headless mode. More details for
- // [Chromium] and
- // [Firefox]. Defaults to `true` unless the
- // “[object Object]” option is `true`.
- //
- // [Chromium]: https://developers.google.com/web/updates/2017/04/headless-chrome
- // [Firefox]: https://hacks.mozilla.org/2017/12/using-headless-mode-in-firefox/
- Headless *bool `json:"headless"`
- // Credentials for [HTTP authentication]. If no
- // origin is specified, the username and password are sent to any servers upon unauthorized responses.
- //
- // [HTTP authentication]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication
- HttpCredentials *HttpCredentials `json:"httpCredentials"`
- // If `true`, Playwright does not pass its own configurations args and only uses the ones from “[object Object]”.
- // Dangerous option; use with care. Defaults to `false`.
- IgnoreAllDefaultArgs *bool `json:"ignoreAllDefaultArgs"`
- // If `true`, Playwright does not pass its own configurations args and only uses the ones from “[object Object]”.
- // Dangerous option; use with care.
- IgnoreDefaultArgs []string `json:"ignoreDefaultArgs"`
- // Whether to ignore HTTPS errors when sending network requests. Defaults to `false`.
- IgnoreHttpsErrors *bool `json:"ignoreHTTPSErrors"`
- // Whether the `meta viewport` tag is taken into account and touch events are enabled. isMobile is a part of device,
- // so you don't actually need to set it manually. Defaults to `false` and is not supported in Firefox. Learn more
- // about [mobile emulation].
- //
- // [mobile emulation]: https://playwright.dev/docs/emulation#ismobile
- IsMobile *bool `json:"isMobile"`
- // Whether or not to enable JavaScript in the context. Defaults to `true`. Learn more about
- // [disabling JavaScript].
- //
- // [disabling JavaScript]: https://playwright.dev/docs/emulation#javascript-enabled
- JavaScriptEnabled *bool `json:"javaScriptEnabled"`
- // Specify user locale, for example `en-GB`, `de-DE`, etc. Locale will affect `navigator.language` value,
- // `Accept-Language` request header value as well as number and date formatting rules. Defaults to the system default
- // locale. Learn more about emulation in our [emulation guide].
- //
- // [emulation guide]: https://playwright.dev/docs/emulation#locale--timezone
- Locale *string `json:"locale"`
- // Does not enforce fixed viewport, allows resizing window in the headed mode.
- NoViewport *bool `json:"noViewport"`
- // Whether to emulate network being offline. Defaults to `false`. Learn more about
- // [network emulation].
- //
- // [network emulation]: https://playwright.dev/docs/emulation#offline
- Offline *bool `json:"offline"`
- // A list of permissions to grant to all pages in this context. See [BrowserContext.GrantPermissions] for more
- // details. Defaults to none.
- Permissions []string `json:"permissions"`
- // Network proxy settings.
- Proxy *Proxy `json:"proxy"`
- // Optional setting to control resource content management. If `omit` is specified, content is not persisted. If
- // `attach` is specified, resources are persisted as separate files and all of these files are archived along with the
- // HAR file. Defaults to `embed`, which stores content inline the HAR file as per HAR specification.
- RecordHarContent *HarContentPolicy `json:"recordHarContent"`
- // When set to `minimal`, only record information necessary for routing from HAR. This omits sizes, timing, page,
- // cookies, security and other types of HAR information that are not used when replaying from HAR. Defaults to `full`.
- RecordHarMode *HarMode `json:"recordHarMode"`
- // Optional setting to control whether to omit request content from the HAR. Defaults to `false`.
- RecordHarOmitContent *bool `json:"recordHarOmitContent"`
- // Enables [HAR] recording for all pages into the specified HAR file
- // on the filesystem. If not specified, the HAR is not recorded. Make sure to call [BrowserContext.Close] for the HAR
- // to be saved.
- //
- // [HAR]: http://www.softwareishard.com/blog/har-12-spec
- RecordHarPath *string `json:"recordHarPath"`
- RecordHarURLFilter interface{} `json:"recordHarUrlFilter"`
- // Enables video recording for all pages into `recordVideo.dir` directory. If not specified videos are not recorded.
- // Make sure to await [BrowserContext.Close] for videos to be saved.
- RecordVideo *RecordVideo `json:"recordVideo"`
- // Emulates `prefers-reduced-motion` media feature, supported values are `reduce`, `no-preference`. See
- // [Page.EmulateMedia] for more details. Passing `no-override` resets emulation to system defaults. Defaults to
- // `no-preference`.
- ReducedMotion *ReducedMotion `json:"reducedMotion"`
- // Emulates consistent window screen size available inside web page via `window.screen`. Is only used when the
- // “[object Object]” is set.
- Screen *Size `json:"screen"`
- // Whether to allow sites to register Service workers. Defaults to `allow`.
- // - `allow`: [Service Workers] can be
- // registered.
- // - `block`: Playwright will block all registration of Service Workers.
- //
- // [Service Workers]: https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API
- ServiceWorkers *ServiceWorkerPolicy `json:"serviceWorkers"`
- // Slows down Playwright operations by the specified amount of milliseconds. Useful so that you can see what is going
- // on.
- SlowMo *float64 `json:"slowMo"`
- // If set to true, enables strict selectors mode for this context. In the strict selectors mode all operations on
- // selectors that imply single target DOM element will throw when more than one element matches the selector. This
- // option does not affect any Locator APIs (Locators are always strict). Defaults to `false`. See [Locator] to learn
- // more about the strict mode.
- StrictSelectors *bool `json:"strictSelectors"`
- // Maximum time in milliseconds to wait for the browser instance to start. Defaults to `30000` (30 seconds). Pass `0`
- // to disable timeout.
- Timeout *float64 `json:"timeout"`
- // Changes the timezone of the context. See
- // [ICU's metaZones.txt]
- // for a list of supported timezone IDs. Defaults to the system timezone.
- //
- // [ICU's metaZones.txt]: https://cs.chromium.org/chromium/src/third_party/icu/source/data/misc/metaZones.txt?rcl=faee8bc70570192d82d2978a71e2a615788597d1
- TimezoneId *string `json:"timezoneId"`
- // If specified, traces are saved into this directory.
- TracesDir *string `json:"tracesDir"`
- // Specific user agent to use in this context.
- UserAgent *string `json:"userAgent"`
- // Sets a consistent viewport for each page. Defaults to an 1280x720 viewport. `no_viewport` disables the fixed
- // viewport. Learn more about [viewport emulation].
- //
- // [viewport emulation]: https://playwright.dev/docs/emulation#viewport
- Viewport *Size `json:"viewport"`
-}
-
-type ClockInstallOptions struct {
- // Time to initialize with, current system time by default.
- Time interface{} `json:"time"`
-}
-
-type ConsoleMessageLocation struct {
- // URL of the resource.
- URL string `json:"url"`
- // 0-based line number in the resource.
- LineNumber int `json:"lineNumber"`
- // 0-based column number in the resource.
- ColumnNumber int `json:"columnNumber"`
-}
-
-type Rect struct {
- // the x coordinate of the element in pixels.
- X float64 `json:"x"`
- // the y coordinate of the element in pixels.
- Y float64 `json:"y"`
- // the width of the element in pixels.
- Width float64 `json:"width"`
- // the height of the element in pixels.
- Height float64 `json:"height"`
-}
-
-type ElementHandleCheckOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type ElementHandleClickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // defaults to 1. See [UIEvent.Detail].
- ClickCount *int `json:"clickCount"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You
- // can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as
- // navigating to inaccessible pages. Defaults to `false`.
- //
- // Deprecated: This option will default to `true` in the future.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type ElementHandleDblclickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type ElementHandleFillOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandleHoverOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type ElementHandleInputValueOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandlePressOptions struct {
- // Time to wait between `keydown` and `keyup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You
- // can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as
- // navigating to inaccessible pages. Defaults to `false`.
- //
- // Deprecated: This option will default to `true` in the future.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandleScreenshotOptions struct {
- // When set to `"disabled"`, stops CSS animations, CSS transitions and Web Animations. Animations get different
- // treatment depending on their duration:
- // - finite animations are fast-forwarded to completion, so they'll fire `transitionend` event.
- // - infinite animations are canceled to initial state, and then played over after the screenshot.
- // Defaults to `"allow"` that leaves animations untouched.
- Animations *ScreenshotAnimations `json:"animations"`
- // When set to `"hide"`, screenshot will hide text caret. When set to `"initial"`, text caret behavior will not be
- // changed. Defaults to `"hide"`.
- Caret *ScreenshotCaret `json:"caret"`
- // Specify locators that should be masked when the screenshot is taken. Masked elements will be overlaid with a pink
- // box `#FF00FF` (customized by “[object Object]”) that completely covers its bounding box. The mask is also applied
- // to invisible elements, see [Matching only visible elements] to
- // disable that.
- //
- // [Matching only visible elements]: https://playwright.dev/docs/locators#matching-only-visible-elements
- Mask []Locator `json:"mask"`
- // Specify the color of the overlay box for masked elements, in
- // [CSS color format]. Default color is pink `#FF00FF`.
- //
- // [CSS color format]: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value
- MaskColor *string `json:"maskColor"`
- // Hides default white background and allows capturing screenshots with transparency. Not applicable to `jpeg` images.
- // Defaults to `false`.
- OmitBackground *bool `json:"omitBackground"`
- // The file path to save the image to. The screenshot type will be inferred from file extension. If “[object Object]”
- // is a relative path, then it is resolved relative to the current working directory. If no path is provided, the
- // image won't be saved to the disk.
- Path *string `json:"path"`
- // The quality of the image, between 0-100. Not applicable to `png` images.
- Quality *int `json:"quality"`
- // When set to `"css"`, screenshot will have a single pixel per each css pixel on the page. For high-dpi devices, this
- // will keep screenshots small. Using `"device"` option will produce a single pixel per each device pixel, so
- // screenshots of high-dpi devices will be twice as large or even larger.
- // Defaults to `"device"`.
- Scale *ScreenshotScale `json:"scale"`
- // Text of the stylesheet to apply while making the screenshot. This is where you can hide dynamic elements, make
- // elements invisible or change their properties to help you creating repeatable screenshots. This stylesheet pierces
- // the Shadow DOM and applies to the inner frames.
- Style *string `json:"style"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // Specify screenshot type, defaults to `png`.
- Type *ScreenshotType `json:"type"`
-}
-
-type ElementHandleScrollIntoViewIfNeededOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandleSelectOptionOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandleSelectTextOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandleSetCheckedOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type ElementHandleSetInputFilesOptions struct {
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandleTapOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type ElementHandleTypeOptions struct {
- // Time to wait between key presses in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandleUncheckOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type ElementHandleWaitForElementStateOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type ElementHandleWaitForSelectorOptions struct {
- // Defaults to `visible`. Can be either:
- // - `attached` - wait for element to be present in DOM.
- // - `detached` - wait for element to not be present in DOM.
- // - `visible` - wait for element to have non-empty bounding box and no `visibility:hidden`. Note that element
- // without any content or with `display:none` has an empty bounding box and is not considered visible.
- // - `hidden` - wait for element to be either detached from DOM, or have an empty bounding box or
- // `visibility:hidden`. This is opposite to the `visible` option.
- State *WaitForSelectorState `json:"state"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FileChooserSetFilesOptions struct {
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameAddScriptTagOptions struct {
- // Raw JavaScript content to be injected into frame.
- Content *string `json:"content"`
- // Path to the JavaScript file to be injected into frame. If `path` is a relative path, then it is resolved relative
- // to the current working directory.
- Path *string `json:"path"`
- // Script type. Use 'module' in order to load a JavaScript ES6 module. See
- // [script] for more details.
- //
- // [script]: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
- Type *string `json:"type"`
- // URL of a script to be added.
- URL *string `json:"url"`
-}
-
-type FrameAddStyleTagOptions struct {
- // Raw CSS content to be injected into frame.
- Content *string `json:"content"`
- // Path to the CSS file to be injected into frame. If `path` is a relative path, then it is resolved relative to the
- // current working directory.
- Path *string `json:"path"`
- // URL of the `<link>` tag.
- URL *string `json:"url"`
-}
-
-type FrameCheckOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type FrameClickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // defaults to 1. See [UIEvent.Detail].
- ClickCount *int `json:"clickCount"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You
- // can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as
- // navigating to inaccessible pages. Defaults to `false`.
- //
- // Deprecated: This option will default to `true` in the future.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type FrameDblclickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type FrameDispatchEventOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameDragAndDropOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Clicks on the source element at this point relative to the top-left corner of the element's padding box. If not
- // specified, some visible point of the element is used.
- SourcePosition *Position `json:"sourcePosition"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Drops on the target element at this point relative to the top-left corner of the element's padding box. If not
- // specified, some visible point of the element is used.
- TargetPosition *Position `json:"targetPosition"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type FrameEvalOnSelectorOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
-}
-
-type FrameFillOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameFocusOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameGetAttributeOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameGetByAltTextOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameGetByLabelOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameGetByPlaceholderOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameGetByRoleOptions struct {
- // An attribute that is usually set by `aria-checked` or native `<input type=checkbox>` controls.
- // Learn more about [`aria-checked`].
- //
- // [`aria-checked`]: https://www.w3.org/TR/wai-aria-1.2/#aria-checked
- Checked *bool `json:"checked"`
- // An attribute that is usually set by `aria-disabled` or `disabled`.
- // **NOTE** Unlike most other attributes, `disabled` is inherited through the DOM hierarchy. Learn more about
- // [`aria-disabled`].
- //
- // [`aria-disabled`]: https://www.w3.org/TR/wai-aria-1.2/#aria-disabled
- Disabled *bool `json:"disabled"`
- // Whether “[object Object]” is matched exactly: case-sensitive and whole-string. Defaults to false. Ignored when
- // “[object Object]” is a regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
- // An attribute that is usually set by `aria-expanded`.
- // Learn more about [`aria-expanded`].
- //
- // [`aria-expanded`]: https://www.w3.org/TR/wai-aria-1.2/#aria-expanded
- Expanded *bool `json:"expanded"`
- // Option that controls whether hidden elements are matched. By default, only non-hidden elements, as
- // [defined by ARIA], are matched by role selector.
- // Learn more about [`aria-hidden`].
- //
- // [defined by ARIA]: https://www.w3.org/TR/wai-aria-1.2/#tree_exclusion
- // [`aria-hidden`]: https://www.w3.org/TR/wai-aria-1.2/#aria-hidden
- IncludeHidden *bool `json:"includeHidden"`
- // A number attribute that is usually present for roles `heading`, `listitem`, `row`, `treeitem`, with default values
- // for `<h1>-<h6>` elements.
- // Learn more about [`aria-level`].
- //
- // [`aria-level`]: https://www.w3.org/TR/wai-aria-1.2/#aria-level
- Level *int `json:"level"`
- // Option to match the [accessible name]. By default, matching is
- // case-insensitive and searches for a substring, use “[object Object]” to control this behavior.
- // Learn more about [accessible name].
- //
- // [accessible name]: https://w3c.github.io/accname/#dfn-accessible-name
- // [accessible name]: https://w3c.github.io/accname/#dfn-accessible-name
- Name interface{} `json:"name"`
- // An attribute that is usually set by `aria-pressed`.
- // Learn more about [`aria-pressed`].
- //
- // [`aria-pressed`]: https://www.w3.org/TR/wai-aria-1.2/#aria-pressed
- Pressed *bool `json:"pressed"`
- // An attribute that is usually set by `aria-selected`.
- // Learn more about [`aria-selected`].
- //
- // [`aria-selected`]: https://www.w3.org/TR/wai-aria-1.2/#aria-selected
- Selected *bool `json:"selected"`
-}
-
-type FrameGetByTextOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameGetByTitleOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameGotoOptions struct {
- // Referer header value. If provided it will take preference over the referer header value set by
- // [Page.SetExtraHTTPHeaders].
- Referer *string `json:"referer"`
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type FrameHoverOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type FrameInnerHTMLOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameInnerTextOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameInputValueOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameIsCheckedOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameIsDisabledOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameIsEditableOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameIsEnabledOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameIsHiddenOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- //
- // Deprecated: This option is ignored. [Frame.IsHidden] does not wait for the element to become hidden and returns immediately.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameIsVisibleOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- //
- // Deprecated: This option is ignored. [Frame.IsVisible] does not wait for the element to become visible and returns immediately.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameLocatorOptions struct {
- // Narrows down the results of the method to those which contain elements matching this relative locator. For example,
- // `article` that has `text=Playwright` matches `<article><div>Playwright</div></article>`.
- // Inner locator **must be relative** to the outer locator and is queried starting with the outer locator match, not
- // the document root. For example, you can find `content` that has `div` in
- // `<article><content><div>Playwright</div></content></article>`. However, looking for `content` that has `article
- // div` will fail, because the inner locator must be relative and should not use any elements outside the `content`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- Has Locator `json:"has"`
- // Matches elements that do not contain an element that matches an inner locator. Inner locator is queried against the
- // outer one. For example, `article` that does not have `div` matches `<article><span>Playwright</span></article>`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- HasNot Locator `json:"hasNot"`
- // Matches elements that do not contain specified text somewhere inside, possibly in a child or a descendant element.
- // When passed a [string], matching is case-insensitive and searches for a substring.
- HasNotText interface{} `json:"hasNotText"`
- // Matches elements containing specified text somewhere inside, possibly in a child or a descendant element. When
- // passed a [string], matching is case-insensitive and searches for a substring. For example, `"Playwright"` matches
- // `<article><div>Playwright</div></article>`.
- HasText interface{} `json:"hasText"`
-}
-
-type FramePressOptions struct {
- // Time to wait between `keydown` and `keyup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You
- // can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as
- // navigating to inaccessible pages. Defaults to `false`.
- //
- // Deprecated: This option will default to `true` in the future.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameQuerySelectorOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
-}
-
-type FrameSelectOptionOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameSetCheckedOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type FrameSetContentOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type FrameSetInputFilesOptions struct {
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameTapOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type FrameTextContentOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameTypeOptions struct {
- // Time to wait between key presses in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameUncheckOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type FrameWaitForFunctionOptions struct {
- // If “[object Object]” is `raf`, then “[object Object]” is constantly executed in `requestAnimationFrame` callback.
- // If “[object Object]” is a number, then it is treated as an interval in milliseconds at which the function would be
- // executed. Defaults to `raf`.
- Polling interface{} `json:"polling"`
- // 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 [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameWaitForLoadStateOptions struct {
- // Optional load state to wait for, defaults to `load`. If the state has been already reached while loading current
- // document, the method resolves immediately. Can be one of:
- // - `load` - wait for the `load` event to be fired.
- // - `domcontentloaded` - wait for the `DOMContentLoaded` event to be fired.
- // - `networkidle` - **DISCOURAGED** wait until there are no network connections for at least `500` ms. Don't use
- // this method for testing, rely on web assertions to assess readiness instead.
- State *LoadState `json:"state"`
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameExpectNavigationOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // A glob pattern, regex pattern or predicate receiving [URL] to match while waiting for the navigation. Note that if
- // the parameter is a string without wildcard characters, the method will wait for navigation to URL that is exactly
- // equal to the string.
- URL interface{} `json:"url"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type FrameWaitForSelectorOptions struct {
- // Defaults to `visible`. Can be either:
- // - `attached` - wait for element to be present in DOM.
- // - `detached` - wait for element to not be present in DOM.
- // - `visible` - wait for element to have non-empty bounding box and no `visibility:hidden`. Note that element
- // without any content or with `display:none` has an empty bounding box and is not considered visible.
- // - `hidden` - wait for element to be either detached from DOM, or have an empty bounding box or
- // `visibility:hidden`. This is opposite to the `visible` option.
- State *WaitForSelectorState `json:"state"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type FrameWaitForURLOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type FrameLocatorGetByAltTextOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameLocatorGetByLabelOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameLocatorGetByPlaceholderOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameLocatorGetByRoleOptions struct {
- // An attribute that is usually set by `aria-checked` or native `<input type=checkbox>` controls.
- // Learn more about [`aria-checked`].
- //
- // [`aria-checked`]: https://www.w3.org/TR/wai-aria-1.2/#aria-checked
- Checked *bool `json:"checked"`
- // An attribute that is usually set by `aria-disabled` or `disabled`.
- // **NOTE** Unlike most other attributes, `disabled` is inherited through the DOM hierarchy. Learn more about
- // [`aria-disabled`].
- //
- // [`aria-disabled`]: https://www.w3.org/TR/wai-aria-1.2/#aria-disabled
- Disabled *bool `json:"disabled"`
- // Whether “[object Object]” is matched exactly: case-sensitive and whole-string. Defaults to false. Ignored when
- // “[object Object]” is a regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
- // An attribute that is usually set by `aria-expanded`.
- // Learn more about [`aria-expanded`].
- //
- // [`aria-expanded`]: https://www.w3.org/TR/wai-aria-1.2/#aria-expanded
- Expanded *bool `json:"expanded"`
- // Option that controls whether hidden elements are matched. By default, only non-hidden elements, as
- // [defined by ARIA], are matched by role selector.
- // Learn more about [`aria-hidden`].
- //
- // [defined by ARIA]: https://www.w3.org/TR/wai-aria-1.2/#tree_exclusion
- // [`aria-hidden`]: https://www.w3.org/TR/wai-aria-1.2/#aria-hidden
- IncludeHidden *bool `json:"includeHidden"`
- // A number attribute that is usually present for roles `heading`, `listitem`, `row`, `treeitem`, with default values
- // for `<h1>-<h6>` elements.
- // Learn more about [`aria-level`].
- //
- // [`aria-level`]: https://www.w3.org/TR/wai-aria-1.2/#aria-level
- Level *int `json:"level"`
- // Option to match the [accessible name]. By default, matching is
- // case-insensitive and searches for a substring, use “[object Object]” to control this behavior.
- // Learn more about [accessible name].
- //
- // [accessible name]: https://w3c.github.io/accname/#dfn-accessible-name
- // [accessible name]: https://w3c.github.io/accname/#dfn-accessible-name
- Name interface{} `json:"name"`
- // An attribute that is usually set by `aria-pressed`.
- // Learn more about [`aria-pressed`].
- //
- // [`aria-pressed`]: https://www.w3.org/TR/wai-aria-1.2/#aria-pressed
- Pressed *bool `json:"pressed"`
- // An attribute that is usually set by `aria-selected`.
- // Learn more about [`aria-selected`].
- //
- // [`aria-selected`]: https://www.w3.org/TR/wai-aria-1.2/#aria-selected
- Selected *bool `json:"selected"`
-}
-
-type FrameLocatorGetByTextOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameLocatorGetByTitleOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type FrameLocatorLocatorOptions struct {
- // Narrows down the results of the method to those which contain elements matching this relative locator. For example,
- // `article` that has `text=Playwright` matches `<article><div>Playwright</div></article>`.
- // Inner locator **must be relative** to the outer locator and is queried starting with the outer locator match, not
- // the document root. For example, you can find `content` that has `div` in
- // `<article><content><div>Playwright</div></content></article>`. However, looking for `content` that has `article
- // div` will fail, because the inner locator must be relative and should not use any elements outside the `content`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- Has Locator `json:"has"`
- // Matches elements that do not contain an element that matches an inner locator. Inner locator is queried against the
- // outer one. For example, `article` that does not have `div` matches `<article><span>Playwright</span></article>`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- HasNot Locator `json:"hasNot"`
- // Matches elements that do not contain specified text somewhere inside, possibly in a child or a descendant element.
- // When passed a [string], matching is case-insensitive and searches for a substring.
- HasNotText interface{} `json:"hasNotText"`
- // Matches elements containing specified text somewhere inside, possibly in a child or a descendant element. When
- // passed a [string], matching is case-insensitive and searches for a substring. For example, `"Playwright"` matches
- // `<article><div>Playwright</div></article>`.
- HasText interface{} `json:"hasText"`
-}
-
-type KeyboardPressOptions struct {
- // Time to wait between `keydown` and `keyup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
-}
-
-type KeyboardTypeOptions struct {
- // Time to wait between key presses in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
-}
-
-type LocatorAriaSnapshotOptions struct {
- // Generate symbolic reference for each element. One can use `aria-ref=<ref>` locator immediately after capturing the
- // snapshot to perform actions on the element.
- Ref *bool `json:"ref"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorBlurOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorBoundingBoxOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorCheckOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type LocatorClearOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorClickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // defaults to 1. See [UIEvent.Detail].
- ClickCount *int `json:"clickCount"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You
- // can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as
- // navigating to inaccessible pages. Defaults to `false`.
- //
- // Deprecated: This option will default to `true` in the future.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type LocatorDblclickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type LocatorDispatchEventOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorDragToOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Clicks on the source element at this point relative to the top-left corner of the element's padding box. If not
- // specified, some visible point of the element is used.
- SourcePosition *Position `json:"sourcePosition"`
- // Drops on the target element at this point relative to the top-left corner of the element's padding box. If not
- // specified, some visible point of the element is used.
- TargetPosition *Position `json:"targetPosition"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type LocatorElementHandleOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorEvaluateOptions struct {
- // Maximum time in milliseconds to wait for the locator before evaluating. Note that after locator is resolved,
- // evaluation itself is not limited by the timeout. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorEvaluateHandleOptions struct {
- // Maximum time in milliseconds to wait for the locator before evaluating. Note that after locator is resolved,
- // evaluation itself is not limited by the timeout. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorFillOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorFilterOptions struct {
- // Narrows down the results of the method to those which contain elements matching this relative locator. For example,
- // `article` that has `text=Playwright` matches `<article><div>Playwright</div></article>`.
- // Inner locator **must be relative** to the outer locator and is queried starting with the outer locator match, not
- // the document root. For example, you can find `content` that has `div` in
- // `<article><content><div>Playwright</div></content></article>`. However, looking for `content` that has `article
- // div` will fail, because the inner locator must be relative and should not use any elements outside the `content`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- Has Locator `json:"has"`
- // Matches elements that do not contain an element that matches an inner locator. Inner locator is queried against the
- // outer one. For example, `article` that does not have `div` matches `<article><span>Playwright</span></article>`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- HasNot Locator `json:"hasNot"`
- // Matches elements that do not contain specified text somewhere inside, possibly in a child or a descendant element.
- // When passed a [string], matching is case-insensitive and searches for a substring.
- HasNotText interface{} `json:"hasNotText"`
- // Matches elements containing specified text somewhere inside, possibly in a child or a descendant element. When
- // passed a [string], matching is case-insensitive and searches for a substring. For example, `"Playwright"` matches
- // `<article><div>Playwright</div></article>`.
- HasText interface{} `json:"hasText"`
- // Only matches visible or invisible elements.
- Visible *bool `json:"visible"`
-}
-
-type LocatorFocusOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorGetAttributeOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorGetByAltTextOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type LocatorGetByLabelOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type LocatorGetByPlaceholderOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type LocatorGetByRoleOptions struct {
- // An attribute that is usually set by `aria-checked` or native `<input type=checkbox>` controls.
- // Learn more about [`aria-checked`].
- //
- // [`aria-checked`]: https://www.w3.org/TR/wai-aria-1.2/#aria-checked
- Checked *bool `json:"checked"`
- // An attribute that is usually set by `aria-disabled` or `disabled`.
- // **NOTE** Unlike most other attributes, `disabled` is inherited through the DOM hierarchy. Learn more about
- // [`aria-disabled`].
- //
- // [`aria-disabled`]: https://www.w3.org/TR/wai-aria-1.2/#aria-disabled
- Disabled *bool `json:"disabled"`
- // Whether “[object Object]” is matched exactly: case-sensitive and whole-string. Defaults to false. Ignored when
- // “[object Object]” is a regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
- // An attribute that is usually set by `aria-expanded`.
- // Learn more about [`aria-expanded`].
- //
- // [`aria-expanded`]: https://www.w3.org/TR/wai-aria-1.2/#aria-expanded
- Expanded *bool `json:"expanded"`
- // Option that controls whether hidden elements are matched. By default, only non-hidden elements, as
- // [defined by ARIA], are matched by role selector.
- // Learn more about [`aria-hidden`].
- //
- // [defined by ARIA]: https://www.w3.org/TR/wai-aria-1.2/#tree_exclusion
- // [`aria-hidden`]: https://www.w3.org/TR/wai-aria-1.2/#aria-hidden
- IncludeHidden *bool `json:"includeHidden"`
- // A number attribute that is usually present for roles `heading`, `listitem`, `row`, `treeitem`, with default values
- // for `<h1>-<h6>` elements.
- // Learn more about [`aria-level`].
- //
- // [`aria-level`]: https://www.w3.org/TR/wai-aria-1.2/#aria-level
- Level *int `json:"level"`
- // Option to match the [accessible name]. By default, matching is
- // case-insensitive and searches for a substring, use “[object Object]” to control this behavior.
- // Learn more about [accessible name].
- //
- // [accessible name]: https://w3c.github.io/accname/#dfn-accessible-name
- // [accessible name]: https://w3c.github.io/accname/#dfn-accessible-name
- Name interface{} `json:"name"`
- // An attribute that is usually set by `aria-pressed`.
- // Learn more about [`aria-pressed`].
- //
- // [`aria-pressed`]: https://www.w3.org/TR/wai-aria-1.2/#aria-pressed
- Pressed *bool `json:"pressed"`
- // An attribute that is usually set by `aria-selected`.
- // Learn more about [`aria-selected`].
- //
- // [`aria-selected`]: https://www.w3.org/TR/wai-aria-1.2/#aria-selected
- Selected *bool `json:"selected"`
-}
-
-type LocatorGetByTextOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type LocatorGetByTitleOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type LocatorHoverOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type LocatorInnerHTMLOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorInnerTextOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorInputValueOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorIsCheckedOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorIsDisabledOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorIsEditableOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorIsEnabledOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorIsHiddenOptions struct {
- //
- // Deprecated: This option is ignored. [Locator.IsHidden] does not wait for the element to become hidden and returns immediately.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorIsVisibleOptions struct {
- //
- // Deprecated: This option is ignored. [Locator.IsVisible] does not wait for the element to become visible and returns immediately.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorLocatorOptions struct {
- // Narrows down the results of the method to those which contain elements matching this relative locator. For example,
- // `article` that has `text=Playwright` matches `<article><div>Playwright</div></article>`.
- // Inner locator **must be relative** to the outer locator and is queried starting with the outer locator match, not
- // the document root. For example, you can find `content` that has `div` in
- // `<article><content><div>Playwright</div></content></article>`. However, looking for `content` that has `article
- // div` will fail, because the inner locator must be relative and should not use any elements outside the `content`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- Has Locator `json:"has"`
- // Matches elements that do not contain an element that matches an inner locator. Inner locator is queried against the
- // outer one. For example, `article` that does not have `div` matches `<article><span>Playwright</span></article>`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- HasNot Locator `json:"hasNot"`
- // Matches elements that do not contain specified text somewhere inside, possibly in a child or a descendant element.
- // When passed a [string], matching is case-insensitive and searches for a substring.
- HasNotText interface{} `json:"hasNotText"`
- // Matches elements containing specified text somewhere inside, possibly in a child or a descendant element. When
- // passed a [string], matching is case-insensitive and searches for a substring. For example, `"Playwright"` matches
- // `<article><div>Playwright</div></article>`.
- HasText interface{} `json:"hasText"`
-}
-
-type LocatorPressOptions struct {
- // Time to wait between `keydown` and `keyup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You
- // can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as
- // navigating to inaccessible pages. Defaults to `false`.
- //
- // Deprecated: This option will default to `true` in the future.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorPressSequentiallyOptions struct {
- // Time to wait between key presses in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorScreenshotOptions struct {
- // When set to `"disabled"`, stops CSS animations, CSS transitions and Web Animations. Animations get different
- // treatment depending on their duration:
- // - finite animations are fast-forwarded to completion, so they'll fire `transitionend` event.
- // - infinite animations are canceled to initial state, and then played over after the screenshot.
- // Defaults to `"allow"` that leaves animations untouched.
- Animations *ScreenshotAnimations `json:"animations"`
- // When set to `"hide"`, screenshot will hide text caret. When set to `"initial"`, text caret behavior will not be
- // changed. Defaults to `"hide"`.
- Caret *ScreenshotCaret `json:"caret"`
- // Specify locators that should be masked when the screenshot is taken. Masked elements will be overlaid with a pink
- // box `#FF00FF` (customized by “[object Object]”) that completely covers its bounding box. The mask is also applied
- // to invisible elements, see [Matching only visible elements] to
- // disable that.
- //
- // [Matching only visible elements]: https://playwright.dev/docs/locators#matching-only-visible-elements
- Mask []Locator `json:"mask"`
- // Specify the color of the overlay box for masked elements, in
- // [CSS color format]. Default color is pink `#FF00FF`.
- //
- // [CSS color format]: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value
- MaskColor *string `json:"maskColor"`
- // Hides default white background and allows capturing screenshots with transparency. Not applicable to `jpeg` images.
- // Defaults to `false`.
- OmitBackground *bool `json:"omitBackground"`
- // The file path to save the image to. The screenshot type will be inferred from file extension. If “[object Object]”
- // is a relative path, then it is resolved relative to the current working directory. If no path is provided, the
- // image won't be saved to the disk.
- Path *string `json:"path"`
- // The quality of the image, between 0-100. Not applicable to `png` images.
- Quality *int `json:"quality"`
- // When set to `"css"`, screenshot will have a single pixel per each css pixel on the page. For high-dpi devices, this
- // will keep screenshots small. Using `"device"` option will produce a single pixel per each device pixel, so
- // screenshots of high-dpi devices will be twice as large or even larger.
- // Defaults to `"device"`.
- Scale *ScreenshotScale `json:"scale"`
- // Text of the stylesheet to apply while making the screenshot. This is where you can hide dynamic elements, make
- // elements invisible or change their properties to help you creating repeatable screenshots. This stylesheet pierces
- // the Shadow DOM and applies to the inner frames.
- Style *string `json:"style"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // Specify screenshot type, defaults to `png`.
- Type *ScreenshotType `json:"type"`
-}
-
-type LocatorScrollIntoViewIfNeededOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorSelectOptionOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorSelectTextOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorSetCheckedOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type LocatorSetInputFilesOptions struct {
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorTapOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type LocatorTextContentOptions struct {
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorTypeOptions struct {
- // Time to wait between key presses in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorUncheckOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type LocatorWaitForOptions struct {
- // Defaults to `visible`. Can be either:
- // - `attached` - wait for element to be present in DOM.
- // - `detached` - wait for element to not be present in DOM.
- // - `visible` - wait for element to have non-empty bounding box and no `visibility:hidden`. Note that element
- // without any content or with `display:none` has an empty bounding box and is not considered visible.
- // - `hidden` - wait for element to be either detached from DOM, or have an empty bounding box or
- // `visibility:hidden`. This is opposite to the `visible` option.
- State *WaitForSelectorState `json:"state"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeAttachedOptions struct {
- Attached *bool `json:"attached"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeCheckedOptions struct {
- // Provides state to assert for. Asserts for input to be checked by default. This option can't be used when
- // “[object Object]” is set to true.
- Checked *bool `json:"checked"`
- // Asserts that the element is in the indeterminate (mixed) state. Only supported for checkboxes and radio buttons.
- // This option can't be true when “[object Object]” is provided.
- Indeterminate *bool `json:"indeterminate"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeDisabledOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeEditableOptions struct {
- Editable *bool `json:"editable"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeEmptyOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeEnabledOptions struct {
- Enabled *bool `json:"enabled"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeFocusedOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeHiddenOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeInViewportOptions struct {
- // The minimal ratio of the element to intersect viewport. If equals to `0`, then element should intersect viewport at
- // any positive ratio. Defaults to `0`.
- Ratio *float64 `json:"ratio"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToBeVisibleOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
- Visible *bool `json:"visible"`
-}
-
-type LocatorAssertionsToContainClassOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToContainTextOptions struct {
- // Whether to perform case-insensitive match. “[object Object]” option takes precedence over the corresponding regular
- // expression flag if specified.
- IgnoreCase *bool `json:"ignoreCase"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
- // Whether to use `element.innerText` instead of `element.textContent` when retrieving DOM node text.
- UseInnerText *bool `json:"useInnerText"`
-}
-
-type LocatorAssertionsToHaveAccessibleDescriptionOptions struct {
- // Whether to perform case-insensitive match. “[object Object]” option takes precedence over the corresponding regular
- // expression flag if specified.
- IgnoreCase *bool `json:"ignoreCase"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveAccessibleErrorMessageOptions struct {
- // Whether to perform case-insensitive match. “[object Object]” option takes precedence over the corresponding regular
- // expression flag if specified.
- IgnoreCase *bool `json:"ignoreCase"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveAccessibleNameOptions struct {
- // Whether to perform case-insensitive match. “[object Object]” option takes precedence over the corresponding regular
- // expression flag if specified.
- IgnoreCase *bool `json:"ignoreCase"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveAttributeOptions struct {
- // Whether to perform case-insensitive match. “[object Object]” option takes precedence over the corresponding regular
- // expression flag if specified.
- IgnoreCase *bool `json:"ignoreCase"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveClassOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveCountOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveCSSOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveIdOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveJSPropertyOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveRoleOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveTextOptions struct {
- // Whether to perform case-insensitive match. “[object Object]” option takes precedence over the corresponding regular
- // expression flag if specified.
- IgnoreCase *bool `json:"ignoreCase"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
- // Whether to use `element.innerText` instead of `element.textContent` when retrieving DOM node text.
- UseInnerText *bool `json:"useInnerText"`
-}
-
-type LocatorAssertionsToHaveValueOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToHaveValuesOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type LocatorAssertionsToMatchAriaSnapshotOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type MouseClickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // defaults to 1. See [UIEvent.Detail].
- ClickCount *int `json:"clickCount"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
-}
-
-type MouseDblclickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
-}
-
-type MouseDownOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // defaults to 1. See [UIEvent.Detail].
- ClickCount *int `json:"clickCount"`
-}
-
-type MouseMoveOptions struct {
- // Defaults to 1. Sends intermediate `mousemove` events.
- Steps *int `json:"steps"`
-}
-
-type MouseUpOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // defaults to 1. See [UIEvent.Detail].
- ClickCount *int `json:"clickCount"`
-}
-
-type PageAddScriptTagOptions struct {
- // Raw JavaScript content to be injected into frame.
- Content *string `json:"content"`
- // Path to the JavaScript file to be injected into frame. If `path` is a relative path, then it is resolved relative
- // to the current working directory.
- Path *string `json:"path"`
- // Script type. Use 'module' in order to load a JavaScript ES6 module. See
- // [script] for more details.
- //
- // [script]: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
- Type *string `json:"type"`
- // URL of a script to be added.
- URL *string `json:"url"`
-}
-
-type PageAddStyleTagOptions struct {
- // Raw CSS content to be injected into frame.
- Content *string `json:"content"`
- // Path to the CSS file to be injected into frame. If `path` is a relative path, then it is resolved relative to the
- // current working directory.
- Path *string `json:"path"`
- // URL of the `<link>` tag.
- URL *string `json:"url"`
-}
-
-type PageCheckOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type PageClickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // defaults to 1. See [UIEvent.Detail].
- ClickCount *int `json:"clickCount"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You
- // can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as
- // navigating to inaccessible pages. Defaults to `false`.
- //
- // Deprecated: This option will default to `true` in the future.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type PageCloseOptions struct {
- // The reason to be reported to the operations interrupted by the page closure.
- Reason *string `json:"reason"`
- // Defaults to `false`. Whether to run the
- // [before unload] page handlers.
- //
- // [before unload]: https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload
- RunBeforeUnload *bool `json:"runBeforeUnload"`
-}
-
-type PageDblclickOptions struct {
- // Defaults to `left`.
- Button *MouseButton `json:"button"`
- // Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type PageDispatchEventOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageDragAndDropOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Clicks on the source element at this point relative to the top-left corner of the element's padding box. If not
- // specified, some visible point of the element is used.
- SourcePosition *Position `json:"sourcePosition"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Drops on the target element at this point relative to the top-left corner of the element's padding box. If not
- // specified, some visible point of the element is used.
- TargetPosition *Position `json:"targetPosition"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type PageEmulateMediaOptions struct {
- // Emulates [prefers-colors-scheme]
- // media feature, supported values are `light` and `dark`. Passing `no-override` disables color scheme
- // emulation. `no-preference` is deprecated.
- //
- // [prefers-colors-scheme]: https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme
- ColorScheme *ColorScheme `json:"colorScheme"`
- // Emulates `prefers-contrast` media feature, supported values are `no-preference`, `more`. Passing
- // `no-override` disables contrast emulation.
- Contrast *Contrast `json:"contrast"`
- // Emulates `forced-colors` media feature, supported values are `active` and `none`. Passing `no-override`
- // disables forced colors emulation.
- ForcedColors *ForcedColors `json:"forcedColors"`
- // Changes the CSS media type of the page. The only allowed values are `screen`, `print` and `no-override`.
- // Passing `no-override` disables CSS media emulation.
- Media *Media `json:"media"`
- // Emulates `prefers-reduced-motion` media feature, supported values are `reduce`, `no-preference`. Passing
- // `no-override` disables reduced motion emulation.
- ReducedMotion *ReducedMotion `json:"reducedMotion"`
-}
-
-type PageEvalOnSelectorOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
-}
-
-type PageFillOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageFocusOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageFrameOptions struct {
- // Frame name specified in the `iframe`'s `name` attribute. Optional.
- Name *string `json:"name"`
- // A glob pattern, regex pattern or predicate receiving frame's `url` as a [URL] object. Optional.
- URL interface{} `json:"url"`
-}
-
-type PageGetAttributeOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageGetByAltTextOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type PageGetByLabelOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type PageGetByPlaceholderOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type PageGetByRoleOptions struct {
- // An attribute that is usually set by `aria-checked` or native `<input type=checkbox>` controls.
- // Learn more about [`aria-checked`].
- //
- // [`aria-checked`]: https://www.w3.org/TR/wai-aria-1.2/#aria-checked
- Checked *bool `json:"checked"`
- // An attribute that is usually set by `aria-disabled` or `disabled`.
- // **NOTE** Unlike most other attributes, `disabled` is inherited through the DOM hierarchy. Learn more about
- // [`aria-disabled`].
- //
- // [`aria-disabled`]: https://www.w3.org/TR/wai-aria-1.2/#aria-disabled
- Disabled *bool `json:"disabled"`
- // Whether “[object Object]” is matched exactly: case-sensitive and whole-string. Defaults to false. Ignored when
- // “[object Object]” is a regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
- // An attribute that is usually set by `aria-expanded`.
- // Learn more about [`aria-expanded`].
- //
- // [`aria-expanded`]: https://www.w3.org/TR/wai-aria-1.2/#aria-expanded
- Expanded *bool `json:"expanded"`
- // Option that controls whether hidden elements are matched. By default, only non-hidden elements, as
- // [defined by ARIA], are matched by role selector.
- // Learn more about [`aria-hidden`].
- //
- // [defined by ARIA]: https://www.w3.org/TR/wai-aria-1.2/#tree_exclusion
- // [`aria-hidden`]: https://www.w3.org/TR/wai-aria-1.2/#aria-hidden
- IncludeHidden *bool `json:"includeHidden"`
- // A number attribute that is usually present for roles `heading`, `listitem`, `row`, `treeitem`, with default values
- // for `<h1>-<h6>` elements.
- // Learn more about [`aria-level`].
- //
- // [`aria-level`]: https://www.w3.org/TR/wai-aria-1.2/#aria-level
- Level *int `json:"level"`
- // Option to match the [accessible name]. By default, matching is
- // case-insensitive and searches for a substring, use “[object Object]” to control this behavior.
- // Learn more about [accessible name].
- //
- // [accessible name]: https://w3c.github.io/accname/#dfn-accessible-name
- // [accessible name]: https://w3c.github.io/accname/#dfn-accessible-name
- Name interface{} `json:"name"`
- // An attribute that is usually set by `aria-pressed`.
- // Learn more about [`aria-pressed`].
- //
- // [`aria-pressed`]: https://www.w3.org/TR/wai-aria-1.2/#aria-pressed
- Pressed *bool `json:"pressed"`
- // An attribute that is usually set by `aria-selected`.
- // Learn more about [`aria-selected`].
- //
- // [`aria-selected`]: https://www.w3.org/TR/wai-aria-1.2/#aria-selected
- Selected *bool `json:"selected"`
-}
-
-type PageGetByTextOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type PageGetByTitleOptions struct {
- // Whether to find an exact match: case-sensitive and whole-string. Default to false. Ignored when locating by a
- // regular expression. Note that exact match still trims whitespace.
- Exact *bool `json:"exact"`
-}
-
-type PageGoBackOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type PageGoForwardOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type PageGotoOptions struct {
- // Referer header value. If provided it will take preference over the referer header value set by
- // [Page.SetExtraHTTPHeaders].
- Referer *string `json:"referer"`
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type PageHoverOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type PageInnerHTMLOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageInnerTextOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageInputValueOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageIsCheckedOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageIsDisabledOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageIsEditableOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageIsEnabledOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageIsHiddenOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- //
- // Deprecated: This option is ignored. [Page.IsHidden] does not wait for the element to become hidden and returns immediately.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageIsVisibleOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- //
- // Deprecated: This option is ignored. [Page.IsVisible] does not wait for the element to become visible and returns immediately.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageLocatorOptions struct {
- // Narrows down the results of the method to those which contain elements matching this relative locator. For example,
- // `article` that has `text=Playwright` matches `<article><div>Playwright</div></article>`.
- // Inner locator **must be relative** to the outer locator and is queried starting with the outer locator match, not
- // the document root. For example, you can find `content` that has `div` in
- // `<article><content><div>Playwright</div></content></article>`. However, looking for `content` that has `article
- // div` will fail, because the inner locator must be relative and should not use any elements outside the `content`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- Has Locator `json:"has"`
- // Matches elements that do not contain an element that matches an inner locator. Inner locator is queried against the
- // outer one. For example, `article` that does not have `div` matches `<article><span>Playwright</span></article>`.
- // Note that outer and inner locators must belong to the same frame. Inner locator must not contain [FrameLocator]s.
- HasNot Locator `json:"hasNot"`
- // Matches elements that do not contain specified text somewhere inside, possibly in a child or a descendant element.
- // When passed a [string], matching is case-insensitive and searches for a substring.
- HasNotText interface{} `json:"hasNotText"`
- // Matches elements containing specified text somewhere inside, possibly in a child or a descendant element. When
- // passed a [string], matching is case-insensitive and searches for a substring. For example, `"Playwright"` matches
- // `<article><div>Playwright</div></article>`.
- HasText interface{} `json:"hasText"`
-}
-
-type PagePdfOptions struct {
- // Display header and footer. Defaults to `false`.
- DisplayHeaderFooter *bool `json:"displayHeaderFooter"`
- // HTML template for the print footer. Should use the same format as the “[object Object]”.
- FooterTemplate *string `json:"footerTemplate"`
- // Paper format. If set, takes priority over “[object Object]” or “[object Object]” options. Defaults to 'Letter'.
- Format *string `json:"format"`
- // HTML template for the print header. Should be valid HTML markup with following classes used to inject printing
- // values into them:
- // - `date` formatted print date
- // - `title` document title
- // - `url` document location
- // - `pageNumber` current page number
- // - `totalPages` total pages in the document
- HeaderTemplate *string `json:"headerTemplate"`
- // Paper height, accepts values labeled with units.
- Height *string `json:"height"`
- // Paper orientation. Defaults to `false`.
- Landscape *bool `json:"landscape"`
- // Paper margins, defaults to none.
- Margin *Margin `json:"margin"`
- // Whether or not to embed the document outline into the PDF. Defaults to `false`.
- Outline *bool `json:"outline"`
- // Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means print all pages.
- PageRanges *string `json:"pageRanges"`
- // The file path to save the PDF to. If “[object Object]” is a relative path, then it is resolved relative to the
- // current working directory. If no path is provided, the PDF won't be saved to the disk.
- Path *string `json:"path"`
- // Give any CSS `@page` size declared in the page priority over what is declared in “[object Object]” and
- // “[object Object]” or “[object Object]” options. Defaults to `false`, which will scale the content to fit the paper
- // size.
- PreferCSSPageSize *bool `json:"preferCSSPageSize"`
- // Print background graphics. Defaults to `false`.
- PrintBackground *bool `json:"printBackground"`
- // Scale of the webpage rendering. Defaults to `1`. Scale amount must be between 0.1 and 2.
- Scale *float64 `json:"scale"`
- // Whether or not to generate tagged (accessible) PDF. Defaults to `false`.
- Tagged *bool `json:"tagged"`
- // Paper width, accepts values labeled with units.
- Width *string `json:"width"`
-}
-
-type PagePressOptions struct {
- // Time to wait between `keydown` and `keyup` in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // Actions that initiate navigations are waiting for these navigations to happen and for pages to start loading. You
- // can opt out of waiting via setting this flag. You would only need this option in the exceptional cases such as
- // navigating to inaccessible pages. Defaults to `false`.
- //
- // Deprecated: This option will default to `true` in the future.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageQuerySelectorOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
-}
-
-type PageAddLocatorHandlerOptions struct {
- // By default, after calling the handler Playwright will wait until the overlay becomes hidden, and only then
- // Playwright will continue with the action/assertion that triggered the handler. This option allows to opt-out of
- // this behavior, so that overlay can stay visible after the handler has run.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // Specifies the maximum number of times this handler should be called. Unlimited by default.
- Times *int `json:"times"`
-}
-
-type PageReloadOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type PageRouteFromHAROptions struct {
- // - If set to 'abort' any request not found in the HAR file will be aborted.
- // - If set to 'fallback' missing requests will be sent to the network.
- // Defaults to abort.
- NotFound *HarNotFound `json:"notFound"`
- // If specified, updates the given HAR with the actual network information instead of serving from file. The file is
- // written to disk when [BrowserContext.Close] is called.
- Update *bool `json:"update"`
- // Optional setting to control resource content management. If `attach` is specified, resources are persisted as
- // separate files or entries in the ZIP archive. If `embed` is specified, content is stored inline the HAR file.
- UpdateContent *RouteFromHarUpdateContentPolicy `json:"updateContent"`
- // When set to `minimal`, only record information necessary for routing from HAR. This omits sizes, timing, page,
- // cookies, security and other types of HAR information that are not used when replaying from HAR. Defaults to
- // `minimal`.
- UpdateMode *HarMode `json:"updateMode"`
- // A glob pattern, regular expression or predicate to match the request URL. Only requests with URL matching the
- // pattern will be served from the HAR file. If not specified, all requests are served from the HAR file.
- URL interface{} `json:"url"`
-}
-
-type PageScreenshotOptions struct {
- // When set to `"disabled"`, stops CSS animations, CSS transitions and Web Animations. Animations get different
- // treatment depending on their duration:
- // - finite animations are fast-forwarded to completion, so they'll fire `transitionend` event.
- // - infinite animations are canceled to initial state, and then played over after the screenshot.
- // Defaults to `"allow"` that leaves animations untouched.
- Animations *ScreenshotAnimations `json:"animations"`
- // When set to `"hide"`, screenshot will hide text caret. When set to `"initial"`, text caret behavior will not be
- // changed. Defaults to `"hide"`.
- Caret *ScreenshotCaret `json:"caret"`
- // An object which specifies clipping of the resulting image.
- Clip *Rect `json:"clip"`
- // When true, takes a screenshot of the full scrollable page, instead of the currently visible viewport. Defaults to
- // `false`.
- FullPage *bool `json:"fullPage"`
- // Specify locators that should be masked when the screenshot is taken. Masked elements will be overlaid with a pink
- // box `#FF00FF` (customized by “[object Object]”) that completely covers its bounding box. The mask is also applied
- // to invisible elements, see [Matching only visible elements] to
- // disable that.
- //
- // [Matching only visible elements]: https://playwright.dev/docs/locators#matching-only-visible-elements
- Mask []Locator `json:"mask"`
- // Specify the color of the overlay box for masked elements, in
- // [CSS color format]. Default color is pink `#FF00FF`.
- //
- // [CSS color format]: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value
- MaskColor *string `json:"maskColor"`
- // Hides default white background and allows capturing screenshots with transparency. Not applicable to `jpeg` images.
- // Defaults to `false`.
- OmitBackground *bool `json:"omitBackground"`
- // The file path to save the image to. The screenshot type will be inferred from file extension. If “[object Object]”
- // is a relative path, then it is resolved relative to the current working directory. If no path is provided, the
- // image won't be saved to the disk.
- Path *string `json:"path"`
- // The quality of the image, between 0-100. Not applicable to `png` images.
- Quality *int `json:"quality"`
- // When set to `"css"`, screenshot will have a single pixel per each css pixel on the page. For high-dpi devices, this
- // will keep screenshots small. Using `"device"` option will produce a single pixel per each device pixel, so
- // screenshots of high-dpi devices will be twice as large or even larger.
- // Defaults to `"device"`.
- Scale *ScreenshotScale `json:"scale"`
- // Text of the stylesheet to apply while making the screenshot. This is where you can hide dynamic elements, make
- // elements invisible or change their properties to help you creating repeatable screenshots. This stylesheet pierces
- // the Shadow DOM and applies to the inner frames.
- Style *string `json:"style"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // Specify screenshot type, defaults to `png`.
- Type *ScreenshotType `json:"type"`
-}
-
-type PageSelectOptionOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageSetCheckedOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type PageSetContentOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type PageSetInputFilesOptions struct {
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageTapOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // Modifier keys to press. Ensures that only these modifiers are pressed during the operation, and then restores
- // current modifiers back. If not specified, currently pressed modifiers are used. "ControlOrMeta" resolves to
- // "Control" on Windows and Linux and to "Meta" on macOS.
- Modifiers []KeyboardModifier `json:"modifiers"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it. Note that keyboard
- // `modifiers` will be pressed regardless of `trial` to allow testing elements which are only visible when those keys
- // are pressed.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type PageTextContentOptions struct {
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageTypeOptions struct {
- // Time to wait between key presses in milliseconds. Defaults to 0.
- Delay *float64 `json:"delay"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageUncheckOptions struct {
- // Whether to bypass the [actionability] checks. Defaults to `false`.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Force *bool `json:"force"`
- // This option has no effect.
- //
- // Deprecated: This option has no effect.
- NoWaitAfter *bool `json:"noWaitAfter"`
- // A point to use relative to the top-left corner of element padding box. If not specified, uses some visible point of
- // the element.
- Position *Position `json:"position"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When set, this method only performs the [actionability] checks and skips the action. Defaults
- // to `false`. Useful to wait until the element is ready for the action without performing it.
- //
- // [actionability]: https://playwright.dev/docs/actionability
- Trial *bool `json:"trial"`
-}
-
-type PageUnrouteAllOptions struct {
- // Specifies whether to wait for already running handlers and what to do if they throw errors:
- // - `default` - do not wait for current handler calls (if any) to finish, if unrouted handler throws, it may
- // result in unhandled error
- // - `wait` - wait for current handler calls (if any) to finish
- // - `ignoreErrors` - do not wait for current handler calls (if any) to finish, all errors thrown by the handlers
- // after unrouting are silently caught
- Behavior *UnrouteBehavior `json:"behavior"`
-}
-
-type Size struct {
- // page width in pixels.
- Width int `json:"width"`
- // page height in pixels.
- Height int `json:"height"`
-}
-
-type PageExpectConsoleMessageOptions struct {
- // Receives the [ConsoleMessage] object and resolves to truthy value when the waiting should resolve.
- Predicate func(ConsoleMessage) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageExpectDownloadOptions struct {
- // Receives the [Download] object and resolves to truthy value when the waiting should resolve.
- Predicate func(Download) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageExpectEventOptions struct {
- // Receives the event data and resolves to truthy value when the waiting should resolve.
- Predicate interface{} `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageExpectFileChooserOptions struct {
- // Receives the [FileChooser] object and resolves to truthy value when the waiting should resolve.
- Predicate func(FileChooser) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageWaitForFunctionOptions struct {
- // If “[object Object]” is `raf`, then “[object Object]” is constantly executed in `requestAnimationFrame` callback.
- // If “[object Object]” is a number, then it is treated as an interval in milliseconds at which the function would be
- // executed. Defaults to `raf`.
- Polling interface{} `json:"polling"`
- // 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 [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageWaitForLoadStateOptions struct {
- // Optional load state to wait for, defaults to `load`. If the state has been already reached while loading current
- // document, the method resolves immediately. Can be one of:
- // - `load` - wait for the `load` event to be fired.
- // - `domcontentloaded` - wait for the `DOMContentLoaded` event to be fired.
- // - `networkidle` - **DISCOURAGED** wait until there are no network connections for at least `500` ms. Don't use
- // this method for testing, rely on web assertions to assess readiness instead.
- State *LoadState `json:"state"`
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageExpectNavigationOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // A glob pattern, regex pattern or predicate receiving [URL] to match while waiting for the navigation. Note that if
- // the parameter is a string without wildcard characters, the method will wait for navigation to URL that is exactly
- // equal to the string.
- URL interface{} `json:"url"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type PageExpectPopupOptions struct {
- // Receives the [Page] object and resolves to truthy value when the waiting should resolve.
- Predicate func(Page) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageExpectRequestOptions struct {
- // Maximum wait time in milliseconds, defaults to 30 seconds, pass `0` to disable the timeout. The default value can
- // be changed by using the [Page.SetDefaultTimeout] method.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageExpectRequestFinishedOptions struct {
- // Receives the [Request] object and resolves to truthy value when the waiting should resolve.
- Predicate func(Request) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageExpectResponseOptions struct {
- // Maximum wait time in milliseconds, defaults to 30 seconds, pass `0` to disable the timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageWaitForSelectorOptions struct {
- // Defaults to `visible`. Can be either:
- // - `attached` - wait for element to be present in DOM.
- // - `detached` - wait for element to not be present in DOM.
- // - `visible` - wait for element to have non-empty bounding box and no `visibility:hidden`. Note that element
- // without any content or with `display:none` has an empty bounding box and is not considered visible.
- // - `hidden` - wait for element to be either detached from DOM, or have an empty bounding box or
- // `visibility:hidden`. This is opposite to the `visible` option.
- State *WaitForSelectorState `json:"state"`
- // When true, the call requires selector to resolve to a single element. If given selector resolves to more than one
- // element, the call throws an exception.
- Strict *bool `json:"strict"`
- // Maximum time in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageWaitForURLOptions struct {
- // Maximum operation time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can
- // be changed by using the [BrowserContext.SetDefaultNavigationTimeout], [BrowserContext.SetDefaultTimeout],
- // [Page.SetDefaultNavigationTimeout] or [Page.SetDefaultTimeout] methods.
- Timeout *float64 `json:"timeout"`
- // When to consider operation succeeded, defaults to `load`. Events can be either:
- // - `domcontentloaded` - consider operation to be finished when the `DOMContentLoaded` event is fired.
- // - `load` - consider operation to be finished when the `load` event is fired.
- // - `networkidle` - **DISCOURAGED** consider operation to be finished when there are no network connections for
- // at least `500` ms. Don't use this method for testing, rely on web assertions to assess readiness instead.
- // - `commit` - consider operation to be finished when network response is received and the document started
- // loading.
- WaitUntil *WaitUntilState `json:"waitUntil"`
-}
-
-type PageExpectWebSocketOptions struct {
- // Receives the [WebSocket] object and resolves to truthy value when the waiting should resolve.
- Predicate func(WebSocket) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageExpectWorkerOptions struct {
- // Receives the [Worker] object and resolves to truthy value when the waiting should resolve.
- Predicate func(Worker) bool `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageWaitForEventOptions struct {
- // Receives the event data and resolves to truthy value when the waiting should resolve.
- Predicate interface{} `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type PageAssertionsToHaveTitleOptions struct {
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type PageAssertionsToHaveURLOptions struct {
- // Whether to perform case-insensitive match. “[object Object]” option takes precedence over the corresponding regular
- // expression parameter if specified. A provided predicate ignores this flag.
- IgnoreCase *bool `json:"ignoreCase"`
- // Time to retry the assertion for in milliseconds. Defaults to `5000`.
- Timeout *float64 `json:"timeout"`
-}
-
-type RequestSizesResult struct {
- // Size of the request body (POST data payload) in bytes. Set to 0 if there was no body.
- RequestBodySize int `json:"requestBodySize"`
- // Total number of bytes from the start of the HTTP request message until (and including) the double CRLF before the
- // body.
- RequestHeadersSize int `json:"requestHeadersSize"`
- // Size of the received response body (encoded) in bytes.
- ResponseBodySize int `json:"responseBodySize"`
- // Total number of bytes from the start of the HTTP response message until (and including) the double CRLF before the
- // body.
- ResponseHeadersSize int `json:"responseHeadersSize"`
-}
-
-type RequestTiming struct {
- // Request start time in milliseconds elapsed since January 1, 1970 00:00:00 UTC
- StartTime float64 `json:"startTime"`
- // Time immediately before the browser starts the domain name lookup for the resource. The value is given in
- // milliseconds relative to `startTime`, -1 if not available.
- DomainLookupStart float64 `json:"domainLookupStart"`
- // Time immediately after the browser starts the domain name lookup for the resource. The value is given in
- // milliseconds relative to `startTime`, -1 if not available.
- DomainLookupEnd float64 `json:"domainLookupEnd"`
- // Time immediately before the user agent starts establishing the connection to the server to retrieve the resource.
- // The value is given in milliseconds relative to `startTime`, -1 if not available.
- ConnectStart float64 `json:"connectStart"`
- // Time immediately before the browser starts the handshake process to secure the current connection. The value is
- // given in milliseconds relative to `startTime`, -1 if not available.
- SecureConnectionStart float64 `json:"secureConnectionStart"`
- // Time immediately before the user agent starts establishing the connection to the server to retrieve the resource.
- // The value is given in milliseconds relative to `startTime`, -1 if not available.
- ConnectEnd float64 `json:"connectEnd"`
- // Time immediately before the browser starts requesting the resource from the server, cache, or local resource. The
- // value is given in milliseconds relative to `startTime`, -1 if not available.
- RequestStart float64 `json:"requestStart"`
- // Time immediately after the browser receives the first byte of the response from the server, cache, or local
- // resource. The value is given in milliseconds relative to `startTime`, -1 if not available.
- ResponseStart float64 `json:"responseStart"`
- // Time immediately after the browser receives the last byte of the resource or immediately before the transport
- // connection is closed, whichever comes first. The value is given in milliseconds relative to `startTime`, -1 if not
- // available.
- ResponseEnd float64 `json:"responseEnd"`
-}
-
-type ResponseSecurityDetailsResult struct {
- // Common Name component of the Issuer field. from the certificate. This should only be used for informational
- // purposes. Optional.
- Issuer *string `json:"issuer"`
- // The specific TLS protocol used. (e.g. `TLS 1.3`). Optional.
- Protocol *string `json:"protocol"`
- // Common Name component of the Subject field from the certificate. This should only be used for informational
- // purposes. Optional.
- SubjectName *string `json:"subjectName"`
- // Unix timestamp (in seconds) specifying when this cert becomes valid. Optional.
- ValidFrom *float64 `json:"validFrom"`
- // Unix timestamp (in seconds) specifying when this cert becomes invalid. Optional.
- ValidTo *float64 `json:"validTo"`
-}
-
-type ResponseServerAddrResult struct {
- // IPv4 or IPV6 address of the server.
- IpAddress string `json:"ipAddress"`
- Port int `json:"port"`
-}
-
-type RouteContinueOptions struct {
- // If set changes the request HTTP headers. Header values will be converted to a string.
- Headers map[string]string `json:"headers"`
- // If set changes the request method (e.g. GET or POST).
- Method *string `json:"method"`
- // If set changes the post data of request.
- PostData interface{} `json:"postData"`
- // If set changes the request URL. New URL must have same protocol as original one.
- URL *string `json:"url"`
-}
-
-type RouteFallbackOptions struct {
- // If set changes the request HTTP headers. Header values will be converted to a string.
- Headers map[string]string `json:"headers"`
- // If set changes the request method (e.g. GET or POST).
- Method *string `json:"method"`
- // If set changes the post data of request.
- PostData interface{} `json:"postData"`
- // If set changes the request URL. New URL must have same protocol as original one. Changing the URL won't affect the
- // route matching, all the routes are matched using the original request URL.
- URL *string `json:"url"`
-}
-
-type RouteFetchOptions struct {
- // If set changes the request HTTP headers. Header values will be converted to a string.
- Headers map[string]string `json:"headers"`
- // Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
- // exceeded. Defaults to `20`. Pass `0` to not follow redirects.
- MaxRedirects *int `json:"maxRedirects"`
- // Maximum number of times network errors should be retried. Currently only `ECONNRESET` error is retried. Does not
- // retry based on HTTP response codes. An error will be thrown if the limit is exceeded. Defaults to `0` - no retries.
- MaxRetries *int `json:"maxRetries"`
- // If set changes the request method (e.g. GET or POST).
- Method *string `json:"method"`
- // If set changes the post data of request.
- PostData interface{} `json:"postData"`
- // Request timeout in milliseconds. Defaults to `30000` (30 seconds). Pass `0` to disable timeout.
- Timeout *float64 `json:"timeout"`
- // If set changes the request URL. New URL must have same protocol as original one.
- URL *string `json:"url"`
-}
-
-type RouteFulfillOptions struct {
- // Response body.
- Body interface{} `json:"body"`
- // If set, equals to setting `Content-Type` response header.
- ContentType *string `json:"contentType"`
- // Response headers. Header values will be converted to a string.
- Headers map[string]string `json:"headers"`
- // File path to respond with. The content type will be inferred from file extension. If `path` is a relative path,
- // then it is resolved relative to the current working directory.
- Path *string `json:"path"`
- // [APIResponse] to fulfill route's request with. Individual fields of the response (such as headers) can be
- // overridden using fulfill options.
- Response APIResponse `json:"response"`
- // Response status code, defaults to `200`.
- Status *int `json:"status"`
-}
-
-type SelectorsRegisterOptions struct {
- // Whether to run this selector engine in isolated JavaScript environment. This environment has access to the same
- // DOM, but not any JavaScript objects from the frame's scripts. Defaults to `false`. Note that running as a content
- // script is not guaranteed when this engine is used together with other registered engines.
- ContentScript *bool `json:"contentScript"`
-}
-
-type TracingStartOptions struct {
- // If specified, intermediate trace files are going to be saved into the files with the given name prefix inside the
- // “[object Object]” directory specified in [BrowserType.Launch]. To specify the final trace zip file name, you need
- // to pass `path` option to [Tracing.Stop] instead.
- Name *string `json:"name"`
- // Whether to capture screenshots during tracing. Screenshots are used to build a timeline preview.
- Screenshots *bool `json:"screenshots"`
- // If this option is true tracing will
- // - capture DOM snapshot on every action
- // - record network activity
- Snapshots *bool `json:"snapshots"`
- // Whether to include source files for trace actions.
- Sources *bool `json:"sources"`
- // Trace name to be shown in the Trace Viewer.
- Title *string `json:"title"`
-}
-
-type TracingStartChunkOptions struct {
- // If specified, intermediate trace files are going to be saved into the files with the given name prefix inside the
- // “[object Object]” directory specified in [BrowserType.Launch]. To specify the final trace zip file name, you need
- // to pass `path` option to [Tracing.StopChunk] instead.
- Name *string `json:"name"`
- // Trace name to be shown in the Trace Viewer.
- Title *string `json:"title"`
-}
-
-type TracingGroupOptions struct {
- // Specifies a custom location for the group to be shown in the trace viewer. Defaults to the location of the
- // [Tracing.Group] call.
- Location *TracingGroupOptionsLocation `json:"location"`
-}
-
-type WebSocketExpectEventOptions struct {
- // Receives the event data and resolves to truthy value when the waiting should resolve.
- Predicate interface{} `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type WebSocketWaitForEventOptions struct {
- // Receives the event data and resolves to truthy value when the waiting should resolve.
- Predicate interface{} `json:"predicate"`
- // 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 [BrowserContext.SetDefaultTimeout].
- Timeout *float64 `json:"timeout"`
-}
-
-type WebSocketRouteCloseOptions struct {
- // Optional [close code].
- //
- // [close code]: https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/close#code
- Code *int `json:"code"`
- // Optional [close reason].
- //
- // [close reason]: https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/close#reason
- Reason *string `json:"reason"`
-}
-
-type ClientCertificate struct {
- // Exact origin that the certificate is valid for. Origin includes `https` protocol, a hostname and optionally a port.
- Origin string `json:"origin"`
- // Path to the file with the certificate in PEM format.
- CertPath *string `json:"certPath"`
- // Direct value of the certificate in PEM format.
- Cert []byte `json:"cert"`
- // Path to the file with the private key in PEM format.
- KeyPath *string `json:"keyPath"`
- // Direct value of the private key in PEM format.
- Key []byte `json:"key"`
- // Path to the PFX or PKCS12 encoded private key and certificate chain.
- PfxPath *string `json:"pfxPath"`
- // Direct value of the PFX or PKCS12 encoded private key and certificate chain.
- Pfx []byte `json:"pfx"`
- // Passphrase for the private key (PEM or PFX).
- Passphrase *string `json:"passphrase"`
-}
-
-type HttpCredentials struct {
- Username string `json:"username"`
- Password string `json:"password"`
- // Restrain sending http credentials on specific origin (scheme://host:port).
- Origin *string `json:"origin"`
- // This option only applies to the requests sent from corresponding [APIRequestContext] and does not affect requests
- // sent from the browser. `always` - `Authorization` header with basic authentication credentials will be sent with
- // the each API request. `'unauthorized` - the credentials are only sent when 401 (Unauthorized) response with
- // `WWW-Authenticate` header is received. Defaults to `unauthorized`.
- Send *HttpCredentialsSend `json:"send"`
-}
-
-type Proxy struct {
- // Proxy to be used for all requests. HTTP and SOCKS proxies are supported, for example `http://myproxy.com:3128` or
- // `socks5://myproxy.com:3128`. Short form `myproxy.com:3128` is considered an HTTP proxy.
- Server string `json:"server"`
- // Optional comma-separated domains to bypass proxy, for example `".com, chromium.org, .domain.com"`.
- Bypass *string `json:"bypass"`
- // Optional username to use if HTTP proxy requires authentication.
- Username *string `json:"username"`
- // Optional password to use if HTTP proxy requires authentication.
- Password *string `json:"password"`
-}
-
-type Origin struct {
- Origin string `json:"origin"`
- LocalStorage []NameValue `json:"localStorage"`
-}
-
-type RecordVideo struct {
- // Path to the directory to put videos into.
- Dir string `json:"dir"`
- // Optional dimensions of the recorded videos. If not specified the size will be equal to `viewport` scaled down to
- // fit into 800x800. If `viewport` is not configured explicitly the video size defaults to 800x450. Actual picture of
- // each page will be scaled down if necessary to fit the specified size.
- Size *Size `json:"size"`
-}
-
-type OptionalStorageState struct {
- // Cookies to set for context
- Cookies []OptionalCookie `json:"cookies"`
- // localStorage to set for context
- Origins []Origin `json:"origins"`
-}
-
-type Position struct {
- X float64 `json:"x"`
- Y float64 `json:"y"`
-}
-
-type Margin struct {
- // Top margin, accepts values labeled with units. Defaults to `0`.
- Top *string `json:"top"`
- // Right margin, accepts values labeled with units. Defaults to `0`.
- Right *string `json:"right"`
- // Bottom margin, accepts values labeled with units. Defaults to `0`.
- Bottom *string `json:"bottom"`
- // Left margin, accepts values labeled with units. Defaults to `0`.
- Left *string `json:"left"`
-}
-
-type TracingGroupOptionsLocation struct {
- File string `json:"file"`
- Line *int `json:"line"`
- Column *int `json:"column"`
-}