diff --git a/README.md b/README.md index 24c5697ca1..63fdd74cb3 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # 🎭 Playwright -[![npm version](https://img.shields.io/npm/v/playwright.svg)](https://www.npmjs.com/package/playwright) [![Chromium version](https://img.shields.io/badge/chromium-137.0.7151.40-blue.svg?logo=google-chrome)](https://www.chromium.org/Home) [![Firefox version](https://img.shields.io/badge/firefox-137.0-blue.svg?logo=firefoxbrowser)](https://www.mozilla.org/en-US/firefox/new/) [![WebKit version](https://img.shields.io/badge/webkit-18.4-blue.svg?logo=safari)](https://webkit.org/) [![Join Discord](https://img.shields.io/badge/join-discord-infomational)](https://aka.ms/playwright/discord) +[![npm version](https://img.shields.io/npm/v/playwright.svg)](https://www.npmjs.com/package/playwright) [![Chromium version](https://img.shields.io/badge/chromium-138.0.7204.4-blue.svg?logo=google-chrome)](https://www.chromium.org/Home) [![Firefox version](https://img.shields.io/badge/firefox-137.0-blue.svg?logo=firefoxbrowser)](https://www.mozilla.org/en-US/firefox/new/) [![WebKit version](https://img.shields.io/badge/webkit-18.4-blue.svg?logo=safari)](https://webkit.org/) [![Join Discord](https://img.shields.io/badge/join-discord-infomational)](https://aka.ms/playwright/discord) ## [Documentation](https://playwright.dev) | [API reference](https://playwright.dev/docs/api/class-playwright) @@ -8,7 +8,7 @@ Playwright is a framework for Web Testing and Automation. It allows testing [Chr | | Linux | macOS | Windows | | :--- | :---: | :---: | :---: | -| Chromium 137.0.7151.40 | :white_check_mark: | :white_check_mark: | :white_check_mark: | +| Chromium 138.0.7204.4 | :white_check_mark: | :white_check_mark: | :white_check_mark: | | WebKit 18.4 | :white_check_mark: | :white_check_mark: | :white_check_mark: | | Firefox 137.0 | :white_check_mark: | :white_check_mark: | :white_check_mark: | diff --git a/packages/playwright-core/browsers.json b/packages/playwright-core/browsers.json index 05e9ccc141..c1ffa45ee9 100644 --- a/packages/playwright-core/browsers.json +++ b/packages/playwright-core/browsers.json @@ -3,15 +3,15 @@ "browsers": [ { "name": "chromium", - "revision": "1176", + "revision": "1177", "installByDefault": true, - "browserVersion": "137.0.7151.40" + "browserVersion": "138.0.7204.4" }, { "name": "chromium-headless-shell", - "revision": "1176", + "revision": "1177", "installByDefault": true, - "browserVersion": "137.0.7151.40" + "browserVersion": "138.0.7204.4" }, { "name": "chromium-tip-of-tree", diff --git a/packages/playwright-core/src/server/chromium/protocol.d.ts b/packages/playwright-core/src/server/chromium/protocol.d.ts index f274394d71..8b3fa03f1b 100644 --- a/packages/playwright-core/src/server/chromium/protocol.d.ts +++ b/packages/playwright-core/src/server/chromium/protocol.d.ts @@ -1045,12 +1045,24 @@ registrations being ignored. */ propertyValue?: string; } + export type UserReidentificationIssueType = "BlockedFrameNavigation"|"BlockedSubresource"; + /** + * This issue warns about uses of APIs that may be considered misuse to +re-identify users. + */ + export interface UserReidentificationIssueDetails { + type: UserReidentificationIssueType; + /** + * Applies to BlockedFrameNavigation and BlockedSubresource issue types. + */ + request?: AffectedRequest; + } /** * A unique identifier for the type of issue. Each type may use one of the optional fields in InspectorIssueDetails to convey more specific information about the kind of issue. */ - export type InspectorIssueCode = "CookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"LowTextContrastIssue"|"CorsIssue"|"AttributionReportingIssue"|"QuirksModeIssue"|"PartitioningBlobURLIssue"|"NavigatorUserAgentIssue"|"GenericIssue"|"DeprecationIssue"|"ClientHintIssue"|"FederatedAuthRequestIssue"|"BounceTrackingIssue"|"CookieDeprecationMetadataIssue"|"StylesheetLoadingIssue"|"FederatedAuthUserInfoRequestIssue"|"PropertyRuleIssue"|"SharedDictionaryIssue"|"SelectElementAccessibilityIssue"|"SRIMessageSignatureIssue"; + export type InspectorIssueCode = "CookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"LowTextContrastIssue"|"CorsIssue"|"AttributionReportingIssue"|"QuirksModeIssue"|"PartitioningBlobURLIssue"|"NavigatorUserAgentIssue"|"GenericIssue"|"DeprecationIssue"|"ClientHintIssue"|"FederatedAuthRequestIssue"|"BounceTrackingIssue"|"CookieDeprecationMetadataIssue"|"StylesheetLoadingIssue"|"FederatedAuthUserInfoRequestIssue"|"PropertyRuleIssue"|"SharedDictionaryIssue"|"SelectElementAccessibilityIssue"|"SRIMessageSignatureIssue"|"UserReidentificationIssue"; /** * This struct holds a list of optional fields with additional information specific to the kind of issue. When adding a new issue code, please also @@ -1081,6 +1093,7 @@ add a new optional field to this type. sharedDictionaryIssueDetails?: SharedDictionaryIssueDetails; selectElementAccessibilityIssueDetails?: SelectElementAccessibilityIssueDetails; sriMessageSignatureIssueDetails?: SRIMessageSignatureIssueDetails; + userReidentificationIssueDetails?: UserReidentificationIssueDetails; } /** * A unique id for a DevTools inspector issue. Allows other entities (e.g. @@ -1714,6 +1727,12 @@ Note that userVisibleOnly = true is the only currently supported type. * Download status. */ state: "inProgress"|"completed"|"canceled"; + /** + * If download is "completed", provides the path of the downloaded file. +Depending on the platform, it is not guaranteed to be set, nor the file +is guaranteed to exist. + */ + filePath?: string; } /** @@ -3879,7 +3898,7 @@ front-end. /** * Pseudo element type. */ - export type PseudoType = "first-line"|"first-letter"|"checkmark"|"before"|"after"|"picker-icon"|"marker"|"backdrop"|"column"|"selection"|"search-text"|"target-text"|"spelling-error"|"grammar-error"|"highlight"|"first-line-inherited"|"scroll-marker"|"scroll-marker-group"|"scroll-button"|"scrollbar"|"scrollbar-thumb"|"scrollbar-button"|"scrollbar-track"|"scrollbar-track-piece"|"scrollbar-corner"|"resizer"|"input-list-button"|"view-transition"|"view-transition-group"|"view-transition-image-pair"|"view-transition-old"|"view-transition-new"|"placeholder"|"file-selector-button"|"details-content"|"picker"; + export type PseudoType = "first-line"|"first-letter"|"checkmark"|"before"|"after"|"picker-icon"|"marker"|"backdrop"|"column"|"selection"|"search-text"|"target-text"|"spelling-error"|"grammar-error"|"highlight"|"first-line-inherited"|"scroll-marker"|"scroll-marker-group"|"scroll-button"|"scrollbar"|"scrollbar-thumb"|"scrollbar-button"|"scrollbar-track"|"scrollbar-track-piece"|"scrollbar-corner"|"resizer"|"input-list-button"|"view-transition"|"view-transition-group"|"view-transition-image-pair"|"view-transition-old"|"view-transition-new"|"placeholder"|"file-selector-button"|"details-content"|"picker"|"permission-icon"; /** * Shadow root type. */ @@ -4887,7 +4906,7 @@ appear on top of all other content. /** * Type of relation to get. */ - relation: "PopoverTarget"|"InterestTarget"; + relation: "PopoverTarget"|"InterestTarget"|"CommandFor"; } export type getElementByRelationReturnValue = { /** @@ -6640,7 +6659,8 @@ platform-provided telemetry data. export type setPressureSourceOverrideEnabledReturnValue = { } /** - * Provides a given pressure state that will be processed and eventually be + * TODO: OBSOLETE: To remove when setPressureDataOverride is merged. +Provides a given pressure state that will be processed and eventually be delivered to PressureObserver users. |source| must have been previously overridden by setPressureSourceOverrideEnabled. */ @@ -6650,6 +6670,18 @@ overridden by setPressureSourceOverrideEnabled. } export type setPressureStateOverrideReturnValue = { } + /** + * Provides a given pressure data set that will be processed and eventually be +delivered to PressureObserver users. |source| must have been previously +overridden by setPressureSourceOverrideEnabled. + */ + export type setPressureDataOverrideParameters = { + source: PressureSource; + state: PressureState; + ownContributionEstimate?: number; + } + export type setPressureDataOverrideReturnValue = { + } /** * Overrides the Idle state. */ @@ -8586,7 +8618,7 @@ file, data and other requests and responses, their headers, bodies, timing, etc. /** * Resource type as it was perceived by the rendering engine. */ - export type ResourceType = "Document"|"Stylesheet"|"Image"|"Media"|"Font"|"Script"|"TextTrack"|"XHR"|"Fetch"|"Prefetch"|"EventSource"|"WebSocket"|"Manifest"|"SignedExchange"|"Ping"|"CSPViolationReport"|"Preflight"|"Other"; + export type ResourceType = "Document"|"Stylesheet"|"Image"|"Media"|"Font"|"Script"|"TextTrack"|"XHR"|"Fetch"|"Prefetch"|"EventSource"|"WebSocket"|"Manifest"|"SignedExchange"|"Ping"|"CSPViolationReport"|"Preflight"|"FedCM"|"Other"; /** * Unique loader identifier. */ @@ -8909,7 +8941,7 @@ applicable or not known. /** * The reason why request was blocked. */ - export type BlockedReason = "other"|"csp"|"mixed-content"|"origin"|"inspector"|"subresource-filter"|"content-type"|"coep-frame-resource-needs-coep-header"|"coop-sandboxed-iframe-cannot-navigate-to-coop-page"|"corp-not-same-origin"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep"|"corp-not-same-origin-after-defaulted-to-same-origin-by-dip"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep-and-dip"|"corp-not-same-site"|"sri-message-signature-mismatch"; + export type BlockedReason = "other"|"csp"|"mixed-content"|"origin"|"inspector"|"integrity"|"subresource-filter"|"content-type"|"coep-frame-resource-needs-coep-header"|"coop-sandboxed-iframe-cannot-navigate-to-coop-page"|"corp-not-same-origin"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep"|"corp-not-same-origin-after-defaulted-to-same-origin-by-dip"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep-and-dip"|"corp-not-same-site"|"sri-message-signature-mismatch"; /** * The reason why request was blocked. */ @@ -9609,6 +9641,39 @@ https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges- receiveBufferSize?: number; dnsQueryType?: DirectSocketDnsQueryType; } + export interface DirectUDPSocketOptions { + remoteAddr?: string; + /** + * Unsigned int 16. + */ + remotePort?: number; + localAddr?: string; + /** + * Unsigned int 16. + */ + localPort?: number; + dnsQueryType?: DirectSocketDnsQueryType; + /** + * Expected to be unsigned integer. + */ + sendBufferSize?: number; + /** + * Expected to be unsigned integer. + */ + receiveBufferSize?: number; + } + export interface DirectUDPMessage { + data: binary; + /** + * Null for connected mode. + */ + remoteAddr?: string; + /** + * Null for connected mode. +Expected to be unsigned integer. + */ + remotePort?: number; + } export type PrivateNetworkRequestPolicy = "Allow"|"BlockFromInsecureToMorePrivate"|"WarnFromInsecureToMorePrivate"|"PreflightBlock"|"PreflightWarn"|"PermissionBlock"|"PermissionWarn"; export type IPAddressSpace = "Local"|"Private"|"Public"|"Unknown"; export interface ConnectTiming { @@ -10242,18 +10307,62 @@ or were emitted for this request. timestamp: MonotonicTime; } /** - * Fired when there is an error -when writing to tcp direct socket stream. -For example, if user writes illegal type like string -instead of ArrayBuffer or ArrayBufferView. -There's no reporting for reading, because -we cannot know errors on the other side. + * Fired upon direct_socket.UDPSocket creation. */ - export type directTCPSocketChunkErrorPayload = { + export type directUDPSocketCreatedPayload = { + identifier: RequestId; + options: DirectUDPSocketOptions; + timestamp: MonotonicTime; + initiator?: Initiator; + } + /** + * Fired when direct_socket.UDPSocket connection is opened. + */ + export type directUDPSocketOpenedPayload = { + identifier: RequestId; + localAddr: string; + /** + * Expected to be unsigned integer. + */ + localPort: number; + timestamp: MonotonicTime; + remoteAddr?: string; + /** + * Expected to be unsigned integer. + */ + remotePort?: number; + } + /** + * Fired when direct_socket.UDPSocket is aborted. + */ + export type directUDPSocketAbortedPayload = { identifier: RequestId; errorMessage: string; timestamp: MonotonicTime; } + /** + * Fired when direct_socket.UDPSocket is closed. + */ + export type directUDPSocketClosedPayload = { + identifier: RequestId; + timestamp: MonotonicTime; + } + /** + * Fired when message is sent to udp direct socket stream. + */ + export type directUDPSocketChunkSentPayload = { + identifier: RequestId; + message: DirectUDPMessage; + timestamp: MonotonicTime; + } + /** + * Fired when message is received from udp direct socket stream. + */ + export type directUDPSocketChunkReceivedPayload = { + identifier: RequestId; + message: DirectUDPMessage; + timestamp: MonotonicTime; + } /** * Fired when additional information about a requestWillBeSent event is available from the network stack. Not every requestWillBeSent event will have an additional @@ -10682,6 +10791,10 @@ all partition key attributes match the cookie partition key attribute. * Longest post body size (in bytes) that would be included in requestWillBeSent notification */ maxPostDataSize?: number; + /** + * Whether DirectSocket chunk send/receive events should be reported. + */ + reportDirectSocketTraffic?: boolean; } export type enableReturnValue = { } @@ -11068,7 +11181,7 @@ should be omitted for worker targets. } /** * Sets Controls for third-party cookie access -Page reload is required before the new cookie bahavior will be observed +Page reload is required before the new cookie behavior will be observed */ export type setCookieControlsParameters = { /** @@ -11960,7 +12073,7 @@ as an ad. in services/network/public/cpp/permissions_policy/permissions_policy_features.json5. LINT.IfChange(PermissionsPolicyFeature) */ - export type PermissionsPolicyFeature = "accelerometer"|"all-screens-capture"|"ambient-light-sensor"|"attribution-reporting"|"autoplay"|"bluetooth"|"browsing-topics"|"camera"|"captured-surface-control"|"ch-dpr"|"ch-device-memory"|"ch-downlink"|"ch-ect"|"ch-prefers-color-scheme"|"ch-prefers-reduced-motion"|"ch-prefers-reduced-transparency"|"ch-rtt"|"ch-save-data"|"ch-ua"|"ch-ua-arch"|"ch-ua-bitness"|"ch-ua-high-entropy-values"|"ch-ua-platform"|"ch-ua-model"|"ch-ua-mobile"|"ch-ua-form-factors"|"ch-ua-full-version"|"ch-ua-full-version-list"|"ch-ua-platform-version"|"ch-ua-wow64"|"ch-viewport-height"|"ch-viewport-width"|"ch-width"|"clipboard-read"|"clipboard-write"|"compute-pressure"|"controlled-frame"|"cross-origin-isolated"|"deferred-fetch"|"deferred-fetch-minimal"|"device-attributes"|"digital-credentials-get"|"direct-sockets"|"direct-sockets-private"|"display-capture"|"document-domain"|"encrypted-media"|"execution-while-out-of-viewport"|"execution-while-not-rendered"|"fenced-unpartitioned-storage-read"|"focus-without-user-activation"|"fullscreen"|"frobulate"|"gamepad"|"geolocation"|"gyroscope"|"hid"|"identity-credentials-get"|"idle-detection"|"interest-cohort"|"join-ad-interest-group"|"keyboard-map"|"language-detector"|"local-fonts"|"local-network-access"|"magnetometer"|"media-playback-while-not-visible"|"microphone"|"midi"|"otp-credentials"|"payment"|"picture-in-picture"|"popins"|"private-aggregation"|"private-state-token-issuance"|"private-state-token-redemption"|"publickey-credentials-create"|"publickey-credentials-get"|"record-ad-auction-events"|"rewriter"|"run-ad-auction"|"screen-wake-lock"|"serial"|"shared-autofill"|"shared-storage"|"shared-storage-select-url"|"smart-card"|"speaker-selection"|"storage-access"|"sub-apps"|"summarizer"|"sync-xhr"|"translator"|"unload"|"usb"|"usb-unrestricted"|"vertical-scroll"|"web-app-installation"|"web-printing"|"web-share"|"window-management"|"writer"|"xr-spatial-tracking"; + export type PermissionsPolicyFeature = "accelerometer"|"all-screens-capture"|"ambient-light-sensor"|"attribution-reporting"|"autoplay"|"bluetooth"|"browsing-topics"|"camera"|"captured-surface-control"|"ch-dpr"|"ch-device-memory"|"ch-downlink"|"ch-ect"|"ch-prefers-color-scheme"|"ch-prefers-reduced-motion"|"ch-prefers-reduced-transparency"|"ch-rtt"|"ch-save-data"|"ch-ua"|"ch-ua-arch"|"ch-ua-bitness"|"ch-ua-high-entropy-values"|"ch-ua-platform"|"ch-ua-model"|"ch-ua-mobile"|"ch-ua-form-factors"|"ch-ua-full-version"|"ch-ua-full-version-list"|"ch-ua-platform-version"|"ch-ua-wow64"|"ch-viewport-height"|"ch-viewport-width"|"ch-width"|"clipboard-read"|"clipboard-write"|"compute-pressure"|"controlled-frame"|"cross-origin-isolated"|"deferred-fetch"|"deferred-fetch-minimal"|"device-attributes"|"digital-credentials-get"|"direct-sockets"|"direct-sockets-private"|"display-capture"|"document-domain"|"encrypted-media"|"execution-while-out-of-viewport"|"execution-while-not-rendered"|"fenced-unpartitioned-storage-read"|"focus-without-user-activation"|"fullscreen"|"frobulate"|"gamepad"|"geolocation"|"gyroscope"|"hid"|"identity-credentials-get"|"idle-detection"|"interest-cohort"|"join-ad-interest-group"|"keyboard-map"|"language-detector"|"local-fonts"|"local-network-access"|"magnetometer"|"media-playback-while-not-visible"|"microphone"|"midi"|"on-device-speech-recognition"|"otp-credentials"|"payment"|"picture-in-picture"|"popins"|"private-aggregation"|"private-state-token-issuance"|"private-state-token-redemption"|"publickey-credentials-create"|"publickey-credentials-get"|"record-ad-auction-events"|"rewriter"|"run-ad-auction"|"screen-wake-lock"|"serial"|"shared-autofill"|"shared-storage"|"shared-storage-select-url"|"smart-card"|"speaker-selection"|"storage-access"|"sub-apps"|"summarizer"|"sync-xhr"|"translator"|"unload"|"usb"|"usb-unrestricted"|"vertical-scroll"|"web-app-installation"|"web-printing"|"web-share"|"window-management"|"writer"|"xr-spatial-tracking"; /** * Reason for a permissions policy feature to be disabled. */ @@ -14741,6 +14854,11 @@ Present only for SharedStorageAccessMethod: createWorklet. Present only for SharedStorageAccessMethods: run and selectURL. */ operationName?: string; + /** + * ID of the operation call. +Present only for SharedStorageAccessMethods: run and selectURL. + */ + operationId?: string; /** * Whether or not to keep the worket alive for future run or selectURL calls. @@ -14785,13 +14903,25 @@ Present only for SharedStorageAccessMethod: set. */ ignoreIfPresent?: boolean; /** - * If the method is called on a worklet, or as part of -a worklet script, it will have an ID for the associated worklet. + * If the method is called on a shared storage worklet, or as part of +a shared storage worklet script, it will have a number for the +associated worklet, denoting the (0-indexed) order of the worklet's +creation relative to all other shared storage worklets created by +documents using the current storage partition. Present only for SharedStorageAccessMethods: addModule, createWorklet, run, selectURL, and any other SharedStorageAccessMethod when the -SharedStorageAccessScope is worklet. +SharedStorageAccessScope is sharedStorageWorklet. +TODO(crbug.com/401011862): Pass this only for addModule & createWorklet. */ - workletId?: string; + workletOrdinal?: number; + /** + * Hex representation of the DevTools token used as the TargetID for the +associated shared storage worklet. +Present only for SharedStorageAccessMethods: addModule, createWorklet, +run, selectURL, and any other SharedStorageAccessMethod when the +SharedStorageAccessScope is sharedStorageWorklet. + */ + workletTargetId?: Target.TargetID; /** * Name of the lock to be acquired, if present. Optionally present only for SharedStorageAccessMethods: batchUpdate, @@ -14863,14 +14993,6 @@ Present only for SharedStorageAccessMethod: batchUpdate. */ ends: number[]; } - export interface AttributionReportingTriggerSpec { - /** - * number instead of integer because not all uint32 can be represented by -int - */ - triggerData: number[]; - eventReportWindows: AttributionReportingEventReportWindows; - } export type AttributionReportingTriggerDataMatching = "exact"|"modulus"; export interface AttributionReportingAggregatableDebugReportingData { keyPiece: UnsignedInt128AsBase16; @@ -14910,7 +15032,12 @@ int * duration in seconds */ expiry: number; - triggerSpecs: AttributionReportingTriggerSpec[]; + /** + * number instead of integer because not all uint32 can be represented by +int + */ + triggerData: number[]; + eventReportWindows: AttributionReportingEventReportWindows; /** * duration in seconds */ @@ -14985,6 +15112,7 @@ int } export type AttributionReportingEventLevelResult = "success"|"successDroppedLowerPriority"|"internalError"|"noCapacityForAttributionDestination"|"noMatchingSources"|"deduplicated"|"excessiveAttributions"|"priorityTooLow"|"neverAttributedSource"|"excessiveReportingOrigins"|"noMatchingSourceFilterData"|"prohibitedByBrowserPolicy"|"noMatchingConfigurations"|"excessiveReports"|"falselyAttributedSource"|"reportWindowPassed"|"notRegistered"|"reportWindowNotStarted"|"noMatchingTriggerData"; export type AttributionReportingAggregatableResult = "success"|"internalError"|"noCapacityForAttributionDestination"|"noMatchingSources"|"excessiveAttributions"|"excessiveReportingOrigins"|"noHistograms"|"insufficientBudget"|"insufficientNamedBudget"|"noMatchingSourceFilterData"|"notRegistered"|"prohibitedByBrowserPolicy"|"deduplicated"|"reportWindowPassed"|"excessiveReports"; + export type AttributionReportingReportResult = "sent"|"prohibited"|"failedToAssemble"|"expired"; /** * A single Related Website Set object. */ @@ -15175,6 +15303,42 @@ presence/absence depends on `type`. */ params: SharedStorageAccessParams; } + /** + * A shared storage run or selectURL operation finished its execution. +The following parameters are included in all events. + */ + export type sharedStorageWorkletOperationExecutionFinishedPayload = { + /** + * Time that the operation finished. + */ + finishedTime: Network.TimeSinceEpoch; + /** + * Time, in microseconds, from start of shared storage JS API call until +end of operation execution in the worklet. + */ + executionTime: number; + /** + * Enum value indicating the Shared Storage API method invoked. + */ + method: SharedStorageAccessMethod; + /** + * ID of the operation call. + */ + operationId: string; + /** + * Hex representation of the DevTools token used as the TargetID for the +associated shared storage worklet. + */ + workletTargetId: Target.TargetID; + /** + * DevTools Frame Token for the primary frame tree's root. + */ + mainFrameId: Page.FrameId; + /** + * Serialization of the origin owning the Shared Storage data. + */ + ownerOrigin: string; + } export type storageBucketCreatedOrUpdatedPayload = { bucketInfo: StorageBucketInfo; } @@ -15190,6 +15354,17 @@ presence/absence depends on `type`. eventLevel: AttributionReportingEventLevelResult; aggregatable: AttributionReportingAggregatableResult; } + export type attributionReportingReportSentPayload = { + url: string; + body: { [key: string]: string }; + result: AttributionReportingReportResult; + /** + * If result is `sent`, populated with net/HTTP status. + */ + netError?: number; + netErrorName?: string; + httpStatusCode?: number; + } /** * Returns a storage key given a frame id. @@ -17780,7 +17955,7 @@ CDP events for them are emitted separately but they share /** * List of FinalStatus reasons for Prerender2. */ - export type PrerenderFinalStatus = "Activated"|"Destroyed"|"LowEndDevice"|"InvalidSchemeRedirect"|"InvalidSchemeNavigation"|"NavigationRequestBlockedByCsp"|"MainFrameNavigation"|"MojoBinderPolicy"|"RendererProcessCrashed"|"RendererProcessKilled"|"Download"|"TriggerDestroyed"|"NavigationNotCommitted"|"NavigationBadHttpStatus"|"ClientCertRequested"|"NavigationRequestNetworkError"|"CancelAllHostsForTesting"|"DidFailLoad"|"Stop"|"SslCertificateError"|"LoginAuthRequested"|"UaChangeRequiresReload"|"BlockedByClient"|"AudioOutputDeviceRequested"|"MixedContent"|"TriggerBackgrounded"|"MemoryLimitExceeded"|"DataSaverEnabled"|"TriggerUrlHasEffectiveUrl"|"ActivatedBeforeStarted"|"InactivePageRestriction"|"StartFailed"|"TimeoutBackgrounded"|"CrossSiteRedirectInInitialNavigation"|"CrossSiteNavigationInInitialNavigation"|"SameSiteCrossOriginRedirectNotOptInInInitialNavigation"|"SameSiteCrossOriginNavigationNotOptInInInitialNavigation"|"ActivationNavigationParameterMismatch"|"ActivatedInBackground"|"EmbedderHostDisallowed"|"ActivationNavigationDestroyedBeforeSuccess"|"TabClosedByUserGesture"|"TabClosedWithoutUserGesture"|"PrimaryMainFrameRendererProcessCrashed"|"PrimaryMainFrameRendererProcessKilled"|"ActivationFramePolicyNotCompatible"|"PreloadingDisabled"|"BatterySaverEnabled"|"ActivatedDuringMainFrameNavigation"|"PreloadingUnsupportedByWebContents"|"CrossSiteRedirectInMainFrameNavigation"|"CrossSiteNavigationInMainFrameNavigation"|"SameSiteCrossOriginRedirectNotOptInInMainFrameNavigation"|"SameSiteCrossOriginNavigationNotOptInInMainFrameNavigation"|"MemoryPressureOnTrigger"|"MemoryPressureAfterTriggered"|"PrerenderingDisabledByDevTools"|"SpeculationRuleRemoved"|"ActivatedWithAuxiliaryBrowsingContexts"|"MaxNumOfRunningEagerPrerendersExceeded"|"MaxNumOfRunningNonEagerPrerendersExceeded"|"MaxNumOfRunningEmbedderPrerendersExceeded"|"PrerenderingUrlHasEffectiveUrl"|"RedirectedPrerenderingUrlHasEffectiveUrl"|"ActivationUrlHasEffectiveUrl"|"JavaScriptInterfaceAdded"|"JavaScriptInterfaceRemoved"|"AllPrerenderingCanceled"|"WindowClosed"|"SlowNetwork"|"OtherPrerenderedPageActivated"|"V8OptimizerDisabled"|"PrerenderFailedDuringPrefetch"|"BrowsingDataRemoved"; + export type PrerenderFinalStatus = "Activated"|"Destroyed"|"LowEndDevice"|"InvalidSchemeRedirect"|"InvalidSchemeNavigation"|"NavigationRequestBlockedByCsp"|"MojoBinderPolicy"|"RendererProcessCrashed"|"RendererProcessKilled"|"Download"|"TriggerDestroyed"|"NavigationNotCommitted"|"NavigationBadHttpStatus"|"ClientCertRequested"|"NavigationRequestNetworkError"|"CancelAllHostsForTesting"|"DidFailLoad"|"Stop"|"SslCertificateError"|"LoginAuthRequested"|"UaChangeRequiresReload"|"BlockedByClient"|"AudioOutputDeviceRequested"|"MixedContent"|"TriggerBackgrounded"|"MemoryLimitExceeded"|"DataSaverEnabled"|"TriggerUrlHasEffectiveUrl"|"ActivatedBeforeStarted"|"InactivePageRestriction"|"StartFailed"|"TimeoutBackgrounded"|"CrossSiteRedirectInInitialNavigation"|"CrossSiteNavigationInInitialNavigation"|"SameSiteCrossOriginRedirectNotOptInInInitialNavigation"|"SameSiteCrossOriginNavigationNotOptInInInitialNavigation"|"ActivationNavigationParameterMismatch"|"ActivatedInBackground"|"EmbedderHostDisallowed"|"ActivationNavigationDestroyedBeforeSuccess"|"TabClosedByUserGesture"|"TabClosedWithoutUserGesture"|"PrimaryMainFrameRendererProcessCrashed"|"PrimaryMainFrameRendererProcessKilled"|"ActivationFramePolicyNotCompatible"|"PreloadingDisabled"|"BatterySaverEnabled"|"ActivatedDuringMainFrameNavigation"|"PreloadingUnsupportedByWebContents"|"CrossSiteRedirectInMainFrameNavigation"|"CrossSiteNavigationInMainFrameNavigation"|"SameSiteCrossOriginRedirectNotOptInInMainFrameNavigation"|"SameSiteCrossOriginNavigationNotOptInInMainFrameNavigation"|"MemoryPressureOnTrigger"|"MemoryPressureAfterTriggered"|"PrerenderingDisabledByDevTools"|"SpeculationRuleRemoved"|"ActivatedWithAuxiliaryBrowsingContexts"|"MaxNumOfRunningEagerPrerendersExceeded"|"MaxNumOfRunningNonEagerPrerendersExceeded"|"MaxNumOfRunningEmbedderPrerendersExceeded"|"PrerenderingUrlHasEffectiveUrl"|"RedirectedPrerenderingUrlHasEffectiveUrl"|"ActivationUrlHasEffectiveUrl"|"JavaScriptInterfaceAdded"|"JavaScriptInterfaceRemoved"|"AllPrerenderingCanceled"|"WindowClosed"|"SlowNetwork"|"OtherPrerenderedPageActivated"|"V8OptimizerDisabled"|"PrerenderFailedDuringPrefetch"|"BrowsingDataRemoved"; /** * Preloading status values, see also PreloadingTriggeringOutcome. This status is shared by prefetchStatusUpdated and prerenderStatusUpdated. @@ -18151,6 +18326,10 @@ the web-bluetooth API. * Indicates the various types of characteristic operation. */ export type CharacteristicOperationType = "read"|"write"|"subscribe-to-notifications"|"unsubscribe-from-notifications"; + /** + * Indicates the various types of descriptor operation. + */ + export type DescriptorOperationType = "read"|"write"; /** * Stores the manufacturer data */ @@ -18228,6 +18407,16 @@ expected to exist when |type| is write. data?: binary; writeType?: CharacteristicWriteType; } + /** + * Event for when a descriptor operation of |type| to the descriptor +respresented by |descriptorId| happened. |data| is expected to exist when +|type| is write. + */ + export type descriptorOperationReceivedPayload = { + descriptorId: string; + type: DescriptorOperationType; + data?: binary; + } /** * Enable the BluetoothEmulation domain. @@ -18310,6 +18499,21 @@ response. } export type simulateCharacteristicOperationResponseReturnValue = { } + /** + * Simulates the response from the descriptor with |descriptorId| for a +descriptor operation of |type|. The |code| value follows the Error +Codes from Bluetooth Core Specification Vol 3 Part F 3.4.1.1 Error Response. +The |data| is expected to exist when simulating a successful read operation +response. + */ + export type simulateDescriptorOperationResponseParameters = { + descriptorId: string; + type: DescriptorOperationType; + code: number; + data?: binary; + } + export type simulateDescriptorOperationResponseReturnValue = { + } /** * Adds a service with |serviceUuid| to the peripheral with |address|. */ @@ -18377,6 +18581,14 @@ by |characteristicId|. } export type removeDescriptorReturnValue = { } + /** + * Simulates a GATT disconnection from the peripheral with |address|. + */ + export type simulateGATTDisconnectionParameters = { + address: string; + } + export type simulateGATTDisconnectionReturnValue = { + } } /** @@ -21136,7 +21348,12 @@ Error was thrown. "Network.directTCPSocketClosed": Network.directTCPSocketClosedPayload; "Network.directTCPSocketChunkSent": Network.directTCPSocketChunkSentPayload; "Network.directTCPSocketChunkReceived": Network.directTCPSocketChunkReceivedPayload; - "Network.directTCPSocketChunkError": Network.directTCPSocketChunkErrorPayload; + "Network.directUDPSocketCreated": Network.directUDPSocketCreatedPayload; + "Network.directUDPSocketOpened": Network.directUDPSocketOpenedPayload; + "Network.directUDPSocketAborted": Network.directUDPSocketAbortedPayload; + "Network.directUDPSocketClosed": Network.directUDPSocketClosedPayload; + "Network.directUDPSocketChunkSent": Network.directUDPSocketChunkSentPayload; + "Network.directUDPSocketChunkReceived": Network.directUDPSocketChunkReceivedPayload; "Network.requestWillBeSentExtraInfo": Network.requestWillBeSentExtraInfoPayload; "Network.responseReceivedExtraInfo": Network.responseReceivedExtraInfoPayload; "Network.responseReceivedEarlyHints": Network.responseReceivedEarlyHintsPayload; @@ -21197,10 +21414,12 @@ Error was thrown. "Storage.interestGroupAuctionEventOccurred": Storage.interestGroupAuctionEventOccurredPayload; "Storage.interestGroupAuctionNetworkRequestCreated": Storage.interestGroupAuctionNetworkRequestCreatedPayload; "Storage.sharedStorageAccessed": Storage.sharedStorageAccessedPayload; + "Storage.sharedStorageWorkletOperationExecutionFinished": Storage.sharedStorageWorkletOperationExecutionFinishedPayload; "Storage.storageBucketCreatedOrUpdated": Storage.storageBucketCreatedOrUpdatedPayload; "Storage.storageBucketDeleted": Storage.storageBucketDeletedPayload; "Storage.attributionReportingSourceRegistered": Storage.attributionReportingSourceRegisteredPayload; "Storage.attributionReportingTriggerRegistered": Storage.attributionReportingTriggerRegisteredPayload; + "Storage.attributionReportingReportSent": Storage.attributionReportingReportSentPayload; "Target.attachedToTarget": Target.attachedToTargetPayload; "Target.detachedFromTarget": Target.detachedFromTargetPayload; "Target.receivedMessageFromTarget": Target.receivedMessageFromTargetPayload; @@ -21247,6 +21466,7 @@ Error was thrown. "FedCm.dialogClosed": FedCm.dialogClosedPayload; "BluetoothEmulation.gattOperationReceived": BluetoothEmulation.gattOperationReceivedPayload; "BluetoothEmulation.characteristicOperationReceived": BluetoothEmulation.characteristicOperationReceivedPayload; + "BluetoothEmulation.descriptorOperationReceived": BluetoothEmulation.descriptorOperationReceivedPayload; "Console.messageAdded": Console.messageAddedPayload; "Debugger.breakpointResolved": Debugger.breakpointResolvedPayload; "Debugger.paused": Debugger.pausedPayload; @@ -21476,6 +21696,7 @@ Error was thrown. "Emulation.setSensorOverrideReadings": Emulation.setSensorOverrideReadingsParameters; "Emulation.setPressureSourceOverrideEnabled": Emulation.setPressureSourceOverrideEnabledParameters; "Emulation.setPressureStateOverride": Emulation.setPressureStateOverrideParameters; + "Emulation.setPressureDataOverride": Emulation.setPressureDataOverrideParameters; "Emulation.setIdleOverride": Emulation.setIdleOverrideParameters; "Emulation.clearIdleOverride": Emulation.clearIdleOverrideParameters; "Emulation.setNavigatorOverrides": Emulation.setNavigatorOverridesParameters; @@ -21812,12 +22033,14 @@ Error was thrown. "BluetoothEmulation.simulateAdvertisement": BluetoothEmulation.simulateAdvertisementParameters; "BluetoothEmulation.simulateGATTOperationResponse": BluetoothEmulation.simulateGATTOperationResponseParameters; "BluetoothEmulation.simulateCharacteristicOperationResponse": BluetoothEmulation.simulateCharacteristicOperationResponseParameters; + "BluetoothEmulation.simulateDescriptorOperationResponse": BluetoothEmulation.simulateDescriptorOperationResponseParameters; "BluetoothEmulation.addService": BluetoothEmulation.addServiceParameters; "BluetoothEmulation.removeService": BluetoothEmulation.removeServiceParameters; "BluetoothEmulation.addCharacteristic": BluetoothEmulation.addCharacteristicParameters; "BluetoothEmulation.removeCharacteristic": BluetoothEmulation.removeCharacteristicParameters; "BluetoothEmulation.addDescriptor": BluetoothEmulation.addDescriptorParameters; "BluetoothEmulation.removeDescriptor": BluetoothEmulation.removeDescriptorParameters; + "BluetoothEmulation.simulateGATTDisconnection": BluetoothEmulation.simulateGATTDisconnectionParameters; "Console.clearMessages": Console.clearMessagesParameters; "Console.disable": Console.disableParameters; "Console.enable": Console.enableParameters; @@ -22106,6 +22329,7 @@ Error was thrown. "Emulation.setSensorOverrideReadings": Emulation.setSensorOverrideReadingsReturnValue; "Emulation.setPressureSourceOverrideEnabled": Emulation.setPressureSourceOverrideEnabledReturnValue; "Emulation.setPressureStateOverride": Emulation.setPressureStateOverrideReturnValue; + "Emulation.setPressureDataOverride": Emulation.setPressureDataOverrideReturnValue; "Emulation.setIdleOverride": Emulation.setIdleOverrideReturnValue; "Emulation.clearIdleOverride": Emulation.clearIdleOverrideReturnValue; "Emulation.setNavigatorOverrides": Emulation.setNavigatorOverridesReturnValue; @@ -22442,12 +22666,14 @@ Error was thrown. "BluetoothEmulation.simulateAdvertisement": BluetoothEmulation.simulateAdvertisementReturnValue; "BluetoothEmulation.simulateGATTOperationResponse": BluetoothEmulation.simulateGATTOperationResponseReturnValue; "BluetoothEmulation.simulateCharacteristicOperationResponse": BluetoothEmulation.simulateCharacteristicOperationResponseReturnValue; + "BluetoothEmulation.simulateDescriptorOperationResponse": BluetoothEmulation.simulateDescriptorOperationResponseReturnValue; "BluetoothEmulation.addService": BluetoothEmulation.addServiceReturnValue; "BluetoothEmulation.removeService": BluetoothEmulation.removeServiceReturnValue; "BluetoothEmulation.addCharacteristic": BluetoothEmulation.addCharacteristicReturnValue; "BluetoothEmulation.removeCharacteristic": BluetoothEmulation.removeCharacteristicReturnValue; "BluetoothEmulation.addDescriptor": BluetoothEmulation.addDescriptorReturnValue; "BluetoothEmulation.removeDescriptor": BluetoothEmulation.removeDescriptorReturnValue; + "BluetoothEmulation.simulateGATTDisconnection": BluetoothEmulation.simulateGATTDisconnectionReturnValue; "Console.clearMessages": Console.clearMessagesReturnValue; "Console.disable": Console.disableReturnValue; "Console.enable": Console.enableReturnValue; diff --git a/packages/playwright-core/src/server/deviceDescriptorsSource.json b/packages/playwright-core/src/server/deviceDescriptorsSource.json index d72746809f..3cd72c4ee2 100644 --- a/packages/playwright-core/src/server/deviceDescriptorsSource.json +++ b/packages/playwright-core/src/server/deviceDescriptorsSource.json @@ -110,7 +110,7 @@ "defaultBrowserType": "webkit" }, "Galaxy S5": { - "userAgent": "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 360, "height": 640 @@ -121,7 +121,7 @@ "defaultBrowserType": "chromium" }, "Galaxy S5 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 640, "height": 360 @@ -132,7 +132,7 @@ "defaultBrowserType": "chromium" }, "Galaxy S8": { - "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 360, "height": 740 @@ -143,7 +143,7 @@ "defaultBrowserType": "chromium" }, "Galaxy S8 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 740, "height": 360 @@ -154,7 +154,7 @@ "defaultBrowserType": "chromium" }, "Galaxy S9+": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 320, "height": 658 @@ -165,7 +165,7 @@ "defaultBrowserType": "chromium" }, "Galaxy S9+ landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 658, "height": 320 @@ -176,7 +176,7 @@ "defaultBrowserType": "chromium" }, "Galaxy S24": { - "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S921U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S921U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 480, "height": 1040 @@ -187,7 +187,7 @@ "defaultBrowserType": "chromium" }, "Galaxy S24 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S921U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-S921U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 1040, "height": 480 @@ -198,7 +198,7 @@ "defaultBrowserType": "chromium" }, "Galaxy A55": { - "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-A556B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-A556B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 480, "height": 1040 @@ -209,7 +209,7 @@ "defaultBrowserType": "chromium" }, "Galaxy A55 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-A556B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-A556B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 1040, "height": 480 @@ -220,7 +220,7 @@ "defaultBrowserType": "chromium" }, "Galaxy Tab S4": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "viewport": { "width": 712, "height": 1138 @@ -231,7 +231,7 @@ "defaultBrowserType": "chromium" }, "Galaxy Tab S4 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "viewport": { "width": 1138, "height": 712 @@ -242,7 +242,7 @@ "defaultBrowserType": "chromium" }, "Galaxy Tab S9": { - "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X710) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X710) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "viewport": { "width": 640, "height": 1024 @@ -253,7 +253,7 @@ "defaultBrowserType": "chromium" }, "Galaxy Tab S9 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X710) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 14; SM-X710) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "viewport": { "width": 1024, "height": 640 @@ -1208,7 +1208,7 @@ "defaultBrowserType": "webkit" }, "LG Optimus L70": { - "userAgent": "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 384, "height": 640 @@ -1219,7 +1219,7 @@ "defaultBrowserType": "chromium" }, "LG Optimus L70 landscape": { - "userAgent": "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 640, "height": 384 @@ -1230,7 +1230,7 @@ "defaultBrowserType": "chromium" }, "Microsoft Lumia 550": { - "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 550) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36 Edge/14.14263", + "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 550) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36 Edge/14.14263", "viewport": { "width": 360, "height": 640 @@ -1241,7 +1241,7 @@ "defaultBrowserType": "chromium" }, "Microsoft Lumia 550 landscape": { - "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 550) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36 Edge/14.14263", + "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 550) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36 Edge/14.14263", "viewport": { "width": 640, "height": 360 @@ -1252,7 +1252,7 @@ "defaultBrowserType": "chromium" }, "Microsoft Lumia 950": { - "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36 Edge/14.14263", + "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36 Edge/14.14263", "viewport": { "width": 360, "height": 640 @@ -1263,7 +1263,7 @@ "defaultBrowserType": "chromium" }, "Microsoft Lumia 950 landscape": { - "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36 Edge/14.14263", + "userAgent": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36 Edge/14.14263", "viewport": { "width": 640, "height": 360 @@ -1274,7 +1274,7 @@ "defaultBrowserType": "chromium" }, "Nexus 10": { - "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "viewport": { "width": 800, "height": 1280 @@ -1285,7 +1285,7 @@ "defaultBrowserType": "chromium" }, "Nexus 10 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "viewport": { "width": 1280, "height": 800 @@ -1296,7 +1296,7 @@ "defaultBrowserType": "chromium" }, "Nexus 4": { - "userAgent": "Mozilla/5.0 (Linux; Android 4.4.2; Nexus 4 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 4.4.2; Nexus 4 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 384, "height": 640 @@ -1307,7 +1307,7 @@ "defaultBrowserType": "chromium" }, "Nexus 4 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 4.4.2; Nexus 4 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 4.4.2; Nexus 4 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 640, "height": 384 @@ -1318,7 +1318,7 @@ "defaultBrowserType": "chromium" }, "Nexus 5": { - "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 360, "height": 640 @@ -1329,7 +1329,7 @@ "defaultBrowserType": "chromium" }, "Nexus 5 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 640, "height": 360 @@ -1340,7 +1340,7 @@ "defaultBrowserType": "chromium" }, "Nexus 5X": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 412, "height": 732 @@ -1351,7 +1351,7 @@ "defaultBrowserType": "chromium" }, "Nexus 5X landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 732, "height": 412 @@ -1362,7 +1362,7 @@ "defaultBrowserType": "chromium" }, "Nexus 6": { - "userAgent": "Mozilla/5.0 (Linux; Android 7.1.1; Nexus 6 Build/N6F26U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 7.1.1; Nexus 6 Build/N6F26U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 412, "height": 732 @@ -1373,7 +1373,7 @@ "defaultBrowserType": "chromium" }, "Nexus 6 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 7.1.1; Nexus 6 Build/N6F26U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 7.1.1; Nexus 6 Build/N6F26U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 732, "height": 412 @@ -1384,7 +1384,7 @@ "defaultBrowserType": "chromium" }, "Nexus 6P": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 412, "height": 732 @@ -1395,7 +1395,7 @@ "defaultBrowserType": "chromium" }, "Nexus 6P landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 732, "height": 412 @@ -1406,7 +1406,7 @@ "defaultBrowserType": "chromium" }, "Nexus 7": { - "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "viewport": { "width": 600, "height": 960 @@ -1417,7 +1417,7 @@ "defaultBrowserType": "chromium" }, "Nexus 7 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "viewport": { "width": 960, "height": 600 @@ -1472,7 +1472,7 @@ "defaultBrowserType": "webkit" }, "Pixel 2": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 411, "height": 731 @@ -1483,7 +1483,7 @@ "defaultBrowserType": "chromium" }, "Pixel 2 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 731, "height": 411 @@ -1494,7 +1494,7 @@ "defaultBrowserType": "chromium" }, "Pixel 2 XL": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 411, "height": 823 @@ -1505,7 +1505,7 @@ "defaultBrowserType": "chromium" }, "Pixel 2 XL landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 823, "height": 411 @@ -1516,7 +1516,7 @@ "defaultBrowserType": "chromium" }, "Pixel 3": { - "userAgent": "Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 393, "height": 786 @@ -1527,7 +1527,7 @@ "defaultBrowserType": "chromium" }, "Pixel 3 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 786, "height": 393 @@ -1538,7 +1538,7 @@ "defaultBrowserType": "chromium" }, "Pixel 4": { - "userAgent": "Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 353, "height": 745 @@ -1549,7 +1549,7 @@ "defaultBrowserType": "chromium" }, "Pixel 4 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 745, "height": 353 @@ -1560,7 +1560,7 @@ "defaultBrowserType": "chromium" }, "Pixel 4a (5G)": { - "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 4a (5G)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 4a (5G)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "screen": { "width": 412, "height": 892 @@ -1575,7 +1575,7 @@ "defaultBrowserType": "chromium" }, "Pixel 4a (5G) landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 4a (5G)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 4a (5G)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "screen": { "height": 892, "width": 412 @@ -1590,7 +1590,7 @@ "defaultBrowserType": "chromium" }, "Pixel 5": { - "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "screen": { "width": 393, "height": 851 @@ -1605,7 +1605,7 @@ "defaultBrowserType": "chromium" }, "Pixel 5 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "screen": { "width": 851, "height": 393 @@ -1620,7 +1620,7 @@ "defaultBrowserType": "chromium" }, "Pixel 7": { - "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "screen": { "width": 412, "height": 915 @@ -1635,7 +1635,7 @@ "defaultBrowserType": "chromium" }, "Pixel 7 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 14; Pixel 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "screen": { "width": 915, "height": 412 @@ -1650,7 +1650,7 @@ "defaultBrowserType": "chromium" }, "Moto G4": { - "userAgent": "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 360, "height": 640 @@ -1661,7 +1661,7 @@ "defaultBrowserType": "chromium" }, "Moto G4 landscape": { - "userAgent": "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Mobile Safari/537.36", + "userAgent": "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Mobile Safari/537.36", "viewport": { "width": 640, "height": 360 @@ -1672,7 +1672,7 @@ "defaultBrowserType": "chromium" }, "Desktop Chrome HiDPI": { - "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "screen": { "width": 1792, "height": 1120 @@ -1687,7 +1687,7 @@ "defaultBrowserType": "chromium" }, "Desktop Edge HiDPI": { - "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36 Edg/137.0.7151.40", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36 Edg/138.0.7204.4", "screen": { "width": 1792, "height": 1120 @@ -1732,7 +1732,7 @@ "defaultBrowserType": "webkit" }, "Desktop Chrome": { - "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36", "screen": { "width": 1920, "height": 1080 @@ -1747,7 +1747,7 @@ "defaultBrowserType": "chromium" }, "Desktop Edge": { - "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.40 Safari/537.36 Edg/137.0.7151.40", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.4 Safari/537.36 Edg/138.0.7204.4", "screen": { "width": 1920, "height": 1080 diff --git a/packages/playwright-core/types/protocol.d.ts b/packages/playwright-core/types/protocol.d.ts index f274394d71..8b3fa03f1b 100644 --- a/packages/playwright-core/types/protocol.d.ts +++ b/packages/playwright-core/types/protocol.d.ts @@ -1045,12 +1045,24 @@ registrations being ignored. */ propertyValue?: string; } + export type UserReidentificationIssueType = "BlockedFrameNavigation"|"BlockedSubresource"; + /** + * This issue warns about uses of APIs that may be considered misuse to +re-identify users. + */ + export interface UserReidentificationIssueDetails { + type: UserReidentificationIssueType; + /** + * Applies to BlockedFrameNavigation and BlockedSubresource issue types. + */ + request?: AffectedRequest; + } /** * A unique identifier for the type of issue. Each type may use one of the optional fields in InspectorIssueDetails to convey more specific information about the kind of issue. */ - export type InspectorIssueCode = "CookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"LowTextContrastIssue"|"CorsIssue"|"AttributionReportingIssue"|"QuirksModeIssue"|"PartitioningBlobURLIssue"|"NavigatorUserAgentIssue"|"GenericIssue"|"DeprecationIssue"|"ClientHintIssue"|"FederatedAuthRequestIssue"|"BounceTrackingIssue"|"CookieDeprecationMetadataIssue"|"StylesheetLoadingIssue"|"FederatedAuthUserInfoRequestIssue"|"PropertyRuleIssue"|"SharedDictionaryIssue"|"SelectElementAccessibilityIssue"|"SRIMessageSignatureIssue"; + export type InspectorIssueCode = "CookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"LowTextContrastIssue"|"CorsIssue"|"AttributionReportingIssue"|"QuirksModeIssue"|"PartitioningBlobURLIssue"|"NavigatorUserAgentIssue"|"GenericIssue"|"DeprecationIssue"|"ClientHintIssue"|"FederatedAuthRequestIssue"|"BounceTrackingIssue"|"CookieDeprecationMetadataIssue"|"StylesheetLoadingIssue"|"FederatedAuthUserInfoRequestIssue"|"PropertyRuleIssue"|"SharedDictionaryIssue"|"SelectElementAccessibilityIssue"|"SRIMessageSignatureIssue"|"UserReidentificationIssue"; /** * This struct holds a list of optional fields with additional information specific to the kind of issue. When adding a new issue code, please also @@ -1081,6 +1093,7 @@ add a new optional field to this type. sharedDictionaryIssueDetails?: SharedDictionaryIssueDetails; selectElementAccessibilityIssueDetails?: SelectElementAccessibilityIssueDetails; sriMessageSignatureIssueDetails?: SRIMessageSignatureIssueDetails; + userReidentificationIssueDetails?: UserReidentificationIssueDetails; } /** * A unique id for a DevTools inspector issue. Allows other entities (e.g. @@ -1714,6 +1727,12 @@ Note that userVisibleOnly = true is the only currently supported type. * Download status. */ state: "inProgress"|"completed"|"canceled"; + /** + * If download is "completed", provides the path of the downloaded file. +Depending on the platform, it is not guaranteed to be set, nor the file +is guaranteed to exist. + */ + filePath?: string; } /** @@ -3879,7 +3898,7 @@ front-end. /** * Pseudo element type. */ - export type PseudoType = "first-line"|"first-letter"|"checkmark"|"before"|"after"|"picker-icon"|"marker"|"backdrop"|"column"|"selection"|"search-text"|"target-text"|"spelling-error"|"grammar-error"|"highlight"|"first-line-inherited"|"scroll-marker"|"scroll-marker-group"|"scroll-button"|"scrollbar"|"scrollbar-thumb"|"scrollbar-button"|"scrollbar-track"|"scrollbar-track-piece"|"scrollbar-corner"|"resizer"|"input-list-button"|"view-transition"|"view-transition-group"|"view-transition-image-pair"|"view-transition-old"|"view-transition-new"|"placeholder"|"file-selector-button"|"details-content"|"picker"; + export type PseudoType = "first-line"|"first-letter"|"checkmark"|"before"|"after"|"picker-icon"|"marker"|"backdrop"|"column"|"selection"|"search-text"|"target-text"|"spelling-error"|"grammar-error"|"highlight"|"first-line-inherited"|"scroll-marker"|"scroll-marker-group"|"scroll-button"|"scrollbar"|"scrollbar-thumb"|"scrollbar-button"|"scrollbar-track"|"scrollbar-track-piece"|"scrollbar-corner"|"resizer"|"input-list-button"|"view-transition"|"view-transition-group"|"view-transition-image-pair"|"view-transition-old"|"view-transition-new"|"placeholder"|"file-selector-button"|"details-content"|"picker"|"permission-icon"; /** * Shadow root type. */ @@ -4887,7 +4906,7 @@ appear on top of all other content. /** * Type of relation to get. */ - relation: "PopoverTarget"|"InterestTarget"; + relation: "PopoverTarget"|"InterestTarget"|"CommandFor"; } export type getElementByRelationReturnValue = { /** @@ -6640,7 +6659,8 @@ platform-provided telemetry data. export type setPressureSourceOverrideEnabledReturnValue = { } /** - * Provides a given pressure state that will be processed and eventually be + * TODO: OBSOLETE: To remove when setPressureDataOverride is merged. +Provides a given pressure state that will be processed and eventually be delivered to PressureObserver users. |source| must have been previously overridden by setPressureSourceOverrideEnabled. */ @@ -6650,6 +6670,18 @@ overridden by setPressureSourceOverrideEnabled. } export type setPressureStateOverrideReturnValue = { } + /** + * Provides a given pressure data set that will be processed and eventually be +delivered to PressureObserver users. |source| must have been previously +overridden by setPressureSourceOverrideEnabled. + */ + export type setPressureDataOverrideParameters = { + source: PressureSource; + state: PressureState; + ownContributionEstimate?: number; + } + export type setPressureDataOverrideReturnValue = { + } /** * Overrides the Idle state. */ @@ -8586,7 +8618,7 @@ file, data and other requests and responses, their headers, bodies, timing, etc. /** * Resource type as it was perceived by the rendering engine. */ - export type ResourceType = "Document"|"Stylesheet"|"Image"|"Media"|"Font"|"Script"|"TextTrack"|"XHR"|"Fetch"|"Prefetch"|"EventSource"|"WebSocket"|"Manifest"|"SignedExchange"|"Ping"|"CSPViolationReport"|"Preflight"|"Other"; + export type ResourceType = "Document"|"Stylesheet"|"Image"|"Media"|"Font"|"Script"|"TextTrack"|"XHR"|"Fetch"|"Prefetch"|"EventSource"|"WebSocket"|"Manifest"|"SignedExchange"|"Ping"|"CSPViolationReport"|"Preflight"|"FedCM"|"Other"; /** * Unique loader identifier. */ @@ -8909,7 +8941,7 @@ applicable or not known. /** * The reason why request was blocked. */ - export type BlockedReason = "other"|"csp"|"mixed-content"|"origin"|"inspector"|"subresource-filter"|"content-type"|"coep-frame-resource-needs-coep-header"|"coop-sandboxed-iframe-cannot-navigate-to-coop-page"|"corp-not-same-origin"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep"|"corp-not-same-origin-after-defaulted-to-same-origin-by-dip"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep-and-dip"|"corp-not-same-site"|"sri-message-signature-mismatch"; + export type BlockedReason = "other"|"csp"|"mixed-content"|"origin"|"inspector"|"integrity"|"subresource-filter"|"content-type"|"coep-frame-resource-needs-coep-header"|"coop-sandboxed-iframe-cannot-navigate-to-coop-page"|"corp-not-same-origin"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep"|"corp-not-same-origin-after-defaulted-to-same-origin-by-dip"|"corp-not-same-origin-after-defaulted-to-same-origin-by-coep-and-dip"|"corp-not-same-site"|"sri-message-signature-mismatch"; /** * The reason why request was blocked. */ @@ -9609,6 +9641,39 @@ https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges- receiveBufferSize?: number; dnsQueryType?: DirectSocketDnsQueryType; } + export interface DirectUDPSocketOptions { + remoteAddr?: string; + /** + * Unsigned int 16. + */ + remotePort?: number; + localAddr?: string; + /** + * Unsigned int 16. + */ + localPort?: number; + dnsQueryType?: DirectSocketDnsQueryType; + /** + * Expected to be unsigned integer. + */ + sendBufferSize?: number; + /** + * Expected to be unsigned integer. + */ + receiveBufferSize?: number; + } + export interface DirectUDPMessage { + data: binary; + /** + * Null for connected mode. + */ + remoteAddr?: string; + /** + * Null for connected mode. +Expected to be unsigned integer. + */ + remotePort?: number; + } export type PrivateNetworkRequestPolicy = "Allow"|"BlockFromInsecureToMorePrivate"|"WarnFromInsecureToMorePrivate"|"PreflightBlock"|"PreflightWarn"|"PermissionBlock"|"PermissionWarn"; export type IPAddressSpace = "Local"|"Private"|"Public"|"Unknown"; export interface ConnectTiming { @@ -10242,18 +10307,62 @@ or were emitted for this request. timestamp: MonotonicTime; } /** - * Fired when there is an error -when writing to tcp direct socket stream. -For example, if user writes illegal type like string -instead of ArrayBuffer or ArrayBufferView. -There's no reporting for reading, because -we cannot know errors on the other side. + * Fired upon direct_socket.UDPSocket creation. */ - export type directTCPSocketChunkErrorPayload = { + export type directUDPSocketCreatedPayload = { + identifier: RequestId; + options: DirectUDPSocketOptions; + timestamp: MonotonicTime; + initiator?: Initiator; + } + /** + * Fired when direct_socket.UDPSocket connection is opened. + */ + export type directUDPSocketOpenedPayload = { + identifier: RequestId; + localAddr: string; + /** + * Expected to be unsigned integer. + */ + localPort: number; + timestamp: MonotonicTime; + remoteAddr?: string; + /** + * Expected to be unsigned integer. + */ + remotePort?: number; + } + /** + * Fired when direct_socket.UDPSocket is aborted. + */ + export type directUDPSocketAbortedPayload = { identifier: RequestId; errorMessage: string; timestamp: MonotonicTime; } + /** + * Fired when direct_socket.UDPSocket is closed. + */ + export type directUDPSocketClosedPayload = { + identifier: RequestId; + timestamp: MonotonicTime; + } + /** + * Fired when message is sent to udp direct socket stream. + */ + export type directUDPSocketChunkSentPayload = { + identifier: RequestId; + message: DirectUDPMessage; + timestamp: MonotonicTime; + } + /** + * Fired when message is received from udp direct socket stream. + */ + export type directUDPSocketChunkReceivedPayload = { + identifier: RequestId; + message: DirectUDPMessage; + timestamp: MonotonicTime; + } /** * Fired when additional information about a requestWillBeSent event is available from the network stack. Not every requestWillBeSent event will have an additional @@ -10682,6 +10791,10 @@ all partition key attributes match the cookie partition key attribute. * Longest post body size (in bytes) that would be included in requestWillBeSent notification */ maxPostDataSize?: number; + /** + * Whether DirectSocket chunk send/receive events should be reported. + */ + reportDirectSocketTraffic?: boolean; } export type enableReturnValue = { } @@ -11068,7 +11181,7 @@ should be omitted for worker targets. } /** * Sets Controls for third-party cookie access -Page reload is required before the new cookie bahavior will be observed +Page reload is required before the new cookie behavior will be observed */ export type setCookieControlsParameters = { /** @@ -11960,7 +12073,7 @@ as an ad. in services/network/public/cpp/permissions_policy/permissions_policy_features.json5. LINT.IfChange(PermissionsPolicyFeature) */ - export type PermissionsPolicyFeature = "accelerometer"|"all-screens-capture"|"ambient-light-sensor"|"attribution-reporting"|"autoplay"|"bluetooth"|"browsing-topics"|"camera"|"captured-surface-control"|"ch-dpr"|"ch-device-memory"|"ch-downlink"|"ch-ect"|"ch-prefers-color-scheme"|"ch-prefers-reduced-motion"|"ch-prefers-reduced-transparency"|"ch-rtt"|"ch-save-data"|"ch-ua"|"ch-ua-arch"|"ch-ua-bitness"|"ch-ua-high-entropy-values"|"ch-ua-platform"|"ch-ua-model"|"ch-ua-mobile"|"ch-ua-form-factors"|"ch-ua-full-version"|"ch-ua-full-version-list"|"ch-ua-platform-version"|"ch-ua-wow64"|"ch-viewport-height"|"ch-viewport-width"|"ch-width"|"clipboard-read"|"clipboard-write"|"compute-pressure"|"controlled-frame"|"cross-origin-isolated"|"deferred-fetch"|"deferred-fetch-minimal"|"device-attributes"|"digital-credentials-get"|"direct-sockets"|"direct-sockets-private"|"display-capture"|"document-domain"|"encrypted-media"|"execution-while-out-of-viewport"|"execution-while-not-rendered"|"fenced-unpartitioned-storage-read"|"focus-without-user-activation"|"fullscreen"|"frobulate"|"gamepad"|"geolocation"|"gyroscope"|"hid"|"identity-credentials-get"|"idle-detection"|"interest-cohort"|"join-ad-interest-group"|"keyboard-map"|"language-detector"|"local-fonts"|"local-network-access"|"magnetometer"|"media-playback-while-not-visible"|"microphone"|"midi"|"otp-credentials"|"payment"|"picture-in-picture"|"popins"|"private-aggregation"|"private-state-token-issuance"|"private-state-token-redemption"|"publickey-credentials-create"|"publickey-credentials-get"|"record-ad-auction-events"|"rewriter"|"run-ad-auction"|"screen-wake-lock"|"serial"|"shared-autofill"|"shared-storage"|"shared-storage-select-url"|"smart-card"|"speaker-selection"|"storage-access"|"sub-apps"|"summarizer"|"sync-xhr"|"translator"|"unload"|"usb"|"usb-unrestricted"|"vertical-scroll"|"web-app-installation"|"web-printing"|"web-share"|"window-management"|"writer"|"xr-spatial-tracking"; + export type PermissionsPolicyFeature = "accelerometer"|"all-screens-capture"|"ambient-light-sensor"|"attribution-reporting"|"autoplay"|"bluetooth"|"browsing-topics"|"camera"|"captured-surface-control"|"ch-dpr"|"ch-device-memory"|"ch-downlink"|"ch-ect"|"ch-prefers-color-scheme"|"ch-prefers-reduced-motion"|"ch-prefers-reduced-transparency"|"ch-rtt"|"ch-save-data"|"ch-ua"|"ch-ua-arch"|"ch-ua-bitness"|"ch-ua-high-entropy-values"|"ch-ua-platform"|"ch-ua-model"|"ch-ua-mobile"|"ch-ua-form-factors"|"ch-ua-full-version"|"ch-ua-full-version-list"|"ch-ua-platform-version"|"ch-ua-wow64"|"ch-viewport-height"|"ch-viewport-width"|"ch-width"|"clipboard-read"|"clipboard-write"|"compute-pressure"|"controlled-frame"|"cross-origin-isolated"|"deferred-fetch"|"deferred-fetch-minimal"|"device-attributes"|"digital-credentials-get"|"direct-sockets"|"direct-sockets-private"|"display-capture"|"document-domain"|"encrypted-media"|"execution-while-out-of-viewport"|"execution-while-not-rendered"|"fenced-unpartitioned-storage-read"|"focus-without-user-activation"|"fullscreen"|"frobulate"|"gamepad"|"geolocation"|"gyroscope"|"hid"|"identity-credentials-get"|"idle-detection"|"interest-cohort"|"join-ad-interest-group"|"keyboard-map"|"language-detector"|"local-fonts"|"local-network-access"|"magnetometer"|"media-playback-while-not-visible"|"microphone"|"midi"|"on-device-speech-recognition"|"otp-credentials"|"payment"|"picture-in-picture"|"popins"|"private-aggregation"|"private-state-token-issuance"|"private-state-token-redemption"|"publickey-credentials-create"|"publickey-credentials-get"|"record-ad-auction-events"|"rewriter"|"run-ad-auction"|"screen-wake-lock"|"serial"|"shared-autofill"|"shared-storage"|"shared-storage-select-url"|"smart-card"|"speaker-selection"|"storage-access"|"sub-apps"|"summarizer"|"sync-xhr"|"translator"|"unload"|"usb"|"usb-unrestricted"|"vertical-scroll"|"web-app-installation"|"web-printing"|"web-share"|"window-management"|"writer"|"xr-spatial-tracking"; /** * Reason for a permissions policy feature to be disabled. */ @@ -14741,6 +14854,11 @@ Present only for SharedStorageAccessMethod: createWorklet. Present only for SharedStorageAccessMethods: run and selectURL. */ operationName?: string; + /** + * ID of the operation call. +Present only for SharedStorageAccessMethods: run and selectURL. + */ + operationId?: string; /** * Whether or not to keep the worket alive for future run or selectURL calls. @@ -14785,13 +14903,25 @@ Present only for SharedStorageAccessMethod: set. */ ignoreIfPresent?: boolean; /** - * If the method is called on a worklet, or as part of -a worklet script, it will have an ID for the associated worklet. + * If the method is called on a shared storage worklet, or as part of +a shared storage worklet script, it will have a number for the +associated worklet, denoting the (0-indexed) order of the worklet's +creation relative to all other shared storage worklets created by +documents using the current storage partition. Present only for SharedStorageAccessMethods: addModule, createWorklet, run, selectURL, and any other SharedStorageAccessMethod when the -SharedStorageAccessScope is worklet. +SharedStorageAccessScope is sharedStorageWorklet. +TODO(crbug.com/401011862): Pass this only for addModule & createWorklet. */ - workletId?: string; + workletOrdinal?: number; + /** + * Hex representation of the DevTools token used as the TargetID for the +associated shared storage worklet. +Present only for SharedStorageAccessMethods: addModule, createWorklet, +run, selectURL, and any other SharedStorageAccessMethod when the +SharedStorageAccessScope is sharedStorageWorklet. + */ + workletTargetId?: Target.TargetID; /** * Name of the lock to be acquired, if present. Optionally present only for SharedStorageAccessMethods: batchUpdate, @@ -14863,14 +14993,6 @@ Present only for SharedStorageAccessMethod: batchUpdate. */ ends: number[]; } - export interface AttributionReportingTriggerSpec { - /** - * number instead of integer because not all uint32 can be represented by -int - */ - triggerData: number[]; - eventReportWindows: AttributionReportingEventReportWindows; - } export type AttributionReportingTriggerDataMatching = "exact"|"modulus"; export interface AttributionReportingAggregatableDebugReportingData { keyPiece: UnsignedInt128AsBase16; @@ -14910,7 +15032,12 @@ int * duration in seconds */ expiry: number; - triggerSpecs: AttributionReportingTriggerSpec[]; + /** + * number instead of integer because not all uint32 can be represented by +int + */ + triggerData: number[]; + eventReportWindows: AttributionReportingEventReportWindows; /** * duration in seconds */ @@ -14985,6 +15112,7 @@ int } export type AttributionReportingEventLevelResult = "success"|"successDroppedLowerPriority"|"internalError"|"noCapacityForAttributionDestination"|"noMatchingSources"|"deduplicated"|"excessiveAttributions"|"priorityTooLow"|"neverAttributedSource"|"excessiveReportingOrigins"|"noMatchingSourceFilterData"|"prohibitedByBrowserPolicy"|"noMatchingConfigurations"|"excessiveReports"|"falselyAttributedSource"|"reportWindowPassed"|"notRegistered"|"reportWindowNotStarted"|"noMatchingTriggerData"; export type AttributionReportingAggregatableResult = "success"|"internalError"|"noCapacityForAttributionDestination"|"noMatchingSources"|"excessiveAttributions"|"excessiveReportingOrigins"|"noHistograms"|"insufficientBudget"|"insufficientNamedBudget"|"noMatchingSourceFilterData"|"notRegistered"|"prohibitedByBrowserPolicy"|"deduplicated"|"reportWindowPassed"|"excessiveReports"; + export type AttributionReportingReportResult = "sent"|"prohibited"|"failedToAssemble"|"expired"; /** * A single Related Website Set object. */ @@ -15175,6 +15303,42 @@ presence/absence depends on `type`. */ params: SharedStorageAccessParams; } + /** + * A shared storage run or selectURL operation finished its execution. +The following parameters are included in all events. + */ + export type sharedStorageWorkletOperationExecutionFinishedPayload = { + /** + * Time that the operation finished. + */ + finishedTime: Network.TimeSinceEpoch; + /** + * Time, in microseconds, from start of shared storage JS API call until +end of operation execution in the worklet. + */ + executionTime: number; + /** + * Enum value indicating the Shared Storage API method invoked. + */ + method: SharedStorageAccessMethod; + /** + * ID of the operation call. + */ + operationId: string; + /** + * Hex representation of the DevTools token used as the TargetID for the +associated shared storage worklet. + */ + workletTargetId: Target.TargetID; + /** + * DevTools Frame Token for the primary frame tree's root. + */ + mainFrameId: Page.FrameId; + /** + * Serialization of the origin owning the Shared Storage data. + */ + ownerOrigin: string; + } export type storageBucketCreatedOrUpdatedPayload = { bucketInfo: StorageBucketInfo; } @@ -15190,6 +15354,17 @@ presence/absence depends on `type`. eventLevel: AttributionReportingEventLevelResult; aggregatable: AttributionReportingAggregatableResult; } + export type attributionReportingReportSentPayload = { + url: string; + body: { [key: string]: string }; + result: AttributionReportingReportResult; + /** + * If result is `sent`, populated with net/HTTP status. + */ + netError?: number; + netErrorName?: string; + httpStatusCode?: number; + } /** * Returns a storage key given a frame id. @@ -17780,7 +17955,7 @@ CDP events for them are emitted separately but they share /** * List of FinalStatus reasons for Prerender2. */ - export type PrerenderFinalStatus = "Activated"|"Destroyed"|"LowEndDevice"|"InvalidSchemeRedirect"|"InvalidSchemeNavigation"|"NavigationRequestBlockedByCsp"|"MainFrameNavigation"|"MojoBinderPolicy"|"RendererProcessCrashed"|"RendererProcessKilled"|"Download"|"TriggerDestroyed"|"NavigationNotCommitted"|"NavigationBadHttpStatus"|"ClientCertRequested"|"NavigationRequestNetworkError"|"CancelAllHostsForTesting"|"DidFailLoad"|"Stop"|"SslCertificateError"|"LoginAuthRequested"|"UaChangeRequiresReload"|"BlockedByClient"|"AudioOutputDeviceRequested"|"MixedContent"|"TriggerBackgrounded"|"MemoryLimitExceeded"|"DataSaverEnabled"|"TriggerUrlHasEffectiveUrl"|"ActivatedBeforeStarted"|"InactivePageRestriction"|"StartFailed"|"TimeoutBackgrounded"|"CrossSiteRedirectInInitialNavigation"|"CrossSiteNavigationInInitialNavigation"|"SameSiteCrossOriginRedirectNotOptInInInitialNavigation"|"SameSiteCrossOriginNavigationNotOptInInInitialNavigation"|"ActivationNavigationParameterMismatch"|"ActivatedInBackground"|"EmbedderHostDisallowed"|"ActivationNavigationDestroyedBeforeSuccess"|"TabClosedByUserGesture"|"TabClosedWithoutUserGesture"|"PrimaryMainFrameRendererProcessCrashed"|"PrimaryMainFrameRendererProcessKilled"|"ActivationFramePolicyNotCompatible"|"PreloadingDisabled"|"BatterySaverEnabled"|"ActivatedDuringMainFrameNavigation"|"PreloadingUnsupportedByWebContents"|"CrossSiteRedirectInMainFrameNavigation"|"CrossSiteNavigationInMainFrameNavigation"|"SameSiteCrossOriginRedirectNotOptInInMainFrameNavigation"|"SameSiteCrossOriginNavigationNotOptInInMainFrameNavigation"|"MemoryPressureOnTrigger"|"MemoryPressureAfterTriggered"|"PrerenderingDisabledByDevTools"|"SpeculationRuleRemoved"|"ActivatedWithAuxiliaryBrowsingContexts"|"MaxNumOfRunningEagerPrerendersExceeded"|"MaxNumOfRunningNonEagerPrerendersExceeded"|"MaxNumOfRunningEmbedderPrerendersExceeded"|"PrerenderingUrlHasEffectiveUrl"|"RedirectedPrerenderingUrlHasEffectiveUrl"|"ActivationUrlHasEffectiveUrl"|"JavaScriptInterfaceAdded"|"JavaScriptInterfaceRemoved"|"AllPrerenderingCanceled"|"WindowClosed"|"SlowNetwork"|"OtherPrerenderedPageActivated"|"V8OptimizerDisabled"|"PrerenderFailedDuringPrefetch"|"BrowsingDataRemoved"; + export type PrerenderFinalStatus = "Activated"|"Destroyed"|"LowEndDevice"|"InvalidSchemeRedirect"|"InvalidSchemeNavigation"|"NavigationRequestBlockedByCsp"|"MojoBinderPolicy"|"RendererProcessCrashed"|"RendererProcessKilled"|"Download"|"TriggerDestroyed"|"NavigationNotCommitted"|"NavigationBadHttpStatus"|"ClientCertRequested"|"NavigationRequestNetworkError"|"CancelAllHostsForTesting"|"DidFailLoad"|"Stop"|"SslCertificateError"|"LoginAuthRequested"|"UaChangeRequiresReload"|"BlockedByClient"|"AudioOutputDeviceRequested"|"MixedContent"|"TriggerBackgrounded"|"MemoryLimitExceeded"|"DataSaverEnabled"|"TriggerUrlHasEffectiveUrl"|"ActivatedBeforeStarted"|"InactivePageRestriction"|"StartFailed"|"TimeoutBackgrounded"|"CrossSiteRedirectInInitialNavigation"|"CrossSiteNavigationInInitialNavigation"|"SameSiteCrossOriginRedirectNotOptInInInitialNavigation"|"SameSiteCrossOriginNavigationNotOptInInInitialNavigation"|"ActivationNavigationParameterMismatch"|"ActivatedInBackground"|"EmbedderHostDisallowed"|"ActivationNavigationDestroyedBeforeSuccess"|"TabClosedByUserGesture"|"TabClosedWithoutUserGesture"|"PrimaryMainFrameRendererProcessCrashed"|"PrimaryMainFrameRendererProcessKilled"|"ActivationFramePolicyNotCompatible"|"PreloadingDisabled"|"BatterySaverEnabled"|"ActivatedDuringMainFrameNavigation"|"PreloadingUnsupportedByWebContents"|"CrossSiteRedirectInMainFrameNavigation"|"CrossSiteNavigationInMainFrameNavigation"|"SameSiteCrossOriginRedirectNotOptInInMainFrameNavigation"|"SameSiteCrossOriginNavigationNotOptInInMainFrameNavigation"|"MemoryPressureOnTrigger"|"MemoryPressureAfterTriggered"|"PrerenderingDisabledByDevTools"|"SpeculationRuleRemoved"|"ActivatedWithAuxiliaryBrowsingContexts"|"MaxNumOfRunningEagerPrerendersExceeded"|"MaxNumOfRunningNonEagerPrerendersExceeded"|"MaxNumOfRunningEmbedderPrerendersExceeded"|"PrerenderingUrlHasEffectiveUrl"|"RedirectedPrerenderingUrlHasEffectiveUrl"|"ActivationUrlHasEffectiveUrl"|"JavaScriptInterfaceAdded"|"JavaScriptInterfaceRemoved"|"AllPrerenderingCanceled"|"WindowClosed"|"SlowNetwork"|"OtherPrerenderedPageActivated"|"V8OptimizerDisabled"|"PrerenderFailedDuringPrefetch"|"BrowsingDataRemoved"; /** * Preloading status values, see also PreloadingTriggeringOutcome. This status is shared by prefetchStatusUpdated and prerenderStatusUpdated. @@ -18151,6 +18326,10 @@ the web-bluetooth API. * Indicates the various types of characteristic operation. */ export type CharacteristicOperationType = "read"|"write"|"subscribe-to-notifications"|"unsubscribe-from-notifications"; + /** + * Indicates the various types of descriptor operation. + */ + export type DescriptorOperationType = "read"|"write"; /** * Stores the manufacturer data */ @@ -18228,6 +18407,16 @@ expected to exist when |type| is write. data?: binary; writeType?: CharacteristicWriteType; } + /** + * Event for when a descriptor operation of |type| to the descriptor +respresented by |descriptorId| happened. |data| is expected to exist when +|type| is write. + */ + export type descriptorOperationReceivedPayload = { + descriptorId: string; + type: DescriptorOperationType; + data?: binary; + } /** * Enable the BluetoothEmulation domain. @@ -18310,6 +18499,21 @@ response. } export type simulateCharacteristicOperationResponseReturnValue = { } + /** + * Simulates the response from the descriptor with |descriptorId| for a +descriptor operation of |type|. The |code| value follows the Error +Codes from Bluetooth Core Specification Vol 3 Part F 3.4.1.1 Error Response. +The |data| is expected to exist when simulating a successful read operation +response. + */ + export type simulateDescriptorOperationResponseParameters = { + descriptorId: string; + type: DescriptorOperationType; + code: number; + data?: binary; + } + export type simulateDescriptorOperationResponseReturnValue = { + } /** * Adds a service with |serviceUuid| to the peripheral with |address|. */ @@ -18377,6 +18581,14 @@ by |characteristicId|. } export type removeDescriptorReturnValue = { } + /** + * Simulates a GATT disconnection from the peripheral with |address|. + */ + export type simulateGATTDisconnectionParameters = { + address: string; + } + export type simulateGATTDisconnectionReturnValue = { + } } /** @@ -21136,7 +21348,12 @@ Error was thrown. "Network.directTCPSocketClosed": Network.directTCPSocketClosedPayload; "Network.directTCPSocketChunkSent": Network.directTCPSocketChunkSentPayload; "Network.directTCPSocketChunkReceived": Network.directTCPSocketChunkReceivedPayload; - "Network.directTCPSocketChunkError": Network.directTCPSocketChunkErrorPayload; + "Network.directUDPSocketCreated": Network.directUDPSocketCreatedPayload; + "Network.directUDPSocketOpened": Network.directUDPSocketOpenedPayload; + "Network.directUDPSocketAborted": Network.directUDPSocketAbortedPayload; + "Network.directUDPSocketClosed": Network.directUDPSocketClosedPayload; + "Network.directUDPSocketChunkSent": Network.directUDPSocketChunkSentPayload; + "Network.directUDPSocketChunkReceived": Network.directUDPSocketChunkReceivedPayload; "Network.requestWillBeSentExtraInfo": Network.requestWillBeSentExtraInfoPayload; "Network.responseReceivedExtraInfo": Network.responseReceivedExtraInfoPayload; "Network.responseReceivedEarlyHints": Network.responseReceivedEarlyHintsPayload; @@ -21197,10 +21414,12 @@ Error was thrown. "Storage.interestGroupAuctionEventOccurred": Storage.interestGroupAuctionEventOccurredPayload; "Storage.interestGroupAuctionNetworkRequestCreated": Storage.interestGroupAuctionNetworkRequestCreatedPayload; "Storage.sharedStorageAccessed": Storage.sharedStorageAccessedPayload; + "Storage.sharedStorageWorkletOperationExecutionFinished": Storage.sharedStorageWorkletOperationExecutionFinishedPayload; "Storage.storageBucketCreatedOrUpdated": Storage.storageBucketCreatedOrUpdatedPayload; "Storage.storageBucketDeleted": Storage.storageBucketDeletedPayload; "Storage.attributionReportingSourceRegistered": Storage.attributionReportingSourceRegisteredPayload; "Storage.attributionReportingTriggerRegistered": Storage.attributionReportingTriggerRegisteredPayload; + "Storage.attributionReportingReportSent": Storage.attributionReportingReportSentPayload; "Target.attachedToTarget": Target.attachedToTargetPayload; "Target.detachedFromTarget": Target.detachedFromTargetPayload; "Target.receivedMessageFromTarget": Target.receivedMessageFromTargetPayload; @@ -21247,6 +21466,7 @@ Error was thrown. "FedCm.dialogClosed": FedCm.dialogClosedPayload; "BluetoothEmulation.gattOperationReceived": BluetoothEmulation.gattOperationReceivedPayload; "BluetoothEmulation.characteristicOperationReceived": BluetoothEmulation.characteristicOperationReceivedPayload; + "BluetoothEmulation.descriptorOperationReceived": BluetoothEmulation.descriptorOperationReceivedPayload; "Console.messageAdded": Console.messageAddedPayload; "Debugger.breakpointResolved": Debugger.breakpointResolvedPayload; "Debugger.paused": Debugger.pausedPayload; @@ -21476,6 +21696,7 @@ Error was thrown. "Emulation.setSensorOverrideReadings": Emulation.setSensorOverrideReadingsParameters; "Emulation.setPressureSourceOverrideEnabled": Emulation.setPressureSourceOverrideEnabledParameters; "Emulation.setPressureStateOverride": Emulation.setPressureStateOverrideParameters; + "Emulation.setPressureDataOverride": Emulation.setPressureDataOverrideParameters; "Emulation.setIdleOverride": Emulation.setIdleOverrideParameters; "Emulation.clearIdleOverride": Emulation.clearIdleOverrideParameters; "Emulation.setNavigatorOverrides": Emulation.setNavigatorOverridesParameters; @@ -21812,12 +22033,14 @@ Error was thrown. "BluetoothEmulation.simulateAdvertisement": BluetoothEmulation.simulateAdvertisementParameters; "BluetoothEmulation.simulateGATTOperationResponse": BluetoothEmulation.simulateGATTOperationResponseParameters; "BluetoothEmulation.simulateCharacteristicOperationResponse": BluetoothEmulation.simulateCharacteristicOperationResponseParameters; + "BluetoothEmulation.simulateDescriptorOperationResponse": BluetoothEmulation.simulateDescriptorOperationResponseParameters; "BluetoothEmulation.addService": BluetoothEmulation.addServiceParameters; "BluetoothEmulation.removeService": BluetoothEmulation.removeServiceParameters; "BluetoothEmulation.addCharacteristic": BluetoothEmulation.addCharacteristicParameters; "BluetoothEmulation.removeCharacteristic": BluetoothEmulation.removeCharacteristicParameters; "BluetoothEmulation.addDescriptor": BluetoothEmulation.addDescriptorParameters; "BluetoothEmulation.removeDescriptor": BluetoothEmulation.removeDescriptorParameters; + "BluetoothEmulation.simulateGATTDisconnection": BluetoothEmulation.simulateGATTDisconnectionParameters; "Console.clearMessages": Console.clearMessagesParameters; "Console.disable": Console.disableParameters; "Console.enable": Console.enableParameters; @@ -22106,6 +22329,7 @@ Error was thrown. "Emulation.setSensorOverrideReadings": Emulation.setSensorOverrideReadingsReturnValue; "Emulation.setPressureSourceOverrideEnabled": Emulation.setPressureSourceOverrideEnabledReturnValue; "Emulation.setPressureStateOverride": Emulation.setPressureStateOverrideReturnValue; + "Emulation.setPressureDataOverride": Emulation.setPressureDataOverrideReturnValue; "Emulation.setIdleOverride": Emulation.setIdleOverrideReturnValue; "Emulation.clearIdleOverride": Emulation.clearIdleOverrideReturnValue; "Emulation.setNavigatorOverrides": Emulation.setNavigatorOverridesReturnValue; @@ -22442,12 +22666,14 @@ Error was thrown. "BluetoothEmulation.simulateAdvertisement": BluetoothEmulation.simulateAdvertisementReturnValue; "BluetoothEmulation.simulateGATTOperationResponse": BluetoothEmulation.simulateGATTOperationResponseReturnValue; "BluetoothEmulation.simulateCharacteristicOperationResponse": BluetoothEmulation.simulateCharacteristicOperationResponseReturnValue; + "BluetoothEmulation.simulateDescriptorOperationResponse": BluetoothEmulation.simulateDescriptorOperationResponseReturnValue; "BluetoothEmulation.addService": BluetoothEmulation.addServiceReturnValue; "BluetoothEmulation.removeService": BluetoothEmulation.removeServiceReturnValue; "BluetoothEmulation.addCharacteristic": BluetoothEmulation.addCharacteristicReturnValue; "BluetoothEmulation.removeCharacteristic": BluetoothEmulation.removeCharacteristicReturnValue; "BluetoothEmulation.addDescriptor": BluetoothEmulation.addDescriptorReturnValue; "BluetoothEmulation.removeDescriptor": BluetoothEmulation.removeDescriptorReturnValue; + "BluetoothEmulation.simulateGATTDisconnection": BluetoothEmulation.simulateGATTDisconnectionReturnValue; "Console.clearMessages": Console.clearMessagesReturnValue; "Console.disable": Console.disableReturnValue; "Console.enable": Console.enableReturnValue;