diff --git a/lib/launcher/revision.go b/lib/launcher/revision.go index a55e36a5..21a76a3f 100644 --- a/lib/launcher/revision.go +++ b/lib/launcher/revision.go @@ -3,7 +3,7 @@ package launcher // RevisionDefault for chromium -const RevisionDefault = 1018003 +const RevisionDefault = 1030087 // RevisionPlaywright for arm linux -const RevisionPlaywright = 1012 +const RevisionPlaywright = 1015 diff --git a/lib/launcher/revision/main.go b/lib/launcher/revision/main.go index 48bd9e00..97012e8d 100644 --- a/lib/launcher/revision/main.go +++ b/lib/launcher/revision/main.go @@ -111,7 +111,7 @@ func has(list []int, i int) bool { } func getFromPlaywright() int { - pv := strings.TrimSpace(utils.ExecLine(false, "npm -s show playwright version")) + pv := strings.TrimSpace(utils.ExecLine(false, "npm --no-update-notifier -s show playwright version")) out := fetch(fmt.Sprintf("https://raw.githubusercontent.com/microsoft/playwright/v%s/packages/playwright-core/browsers.json", pv)) rev, err := strconv.ParseInt(gson.NewFrom(out).Get("browsers.0.revision").Str(), 10, 32) utils.E(err) diff --git a/lib/proto/accessibility.go b/lib/proto/accessibility.go index 22d00e9d..8ae4177e 100644 --- a/lib/proto/accessibility.go +++ b/lib/proto/accessibility.go @@ -341,6 +341,9 @@ type AccessibilityAXNode struct { // Role (optional) This `Node`'s role, whether explicit or implicit. Role *AccessibilityAXValue `json:"role,omitempty"` + // ChromeRole (optional) This `Node`'s Chrome raw role. + ChromeRole *AccessibilityAXValue `json:"chromeRole,omitempty"` + // Name (optional) The accessible name for this `Node`. Name *AccessibilityAXValue `json:"name,omitempty"` diff --git a/lib/proto/audits.go b/lib/proto/audits.go index 6ac8c46f..7bb045ac 100644 --- a/lib/proto/audits.go +++ b/lib/proto/audits.go @@ -525,14 +525,20 @@ const ( // AuditsAttributionReportingIssueTypePermissionPolicyDisabled enum const AuditsAttributionReportingIssueTypePermissionPolicyDisabled AuditsAttributionReportingIssueType = "PermissionPolicyDisabled" - // AuditsAttributionReportingIssueTypeAttributionSourceUntrustworthyOrigin enum const - AuditsAttributionReportingIssueTypeAttributionSourceUntrustworthyOrigin AuditsAttributionReportingIssueType = "AttributionSourceUntrustworthyOrigin" + // AuditsAttributionReportingIssueTypeUntrustworthyReportingOrigin enum const + AuditsAttributionReportingIssueTypeUntrustworthyReportingOrigin AuditsAttributionReportingIssueType = "UntrustworthyReportingOrigin" - // AuditsAttributionReportingIssueTypeAttributionUntrustworthyOrigin enum const - AuditsAttributionReportingIssueTypeAttributionUntrustworthyOrigin AuditsAttributionReportingIssueType = "AttributionUntrustworthyOrigin" + // AuditsAttributionReportingIssueTypeInsecureContext enum const + AuditsAttributionReportingIssueTypeInsecureContext AuditsAttributionReportingIssueType = "InsecureContext" // AuditsAttributionReportingIssueTypeInvalidHeader enum const AuditsAttributionReportingIssueTypeInvalidHeader AuditsAttributionReportingIssueType = "InvalidHeader" + + // AuditsAttributionReportingIssueTypeInvalidRegisterTriggerHeader enum const + AuditsAttributionReportingIssueTypeInvalidRegisterTriggerHeader AuditsAttributionReportingIssueType = "InvalidRegisterTriggerHeader" + + // AuditsAttributionReportingIssueTypeInvalidEligibleHeader enum const + AuditsAttributionReportingIssueTypeInvalidEligibleHeader AuditsAttributionReportingIssueType = "InvalidEligibleHeader" ) // AuditsAttributionReportingIssueDetails Details for issues around "Attribution Reporting API" usage. @@ -542,9 +548,6 @@ type AuditsAttributionReportingIssueDetails struct { // ViolationType ... ViolationType AuditsAttributionReportingIssueType `json:"violationType"` - // Frame (optional) ... - Frame *AuditsAffectedFrame `json:"frame,omitempty"` - // Request (optional) ... Request *AuditsAffectedRequest `json:"request,omitempty"` @@ -647,6 +650,9 @@ const ( // AuditsDeprecationIssueTypeEventPath enum const AuditsDeprecationIssueTypeEventPath AuditsDeprecationIssueType = "EventPath" + // AuditsDeprecationIssueTypeExpectCTHeader enum const + AuditsDeprecationIssueTypeExpectCTHeader AuditsDeprecationIssueType = "ExpectCTHeader" + // AuditsDeprecationIssueTypeGeolocationInsecureOrigin enum const AuditsDeprecationIssueTypeGeolocationInsecureOrigin AuditsDeprecationIssueType = "GeolocationInsecureOrigin" @@ -677,6 +683,12 @@ const ( // AuditsDeprecationIssueTypeMediaSourceDurationTruncatingBuffered enum const AuditsDeprecationIssueTypeMediaSourceDurationTruncatingBuffered AuditsDeprecationIssueType = "MediaSourceDurationTruncatingBuffered" + // AuditsDeprecationIssueTypeNavigateEventRestoreScroll enum const + AuditsDeprecationIssueTypeNavigateEventRestoreScroll AuditsDeprecationIssueType = "NavigateEventRestoreScroll" + + // AuditsDeprecationIssueTypeNavigateEventTransitionWhile enum const + AuditsDeprecationIssueTypeNavigateEventTransitionWhile AuditsDeprecationIssueType = "NavigateEventTransitionWhile" + // AuditsDeprecationIssueTypeNoSysexWebMIDIWithoutPermission enum const AuditsDeprecationIssueTypeNoSysexWebMIDIWithoutPermission AuditsDeprecationIssueType = "NoSysexWebMIDIWithoutPermission" @@ -692,6 +704,12 @@ const ( // AuditsDeprecationIssueTypeOpenWebDatabaseInsecureContext enum const AuditsDeprecationIssueTypeOpenWebDatabaseInsecureContext AuditsDeprecationIssueType = "OpenWebDatabaseInsecureContext" + // AuditsDeprecationIssueTypeOverflowVisibleOnReplacedElement enum const + AuditsDeprecationIssueTypeOverflowVisibleOnReplacedElement AuditsDeprecationIssueType = "OverflowVisibleOnReplacedElement" + + // AuditsDeprecationIssueTypePersistentQuotaType enum const + AuditsDeprecationIssueTypePersistentQuotaType AuditsDeprecationIssueType = "PersistentQuotaType" + // AuditsDeprecationIssueTypePictureSourceSrc enum const AuditsDeprecationIssueTypePictureSourceSrc AuditsDeprecationIssueType = "PictureSourceSrc" diff --git a/lib/proto/css.go b/lib/proto/css.go index 1c88dc31..8c228dda 100644 --- a/lib/proto/css.go +++ b/lib/proto/css.go @@ -798,6 +798,9 @@ type CSSGetMatchedStylesForNodeResult struct { // CSSKeyframesRules (optional) A list of CSS keyframed animations matching this node. CSSKeyframesRules []*CSSCSSKeyframesRule `json:"cssKeyframesRules,omitempty"` + + // ParentLayoutNodeID (experimental) (optional) Id of the first parent element that does not have display: contents. + ParentLayoutNodeID DOMNodeID `json:"parentLayoutNodeId,omitempty"` } // CSSGetMediaQueries Returns all media queries parsed by the rendering engine. @@ -1073,6 +1076,35 @@ type CSSSetSupportsTextResult struct { Supports *CSSCSSSupports `json:"supports"` } +// CSSSetScopeText (experimental) Modifies the expression of a scope at-rule. +type CSSSetScopeText struct { + + // StyleSheetID ... + StyleSheetID CSSStyleSheetID `json:"styleSheetId"` + + // Range ... + Range *CSSSourceRange `json:"range"` + + // Text ... + Text string `json:"text"` +} + +// ProtoReq name +func (m CSSSetScopeText) ProtoReq() string { return "CSS.setScopeText" } + +// Call the request +func (m CSSSetScopeText) Call(c Client) (*CSSSetScopeTextResult, error) { + var res CSSSetScopeTextResult + return &res, call(m.ProtoReq(), m, &res, c) +} + +// CSSSetScopeTextResult (experimental) ... +type CSSSetScopeTextResult struct { + + // Scope The resulting CSS Scope rule after modification. + Scope *CSSCSSScope `json:"scope"` +} + // CSSSetRuleSelector Modifies the rule selector. type CSSSetRuleSelector struct { diff --git a/lib/proto/debugger.go b/lib/proto/debugger.go index 4bba7876..24282597 100644 --- a/lib/proto/debugger.go +++ b/lib/proto/debugger.go @@ -189,6 +189,16 @@ type DebuggerBreakLocation struct { Type DebuggerBreakLocationType `json:"type,omitempty"` } +// DebuggerWasmDisassemblyChunk (experimental) ... +type DebuggerWasmDisassemblyChunk struct { + + // Lines The next chunk of disassembled lines. + Lines []string `json:"lines"` + + // BytecodeOffsets The bytecode offsets describing the start of each line. + BytecodeOffsets []int `json:"bytecodeOffsets"` +} + // DebuggerScriptLanguage Enum of possible script languages. type DebuggerScriptLanguage string @@ -403,6 +413,68 @@ type DebuggerGetScriptSourceResult struct { Bytecode []byte `json:"bytecode,omitempty"` } +// DebuggerDisassembleWasmModule (experimental) ... +type DebuggerDisassembleWasmModule struct { + + // ScriptID Id of the script to disassemble + ScriptID RuntimeScriptID `json:"scriptId"` +} + +// ProtoReq name +func (m DebuggerDisassembleWasmModule) ProtoReq() string { return "Debugger.disassembleWasmModule" } + +// Call the request +func (m DebuggerDisassembleWasmModule) Call(c Client) (*DebuggerDisassembleWasmModuleResult, error) { + var res DebuggerDisassembleWasmModuleResult + return &res, call(m.ProtoReq(), m, &res, c) +} + +// DebuggerDisassembleWasmModuleResult (experimental) ... +type DebuggerDisassembleWasmModuleResult struct { + + // StreamID (optional) For large modules, return a stream from which additional chunks of + // disassembly can be read successively. + StreamID string `json:"streamId,omitempty"` + + // TotalNumberOfLines The total number of lines in the disassembly text. + TotalNumberOfLines int `json:"totalNumberOfLines"` + + // FunctionBodyOffsets The offsets of all function bodies, in the format [start1, end1, + // start2, end2, ...] where all ends are exclusive. + FunctionBodyOffsets []int `json:"functionBodyOffsets"` + + // Chunk The first chunk of disassembly. + Chunk *DebuggerWasmDisassemblyChunk `json:"chunk"` +} + +// DebuggerNextWasmDisassemblyChunk (experimental) Disassemble the next chunk of lines for the module corresponding to the +// stream. If disassembly is complete, this API will invalidate the streamId +// and return an empty chunk. Any subsequent calls for the now invalid stream +// will return errors. +type DebuggerNextWasmDisassemblyChunk struct { + + // StreamID ... + StreamID string `json:"streamId"` +} + +// ProtoReq name +func (m DebuggerNextWasmDisassemblyChunk) ProtoReq() string { + return "Debugger.nextWasmDisassemblyChunk" +} + +// Call the request +func (m DebuggerNextWasmDisassemblyChunk) Call(c Client) (*DebuggerNextWasmDisassemblyChunkResult, error) { + var res DebuggerNextWasmDisassemblyChunkResult + return &res, call(m.ProtoReq(), m, &res, c) +} + +// DebuggerNextWasmDisassemblyChunkResult (experimental) ... +type DebuggerNextWasmDisassemblyChunkResult struct { + + // Chunk The next chunk of disassembly. + Chunk *DebuggerWasmDisassemblyChunk `json:"chunk"` +} + // DebuggerGetWasmBytecode (deprecated) This command is deprecated. Use getScriptSource instead. type DebuggerGetWasmBytecode struct { diff --git a/lib/proto/definitions.go b/lib/proto/definitions.go index 1dca8cc1..cefccb46 100644 --- a/lib/proto/definitions.go +++ b/lib/proto/definitions.go @@ -182,6 +182,8 @@ var types = map[string]reflect.Type{ "CSS.setContainerQueryTextResult": reflect.TypeOf(CSSSetContainerQueryTextResult{}), "CSS.setSupportsText": reflect.TypeOf(CSSSetSupportsText{}), "CSS.setSupportsTextResult": reflect.TypeOf(CSSSetSupportsTextResult{}), + "CSS.setScopeText": reflect.TypeOf(CSSSetScopeText{}), + "CSS.setScopeTextResult": reflect.TypeOf(CSSSetScopeTextResult{}), "CSS.setRuleSelector": reflect.TypeOf(CSSSetRuleSelector{}), "CSS.setRuleSelectorResult": reflect.TypeOf(CSSSetRuleSelectorResult{}), "CSS.setStyleSheetText": reflect.TypeOf(CSSSetStyleSheetText{}), @@ -853,6 +855,7 @@ var types = map[string]reflect.Type{ "Storage.getStorageKeyForFrame": reflect.TypeOf(StorageGetStorageKeyForFrame{}), "Storage.getStorageKeyForFrameResult": reflect.TypeOf(StorageGetStorageKeyForFrameResult{}), "Storage.clearDataForOrigin": reflect.TypeOf(StorageClearDataForOrigin{}), + "Storage.clearDataForStorageKey": reflect.TypeOf(StorageClearDataForStorageKey{}), "Storage.getCookies": reflect.TypeOf(StorageGetCookies{}), "Storage.getCookiesResult": reflect.TypeOf(StorageGetCookiesResult{}), "Storage.setCookies": reflect.TypeOf(StorageSetCookies{}), @@ -862,8 +865,10 @@ var types = map[string]reflect.Type{ "Storage.overrideQuotaForOrigin": reflect.TypeOf(StorageOverrideQuotaForOrigin{}), "Storage.trackCacheStorageForOrigin": reflect.TypeOf(StorageTrackCacheStorageForOrigin{}), "Storage.trackIndexedDBForOrigin": reflect.TypeOf(StorageTrackIndexedDBForOrigin{}), + "Storage.trackIndexedDBForStorageKey": reflect.TypeOf(StorageTrackIndexedDBForStorageKey{}), "Storage.untrackCacheStorageForOrigin": reflect.TypeOf(StorageUntrackCacheStorageForOrigin{}), "Storage.untrackIndexedDBForOrigin": reflect.TypeOf(StorageUntrackIndexedDBForOrigin{}), + "Storage.untrackIndexedDBForStorageKey": reflect.TypeOf(StorageUntrackIndexedDBForStorageKey{}), "Storage.getTrustTokens": reflect.TypeOf(StorageGetTrustTokens{}), "Storage.getTrustTokensResult": reflect.TypeOf(StorageGetTrustTokensResult{}), "Storage.clearTrustTokens": reflect.TypeOf(StorageClearTrustTokens{}), @@ -888,6 +893,7 @@ var types = map[string]reflect.Type{ "SystemInfo.getProcessInfo": reflect.TypeOf(SystemInfoGetProcessInfo{}), "SystemInfo.getProcessInfoResult": reflect.TypeOf(SystemInfoGetProcessInfoResult{}), "Target.TargetInfo": reflect.TypeOf(TargetTargetInfo{}), + "Target.FilterEntry": reflect.TypeOf(TargetFilterEntry{}), "Target.RemoteLocation": reflect.TypeOf(TargetRemoteLocation{}), "Target.activateTarget": reflect.TypeOf(TargetActivateTarget{}), "Target.attachToTarget": reflect.TypeOf(TargetAttachToTarget{}), @@ -1014,6 +1020,7 @@ var types = map[string]reflect.Type{ "Debugger.Scope": reflect.TypeOf(DebuggerScope{}), "Debugger.SearchMatch": reflect.TypeOf(DebuggerSearchMatch{}), "Debugger.BreakLocation": reflect.TypeOf(DebuggerBreakLocation{}), + "Debugger.WasmDisassemblyChunk": reflect.TypeOf(DebuggerWasmDisassemblyChunk{}), "Debugger.DebugSymbols": reflect.TypeOf(DebuggerDebugSymbols{}), "Debugger.continueToLocation": reflect.TypeOf(DebuggerContinueToLocation{}), "Debugger.disable": reflect.TypeOf(DebuggerDisable{}), @@ -1025,6 +1032,10 @@ var types = map[string]reflect.Type{ "Debugger.getPossibleBreakpointsResult": reflect.TypeOf(DebuggerGetPossibleBreakpointsResult{}), "Debugger.getScriptSource": reflect.TypeOf(DebuggerGetScriptSource{}), "Debugger.getScriptSourceResult": reflect.TypeOf(DebuggerGetScriptSourceResult{}), + "Debugger.disassembleWasmModule": reflect.TypeOf(DebuggerDisassembleWasmModule{}), + "Debugger.disassembleWasmModuleResult": reflect.TypeOf(DebuggerDisassembleWasmModuleResult{}), + "Debugger.nextWasmDisassemblyChunk": reflect.TypeOf(DebuggerNextWasmDisassemblyChunk{}), + "Debugger.nextWasmDisassemblyChunkResult": reflect.TypeOf(DebuggerNextWasmDisassemblyChunkResult{}), "Debugger.getWasmBytecode": reflect.TypeOf(DebuggerGetWasmBytecode{}), "Debugger.getWasmBytecodeResult": reflect.TypeOf(DebuggerGetWasmBytecodeResult{}), "Debugger.getStackTrace": reflect.TypeOf(DebuggerGetStackTrace{}), diff --git a/lib/proto/definitions_test.go b/lib/proto/definitions_test.go index 51736856..5ee9bbb4 100644 --- a/lib/proto/definitions_test.go +++ b/lib/proto/definitions_test.go @@ -440,6 +440,12 @@ func (t T) CSSSetSupportsText() { t.Nil(err) } +func (t T) CSSSetScopeText() { + c := &Client{} + _, err := proto.CSSSetScopeText{}.Call(c) + t.Nil(err) +} + func (t T) CSSSetRuleSelector() { c := &Client{} _, err := proto.CSSSetRuleSelector{}.Call(c) @@ -2891,6 +2897,12 @@ func (t T) StorageClearDataForOrigin() { t.Nil(err) } +func (t T) StorageClearDataForStorageKey() { + c := &Client{} + err := proto.StorageClearDataForStorageKey{}.Call(c) + t.Nil(err) +} + func (t T) StorageGetCookies() { c := &Client{} _, err := proto.StorageGetCookies{}.Call(c) @@ -2933,6 +2945,12 @@ func (t T) StorageTrackIndexedDBForOrigin() { t.Nil(err) } +func (t T) StorageTrackIndexedDBForStorageKey() { + c := &Client{} + err := proto.StorageTrackIndexedDBForStorageKey{}.Call(c) + t.Nil(err) +} + func (t T) StorageUntrackCacheStorageForOrigin() { c := &Client{} err := proto.StorageUntrackCacheStorageForOrigin{}.Call(c) @@ -2945,6 +2963,12 @@ func (t T) StorageUntrackIndexedDBForOrigin() { t.Nil(err) } +func (t T) StorageUntrackIndexedDBForStorageKey() { + c := &Client{} + err := proto.StorageUntrackIndexedDBForStorageKey{}.Call(c) + t.Nil(err) +} + func (t T) StorageGetTrustTokens() { c := &Client{} _, err := proto.StorageGetTrustTokens{}.Call(c) @@ -3514,6 +3538,18 @@ func (t T) DebuggerGetScriptSource() { t.Nil(err) } +func (t T) DebuggerDisassembleWasmModule() { + c := &Client{} + _, err := proto.DebuggerDisassembleWasmModule{}.Call(c) + t.Nil(err) +} + +func (t T) DebuggerNextWasmDisassemblyChunk() { + c := &Client{} + _, err := proto.DebuggerNextWasmDisassemblyChunk{}.Call(c) + t.Nil(err) +} + func (t T) DebuggerGetWasmBytecode() { c := &Client{} _, err := proto.DebuggerGetWasmBytecode{}.Call(c) diff --git a/lib/proto/indexed_db.go b/lib/proto/indexed_db.go index f682604e..f1e17657 100644 --- a/lib/proto/indexed_db.go +++ b/lib/proto/indexed_db.go @@ -149,8 +149,12 @@ type IndexedDBKeyPath struct { // IndexedDBClearObjectStore Clears all entries from an object store. type IndexedDBClearObjectStore struct { - // SecurityOrigin Security origin. - SecurityOrigin string `json:"securityOrigin"` + // SecurityOrigin (optional) At least and at most one of securityOrigin, storageKey must be specified. + // Security origin. + SecurityOrigin string `json:"securityOrigin,omitempty"` + + // StorageKey (optional) Storage key. + StorageKey string `json:"storageKey,omitempty"` // DatabaseName Database name. DatabaseName string `json:"databaseName"` @@ -170,8 +174,12 @@ func (m IndexedDBClearObjectStore) Call(c Client) error { // IndexedDBDeleteDatabase Deletes a database. type IndexedDBDeleteDatabase struct { - // SecurityOrigin Security origin. - SecurityOrigin string `json:"securityOrigin"` + // SecurityOrigin (optional) At least and at most one of securityOrigin, storageKey must be specified. + // Security origin. + SecurityOrigin string `json:"securityOrigin,omitempty"` + + // StorageKey (optional) Storage key. + StorageKey string `json:"storageKey,omitempty"` // DatabaseName Database name. DatabaseName string `json:"databaseName"` @@ -188,8 +196,12 @@ func (m IndexedDBDeleteDatabase) Call(c Client) error { // IndexedDBDeleteObjectStoreEntries Delete a range of entries from an object store type IndexedDBDeleteObjectStoreEntries struct { - // SecurityOrigin ... - SecurityOrigin string `json:"securityOrigin"` + // SecurityOrigin (optional) At least and at most one of securityOrigin, storageKey must be specified. + // Security origin. + SecurityOrigin string `json:"securityOrigin,omitempty"` + + // StorageKey (optional) Storage key. + StorageKey string `json:"storageKey,omitempty"` // DatabaseName ... DatabaseName string `json:"databaseName"` @@ -238,8 +250,12 @@ func (m IndexedDBEnable) Call(c Client) error { // IndexedDBRequestData Requests data from object store or index. type IndexedDBRequestData struct { - // SecurityOrigin Security origin. - SecurityOrigin string `json:"securityOrigin"` + // SecurityOrigin (optional) At least and at most one of securityOrigin, storageKey must be specified. + // Security origin. + SecurityOrigin string `json:"securityOrigin,omitempty"` + + // StorageKey (optional) Storage key. + StorageKey string `json:"storageKey,omitempty"` // DatabaseName Database name. DatabaseName string `json:"databaseName"` @@ -282,8 +298,12 @@ type IndexedDBRequestDataResult struct { // IndexedDBGetMetadata Gets metadata of an object store type IndexedDBGetMetadata struct { - // SecurityOrigin Security origin. - SecurityOrigin string `json:"securityOrigin"` + // SecurityOrigin (optional) At least and at most one of securityOrigin, storageKey must be specified. + // Security origin. + SecurityOrigin string `json:"securityOrigin,omitempty"` + + // StorageKey (optional) Storage key. + StorageKey string `json:"storageKey,omitempty"` // DatabaseName Database name. DatabaseName string `json:"databaseName"` @@ -316,8 +336,12 @@ type IndexedDBGetMetadataResult struct { // IndexedDBRequestDatabase Requests database with given name in given frame. type IndexedDBRequestDatabase struct { - // SecurityOrigin Security origin. - SecurityOrigin string `json:"securityOrigin"` + // SecurityOrigin (optional) At least and at most one of securityOrigin, storageKey must be specified. + // Security origin. + SecurityOrigin string `json:"securityOrigin,omitempty"` + + // StorageKey (optional) Storage key. + StorageKey string `json:"storageKey,omitempty"` // DatabaseName Database name. DatabaseName string `json:"databaseName"` diff --git a/lib/proto/network.go b/lib/proto/network.go index bc2fa3c8..7d7d5ebd 100644 --- a/lib/proto/network.go +++ b/lib/proto/network.go @@ -46,6 +46,9 @@ const ( // NetworkResourceTypeFetch enum const NetworkResourceTypeFetch NetworkResourceType = "Fetch" + // NetworkResourceTypePrefetch enum const + NetworkResourceTypePrefetch NetworkResourceType = "Prefetch" + // NetworkResourceTypeEventSource enum const NetworkResourceTypeEventSource NetworkResourceType = "EventSource" @@ -438,6 +441,14 @@ type NetworkSecurityDetails struct { // CertificateTransparencyCompliance Whether the request complied with Certificate Transparency policy CertificateTransparencyCompliance NetworkCertificateTransparencyCompliance `json:"certificateTransparencyCompliance"` + + // ServerSignatureAlgorithm (optional) The signature algorithm used by the server in the TLS server signature, + // represented as a TLS SignatureScheme code point. Omitted if not + // applicable or not known. + ServerSignatureAlgorithm *int `json:"serverSignatureAlgorithm,omitempty"` + + // EncryptedClientHello Whether the connection used Encrypted ClientHello + EncryptedClientHello bool `json:"encryptedClientHello"` } // NetworkCertificateTransparencyCompliance Whether the request complied with Certificate Transparency policy. diff --git a/lib/proto/page.go b/lib/proto/page.go index f5114ced..4be38154 100644 --- a/lib/proto/page.go +++ b/lib/proto/page.go @@ -302,6 +302,9 @@ const ( // PagePermissionsPolicyFeatureSharedAutofill enum const PagePermissionsPolicyFeatureSharedAutofill PagePermissionsPolicyFeature = "shared-autofill" + // PagePermissionsPolicyFeatureSharedStorage enum const + PagePermissionsPolicyFeatureSharedStorage PagePermissionsPolicyFeature = "shared-storage" + // PagePermissionsPolicyFeatureStorageAccessAPI enum const PagePermissionsPolicyFeatureStorageAccessAPI PagePermissionsPolicyFeature = "storage-access-api" @@ -1454,6 +1457,12 @@ const ( // PagePrerenderFinalStatusEmbedderTriggeredAndDestroyed enum const PagePrerenderFinalStatusEmbedderTriggeredAndDestroyed PagePrerenderFinalStatus = "EmbedderTriggeredAndDestroyed" + + // PagePrerenderFinalStatusMemoryLimitExceeded enum const + PagePrerenderFinalStatusMemoryLimitExceeded PagePrerenderFinalStatus = "MemoryLimitExceeded" + + // PagePrerenderFinalStatusFailToGetMemoryUsage enum const + PagePrerenderFinalStatusFailToGetMemoryUsage PagePrerenderFinalStatus = "FailToGetMemoryUsage" ) // PageAddScriptToEvaluateOnLoad (deprecated) (experimental) Deprecated, please use addScriptToEvaluateOnNewDocument instead. diff --git a/lib/proto/storage.go b/lib/proto/storage.go index 48370f2b..0e1455a3 100644 --- a/lib/proto/storage.go +++ b/lib/proto/storage.go @@ -184,6 +184,24 @@ func (m StorageClearDataForOrigin) Call(c Client) error { return call(m.ProtoReq(), m, nil, c) } +// StorageClearDataForStorageKey Clears storage for storage key. +type StorageClearDataForStorageKey struct { + + // StorageKey Storage key. + StorageKey string `json:"storageKey"` + + // StorageTypes Comma separated list of StorageType to clear. + StorageTypes string `json:"storageTypes"` +} + +// ProtoReq name +func (m StorageClearDataForStorageKey) ProtoReq() string { return "Storage.clearDataForStorageKey" } + +// Call sends the request +func (m StorageClearDataForStorageKey) Call(c Client) error { + return call(m.ProtoReq(), m, nil, c) +} + // StorageGetCookies Returns all browser cookies. type StorageGetCookies struct { @@ -328,6 +346,23 @@ func (m StorageTrackIndexedDBForOrigin) Call(c Client) error { return call(m.ProtoReq(), m, nil, c) } +// StorageTrackIndexedDBForStorageKey Registers storage key to be notified when an update occurs to its IndexedDB. +type StorageTrackIndexedDBForStorageKey struct { + + // StorageKey Storage key. + StorageKey string `json:"storageKey"` +} + +// ProtoReq name +func (m StorageTrackIndexedDBForStorageKey) ProtoReq() string { + return "Storage.trackIndexedDBForStorageKey" +} + +// Call sends the request +func (m StorageTrackIndexedDBForStorageKey) Call(c Client) error { + return call(m.ProtoReq(), m, nil, c) +} + // StorageUntrackCacheStorageForOrigin Unregisters origin from receiving notifications for cache storage. type StorageUntrackCacheStorageForOrigin struct { @@ -362,6 +397,23 @@ func (m StorageUntrackIndexedDBForOrigin) Call(c Client) error { return call(m.ProtoReq(), m, nil, c) } +// StorageUntrackIndexedDBForStorageKey Unregisters storage key from receiving notifications for IndexedDB. +type StorageUntrackIndexedDBForStorageKey struct { + + // StorageKey Storage key. + StorageKey string `json:"storageKey"` +} + +// ProtoReq name +func (m StorageUntrackIndexedDBForStorageKey) ProtoReq() string { + return "Storage.untrackIndexedDBForStorageKey" +} + +// Call sends the request +func (m StorageUntrackIndexedDBForStorageKey) Call(c Client) error { + return call(m.ProtoReq(), m, nil, c) +} + // StorageGetTrustTokens (experimental) Returns the number of stored Trust Tokens per issuer for the // current browsing context. type StorageGetTrustTokens struct { @@ -481,6 +533,9 @@ type StorageIndexedDBContentUpdated struct { // Origin Origin to update. Origin string `json:"origin"` + // StorageKey Storage key to update. + StorageKey string `json:"storageKey"` + // DatabaseName Database to update. DatabaseName string `json:"databaseName"` @@ -498,6 +553,9 @@ type StorageIndexedDBListUpdated struct { // Origin Origin to update. Origin string `json:"origin"` + + // StorageKey Storage key to update. + StorageKey string `json:"storageKey"` } // ProtoEvent name diff --git a/lib/proto/target.go b/lib/proto/target.go index 49f1b2fe..2b1aebae 100644 --- a/lib/proto/target.go +++ b/lib/proto/target.go @@ -70,6 +70,24 @@ type TargetTargetInfo struct { BrowserContextID BrowserBrowserContextID `json:"browserContextId,omitempty"` } +// TargetFilterEntry (experimental) A filter used by target query/discovery/auto-attach operations. +type TargetFilterEntry struct { + + // Exclude (optional) If set, causes exclusion of mathcing targets from the list. + Exclude bool `json:"exclude,omitempty"` + + // Type (optional) If not present, matches any type. + Type string `json:"type,omitempty"` +} + +// TargetTargetFilter (experimental) The entries in TargetFilter are matched sequentially against targets and +// the first entry that matches determines if the target is included or not, +// depending on the value of `exclude` field in the entry. +// If filter is not specified, the one assumed is +// [{type: "browser", exclude: true}, {type: "tab", exclude: true}, {}] +// (i.e. include everything but `browser` and `tab`). +type TargetTargetFilter []*TargetFilterEntry + // TargetRemoteLocation (experimental) ... type TargetRemoteLocation struct { @@ -347,6 +365,11 @@ type TargetGetTargetInfoResult struct { // TargetGetTargets Retrieves a list of available targets. type TargetGetTargets struct { + + // Filter (experimental) (optional) Only targets matching filter will be reported. If filter is not specified + // and target discovery is currently enabled, a filter used for target discovery + // is used for consistency. + Filter TargetTargetFilter `json:"filter,omitempty"` } // ProtoReq name @@ -406,6 +429,9 @@ type TargetSetAutoAttach struct { // We plan to make this the default, deprecate non-flattened mode, // and eventually retire it. See crbug.com/991325. Flatten bool `json:"flatten,omitempty"` + + // Filter (experimental) (optional) Only targets matching filter will be attached. + Filter TargetTargetFilter `json:"filter,omitempty"` } // ProtoReq name @@ -429,6 +455,9 @@ type TargetAutoAttachRelated struct { // WaitForDebuggerOnStart Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger` // to run paused targets. WaitForDebuggerOnStart bool `json:"waitForDebuggerOnStart"` + + // Filter (experimental) (optional) Only targets matching filter will be attached. + Filter TargetTargetFilter `json:"filter,omitempty"` } // ProtoReq name @@ -445,6 +474,10 @@ type TargetSetDiscoverTargets struct { // Discover Whether to discover available targets. Discover bool `json:"discover"` + + // Filter (experimental) (optional) Only targets matching filter will be attached. If `discover` is false, + // `filter` must be omitted or empty. + Filter TargetTargetFilter `json:"filter,omitempty"` } // ProtoReq name