diff --git a/changelog.md b/changelog.md index 2aaa04deb1..fa6adfb857 100644 --- a/changelog.md +++ b/changelog.md @@ -1,7 +1,73 @@ +## Roll protocol to r1335233 — _2024-07-31T04:25:01.000Z_ +###### Diff: [`a313e79...19a1f45`](https://github.com/ChromeDevTools/devtools-protocol/compare/a313e79...19a1f45) + +```diff +@@ browser_protocol.pdl:1102 @@ experimental domain Audits + parameters + InspectorIssue issue + +-# Defines commands and events for browser extensions. Available if the client +-# is connected using the --remote-debugging-pipe flag and +-# the --enable-unsafe-extension-debugging flag is set. ++# Defines commands and events for browser extensions. + experimental domain Extensions ++ # Storage areas. ++ type StorageArea extends string ++ enum ++ session ++ local ++ sync ++ managed + # Installs an unpacked extension from the filesystem similar to + # --load-extension CLI flags. Returns extension ID once the extension +- # has been installed. ++ # has been installed. Available if the client is connected using the ++ # --remote-debugging-pipe flag and the --enable-unsafe-extension-debugging ++ # flag is set. + command loadUnpacked + parameters + # Absolute file path. +@@ -1116,6 +1123,18 @@ experimental domain Extensions + returns + # Extension id. + string id ++ # Gets data from extension storage in the given `area`. If `keys` is ++ # specified, these are used to filter the result. ++ command getStorageItems ++ parameters ++ # ID of extension. ++ string id ++ # StorageArea to retrieve data from. ++ StorageArea storageArea ++ # Keys to retrieve. ++ optional array of string keys ++ returns ++ object data + + # Defines commands and events for Autofill. + experimental domain Autofill +@@ -7964,6 +7983,7 @@ domain Page + experimental type PermissionsPolicyFeature extends string + enum + accelerometer ++ all-screens-capture + ambient-light-sensor + attribution-reporting + autoplay +@@ -12285,6 +12305,7 @@ experimental domain Preload + AllPrerenderingCanceled + WindowClosed + SlowNetwork ++ OtherPrerenderedPageActivated + + # Fired when a preload enabled state is updated. + event preloadEnabledStateUpdated +``` + ## Roll protocol to r1334619 — _2024-07-30T04:27:32.000Z_ -###### Diff: [`20344f9...3590b49`](https://github.com/ChromeDevTools/devtools-protocol/compare/20344f9...3590b49) +###### Diff: [`20344f9...a313e79`](https://github.com/ChromeDevTools/devtools-protocol/compare/20344f9...a313e79) ```diff @@ browser_protocol.pdl:12284 @@ experimental domain Preload @@ -12183,18 +12249,4 @@ index 09c420e..bd277eb 100644 type CookieOperation extends string enum -``` - -## Roll protocol to r975498 — _2022-02-26T20:15:19.000Z_ -###### Diff: [`14c3fe0...a7bfbac`](https://github.com/ChromeDevTools/devtools-protocol/compare/14c3fe0...a7bfbac) - -```diff -@@ browser_protocol.pdl:6540 @@ experimental domain Overlay - enum - rgb - hsl -+ hwb - hex - - # Configurations for Persistent Grid Highlight ``` \ No newline at end of file diff --git a/json/browser_protocol.json b/json/browser_protocol.json index 5dc0393765..a41cc4bc3e 100644 --- a/json/browser_protocol.json +++ b/json/browser_protocol.json @@ -2177,12 +2177,25 @@ }, { "domain": "Extensions", - "description": "Defines commands and events for browser extensions. Available if the client\nis connected using the --remote-debugging-pipe flag and\nthe --enable-unsafe-extension-debugging flag is set.", + "description": "Defines commands and events for browser extensions.", "experimental": true, + "types": [ + { + "id": "StorageArea", + "description": "Storage areas.", + "type": "string", + "enum": [ + "session", + "local", + "sync", + "managed" + ] + } + ], "commands": [ { "name": "loadUnpacked", - "description": "Installs an unpacked extension from the filesystem similar to\n--load-extension CLI flags. Returns extension ID once the extension\nhas been installed.", + "description": "Installs an unpacked extension from the filesystem similar to\n--load-extension CLI flags. Returns extension ID once the extension\nhas been installed. Available if the client is connected using the\n--remote-debugging-pipe flag and the --enable-unsafe-extension-debugging\nflag is set.", "parameters": [ { "name": "path", @@ -2197,6 +2210,37 @@ "type": "string" } ] + }, + { + "name": "getStorageItems", + "description": "Gets data from extension storage in the given `area`. If `keys` is\nspecified, these are used to filter the result.", + "parameters": [ + { + "name": "id", + "description": "ID of extension.", + "type": "string" + }, + { + "name": "storageArea", + "description": "StorageArea to retrieve data from.", + "$ref": "StorageArea" + }, + { + "name": "keys", + "description": "Keys to retrieve.", + "optional": true, + "type": "array", + "items": { + "type": "string" + } + } + ], + "returns": [ + { + "name": "data", + "type": "object" + } + ] } ] }, @@ -16978,6 +17022,7 @@ "type": "string", "enum": [ "accelerometer", + "all-screens-capture", "ambient-light-sensor", "attribution-reporting", "autoplay", @@ -26025,7 +26070,8 @@ "JavaScriptInterfaceRemoved", "AllPrerenderingCanceled", "WindowClosed", - "SlowNetwork" + "SlowNetwork", + "OtherPrerenderedPageActivated" ] }, { diff --git a/package.json b/package.json index c9b71df3fb..a203c32847 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "devtools-protocol", - "version": "0.0.1334619", + "version": "0.0.1335233", "description": "The Chrome DevTools Protocol JSON", "repository": "https://github.com/ChromeDevTools/devtools-protocol", "author": "The Chromium Authors", diff --git a/pdl/browser_protocol.pdl b/pdl/browser_protocol.pdl index 083fa7bb43..035bdc1f06 100644 --- a/pdl/browser_protocol.pdl +++ b/pdl/browser_protocol.pdl @@ -1102,13 +1102,20 @@ experimental domain Audits parameters InspectorIssue issue -# Defines commands and events for browser extensions. Available if the client -# is connected using the --remote-debugging-pipe flag and -# the --enable-unsafe-extension-debugging flag is set. +# Defines commands and events for browser extensions. experimental domain Extensions + # Storage areas. + type StorageArea extends string + enum + session + local + sync + managed # Installs an unpacked extension from the filesystem similar to # --load-extension CLI flags. Returns extension ID once the extension - # has been installed. + # has been installed. Available if the client is connected using the + # --remote-debugging-pipe flag and the --enable-unsafe-extension-debugging + # flag is set. command loadUnpacked parameters # Absolute file path. @@ -1116,6 +1123,18 @@ experimental domain Extensions returns # Extension id. string id + # Gets data from extension storage in the given `area`. If `keys` is + # specified, these are used to filter the result. + command getStorageItems + parameters + # ID of extension. + string id + # StorageArea to retrieve data from. + StorageArea storageArea + # Keys to retrieve. + optional array of string keys + returns + object data # Defines commands and events for Autofill. experimental domain Autofill @@ -7964,6 +7983,7 @@ domain Page experimental type PermissionsPolicyFeature extends string enum accelerometer + all-screens-capture ambient-light-sensor attribution-reporting autoplay @@ -12285,6 +12305,7 @@ experimental domain Preload AllPrerenderingCanceled WindowClosed SlowNetwork + OtherPrerenderedPageActivated # Fired when a preload enabled state is updated. event preloadEnabledStateUpdated diff --git a/types/protocol-mapping.d.ts b/types/protocol-mapping.d.ts index 563641e6fa..0229c6b966 100644 --- a/types/protocol-mapping.d.ts +++ b/types/protocol-mapping.d.ts @@ -1509,12 +1509,22 @@ export namespace ProtocolMapping { /** * Installs an unpacked extension from the filesystem similar to * --load-extension CLI flags. Returns extension ID once the extension - * has been installed. + * has been installed. Available if the client is connected using the + * --remote-debugging-pipe flag and the --enable-unsafe-extension-debugging + * flag is set. */ 'Extensions.loadUnpacked': { paramsType: [Protocol.Extensions.LoadUnpackedRequest]; returnType: Protocol.Extensions.LoadUnpackedResponse; }; + /** + * Gets data from extension storage in the given `area`. If `keys` is + * specified, these are used to filter the result. + */ + 'Extensions.getStorageItems': { + paramsType: [Protocol.Extensions.GetStorageItemsRequest]; + returnType: Protocol.Extensions.GetStorageItemsResponse; + }; /** * Trigger autofill on a form identified by the fieldId. * If the field and related form cannot be autofilled, returns an error. diff --git a/types/protocol-proxy-api.d.ts b/types/protocol-proxy-api.d.ts index 64439da1e0..3e9f64f591 100644 --- a/types/protocol-proxy-api.d.ts +++ b/types/protocol-proxy-api.d.ts @@ -813,10 +813,18 @@ export namespace ProtocolProxyApi { /** * Installs an unpacked extension from the filesystem similar to * --load-extension CLI flags. Returns extension ID once the extension - * has been installed. + * has been installed. Available if the client is connected using the + * --remote-debugging-pipe flag and the --enable-unsafe-extension-debugging + * flag is set. */ loadUnpacked(params: Protocol.Extensions.LoadUnpackedRequest): Promise; + /** + * Gets data from extension storage in the given `area`. If `keys` is + * specified, these are used to filter the result. + */ + getStorageItems(params: Protocol.Extensions.GetStorageItemsRequest): Promise; + } export interface AutofillApi { diff --git a/types/protocol-tests-proxy-api.d.ts b/types/protocol-tests-proxy-api.d.ts index f78ee24991..34a456099d 100644 --- a/types/protocol-tests-proxy-api.d.ts +++ b/types/protocol-tests-proxy-api.d.ts @@ -871,10 +871,18 @@ export namespace ProtocolTestsProxyApi { /** * Installs an unpacked extension from the filesystem similar to * --load-extension CLI flags. Returns extension ID once the extension - * has been installed. + * has been installed. Available if the client is connected using the + * --remote-debugging-pipe flag and the --enable-unsafe-extension-debugging + * flag is set. */ loadUnpacked(params: Protocol.Extensions.LoadUnpackedRequest): Promise<{id: number, result: Protocol.Extensions.LoadUnpackedResponse, sessionId: string}>; + /** + * Gets data from extension storage in the given `area`. If `keys` is + * specified, these are used to filter the result. + */ + getStorageItems(params: Protocol.Extensions.GetStorageItemsRequest): Promise<{id: number, result: Protocol.Extensions.GetStorageItemsResponse, sessionId: string}>; + } export interface AutofillApi { diff --git a/types/protocol.d.ts b/types/protocol.d.ts index 980d54df25..6e7c1cba5b 100644 --- a/types/protocol.d.ts +++ b/types/protocol.d.ts @@ -3766,12 +3766,15 @@ export namespace Protocol { } /** - * Defines commands and events for browser extensions. Available if the client - * is connected using the --remote-debugging-pipe flag and - * the --enable-unsafe-extension-debugging flag is set. + * Defines commands and events for browser extensions. */ export namespace Extensions { + /** + * Storage areas. + */ + export type StorageArea = ('session' | 'local' | 'sync' | 'managed'); + export interface LoadUnpackedRequest { /** * Absolute file path. @@ -3785,6 +3788,25 @@ export namespace Protocol { */ id: string; } + + export interface GetStorageItemsRequest { + /** + * ID of extension. + */ + id: string; + /** + * StorageArea to retrieve data from. + */ + storageArea: StorageArea; + /** + * Keys to retrieve. + */ + keys?: string[]; + } + + export interface GetStorageItemsResponse { + data: any; + } } /** @@ -13324,7 +13346,7 @@ export namespace Protocol { * All Permissions Policy features. This enum should match the one defined * in third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5. */ - export type PermissionsPolicyFeature = ('accelerometer' | '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-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' | 'cross-origin-isolated' | 'deferred-fetch' | 'digital-credentials-get' | 'direct-sockets' | 'display-capture' | 'document-domain' | 'encrypted-media' | 'execution-while-out-of-viewport' | 'execution-while-not-rendered' | 'focus-without-user-activation' | 'fullscreen' | 'frobulate' | 'gamepad' | 'geolocation' | 'gyroscope' | 'hid' | 'identity-credentials-get' | 'idle-detection' | 'interest-cohort' | 'join-ad-interest-group' | 'keyboard-map' | 'local-fonts' | 'magnetometer' | 'media-playback-while-not-visible' | 'microphone' | 'midi' | 'otp-credentials' | 'payment' | 'picture-in-picture' | 'private-aggregation' | 'private-state-token-issuance' | 'private-state-token-redemption' | 'publickey-credentials-create' | 'publickey-credentials-get' | 'run-ad-auction' | 'screen-wake-lock' | 'serial' | 'shared-autofill' | 'shared-storage' | 'shared-storage-select-url' | 'smart-card' | 'speaker-selection' | 'storage-access' | 'sub-apps' | 'sync-xhr' | 'unload' | 'usb' | 'usb-unrestricted' | 'vertical-scroll' | 'web-printing' | 'web-share' | 'window-management' | '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-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' | 'cross-origin-isolated' | 'deferred-fetch' | 'digital-credentials-get' | 'direct-sockets' | 'display-capture' | 'document-domain' | 'encrypted-media' | 'execution-while-out-of-viewport' | 'execution-while-not-rendered' | 'focus-without-user-activation' | 'fullscreen' | 'frobulate' | 'gamepad' | 'geolocation' | 'gyroscope' | 'hid' | 'identity-credentials-get' | 'idle-detection' | 'interest-cohort' | 'join-ad-interest-group' | 'keyboard-map' | 'local-fonts' | 'magnetometer' | 'media-playback-while-not-visible' | 'microphone' | 'midi' | 'otp-credentials' | 'payment' | 'picture-in-picture' | 'private-aggregation' | 'private-state-token-issuance' | 'private-state-token-redemption' | 'publickey-credentials-create' | 'publickey-credentials-get' | 'run-ad-auction' | 'screen-wake-lock' | 'serial' | 'shared-autofill' | 'shared-storage' | 'shared-storage-select-url' | 'smart-card' | 'speaker-selection' | 'storage-access' | 'sub-apps' | 'sync-xhr' | 'unload' | 'usb' | 'usb-unrestricted' | 'vertical-scroll' | 'web-printing' | 'web-share' | 'window-management' | 'xr-spatial-tracking'); /** * Reason for a permissions policy feature to be disabled. @@ -18465,7 +18487,7 @@ export namespace Protocol { /** * 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'); + 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'); /** * Preloading status values, see also PreloadingTriggeringOutcome. This