package cdp import ( "context" "errors" "fmt" "strconv" "strings" "sync" "time" "github.com/knq/sysutil" "github.com/mailru/easyjson" "github.com/mailru/easyjson/jlexer" "github.com/mailru/easyjson/jwriter" ) // Code generated by chromedp-gen. DO NOT EDIT. // NodeID unique DOM node identifier. type NodeID int64 // Int64 returns the NodeID as int64 value. func (t NodeID) Int64() int64 { return int64(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *NodeID) UnmarshalEasyJSON(in *jlexer.Lexer) { buf := in.Raw() if l := len(buf); l > 2 && buf[0] == '"' && buf[l-1] == '"' { buf = buf[1 : l-1] } v, err := strconv.ParseInt(string(buf), 10, 64) if err != nil { in.AddError(err) } *t = NodeID(v) } // UnmarshalJSON satisfies json.Unmarshaler. func (t *NodeID) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // BackendNodeID unique DOM node identifier used to reference a node that may // not have been pushed to the front-end. type BackendNodeID int64 // Int64 returns the BackendNodeID as int64 value. func (t BackendNodeID) Int64() int64 { return int64(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *BackendNodeID) UnmarshalEasyJSON(in *jlexer.Lexer) { buf := in.Raw() if l := len(buf); l > 2 && buf[0] == '"' && buf[l-1] == '"' { buf = buf[1 : l-1] } v, err := strconv.ParseInt(string(buf), 10, 64) if err != nil { in.AddError(err) } *t = BackendNodeID(v) } // UnmarshalJSON satisfies json.Unmarshaler. func (t *BackendNodeID) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // BackendNode backend node with a friendly name. type BackendNode struct { NodeType NodeType `json:"nodeType"` // Node's nodeType. NodeName string `json:"nodeName"` // Node's nodeName. BackendNodeID BackendNodeID `json:"backendNodeId"` } // PseudoType pseudo element type. type PseudoType string // String returns the PseudoType as string value. func (t PseudoType) String() string { return string(t) } // PseudoType values. const ( PseudoTypeFirstLine PseudoType = "first-line" PseudoTypeFirstLetter PseudoType = "first-letter" PseudoTypeBefore PseudoType = "before" PseudoTypeAfter PseudoType = "after" PseudoTypeBackdrop PseudoType = "backdrop" PseudoTypeSelection PseudoType = "selection" PseudoTypeFirstLineInherited PseudoType = "first-line-inherited" PseudoTypeScrollbar PseudoType = "scrollbar" PseudoTypeScrollbarThumb PseudoType = "scrollbar-thumb" PseudoTypeScrollbarButton PseudoType = "scrollbar-button" PseudoTypeScrollbarTrack PseudoType = "scrollbar-track" PseudoTypeScrollbarTrackPiece PseudoType = "scrollbar-track-piece" PseudoTypeScrollbarCorner PseudoType = "scrollbar-corner" PseudoTypeResizer PseudoType = "resizer" PseudoTypeInputListButton PseudoType = "input-list-button" ) // MarshalEasyJSON satisfies easyjson.Marshaler. func (t PseudoType) MarshalEasyJSON(out *jwriter.Writer) { out.String(string(t)) } // MarshalJSON satisfies json.Marshaler. func (t PseudoType) MarshalJSON() ([]byte, error) { return easyjson.Marshal(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *PseudoType) UnmarshalEasyJSON(in *jlexer.Lexer) { switch PseudoType(in.String()) { case PseudoTypeFirstLine: *t = PseudoTypeFirstLine case PseudoTypeFirstLetter: *t = PseudoTypeFirstLetter case PseudoTypeBefore: *t = PseudoTypeBefore case PseudoTypeAfter: *t = PseudoTypeAfter case PseudoTypeBackdrop: *t = PseudoTypeBackdrop case PseudoTypeSelection: *t = PseudoTypeSelection case PseudoTypeFirstLineInherited: *t = PseudoTypeFirstLineInherited case PseudoTypeScrollbar: *t = PseudoTypeScrollbar case PseudoTypeScrollbarThumb: *t = PseudoTypeScrollbarThumb case PseudoTypeScrollbarButton: *t = PseudoTypeScrollbarButton case PseudoTypeScrollbarTrack: *t = PseudoTypeScrollbarTrack case PseudoTypeScrollbarTrackPiece: *t = PseudoTypeScrollbarTrackPiece case PseudoTypeScrollbarCorner: *t = PseudoTypeScrollbarCorner case PseudoTypeResizer: *t = PseudoTypeResizer case PseudoTypeInputListButton: *t = PseudoTypeInputListButton default: in.AddError(errors.New("unknown PseudoType value")) } } // UnmarshalJSON satisfies json.Unmarshaler. func (t *PseudoType) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // ShadowRootType shadow root type. type ShadowRootType string // String returns the ShadowRootType as string value. func (t ShadowRootType) String() string { return string(t) } // ShadowRootType values. const ( ShadowRootTypeUserAgent ShadowRootType = "user-agent" ShadowRootTypeOpen ShadowRootType = "open" ShadowRootTypeClosed ShadowRootType = "closed" ) // MarshalEasyJSON satisfies easyjson.Marshaler. func (t ShadowRootType) MarshalEasyJSON(out *jwriter.Writer) { out.String(string(t)) } // MarshalJSON satisfies json.Marshaler. func (t ShadowRootType) MarshalJSON() ([]byte, error) { return easyjson.Marshal(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *ShadowRootType) UnmarshalEasyJSON(in *jlexer.Lexer) { switch ShadowRootType(in.String()) { case ShadowRootTypeUserAgent: *t = ShadowRootTypeUserAgent case ShadowRootTypeOpen: *t = ShadowRootTypeOpen case ShadowRootTypeClosed: *t = ShadowRootTypeClosed default: in.AddError(errors.New("unknown ShadowRootType value")) } } // UnmarshalJSON satisfies json.Unmarshaler. func (t *ShadowRootType) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // Node DOM interaction is implemented in terms of mirror objects that // represent the actual DOM nodes. DOMNode is a base node mirror type. type Node struct { NodeID NodeID `json:"nodeId"` // Node identifier that is passed into the rest of the DOM messages as the nodeId. Backend will only push node with given id once. It is aware of all requested nodes and will only fire DOM events for nodes known to the client. ParentID NodeID `json:"parentId,omitempty"` // The id of the parent node if any. BackendNodeID BackendNodeID `json:"backendNodeId"` // The BackendNodeId for this node. NodeType NodeType `json:"nodeType"` // Node's nodeType. NodeName string `json:"nodeName"` // Node's nodeName. LocalName string `json:"localName"` // Node's localName. NodeValue string `json:"nodeValue"` // Node's nodeValue. ChildNodeCount int64 `json:"childNodeCount,omitempty"` // Child count for Container nodes. Children []*Node `json:"children,omitempty"` // Child nodes of this node when requested with children. Attributes []string `json:"attributes,omitempty"` // Attributes of the Element node in the form of flat array [name1, value1, name2, value2]. DocumentURL string `json:"documentURL,omitempty"` // Document URL that Document or FrameOwner node points to. BaseURL string `json:"baseURL,omitempty"` // Base URL that Document or FrameOwner node uses for URL completion. PublicID string `json:"publicId,omitempty"` // DocumentType's publicId. SystemID string `json:"systemId,omitempty"` // DocumentType's systemId. InternalSubset string `json:"internalSubset,omitempty"` // DocumentType's internalSubset. XMLVersion string `json:"xmlVersion,omitempty"` // Document's XML version in case of XML documents. Name string `json:"name,omitempty"` // Attr's name. Value string `json:"value,omitempty"` // Attr's value. PseudoType PseudoType `json:"pseudoType,omitempty"` // Pseudo element type for this node. ShadowRootType ShadowRootType `json:"shadowRootType,omitempty"` // Shadow root type. FrameID FrameID `json:"frameId,omitempty"` // Frame ID for frame owner elements. ContentDocument *Node `json:"contentDocument,omitempty"` // Content document for frame owner elements. ShadowRoots []*Node `json:"shadowRoots,omitempty"` // Shadow root list for given element host. TemplateContent *Node `json:"templateContent,omitempty"` // Content document fragment for template elements. PseudoElements []*Node `json:"pseudoElements,omitempty"` // Pseudo elements associated with this node. ImportedDocument *Node `json:"importedDocument,omitempty"` // Import document for the HTMLImport links. DistributedNodes []*BackendNode `json:"distributedNodes,omitempty"` // Distributed nodes for given insertion point. IsSVG bool `json:"isSVG,omitempty"` // Whether the node is SVG. Parent *Node `json:"-"` // Parent node. Invalidated chan struct{} `json:"-"` // Invalidated channel. State NodeState `json:"-"` // Node state. sync.RWMutex `json:"-"` // Read write mutex. } // AttributeValue returns the named attribute for the node. func (n *Node) AttributeValue(name string) string { n.RLock() defer n.RUnlock() for i := 0; i < len(n.Attributes); i += 2 { if n.Attributes[i] == name { return n.Attributes[i+1] } } return "" } // xpath builds the xpath string. func (n *Node) xpath(stopAtDocument, stopAtID bool) string { n.RLock() defer n.RUnlock() p := "" pos := "" id := n.AttributeValue("id") switch { case n.Parent == nil: return n.LocalName case stopAtDocument && n.NodeType == NodeTypeDocument: return "" case stopAtID && id != "": p = "/" pos = `[@id='` + id + `']` case n.Parent != nil: var i int var found bool n.Parent.RLock() for j := 0; j < len(n.Parent.Children); j++ { if n.Parent.Children[j].LocalName == n.LocalName { i++ } if n.Parent.Children[j].NodeID == n.NodeID { found = true break } } n.Parent.RUnlock() if found { pos = "[" + strconv.Itoa(i) + "]" } p = n.Parent.xpath(stopAtDocument, stopAtID) } return p + "/" + n.LocalName + pos } // PartialXPathByID returns the partial XPath for the node, stopping at the // first parent with an id attribute or at nearest parent document node. func (n *Node) PartialXPathByID() string { return n.xpath(true, true) } // PartialXPath returns the partial XPath for the node, stopping at the nearest // parent document node. func (n *Node) PartialXPath() string { return n.xpath(true, false) } // FullXPathByID returns the full XPath for the node, stopping at the top most // document root or at the closest parent node with an id attribute. func (n *Node) FullXPathByID() string { return n.xpath(false, true) } // FullXPath returns the full XPath for the node, stopping only at the top most // document root. func (n *Node) FullXPath() string { return n.xpath(false, false) } // NodeState is the state of a DOM node. type NodeState uint8 // NodeState enum values. const ( NodeReady NodeState = 1 << (7 - iota) NodeVisible NodeHighlighted ) // nodeStateNames are the names of the node states. var nodeStateNames = map[NodeState]string{ NodeReady: "Ready", NodeVisible: "Visible", NodeHighlighted: "Highlighted", } // String satisfies stringer interface. func (ns NodeState) String() string { var s []string for k, v := range nodeStateNames { if ns&k != 0 { s = append(s, v) } } return "[" + strings.Join(s, " ") + "]" } // EmptyNodeID is the "non-existent" node id. const EmptyNodeID = NodeID(0) // RGBA a structure holding an RGBA color. type RGBA struct { R int64 `json:"r"` // The red component, in the [0-255] range. G int64 `json:"g"` // The green component, in the [0-255] range. B int64 `json:"b"` // The blue component, in the [0-255] range. A float64 `json:"a,omitempty"` // The alpha component, in the [0-1] range (default: 1). } // NodeType node type. type NodeType int64 // Int64 returns the NodeType as int64 value. func (t NodeType) Int64() int64 { return int64(t) } // NodeType values. const ( NodeTypeElement NodeType = 1 NodeTypeAttribute NodeType = 2 NodeTypeText NodeType = 3 NodeTypeCDATA NodeType = 4 NodeTypeEntityReference NodeType = 5 NodeTypeEntity NodeType = 6 NodeTypeProcessingInstruction NodeType = 7 NodeTypeComment NodeType = 8 NodeTypeDocument NodeType = 9 NodeTypeDocumentType NodeType = 10 NodeTypeDocumentFragment NodeType = 11 NodeTypeNotation NodeType = 12 ) // String returns the NodeType as string value. func (t NodeType) String() string { switch t { case NodeTypeElement: return "Element" case NodeTypeAttribute: return "Attribute" case NodeTypeText: return "Text" case NodeTypeCDATA: return "CDATA" case NodeTypeEntityReference: return "EntityReference" case NodeTypeEntity: return "Entity" case NodeTypeProcessingInstruction: return "ProcessingInstruction" case NodeTypeComment: return "Comment" case NodeTypeDocument: return "Document" case NodeTypeDocumentType: return "DocumentType" case NodeTypeDocumentFragment: return "DocumentFragment" case NodeTypeNotation: return "Notation" } return fmt.Sprintf("NodeType(%d)", t) } // MarshalEasyJSON satisfies easyjson.Marshaler. func (t NodeType) MarshalEasyJSON(out *jwriter.Writer) { out.Int64(int64(t)) } // MarshalJSON satisfies json.Marshaler. func (t NodeType) MarshalJSON() ([]byte, error) { return easyjson.Marshal(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *NodeType) UnmarshalEasyJSON(in *jlexer.Lexer) { switch NodeType(in.Int64()) { case NodeTypeElement: *t = NodeTypeElement case NodeTypeAttribute: *t = NodeTypeAttribute case NodeTypeText: *t = NodeTypeText case NodeTypeCDATA: *t = NodeTypeCDATA case NodeTypeEntityReference: *t = NodeTypeEntityReference case NodeTypeEntity: *t = NodeTypeEntity case NodeTypeProcessingInstruction: *t = NodeTypeProcessingInstruction case NodeTypeComment: *t = NodeTypeComment case NodeTypeDocument: *t = NodeTypeDocument case NodeTypeDocumentType: *t = NodeTypeDocumentType case NodeTypeDocumentFragment: *t = NodeTypeDocumentFragment case NodeTypeNotation: *t = NodeTypeNotation default: in.AddError(errors.New("unknown NodeType value")) } } // UnmarshalJSON satisfies json.Unmarshaler. func (t *NodeType) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // MessageError message error type. type MessageError struct { Code int64 `json:"code"` // Error code. Message string `json:"message"` // Error message. } // Error satisfies error interface. func (e *MessageError) Error() string { return fmt.Sprintf("%s (%d)", e.Message, e.Code) } // Message chrome Debugging Protocol message sent to/read over websocket // connection. type Message struct { ID int64 `json:"id,omitempty"` // Unique message identifier. Method MethodType `json:"method,omitempty"` // Event or command type. Params easyjson.RawMessage `json:"params,omitempty"` // Event or command parameters. Result easyjson.RawMessage `json:"result,omitempty"` // Command return values. Error *MessageError `json:"error,omitempty"` // Error message. } // MethodType chrome Debugging Protocol method type (ie, event and command // names). type MethodType string // String returns the MethodType as string value. func (t MethodType) String() string { return string(t) } // MethodType values. const ( CommandAccessibilityGetPartialAXTree MethodType = "Accessibility.getPartialAXTree" EventAnimationAnimationCanceled MethodType = "Animation.animationCanceled" EventAnimationAnimationCreated MethodType = "Animation.animationCreated" EventAnimationAnimationStarted MethodType = "Animation.animationStarted" CommandAnimationDisable MethodType = "Animation.disable" CommandAnimationEnable MethodType = "Animation.enable" CommandAnimationGetCurrentTime MethodType = "Animation.getCurrentTime" CommandAnimationGetPlaybackRate MethodType = "Animation.getPlaybackRate" CommandAnimationReleaseAnimations MethodType = "Animation.releaseAnimations" CommandAnimationResolveAnimation MethodType = "Animation.resolveAnimation" CommandAnimationSeekAnimations MethodType = "Animation.seekAnimations" CommandAnimationSetPaused MethodType = "Animation.setPaused" CommandAnimationSetPlaybackRate MethodType = "Animation.setPlaybackRate" CommandAnimationSetTiming MethodType = "Animation.setTiming" EventApplicationCacheApplicationCacheStatusUpdated MethodType = "ApplicationCache.applicationCacheStatusUpdated" EventApplicationCacheNetworkStateUpdated MethodType = "ApplicationCache.networkStateUpdated" CommandApplicationCacheEnable MethodType = "ApplicationCache.enable" CommandApplicationCacheGetApplicationCacheForFrame MethodType = "ApplicationCache.getApplicationCacheForFrame" CommandApplicationCacheGetFramesWithManifests MethodType = "ApplicationCache.getFramesWithManifests" CommandApplicationCacheGetManifestForFrame MethodType = "ApplicationCache.getManifestForFrame" CommandAuditsGetEncodedResponse MethodType = "Audits.getEncodedResponse" CommandBrowserClose MethodType = "Browser.close" CommandBrowserGetVersion MethodType = "Browser.getVersion" CommandBrowserGetWindowBounds MethodType = "Browser.getWindowBounds" CommandBrowserGetWindowForTarget MethodType = "Browser.getWindowForTarget" CommandBrowserSetWindowBounds MethodType = "Browser.setWindowBounds" EventCSSFontsUpdated MethodType = "CSS.fontsUpdated" EventCSSMediaQueryResultChanged MethodType = "CSS.mediaQueryResultChanged" EventCSSStyleSheetAdded MethodType = "CSS.styleSheetAdded" EventCSSStyleSheetChanged MethodType = "CSS.styleSheetChanged" EventCSSStyleSheetRemoved MethodType = "CSS.styleSheetRemoved" CommandCSSAddRule MethodType = "CSS.addRule" CommandCSSCollectClassNames MethodType = "CSS.collectClassNames" CommandCSSCreateStyleSheet MethodType = "CSS.createStyleSheet" CommandCSSDisable MethodType = "CSS.disable" CommandCSSEnable MethodType = "CSS.enable" CommandCSSForcePseudoState MethodType = "CSS.forcePseudoState" CommandCSSGetBackgroundColors MethodType = "CSS.getBackgroundColors" CommandCSSGetComputedStyleForNode MethodType = "CSS.getComputedStyleForNode" CommandCSSGetInlineStylesForNode MethodType = "CSS.getInlineStylesForNode" CommandCSSGetMatchedStylesForNode MethodType = "CSS.getMatchedStylesForNode" CommandCSSGetMediaQueries MethodType = "CSS.getMediaQueries" CommandCSSGetPlatformFontsForNode MethodType = "CSS.getPlatformFontsForNode" CommandCSSGetStyleSheetText MethodType = "CSS.getStyleSheetText" CommandCSSSetEffectivePropertyValueForNode MethodType = "CSS.setEffectivePropertyValueForNode" CommandCSSSetKeyframeKey MethodType = "CSS.setKeyframeKey" CommandCSSSetMediaText MethodType = "CSS.setMediaText" CommandCSSSetRuleSelector MethodType = "CSS.setRuleSelector" CommandCSSSetStyleSheetText MethodType = "CSS.setStyleSheetText" CommandCSSSetStyleTexts MethodType = "CSS.setStyleTexts" CommandCSSStartRuleUsageTracking MethodType = "CSS.startRuleUsageTracking" CommandCSSStopRuleUsageTracking MethodType = "CSS.stopRuleUsageTracking" CommandCSSTakeCoverageDelta MethodType = "CSS.takeCoverageDelta" CommandCacheStorageDeleteCache MethodType = "CacheStorage.deleteCache" CommandCacheStorageDeleteEntry MethodType = "CacheStorage.deleteEntry" CommandCacheStorageRequestCacheNames MethodType = "CacheStorage.requestCacheNames" CommandCacheStorageRequestCachedResponse MethodType = "CacheStorage.requestCachedResponse" CommandCacheStorageRequestEntries MethodType = "CacheStorage.requestEntries" EventDOMAttributeModified MethodType = "DOM.attributeModified" EventDOMAttributeRemoved MethodType = "DOM.attributeRemoved" EventDOMCharacterDataModified MethodType = "DOM.characterDataModified" EventDOMChildNodeCountUpdated MethodType = "DOM.childNodeCountUpdated" EventDOMChildNodeInserted MethodType = "DOM.childNodeInserted" EventDOMChildNodeRemoved MethodType = "DOM.childNodeRemoved" EventDOMDistributedNodesUpdated MethodType = "DOM.distributedNodesUpdated" EventDOMDocumentUpdated MethodType = "DOM.documentUpdated" EventDOMInlineStyleInvalidated MethodType = "DOM.inlineStyleInvalidated" EventDOMPseudoElementAdded MethodType = "DOM.pseudoElementAdded" EventDOMPseudoElementRemoved MethodType = "DOM.pseudoElementRemoved" EventDOMSetChildNodes MethodType = "DOM.setChildNodes" EventDOMShadowRootPopped MethodType = "DOM.shadowRootPopped" EventDOMShadowRootPushed MethodType = "DOM.shadowRootPushed" CommandDOMCollectClassNamesFromSubtree MethodType = "DOM.collectClassNamesFromSubtree" CommandDOMCopyTo MethodType = "DOM.copyTo" CommandDOMDescribeNode MethodType = "DOM.describeNode" CommandDOMDisable MethodType = "DOM.disable" CommandDOMDiscardSearchResults MethodType = "DOM.discardSearchResults" CommandDOMEnable MethodType = "DOM.enable" CommandDOMFocus MethodType = "DOM.focus" CommandDOMGetAttributes MethodType = "DOM.getAttributes" CommandDOMGetBoxModel MethodType = "DOM.getBoxModel" CommandDOMGetDocument MethodType = "DOM.getDocument" CommandDOMGetFlattenedDocument MethodType = "DOM.getFlattenedDocument" CommandDOMGetNodeForLocation MethodType = "DOM.getNodeForLocation" CommandDOMGetOuterHTML MethodType = "DOM.getOuterHTML" CommandDOMGetRelayoutBoundary MethodType = "DOM.getRelayoutBoundary" CommandDOMGetSearchResults MethodType = "DOM.getSearchResults" CommandDOMMarkUndoableState MethodType = "DOM.markUndoableState" CommandDOMMoveTo MethodType = "DOM.moveTo" CommandDOMPerformSearch MethodType = "DOM.performSearch" CommandDOMPushNodeByPathToFrontend MethodType = "DOM.pushNodeByPathToFrontend" CommandDOMPushNodesByBackendIdsToFrontend MethodType = "DOM.pushNodesByBackendIdsToFrontend" CommandDOMQuerySelector MethodType = "DOM.querySelector" CommandDOMQuerySelectorAll MethodType = "DOM.querySelectorAll" CommandDOMRedo MethodType = "DOM.redo" CommandDOMRemoveAttribute MethodType = "DOM.removeAttribute" CommandDOMRemoveNode MethodType = "DOM.removeNode" CommandDOMRequestChildNodes MethodType = "DOM.requestChildNodes" CommandDOMRequestNode MethodType = "DOM.requestNode" CommandDOMResolveNode MethodType = "DOM.resolveNode" CommandDOMSetAttributeValue MethodType = "DOM.setAttributeValue" CommandDOMSetAttributesAsText MethodType = "DOM.setAttributesAsText" CommandDOMSetFileInputFiles MethodType = "DOM.setFileInputFiles" CommandDOMSetInspectedNode MethodType = "DOM.setInspectedNode" CommandDOMSetNodeName MethodType = "DOM.setNodeName" CommandDOMSetNodeValue MethodType = "DOM.setNodeValue" CommandDOMSetOuterHTML MethodType = "DOM.setOuterHTML" CommandDOMUndo MethodType = "DOM.undo" CommandDOMDebuggerGetEventListeners MethodType = "DOMDebugger.getEventListeners" CommandDOMDebuggerRemoveDOMBreakpoint MethodType = "DOMDebugger.removeDOMBreakpoint" CommandDOMDebuggerRemoveEventListenerBreakpoint MethodType = "DOMDebugger.removeEventListenerBreakpoint" CommandDOMDebuggerRemoveInstrumentationBreakpoint MethodType = "DOMDebugger.removeInstrumentationBreakpoint" CommandDOMDebuggerRemoveXHRBreakpoint MethodType = "DOMDebugger.removeXHRBreakpoint" CommandDOMDebuggerSetDOMBreakpoint MethodType = "DOMDebugger.setDOMBreakpoint" CommandDOMDebuggerSetEventListenerBreakpoint MethodType = "DOMDebugger.setEventListenerBreakpoint" CommandDOMDebuggerSetInstrumentationBreakpoint MethodType = "DOMDebugger.setInstrumentationBreakpoint" CommandDOMDebuggerSetXHRBreakpoint MethodType = "DOMDebugger.setXHRBreakpoint" CommandDOMSnapshotGetSnapshot MethodType = "DOMSnapshot.getSnapshot" EventDOMStorageDomStorageItemAdded MethodType = "DOMStorage.domStorageItemAdded" EventDOMStorageDomStorageItemRemoved MethodType = "DOMStorage.domStorageItemRemoved" EventDOMStorageDomStorageItemUpdated MethodType = "DOMStorage.domStorageItemUpdated" EventDOMStorageDomStorageItemsCleared MethodType = "DOMStorage.domStorageItemsCleared" CommandDOMStorageClear MethodType = "DOMStorage.clear" CommandDOMStorageDisable MethodType = "DOMStorage.disable" CommandDOMStorageEnable MethodType = "DOMStorage.enable" CommandDOMStorageGetDOMStorageItems MethodType = "DOMStorage.getDOMStorageItems" CommandDOMStorageRemoveDOMStorageItem MethodType = "DOMStorage.removeDOMStorageItem" CommandDOMStorageSetDOMStorageItem MethodType = "DOMStorage.setDOMStorageItem" EventDatabaseAddDatabase MethodType = "Database.addDatabase" CommandDatabaseDisable MethodType = "Database.disable" CommandDatabaseEnable MethodType = "Database.enable" CommandDatabaseExecuteSQL MethodType = "Database.executeSQL" CommandDatabaseGetDatabaseTableNames MethodType = "Database.getDatabaseTableNames" CommandDeviceOrientationClearDeviceOrientationOverride MethodType = "DeviceOrientation.clearDeviceOrientationOverride" CommandDeviceOrientationSetDeviceOrientationOverride MethodType = "DeviceOrientation.setDeviceOrientationOverride" EventEmulationVirtualTimeAdvanced MethodType = "Emulation.virtualTimeAdvanced" EventEmulationVirtualTimeBudgetExpired MethodType = "Emulation.virtualTimeBudgetExpired" EventEmulationVirtualTimePaused MethodType = "Emulation.virtualTimePaused" CommandEmulationCanEmulate MethodType = "Emulation.canEmulate" CommandEmulationClearDeviceMetricsOverride MethodType = "Emulation.clearDeviceMetricsOverride" CommandEmulationClearGeolocationOverride MethodType = "Emulation.clearGeolocationOverride" CommandEmulationResetPageScaleFactor MethodType = "Emulation.resetPageScaleFactor" CommandEmulationSetCPUThrottlingRate MethodType = "Emulation.setCPUThrottlingRate" CommandEmulationSetDefaultBackgroundColorOverride MethodType = "Emulation.setDefaultBackgroundColorOverride" CommandEmulationSetDeviceMetricsOverride MethodType = "Emulation.setDeviceMetricsOverride" CommandEmulationSetEmitTouchEventsForMouse MethodType = "Emulation.setEmitTouchEventsForMouse" CommandEmulationSetEmulatedMedia MethodType = "Emulation.setEmulatedMedia" CommandEmulationSetGeolocationOverride MethodType = "Emulation.setGeolocationOverride" CommandEmulationSetNavigatorOverrides MethodType = "Emulation.setNavigatorOverrides" CommandEmulationSetPageScaleFactor MethodType = "Emulation.setPageScaleFactor" CommandEmulationSetScriptExecutionDisabled MethodType = "Emulation.setScriptExecutionDisabled" CommandEmulationSetTouchEmulationEnabled MethodType = "Emulation.setTouchEmulationEnabled" CommandEmulationSetVirtualTimePolicy MethodType = "Emulation.setVirtualTimePolicy" EventHeadlessExperimentalMainFrameReadyForScreenshots MethodType = "HeadlessExperimental.mainFrameReadyForScreenshots" EventHeadlessExperimentalNeedsBeginFramesChanged MethodType = "HeadlessExperimental.needsBeginFramesChanged" CommandHeadlessExperimentalBeginFrame MethodType = "HeadlessExperimental.beginFrame" CommandHeadlessExperimentalDisable MethodType = "HeadlessExperimental.disable" CommandHeadlessExperimentalEnable MethodType = "HeadlessExperimental.enable" CommandIOClose MethodType = "IO.close" CommandIORead MethodType = "IO.read" CommandIOResolveBlob MethodType = "IO.resolveBlob" CommandIndexedDBClearObjectStore MethodType = "IndexedDB.clearObjectStore" CommandIndexedDBDeleteDatabase MethodType = "IndexedDB.deleteDatabase" CommandIndexedDBDeleteObjectStoreEntries MethodType = "IndexedDB.deleteObjectStoreEntries" CommandIndexedDBDisable MethodType = "IndexedDB.disable" CommandIndexedDBEnable MethodType = "IndexedDB.enable" CommandIndexedDBRequestData MethodType = "IndexedDB.requestData" CommandIndexedDBRequestDatabase MethodType = "IndexedDB.requestDatabase" CommandIndexedDBRequestDatabaseNames MethodType = "IndexedDB.requestDatabaseNames" CommandInputDispatchKeyEvent MethodType = "Input.dispatchKeyEvent" CommandInputDispatchMouseEvent MethodType = "Input.dispatchMouseEvent" CommandInputDispatchTouchEvent MethodType = "Input.dispatchTouchEvent" CommandInputEmulateTouchFromMouseEvent MethodType = "Input.emulateTouchFromMouseEvent" CommandInputSetIgnoreInputEvents MethodType = "Input.setIgnoreInputEvents" CommandInputSynthesizePinchGesture MethodType = "Input.synthesizePinchGesture" CommandInputSynthesizeScrollGesture MethodType = "Input.synthesizeScrollGesture" CommandInputSynthesizeTapGesture MethodType = "Input.synthesizeTapGesture" EventInspectorDetached MethodType = "Inspector.detached" EventInspectorTargetCrashed MethodType = "Inspector.targetCrashed" CommandInspectorDisable MethodType = "Inspector.disable" CommandInspectorEnable MethodType = "Inspector.enable" EventLayerTreeLayerPainted MethodType = "LayerTree.layerPainted" EventLayerTreeLayerTreeDidChange MethodType = "LayerTree.layerTreeDidChange" CommandLayerTreeCompositingReasons MethodType = "LayerTree.compositingReasons" CommandLayerTreeDisable MethodType = "LayerTree.disable" CommandLayerTreeEnable MethodType = "LayerTree.enable" CommandLayerTreeLoadSnapshot MethodType = "LayerTree.loadSnapshot" CommandLayerTreeMakeSnapshot MethodType = "LayerTree.makeSnapshot" CommandLayerTreeProfileSnapshot MethodType = "LayerTree.profileSnapshot" CommandLayerTreeReleaseSnapshot MethodType = "LayerTree.releaseSnapshot" CommandLayerTreeReplaySnapshot MethodType = "LayerTree.replaySnapshot" CommandLayerTreeSnapshotCommandLog MethodType = "LayerTree.snapshotCommandLog" EventLogEntryAdded MethodType = "Log.entryAdded" CommandLogClear MethodType = "Log.clear" CommandLogDisable MethodType = "Log.disable" CommandLogEnable MethodType = "Log.enable" CommandLogStartViolationsReport MethodType = "Log.startViolationsReport" CommandLogStopViolationsReport MethodType = "Log.stopViolationsReport" CommandMemoryGetDOMCounters MethodType = "Memory.getDOMCounters" CommandMemoryPrepareForLeakDetection MethodType = "Memory.prepareForLeakDetection" CommandMemorySetPressureNotificationsSuppressed MethodType = "Memory.setPressureNotificationsSuppressed" CommandMemorySimulatePressureNotification MethodType = "Memory.simulatePressureNotification" EventNetworkDataReceived MethodType = "Network.dataReceived" EventNetworkEventSourceMessageReceived MethodType = "Network.eventSourceMessageReceived" EventNetworkLoadingFailed MethodType = "Network.loadingFailed" EventNetworkLoadingFinished MethodType = "Network.loadingFinished" EventNetworkRequestIntercepted MethodType = "Network.requestIntercepted" EventNetworkRequestServedFromCache MethodType = "Network.requestServedFromCache" EventNetworkRequestWillBeSent MethodType = "Network.requestWillBeSent" EventNetworkResourceChangedPriority MethodType = "Network.resourceChangedPriority" EventNetworkResponseReceived MethodType = "Network.responseReceived" EventNetworkWebSocketClosed MethodType = "Network.webSocketClosed" EventNetworkWebSocketCreated MethodType = "Network.webSocketCreated" EventNetworkWebSocketFrameError MethodType = "Network.webSocketFrameError" EventNetworkWebSocketFrameReceived MethodType = "Network.webSocketFrameReceived" EventNetworkWebSocketFrameSent MethodType = "Network.webSocketFrameSent" EventNetworkWebSocketHandshakeResponseReceived MethodType = "Network.webSocketHandshakeResponseReceived" EventNetworkWebSocketWillSendHandshakeRequest MethodType = "Network.webSocketWillSendHandshakeRequest" CommandNetworkClearBrowserCache MethodType = "Network.clearBrowserCache" CommandNetworkClearBrowserCookies MethodType = "Network.clearBrowserCookies" CommandNetworkContinueInterceptedRequest MethodType = "Network.continueInterceptedRequest" CommandNetworkDeleteCookies MethodType = "Network.deleteCookies" CommandNetworkDisable MethodType = "Network.disable" CommandNetworkEmulateNetworkConditions MethodType = "Network.emulateNetworkConditions" CommandNetworkEnable MethodType = "Network.enable" CommandNetworkGetAllCookies MethodType = "Network.getAllCookies" CommandNetworkGetCertificate MethodType = "Network.getCertificate" CommandNetworkGetCookies MethodType = "Network.getCookies" CommandNetworkGetResponseBody MethodType = "Network.getResponseBody" CommandNetworkGetResponseBodyForInterception MethodType = "Network.getResponseBodyForInterception" CommandNetworkReplayXHR MethodType = "Network.replayXHR" CommandNetworkSearchInResponseBody MethodType = "Network.searchInResponseBody" CommandNetworkSetBlockedURLS MethodType = "Network.setBlockedURLs" CommandNetworkSetBypassServiceWorker MethodType = "Network.setBypassServiceWorker" CommandNetworkSetCacheDisabled MethodType = "Network.setCacheDisabled" CommandNetworkSetCookie MethodType = "Network.setCookie" CommandNetworkSetCookies MethodType = "Network.setCookies" CommandNetworkSetDataSizeLimitsForTest MethodType = "Network.setDataSizeLimitsForTest" CommandNetworkSetExtraHTTPHeaders MethodType = "Network.setExtraHTTPHeaders" CommandNetworkSetRequestInterception MethodType = "Network.setRequestInterception" CommandNetworkSetUserAgentOverride MethodType = "Network.setUserAgentOverride" EventOverlayInspectNodeRequested MethodType = "Overlay.inspectNodeRequested" EventOverlayNodeHighlightRequested MethodType = "Overlay.nodeHighlightRequested" EventOverlayScreenshotRequested MethodType = "Overlay.screenshotRequested" CommandOverlayDisable MethodType = "Overlay.disable" CommandOverlayEnable MethodType = "Overlay.enable" CommandOverlayGetHighlightObjectForTest MethodType = "Overlay.getHighlightObjectForTest" CommandOverlayHideHighlight MethodType = "Overlay.hideHighlight" CommandOverlayHighlightFrame MethodType = "Overlay.highlightFrame" CommandOverlayHighlightNode MethodType = "Overlay.highlightNode" CommandOverlayHighlightQuad MethodType = "Overlay.highlightQuad" CommandOverlayHighlightRect MethodType = "Overlay.highlightRect" CommandOverlaySetInspectMode MethodType = "Overlay.setInspectMode" CommandOverlaySetPausedInDebuggerMessage MethodType = "Overlay.setPausedInDebuggerMessage" CommandOverlaySetShowDebugBorders MethodType = "Overlay.setShowDebugBorders" CommandOverlaySetShowFPSCounter MethodType = "Overlay.setShowFPSCounter" CommandOverlaySetShowPaintRects MethodType = "Overlay.setShowPaintRects" CommandOverlaySetShowScrollBottleneckRects MethodType = "Overlay.setShowScrollBottleneckRects" CommandOverlaySetShowViewportSizeOnResize MethodType = "Overlay.setShowViewportSizeOnResize" CommandOverlaySetSuspended MethodType = "Overlay.setSuspended" EventPageDomContentEventFired MethodType = "Page.domContentEventFired" EventPageFrameAttached MethodType = "Page.frameAttached" EventPageFrameClearedScheduledNavigation MethodType = "Page.frameClearedScheduledNavigation" EventPageFrameDetached MethodType = "Page.frameDetached" EventPageFrameNavigated MethodType = "Page.frameNavigated" EventPageFrameResized MethodType = "Page.frameResized" EventPageFrameScheduledNavigation MethodType = "Page.frameScheduledNavigation" EventPageFrameStartedLoading MethodType = "Page.frameStartedLoading" EventPageFrameStoppedLoading MethodType = "Page.frameStoppedLoading" EventPageInterstitialHidden MethodType = "Page.interstitialHidden" EventPageInterstitialShown MethodType = "Page.interstitialShown" EventPageJavascriptDialogClosed MethodType = "Page.javascriptDialogClosed" EventPageJavascriptDialogOpening MethodType = "Page.javascriptDialogOpening" EventPageLifecycleEvent MethodType = "Page.lifecycleEvent" EventPageLoadEventFired MethodType = "Page.loadEventFired" EventPageScreencastFrame MethodType = "Page.screencastFrame" EventPageScreencastVisibilityChanged MethodType = "Page.screencastVisibilityChanged" EventPageWindowOpen MethodType = "Page.windowOpen" CommandPageAddScriptToEvaluateOnNewDocument MethodType = "Page.addScriptToEvaluateOnNewDocument" CommandPageBringToFront MethodType = "Page.bringToFront" CommandPageCaptureScreenshot MethodType = "Page.captureScreenshot" CommandPageCreateIsolatedWorld MethodType = "Page.createIsolatedWorld" CommandPageDisable MethodType = "Page.disable" CommandPageEnable MethodType = "Page.enable" CommandPageGetAppManifest MethodType = "Page.getAppManifest" CommandPageGetFrameTree MethodType = "Page.getFrameTree" CommandPageGetLayoutMetrics MethodType = "Page.getLayoutMetrics" CommandPageGetNavigationHistory MethodType = "Page.getNavigationHistory" CommandPageGetResourceContent MethodType = "Page.getResourceContent" CommandPageGetResourceTree MethodType = "Page.getResourceTree" CommandPageHandleJavaScriptDialog MethodType = "Page.handleJavaScriptDialog" CommandPageNavigate MethodType = "Page.navigate" CommandPageNavigateToHistoryEntry MethodType = "Page.navigateToHistoryEntry" CommandPagePrintToPDF MethodType = "Page.printToPDF" CommandPageReload MethodType = "Page.reload" CommandPageRemoveScriptToEvaluateOnNewDocument MethodType = "Page.removeScriptToEvaluateOnNewDocument" CommandPageRequestAppBanner MethodType = "Page.requestAppBanner" CommandPageScreencastFrameAck MethodType = "Page.screencastFrameAck" CommandPageSearchInResource MethodType = "Page.searchInResource" CommandPageSetAdBlockingEnabled MethodType = "Page.setAdBlockingEnabled" CommandPageSetAutoAttachToCreatedPages MethodType = "Page.setAutoAttachToCreatedPages" CommandPageSetDocumentContent MethodType = "Page.setDocumentContent" CommandPageSetDownloadBehavior MethodType = "Page.setDownloadBehavior" CommandPageSetLifecycleEventsEnabled MethodType = "Page.setLifecycleEventsEnabled" CommandPageStartScreencast MethodType = "Page.startScreencast" CommandPageStopLoading MethodType = "Page.stopLoading" CommandPageStopScreencast MethodType = "Page.stopScreencast" EventPerformanceMetrics MethodType = "Performance.metrics" CommandPerformanceDisable MethodType = "Performance.disable" CommandPerformanceEnable MethodType = "Performance.enable" CommandPerformanceGetMetrics MethodType = "Performance.getMetrics" EventSecurityCertificateError MethodType = "Security.certificateError" EventSecuritySecurityStateChanged MethodType = "Security.securityStateChanged" CommandSecurityDisable MethodType = "Security.disable" CommandSecurityEnable MethodType = "Security.enable" CommandSecurityHandleCertificateError MethodType = "Security.handleCertificateError" CommandSecuritySetOverrideCertificateErrors MethodType = "Security.setOverrideCertificateErrors" EventServiceWorkerWorkerErrorReported MethodType = "ServiceWorker.workerErrorReported" EventServiceWorkerWorkerRegistrationUpdated MethodType = "ServiceWorker.workerRegistrationUpdated" EventServiceWorkerWorkerVersionUpdated MethodType = "ServiceWorker.workerVersionUpdated" CommandServiceWorkerDeliverPushMessage MethodType = "ServiceWorker.deliverPushMessage" CommandServiceWorkerDisable MethodType = "ServiceWorker.disable" CommandServiceWorkerDispatchSyncEvent MethodType = "ServiceWorker.dispatchSyncEvent" CommandServiceWorkerEnable MethodType = "ServiceWorker.enable" CommandServiceWorkerInspectWorker MethodType = "ServiceWorker.inspectWorker" CommandServiceWorkerSetForceUpdateOnPageLoad MethodType = "ServiceWorker.setForceUpdateOnPageLoad" CommandServiceWorkerSkipWaiting MethodType = "ServiceWorker.skipWaiting" CommandServiceWorkerStartWorker MethodType = "ServiceWorker.startWorker" CommandServiceWorkerStopAllWorkers MethodType = "ServiceWorker.stopAllWorkers" CommandServiceWorkerStopWorker MethodType = "ServiceWorker.stopWorker" CommandServiceWorkerUnregister MethodType = "ServiceWorker.unregister" CommandServiceWorkerUpdateRegistration MethodType = "ServiceWorker.updateRegistration" EventStorageCacheStorageContentUpdated MethodType = "Storage.cacheStorageContentUpdated" EventStorageCacheStorageListUpdated MethodType = "Storage.cacheStorageListUpdated" EventStorageIndexedDBContentUpdated MethodType = "Storage.indexedDBContentUpdated" EventStorageIndexedDBListUpdated MethodType = "Storage.indexedDBListUpdated" CommandStorageClearDataForOrigin MethodType = "Storage.clearDataForOrigin" CommandStorageGetUsageAndQuota MethodType = "Storage.getUsageAndQuota" CommandStorageTrackCacheStorageForOrigin MethodType = "Storage.trackCacheStorageForOrigin" CommandStorageTrackIndexedDBForOrigin MethodType = "Storage.trackIndexedDBForOrigin" CommandStorageUntrackCacheStorageForOrigin MethodType = "Storage.untrackCacheStorageForOrigin" CommandStorageUntrackIndexedDBForOrigin MethodType = "Storage.untrackIndexedDBForOrigin" CommandSystemInfoGetInfo MethodType = "SystemInfo.getInfo" EventTargetAttachedToTarget MethodType = "Target.attachedToTarget" EventTargetDetachedFromTarget MethodType = "Target.detachedFromTarget" EventTargetReceivedMessageFromTarget MethodType = "Target.receivedMessageFromTarget" EventTargetTargetCreated MethodType = "Target.targetCreated" EventTargetTargetDestroyed MethodType = "Target.targetDestroyed" EventTargetTargetInfoChanged MethodType = "Target.targetInfoChanged" CommandTargetActivateTarget MethodType = "Target.activateTarget" CommandTargetAttachToTarget MethodType = "Target.attachToTarget" CommandTargetCloseTarget MethodType = "Target.closeTarget" CommandTargetCreateBrowserContext MethodType = "Target.createBrowserContext" CommandTargetCreateTarget MethodType = "Target.createTarget" CommandTargetDetachFromTarget MethodType = "Target.detachFromTarget" CommandTargetDisposeBrowserContext MethodType = "Target.disposeBrowserContext" CommandTargetGetTargetInfo MethodType = "Target.getTargetInfo" CommandTargetGetTargets MethodType = "Target.getTargets" CommandTargetSendMessageToTarget MethodType = "Target.sendMessageToTarget" CommandTargetSetAttachToFrames MethodType = "Target.setAttachToFrames" CommandTargetSetAutoAttach MethodType = "Target.setAutoAttach" CommandTargetSetDiscoverTargets MethodType = "Target.setDiscoverTargets" CommandTargetSetRemoteLocations MethodType = "Target.setRemoteLocations" EventTetheringAccepted MethodType = "Tethering.accepted" CommandTetheringBind MethodType = "Tethering.bind" CommandTetheringUnbind MethodType = "Tethering.unbind" EventTracingBufferUsage MethodType = "Tracing.bufferUsage" EventTracingDataCollected MethodType = "Tracing.dataCollected" EventTracingTracingComplete MethodType = "Tracing.tracingComplete" CommandTracingEnd MethodType = "Tracing.end" CommandTracingGetCategories MethodType = "Tracing.getCategories" CommandTracingRecordClockSyncMarker MethodType = "Tracing.recordClockSyncMarker" CommandTracingRequestMemoryDump MethodType = "Tracing.requestMemoryDump" CommandTracingStart MethodType = "Tracing.start" EventDebuggerBreakpointResolved MethodType = "Debugger.breakpointResolved" EventDebuggerPaused MethodType = "Debugger.paused" EventDebuggerResumed MethodType = "Debugger.resumed" EventDebuggerScriptFailedToParse MethodType = "Debugger.scriptFailedToParse" EventDebuggerScriptParsed MethodType = "Debugger.scriptParsed" CommandDebuggerContinueToLocation MethodType = "Debugger.continueToLocation" CommandDebuggerDisable MethodType = "Debugger.disable" CommandDebuggerEnable MethodType = "Debugger.enable" CommandDebuggerEvaluateOnCallFrame MethodType = "Debugger.evaluateOnCallFrame" CommandDebuggerGetPossibleBreakpoints MethodType = "Debugger.getPossibleBreakpoints" CommandDebuggerGetScriptSource MethodType = "Debugger.getScriptSource" CommandDebuggerGetStackTrace MethodType = "Debugger.getStackTrace" CommandDebuggerPause MethodType = "Debugger.pause" CommandDebuggerPauseOnAsyncCall MethodType = "Debugger.pauseOnAsyncCall" CommandDebuggerRemoveBreakpoint MethodType = "Debugger.removeBreakpoint" CommandDebuggerRestartFrame MethodType = "Debugger.restartFrame" CommandDebuggerResume MethodType = "Debugger.resume" CommandDebuggerScheduleStepIntoAsync MethodType = "Debugger.scheduleStepIntoAsync" CommandDebuggerSearchInContent MethodType = "Debugger.searchInContent" CommandDebuggerSetAsyncCallStackDepth MethodType = "Debugger.setAsyncCallStackDepth" CommandDebuggerSetBlackboxPatterns MethodType = "Debugger.setBlackboxPatterns" CommandDebuggerSetBlackboxedRanges MethodType = "Debugger.setBlackboxedRanges" CommandDebuggerSetBreakpoint MethodType = "Debugger.setBreakpoint" CommandDebuggerSetBreakpointByURL MethodType = "Debugger.setBreakpointByUrl" CommandDebuggerSetBreakpointsActive MethodType = "Debugger.setBreakpointsActive" CommandDebuggerSetPauseOnExceptions MethodType = "Debugger.setPauseOnExceptions" CommandDebuggerSetReturnValue MethodType = "Debugger.setReturnValue" CommandDebuggerSetScriptSource MethodType = "Debugger.setScriptSource" CommandDebuggerSetSkipAllPauses MethodType = "Debugger.setSkipAllPauses" CommandDebuggerSetVariableValue MethodType = "Debugger.setVariableValue" CommandDebuggerStepInto MethodType = "Debugger.stepInto" CommandDebuggerStepOut MethodType = "Debugger.stepOut" CommandDebuggerStepOver MethodType = "Debugger.stepOver" EventHeapProfilerAddHeapSnapshotChunk MethodType = "HeapProfiler.addHeapSnapshotChunk" EventHeapProfilerHeapStatsUpdate MethodType = "HeapProfiler.heapStatsUpdate" EventHeapProfilerLastSeenObjectID MethodType = "HeapProfiler.lastSeenObjectId" EventHeapProfilerReportHeapSnapshotProgress MethodType = "HeapProfiler.reportHeapSnapshotProgress" EventHeapProfilerResetProfiles MethodType = "HeapProfiler.resetProfiles" CommandHeapProfilerAddInspectedHeapObject MethodType = "HeapProfiler.addInspectedHeapObject" CommandHeapProfilerCollectGarbage MethodType = "HeapProfiler.collectGarbage" CommandHeapProfilerDisable MethodType = "HeapProfiler.disable" CommandHeapProfilerEnable MethodType = "HeapProfiler.enable" CommandHeapProfilerGetHeapObjectID MethodType = "HeapProfiler.getHeapObjectId" CommandHeapProfilerGetObjectByHeapObjectID MethodType = "HeapProfiler.getObjectByHeapObjectId" CommandHeapProfilerGetSamplingProfile MethodType = "HeapProfiler.getSamplingProfile" CommandHeapProfilerStartSampling MethodType = "HeapProfiler.startSampling" CommandHeapProfilerStartTrackingHeapObjects MethodType = "HeapProfiler.startTrackingHeapObjects" CommandHeapProfilerStopSampling MethodType = "HeapProfiler.stopSampling" CommandHeapProfilerStopTrackingHeapObjects MethodType = "HeapProfiler.stopTrackingHeapObjects" CommandHeapProfilerTakeHeapSnapshot MethodType = "HeapProfiler.takeHeapSnapshot" EventProfilerConsoleProfileFinished MethodType = "Profiler.consoleProfileFinished" EventProfilerConsoleProfileStarted MethodType = "Profiler.consoleProfileStarted" CommandProfilerDisable MethodType = "Profiler.disable" CommandProfilerEnable MethodType = "Profiler.enable" CommandProfilerGetBestEffortCoverage MethodType = "Profiler.getBestEffortCoverage" CommandProfilerSetSamplingInterval MethodType = "Profiler.setSamplingInterval" CommandProfilerStart MethodType = "Profiler.start" CommandProfilerStartPreciseCoverage MethodType = "Profiler.startPreciseCoverage" CommandProfilerStartTypeProfile MethodType = "Profiler.startTypeProfile" CommandProfilerStop MethodType = "Profiler.stop" CommandProfilerStopPreciseCoverage MethodType = "Profiler.stopPreciseCoverage" CommandProfilerStopTypeProfile MethodType = "Profiler.stopTypeProfile" CommandProfilerTakePreciseCoverage MethodType = "Profiler.takePreciseCoverage" CommandProfilerTakeTypeProfile MethodType = "Profiler.takeTypeProfile" EventRuntimeConsoleAPICalled MethodType = "Runtime.consoleAPICalled" EventRuntimeExceptionRevoked MethodType = "Runtime.exceptionRevoked" EventRuntimeExceptionThrown MethodType = "Runtime.exceptionThrown" EventRuntimeExecutionContextCreated MethodType = "Runtime.executionContextCreated" EventRuntimeExecutionContextDestroyed MethodType = "Runtime.executionContextDestroyed" EventRuntimeExecutionContextsCleared MethodType = "Runtime.executionContextsCleared" EventRuntimeInspectRequested MethodType = "Runtime.inspectRequested" CommandRuntimeAwaitPromise MethodType = "Runtime.awaitPromise" CommandRuntimeCallFunctionOn MethodType = "Runtime.callFunctionOn" CommandRuntimeCompileScript MethodType = "Runtime.compileScript" CommandRuntimeDisable MethodType = "Runtime.disable" CommandRuntimeDiscardConsoleEntries MethodType = "Runtime.discardConsoleEntries" CommandRuntimeEnable MethodType = "Runtime.enable" CommandRuntimeEvaluate MethodType = "Runtime.evaluate" CommandRuntimeGetProperties MethodType = "Runtime.getProperties" CommandRuntimeGlobalLexicalScopeNames MethodType = "Runtime.globalLexicalScopeNames" CommandRuntimeQueryObjects MethodType = "Runtime.queryObjects" CommandRuntimeReleaseObject MethodType = "Runtime.releaseObject" CommandRuntimeReleaseObjectGroup MethodType = "Runtime.releaseObjectGroup" CommandRuntimeRunIfWaitingForDebugger MethodType = "Runtime.runIfWaitingForDebugger" CommandRuntimeRunScript MethodType = "Runtime.runScript" CommandRuntimeSetCustomObjectFormatterEnabled MethodType = "Runtime.setCustomObjectFormatterEnabled" ) // MarshalEasyJSON satisfies easyjson.Marshaler. func (t MethodType) MarshalEasyJSON(out *jwriter.Writer) { out.String(string(t)) } // MarshalJSON satisfies json.Marshaler. func (t MethodType) MarshalJSON() ([]byte, error) { return easyjson.Marshal(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *MethodType) UnmarshalEasyJSON(in *jlexer.Lexer) { switch MethodType(in.String()) { case CommandAccessibilityGetPartialAXTree: *t = CommandAccessibilityGetPartialAXTree case EventAnimationAnimationCanceled: *t = EventAnimationAnimationCanceled case EventAnimationAnimationCreated: *t = EventAnimationAnimationCreated case EventAnimationAnimationStarted: *t = EventAnimationAnimationStarted case CommandAnimationDisable: *t = CommandAnimationDisable case CommandAnimationEnable: *t = CommandAnimationEnable case CommandAnimationGetCurrentTime: *t = CommandAnimationGetCurrentTime case CommandAnimationGetPlaybackRate: *t = CommandAnimationGetPlaybackRate case CommandAnimationReleaseAnimations: *t = CommandAnimationReleaseAnimations case CommandAnimationResolveAnimation: *t = CommandAnimationResolveAnimation case CommandAnimationSeekAnimations: *t = CommandAnimationSeekAnimations case CommandAnimationSetPaused: *t = CommandAnimationSetPaused case CommandAnimationSetPlaybackRate: *t = CommandAnimationSetPlaybackRate case CommandAnimationSetTiming: *t = CommandAnimationSetTiming case EventApplicationCacheApplicationCacheStatusUpdated: *t = EventApplicationCacheApplicationCacheStatusUpdated case EventApplicationCacheNetworkStateUpdated: *t = EventApplicationCacheNetworkStateUpdated case CommandApplicationCacheEnable: *t = CommandApplicationCacheEnable case CommandApplicationCacheGetApplicationCacheForFrame: *t = CommandApplicationCacheGetApplicationCacheForFrame case CommandApplicationCacheGetFramesWithManifests: *t = CommandApplicationCacheGetFramesWithManifests case CommandApplicationCacheGetManifestForFrame: *t = CommandApplicationCacheGetManifestForFrame case CommandAuditsGetEncodedResponse: *t = CommandAuditsGetEncodedResponse case CommandBrowserClose: *t = CommandBrowserClose case CommandBrowserGetVersion: *t = CommandBrowserGetVersion case CommandBrowserGetWindowBounds: *t = CommandBrowserGetWindowBounds case CommandBrowserGetWindowForTarget: *t = CommandBrowserGetWindowForTarget case CommandBrowserSetWindowBounds: *t = CommandBrowserSetWindowBounds case EventCSSFontsUpdated: *t = EventCSSFontsUpdated case EventCSSMediaQueryResultChanged: *t = EventCSSMediaQueryResultChanged case EventCSSStyleSheetAdded: *t = EventCSSStyleSheetAdded case EventCSSStyleSheetChanged: *t = EventCSSStyleSheetChanged case EventCSSStyleSheetRemoved: *t = EventCSSStyleSheetRemoved case CommandCSSAddRule: *t = CommandCSSAddRule case CommandCSSCollectClassNames: *t = CommandCSSCollectClassNames case CommandCSSCreateStyleSheet: *t = CommandCSSCreateStyleSheet case CommandCSSDisable: *t = CommandCSSDisable case CommandCSSEnable: *t = CommandCSSEnable case CommandCSSForcePseudoState: *t = CommandCSSForcePseudoState case CommandCSSGetBackgroundColors: *t = CommandCSSGetBackgroundColors case CommandCSSGetComputedStyleForNode: *t = CommandCSSGetComputedStyleForNode case CommandCSSGetInlineStylesForNode: *t = CommandCSSGetInlineStylesForNode case CommandCSSGetMatchedStylesForNode: *t = CommandCSSGetMatchedStylesForNode case CommandCSSGetMediaQueries: *t = CommandCSSGetMediaQueries case CommandCSSGetPlatformFontsForNode: *t = CommandCSSGetPlatformFontsForNode case CommandCSSGetStyleSheetText: *t = CommandCSSGetStyleSheetText case CommandCSSSetEffectivePropertyValueForNode: *t = CommandCSSSetEffectivePropertyValueForNode case CommandCSSSetKeyframeKey: *t = CommandCSSSetKeyframeKey case CommandCSSSetMediaText: *t = CommandCSSSetMediaText case CommandCSSSetRuleSelector: *t = CommandCSSSetRuleSelector case CommandCSSSetStyleSheetText: *t = CommandCSSSetStyleSheetText case CommandCSSSetStyleTexts: *t = CommandCSSSetStyleTexts case CommandCSSStartRuleUsageTracking: *t = CommandCSSStartRuleUsageTracking case CommandCSSStopRuleUsageTracking: *t = CommandCSSStopRuleUsageTracking case CommandCSSTakeCoverageDelta: *t = CommandCSSTakeCoverageDelta case CommandCacheStorageDeleteCache: *t = CommandCacheStorageDeleteCache case CommandCacheStorageDeleteEntry: *t = CommandCacheStorageDeleteEntry case CommandCacheStorageRequestCacheNames: *t = CommandCacheStorageRequestCacheNames case CommandCacheStorageRequestCachedResponse: *t = CommandCacheStorageRequestCachedResponse case CommandCacheStorageRequestEntries: *t = CommandCacheStorageRequestEntries case EventDOMAttributeModified: *t = EventDOMAttributeModified case EventDOMAttributeRemoved: *t = EventDOMAttributeRemoved case EventDOMCharacterDataModified: *t = EventDOMCharacterDataModified case EventDOMChildNodeCountUpdated: *t = EventDOMChildNodeCountUpdated case EventDOMChildNodeInserted: *t = EventDOMChildNodeInserted case EventDOMChildNodeRemoved: *t = EventDOMChildNodeRemoved case EventDOMDistributedNodesUpdated: *t = EventDOMDistributedNodesUpdated case EventDOMDocumentUpdated: *t = EventDOMDocumentUpdated case EventDOMInlineStyleInvalidated: *t = EventDOMInlineStyleInvalidated case EventDOMPseudoElementAdded: *t = EventDOMPseudoElementAdded case EventDOMPseudoElementRemoved: *t = EventDOMPseudoElementRemoved case EventDOMSetChildNodes: *t = EventDOMSetChildNodes case EventDOMShadowRootPopped: *t = EventDOMShadowRootPopped case EventDOMShadowRootPushed: *t = EventDOMShadowRootPushed case CommandDOMCollectClassNamesFromSubtree: *t = CommandDOMCollectClassNamesFromSubtree case CommandDOMCopyTo: *t = CommandDOMCopyTo case CommandDOMDescribeNode: *t = CommandDOMDescribeNode case CommandDOMDisable: *t = CommandDOMDisable case CommandDOMDiscardSearchResults: *t = CommandDOMDiscardSearchResults case CommandDOMEnable: *t = CommandDOMEnable case CommandDOMFocus: *t = CommandDOMFocus case CommandDOMGetAttributes: *t = CommandDOMGetAttributes case CommandDOMGetBoxModel: *t = CommandDOMGetBoxModel case CommandDOMGetDocument: *t = CommandDOMGetDocument case CommandDOMGetFlattenedDocument: *t = CommandDOMGetFlattenedDocument case CommandDOMGetNodeForLocation: *t = CommandDOMGetNodeForLocation case CommandDOMGetOuterHTML: *t = CommandDOMGetOuterHTML case CommandDOMGetRelayoutBoundary: *t = CommandDOMGetRelayoutBoundary case CommandDOMGetSearchResults: *t = CommandDOMGetSearchResults case CommandDOMMarkUndoableState: *t = CommandDOMMarkUndoableState case CommandDOMMoveTo: *t = CommandDOMMoveTo case CommandDOMPerformSearch: *t = CommandDOMPerformSearch case CommandDOMPushNodeByPathToFrontend: *t = CommandDOMPushNodeByPathToFrontend case CommandDOMPushNodesByBackendIdsToFrontend: *t = CommandDOMPushNodesByBackendIdsToFrontend case CommandDOMQuerySelector: *t = CommandDOMQuerySelector case CommandDOMQuerySelectorAll: *t = CommandDOMQuerySelectorAll case CommandDOMRedo: *t = CommandDOMRedo case CommandDOMRemoveAttribute: *t = CommandDOMRemoveAttribute case CommandDOMRemoveNode: *t = CommandDOMRemoveNode case CommandDOMRequestChildNodes: *t = CommandDOMRequestChildNodes case CommandDOMRequestNode: *t = CommandDOMRequestNode case CommandDOMResolveNode: *t = CommandDOMResolveNode case CommandDOMSetAttributeValue: *t = CommandDOMSetAttributeValue case CommandDOMSetAttributesAsText: *t = CommandDOMSetAttributesAsText case CommandDOMSetFileInputFiles: *t = CommandDOMSetFileInputFiles case CommandDOMSetInspectedNode: *t = CommandDOMSetInspectedNode case CommandDOMSetNodeName: *t = CommandDOMSetNodeName case CommandDOMSetNodeValue: *t = CommandDOMSetNodeValue case CommandDOMSetOuterHTML: *t = CommandDOMSetOuterHTML case CommandDOMUndo: *t = CommandDOMUndo case CommandDOMDebuggerGetEventListeners: *t = CommandDOMDebuggerGetEventListeners case CommandDOMDebuggerRemoveDOMBreakpoint: *t = CommandDOMDebuggerRemoveDOMBreakpoint case CommandDOMDebuggerRemoveEventListenerBreakpoint: *t = CommandDOMDebuggerRemoveEventListenerBreakpoint case CommandDOMDebuggerRemoveInstrumentationBreakpoint: *t = CommandDOMDebuggerRemoveInstrumentationBreakpoint case CommandDOMDebuggerRemoveXHRBreakpoint: *t = CommandDOMDebuggerRemoveXHRBreakpoint case CommandDOMDebuggerSetDOMBreakpoint: *t = CommandDOMDebuggerSetDOMBreakpoint case CommandDOMDebuggerSetEventListenerBreakpoint: *t = CommandDOMDebuggerSetEventListenerBreakpoint case CommandDOMDebuggerSetInstrumentationBreakpoint: *t = CommandDOMDebuggerSetInstrumentationBreakpoint case CommandDOMDebuggerSetXHRBreakpoint: *t = CommandDOMDebuggerSetXHRBreakpoint case CommandDOMSnapshotGetSnapshot: *t = CommandDOMSnapshotGetSnapshot case EventDOMStorageDomStorageItemAdded: *t = EventDOMStorageDomStorageItemAdded case EventDOMStorageDomStorageItemRemoved: *t = EventDOMStorageDomStorageItemRemoved case EventDOMStorageDomStorageItemUpdated: *t = EventDOMStorageDomStorageItemUpdated case EventDOMStorageDomStorageItemsCleared: *t = EventDOMStorageDomStorageItemsCleared case CommandDOMStorageClear: *t = CommandDOMStorageClear case CommandDOMStorageDisable: *t = CommandDOMStorageDisable case CommandDOMStorageEnable: *t = CommandDOMStorageEnable case CommandDOMStorageGetDOMStorageItems: *t = CommandDOMStorageGetDOMStorageItems case CommandDOMStorageRemoveDOMStorageItem: *t = CommandDOMStorageRemoveDOMStorageItem case CommandDOMStorageSetDOMStorageItem: *t = CommandDOMStorageSetDOMStorageItem case EventDatabaseAddDatabase: *t = EventDatabaseAddDatabase case CommandDatabaseDisable: *t = CommandDatabaseDisable case CommandDatabaseEnable: *t = CommandDatabaseEnable case CommandDatabaseExecuteSQL: *t = CommandDatabaseExecuteSQL case CommandDatabaseGetDatabaseTableNames: *t = CommandDatabaseGetDatabaseTableNames case CommandDeviceOrientationClearDeviceOrientationOverride: *t = CommandDeviceOrientationClearDeviceOrientationOverride case CommandDeviceOrientationSetDeviceOrientationOverride: *t = CommandDeviceOrientationSetDeviceOrientationOverride case EventEmulationVirtualTimeAdvanced: *t = EventEmulationVirtualTimeAdvanced case EventEmulationVirtualTimeBudgetExpired: *t = EventEmulationVirtualTimeBudgetExpired case EventEmulationVirtualTimePaused: *t = EventEmulationVirtualTimePaused case CommandEmulationCanEmulate: *t = CommandEmulationCanEmulate case CommandEmulationClearDeviceMetricsOverride: *t = CommandEmulationClearDeviceMetricsOverride case CommandEmulationClearGeolocationOverride: *t = CommandEmulationClearGeolocationOverride case CommandEmulationResetPageScaleFactor: *t = CommandEmulationResetPageScaleFactor case CommandEmulationSetCPUThrottlingRate: *t = CommandEmulationSetCPUThrottlingRate case CommandEmulationSetDefaultBackgroundColorOverride: *t = CommandEmulationSetDefaultBackgroundColorOverride case CommandEmulationSetDeviceMetricsOverride: *t = CommandEmulationSetDeviceMetricsOverride case CommandEmulationSetEmitTouchEventsForMouse: *t = CommandEmulationSetEmitTouchEventsForMouse case CommandEmulationSetEmulatedMedia: *t = CommandEmulationSetEmulatedMedia case CommandEmulationSetGeolocationOverride: *t = CommandEmulationSetGeolocationOverride case CommandEmulationSetNavigatorOverrides: *t = CommandEmulationSetNavigatorOverrides case CommandEmulationSetPageScaleFactor: *t = CommandEmulationSetPageScaleFactor case CommandEmulationSetScriptExecutionDisabled: *t = CommandEmulationSetScriptExecutionDisabled case CommandEmulationSetTouchEmulationEnabled: *t = CommandEmulationSetTouchEmulationEnabled case CommandEmulationSetVirtualTimePolicy: *t = CommandEmulationSetVirtualTimePolicy case EventHeadlessExperimentalMainFrameReadyForScreenshots: *t = EventHeadlessExperimentalMainFrameReadyForScreenshots case EventHeadlessExperimentalNeedsBeginFramesChanged: *t = EventHeadlessExperimentalNeedsBeginFramesChanged case CommandHeadlessExperimentalBeginFrame: *t = CommandHeadlessExperimentalBeginFrame case CommandHeadlessExperimentalDisable: *t = CommandHeadlessExperimentalDisable case CommandHeadlessExperimentalEnable: *t = CommandHeadlessExperimentalEnable case CommandIOClose: *t = CommandIOClose case CommandIORead: *t = CommandIORead case CommandIOResolveBlob: *t = CommandIOResolveBlob case CommandIndexedDBClearObjectStore: *t = CommandIndexedDBClearObjectStore case CommandIndexedDBDeleteDatabase: *t = CommandIndexedDBDeleteDatabase case CommandIndexedDBDeleteObjectStoreEntries: *t = CommandIndexedDBDeleteObjectStoreEntries case CommandIndexedDBDisable: *t = CommandIndexedDBDisable case CommandIndexedDBEnable: *t = CommandIndexedDBEnable case CommandIndexedDBRequestData: *t = CommandIndexedDBRequestData case CommandIndexedDBRequestDatabase: *t = CommandIndexedDBRequestDatabase case CommandIndexedDBRequestDatabaseNames: *t = CommandIndexedDBRequestDatabaseNames case CommandInputDispatchKeyEvent: *t = CommandInputDispatchKeyEvent case CommandInputDispatchMouseEvent: *t = CommandInputDispatchMouseEvent case CommandInputDispatchTouchEvent: *t = CommandInputDispatchTouchEvent case CommandInputEmulateTouchFromMouseEvent: *t = CommandInputEmulateTouchFromMouseEvent case CommandInputSetIgnoreInputEvents: *t = CommandInputSetIgnoreInputEvents case CommandInputSynthesizePinchGesture: *t = CommandInputSynthesizePinchGesture case CommandInputSynthesizeScrollGesture: *t = CommandInputSynthesizeScrollGesture case CommandInputSynthesizeTapGesture: *t = CommandInputSynthesizeTapGesture case EventInspectorDetached: *t = EventInspectorDetached case EventInspectorTargetCrashed: *t = EventInspectorTargetCrashed case CommandInspectorDisable: *t = CommandInspectorDisable case CommandInspectorEnable: *t = CommandInspectorEnable case EventLayerTreeLayerPainted: *t = EventLayerTreeLayerPainted case EventLayerTreeLayerTreeDidChange: *t = EventLayerTreeLayerTreeDidChange case CommandLayerTreeCompositingReasons: *t = CommandLayerTreeCompositingReasons case CommandLayerTreeDisable: *t = CommandLayerTreeDisable case CommandLayerTreeEnable: *t = CommandLayerTreeEnable case CommandLayerTreeLoadSnapshot: *t = CommandLayerTreeLoadSnapshot case CommandLayerTreeMakeSnapshot: *t = CommandLayerTreeMakeSnapshot case CommandLayerTreeProfileSnapshot: *t = CommandLayerTreeProfileSnapshot case CommandLayerTreeReleaseSnapshot: *t = CommandLayerTreeReleaseSnapshot case CommandLayerTreeReplaySnapshot: *t = CommandLayerTreeReplaySnapshot case CommandLayerTreeSnapshotCommandLog: *t = CommandLayerTreeSnapshotCommandLog case EventLogEntryAdded: *t = EventLogEntryAdded case CommandLogClear: *t = CommandLogClear case CommandLogDisable: *t = CommandLogDisable case CommandLogEnable: *t = CommandLogEnable case CommandLogStartViolationsReport: *t = CommandLogStartViolationsReport case CommandLogStopViolationsReport: *t = CommandLogStopViolationsReport case CommandMemoryGetDOMCounters: *t = CommandMemoryGetDOMCounters case CommandMemoryPrepareForLeakDetection: *t = CommandMemoryPrepareForLeakDetection case CommandMemorySetPressureNotificationsSuppressed: *t = CommandMemorySetPressureNotificationsSuppressed case CommandMemorySimulatePressureNotification: *t = CommandMemorySimulatePressureNotification case EventNetworkDataReceived: *t = EventNetworkDataReceived case EventNetworkEventSourceMessageReceived: *t = EventNetworkEventSourceMessageReceived case EventNetworkLoadingFailed: *t = EventNetworkLoadingFailed case EventNetworkLoadingFinished: *t = EventNetworkLoadingFinished case EventNetworkRequestIntercepted: *t = EventNetworkRequestIntercepted case EventNetworkRequestServedFromCache: *t = EventNetworkRequestServedFromCache case EventNetworkRequestWillBeSent: *t = EventNetworkRequestWillBeSent case EventNetworkResourceChangedPriority: *t = EventNetworkResourceChangedPriority case EventNetworkResponseReceived: *t = EventNetworkResponseReceived case EventNetworkWebSocketClosed: *t = EventNetworkWebSocketClosed case EventNetworkWebSocketCreated: *t = EventNetworkWebSocketCreated case EventNetworkWebSocketFrameError: *t = EventNetworkWebSocketFrameError case EventNetworkWebSocketFrameReceived: *t = EventNetworkWebSocketFrameReceived case EventNetworkWebSocketFrameSent: *t = EventNetworkWebSocketFrameSent case EventNetworkWebSocketHandshakeResponseReceived: *t = EventNetworkWebSocketHandshakeResponseReceived case EventNetworkWebSocketWillSendHandshakeRequest: *t = EventNetworkWebSocketWillSendHandshakeRequest case CommandNetworkClearBrowserCache: *t = CommandNetworkClearBrowserCache case CommandNetworkClearBrowserCookies: *t = CommandNetworkClearBrowserCookies case CommandNetworkContinueInterceptedRequest: *t = CommandNetworkContinueInterceptedRequest case CommandNetworkDeleteCookies: *t = CommandNetworkDeleteCookies case CommandNetworkDisable: *t = CommandNetworkDisable case CommandNetworkEmulateNetworkConditions: *t = CommandNetworkEmulateNetworkConditions case CommandNetworkEnable: *t = CommandNetworkEnable case CommandNetworkGetAllCookies: *t = CommandNetworkGetAllCookies case CommandNetworkGetCertificate: *t = CommandNetworkGetCertificate case CommandNetworkGetCookies: *t = CommandNetworkGetCookies case CommandNetworkGetResponseBody: *t = CommandNetworkGetResponseBody case CommandNetworkGetResponseBodyForInterception: *t = CommandNetworkGetResponseBodyForInterception case CommandNetworkReplayXHR: *t = CommandNetworkReplayXHR case CommandNetworkSearchInResponseBody: *t = CommandNetworkSearchInResponseBody case CommandNetworkSetBlockedURLS: *t = CommandNetworkSetBlockedURLS case CommandNetworkSetBypassServiceWorker: *t = CommandNetworkSetBypassServiceWorker case CommandNetworkSetCacheDisabled: *t = CommandNetworkSetCacheDisabled case CommandNetworkSetCookie: *t = CommandNetworkSetCookie case CommandNetworkSetCookies: *t = CommandNetworkSetCookies case CommandNetworkSetDataSizeLimitsForTest: *t = CommandNetworkSetDataSizeLimitsForTest case CommandNetworkSetExtraHTTPHeaders: *t = CommandNetworkSetExtraHTTPHeaders case CommandNetworkSetRequestInterception: *t = CommandNetworkSetRequestInterception case CommandNetworkSetUserAgentOverride: *t = CommandNetworkSetUserAgentOverride case EventOverlayInspectNodeRequested: *t = EventOverlayInspectNodeRequested case EventOverlayNodeHighlightRequested: *t = EventOverlayNodeHighlightRequested case EventOverlayScreenshotRequested: *t = EventOverlayScreenshotRequested case CommandOverlayDisable: *t = CommandOverlayDisable case CommandOverlayEnable: *t = CommandOverlayEnable case CommandOverlayGetHighlightObjectForTest: *t = CommandOverlayGetHighlightObjectForTest case CommandOverlayHideHighlight: *t = CommandOverlayHideHighlight case CommandOverlayHighlightFrame: *t = CommandOverlayHighlightFrame case CommandOverlayHighlightNode: *t = CommandOverlayHighlightNode case CommandOverlayHighlightQuad: *t = CommandOverlayHighlightQuad case CommandOverlayHighlightRect: *t = CommandOverlayHighlightRect case CommandOverlaySetInspectMode: *t = CommandOverlaySetInspectMode case CommandOverlaySetPausedInDebuggerMessage: *t = CommandOverlaySetPausedInDebuggerMessage case CommandOverlaySetShowDebugBorders: *t = CommandOverlaySetShowDebugBorders case CommandOverlaySetShowFPSCounter: *t = CommandOverlaySetShowFPSCounter case CommandOverlaySetShowPaintRects: *t = CommandOverlaySetShowPaintRects case CommandOverlaySetShowScrollBottleneckRects: *t = CommandOverlaySetShowScrollBottleneckRects case CommandOverlaySetShowViewportSizeOnResize: *t = CommandOverlaySetShowViewportSizeOnResize case CommandOverlaySetSuspended: *t = CommandOverlaySetSuspended case EventPageDomContentEventFired: *t = EventPageDomContentEventFired case EventPageFrameAttached: *t = EventPageFrameAttached case EventPageFrameClearedScheduledNavigation: *t = EventPageFrameClearedScheduledNavigation case EventPageFrameDetached: *t = EventPageFrameDetached case EventPageFrameNavigated: *t = EventPageFrameNavigated case EventPageFrameResized: *t = EventPageFrameResized case EventPageFrameScheduledNavigation: *t = EventPageFrameScheduledNavigation case EventPageFrameStartedLoading: *t = EventPageFrameStartedLoading case EventPageFrameStoppedLoading: *t = EventPageFrameStoppedLoading case EventPageInterstitialHidden: *t = EventPageInterstitialHidden case EventPageInterstitialShown: *t = EventPageInterstitialShown case EventPageJavascriptDialogClosed: *t = EventPageJavascriptDialogClosed case EventPageJavascriptDialogOpening: *t = EventPageJavascriptDialogOpening case EventPageLifecycleEvent: *t = EventPageLifecycleEvent case EventPageLoadEventFired: *t = EventPageLoadEventFired case EventPageScreencastFrame: *t = EventPageScreencastFrame case EventPageScreencastVisibilityChanged: *t = EventPageScreencastVisibilityChanged case EventPageWindowOpen: *t = EventPageWindowOpen case CommandPageAddScriptToEvaluateOnNewDocument: *t = CommandPageAddScriptToEvaluateOnNewDocument case CommandPageBringToFront: *t = CommandPageBringToFront case CommandPageCaptureScreenshot: *t = CommandPageCaptureScreenshot case CommandPageCreateIsolatedWorld: *t = CommandPageCreateIsolatedWorld case CommandPageDisable: *t = CommandPageDisable case CommandPageEnable: *t = CommandPageEnable case CommandPageGetAppManifest: *t = CommandPageGetAppManifest case CommandPageGetFrameTree: *t = CommandPageGetFrameTree case CommandPageGetLayoutMetrics: *t = CommandPageGetLayoutMetrics case CommandPageGetNavigationHistory: *t = CommandPageGetNavigationHistory case CommandPageGetResourceContent: *t = CommandPageGetResourceContent case CommandPageGetResourceTree: *t = CommandPageGetResourceTree case CommandPageHandleJavaScriptDialog: *t = CommandPageHandleJavaScriptDialog case CommandPageNavigate: *t = CommandPageNavigate case CommandPageNavigateToHistoryEntry: *t = CommandPageNavigateToHistoryEntry case CommandPagePrintToPDF: *t = CommandPagePrintToPDF case CommandPageReload: *t = CommandPageReload case CommandPageRemoveScriptToEvaluateOnNewDocument: *t = CommandPageRemoveScriptToEvaluateOnNewDocument case CommandPageRequestAppBanner: *t = CommandPageRequestAppBanner case CommandPageScreencastFrameAck: *t = CommandPageScreencastFrameAck case CommandPageSearchInResource: *t = CommandPageSearchInResource case CommandPageSetAdBlockingEnabled: *t = CommandPageSetAdBlockingEnabled case CommandPageSetAutoAttachToCreatedPages: *t = CommandPageSetAutoAttachToCreatedPages case CommandPageSetDocumentContent: *t = CommandPageSetDocumentContent case CommandPageSetDownloadBehavior: *t = CommandPageSetDownloadBehavior case CommandPageSetLifecycleEventsEnabled: *t = CommandPageSetLifecycleEventsEnabled case CommandPageStartScreencast: *t = CommandPageStartScreencast case CommandPageStopLoading: *t = CommandPageStopLoading case CommandPageStopScreencast: *t = CommandPageStopScreencast case EventPerformanceMetrics: *t = EventPerformanceMetrics case CommandPerformanceDisable: *t = CommandPerformanceDisable case CommandPerformanceEnable: *t = CommandPerformanceEnable case CommandPerformanceGetMetrics: *t = CommandPerformanceGetMetrics case EventSecurityCertificateError: *t = EventSecurityCertificateError case EventSecuritySecurityStateChanged: *t = EventSecuritySecurityStateChanged case CommandSecurityDisable: *t = CommandSecurityDisable case CommandSecurityEnable: *t = CommandSecurityEnable case CommandSecurityHandleCertificateError: *t = CommandSecurityHandleCertificateError case CommandSecuritySetOverrideCertificateErrors: *t = CommandSecuritySetOverrideCertificateErrors case EventServiceWorkerWorkerErrorReported: *t = EventServiceWorkerWorkerErrorReported case EventServiceWorkerWorkerRegistrationUpdated: *t = EventServiceWorkerWorkerRegistrationUpdated case EventServiceWorkerWorkerVersionUpdated: *t = EventServiceWorkerWorkerVersionUpdated case CommandServiceWorkerDeliverPushMessage: *t = CommandServiceWorkerDeliverPushMessage case CommandServiceWorkerDisable: *t = CommandServiceWorkerDisable case CommandServiceWorkerDispatchSyncEvent: *t = CommandServiceWorkerDispatchSyncEvent case CommandServiceWorkerEnable: *t = CommandServiceWorkerEnable case CommandServiceWorkerInspectWorker: *t = CommandServiceWorkerInspectWorker case CommandServiceWorkerSetForceUpdateOnPageLoad: *t = CommandServiceWorkerSetForceUpdateOnPageLoad case CommandServiceWorkerSkipWaiting: *t = CommandServiceWorkerSkipWaiting case CommandServiceWorkerStartWorker: *t = CommandServiceWorkerStartWorker case CommandServiceWorkerStopAllWorkers: *t = CommandServiceWorkerStopAllWorkers case CommandServiceWorkerStopWorker: *t = CommandServiceWorkerStopWorker case CommandServiceWorkerUnregister: *t = CommandServiceWorkerUnregister case CommandServiceWorkerUpdateRegistration: *t = CommandServiceWorkerUpdateRegistration case EventStorageCacheStorageContentUpdated: *t = EventStorageCacheStorageContentUpdated case EventStorageCacheStorageListUpdated: *t = EventStorageCacheStorageListUpdated case EventStorageIndexedDBContentUpdated: *t = EventStorageIndexedDBContentUpdated case EventStorageIndexedDBListUpdated: *t = EventStorageIndexedDBListUpdated case CommandStorageClearDataForOrigin: *t = CommandStorageClearDataForOrigin case CommandStorageGetUsageAndQuota: *t = CommandStorageGetUsageAndQuota case CommandStorageTrackCacheStorageForOrigin: *t = CommandStorageTrackCacheStorageForOrigin case CommandStorageTrackIndexedDBForOrigin: *t = CommandStorageTrackIndexedDBForOrigin case CommandStorageUntrackCacheStorageForOrigin: *t = CommandStorageUntrackCacheStorageForOrigin case CommandStorageUntrackIndexedDBForOrigin: *t = CommandStorageUntrackIndexedDBForOrigin case CommandSystemInfoGetInfo: *t = CommandSystemInfoGetInfo case EventTargetAttachedToTarget: *t = EventTargetAttachedToTarget case EventTargetDetachedFromTarget: *t = EventTargetDetachedFromTarget case EventTargetReceivedMessageFromTarget: *t = EventTargetReceivedMessageFromTarget case EventTargetTargetCreated: *t = EventTargetTargetCreated case EventTargetTargetDestroyed: *t = EventTargetTargetDestroyed case EventTargetTargetInfoChanged: *t = EventTargetTargetInfoChanged case CommandTargetActivateTarget: *t = CommandTargetActivateTarget case CommandTargetAttachToTarget: *t = CommandTargetAttachToTarget case CommandTargetCloseTarget: *t = CommandTargetCloseTarget case CommandTargetCreateBrowserContext: *t = CommandTargetCreateBrowserContext case CommandTargetCreateTarget: *t = CommandTargetCreateTarget case CommandTargetDetachFromTarget: *t = CommandTargetDetachFromTarget case CommandTargetDisposeBrowserContext: *t = CommandTargetDisposeBrowserContext case CommandTargetGetTargetInfo: *t = CommandTargetGetTargetInfo case CommandTargetGetTargets: *t = CommandTargetGetTargets case CommandTargetSendMessageToTarget: *t = CommandTargetSendMessageToTarget case CommandTargetSetAttachToFrames: *t = CommandTargetSetAttachToFrames case CommandTargetSetAutoAttach: *t = CommandTargetSetAutoAttach case CommandTargetSetDiscoverTargets: *t = CommandTargetSetDiscoverTargets case CommandTargetSetRemoteLocations: *t = CommandTargetSetRemoteLocations case EventTetheringAccepted: *t = EventTetheringAccepted case CommandTetheringBind: *t = CommandTetheringBind case CommandTetheringUnbind: *t = CommandTetheringUnbind case EventTracingBufferUsage: *t = EventTracingBufferUsage case EventTracingDataCollected: *t = EventTracingDataCollected case EventTracingTracingComplete: *t = EventTracingTracingComplete case CommandTracingEnd: *t = CommandTracingEnd case CommandTracingGetCategories: *t = CommandTracingGetCategories case CommandTracingRecordClockSyncMarker: *t = CommandTracingRecordClockSyncMarker case CommandTracingRequestMemoryDump: *t = CommandTracingRequestMemoryDump case CommandTracingStart: *t = CommandTracingStart case EventDebuggerBreakpointResolved: *t = EventDebuggerBreakpointResolved case EventDebuggerPaused: *t = EventDebuggerPaused case EventDebuggerResumed: *t = EventDebuggerResumed case EventDebuggerScriptFailedToParse: *t = EventDebuggerScriptFailedToParse case EventDebuggerScriptParsed: *t = EventDebuggerScriptParsed case CommandDebuggerContinueToLocation: *t = CommandDebuggerContinueToLocation case CommandDebuggerDisable: *t = CommandDebuggerDisable case CommandDebuggerEnable: *t = CommandDebuggerEnable case CommandDebuggerEvaluateOnCallFrame: *t = CommandDebuggerEvaluateOnCallFrame case CommandDebuggerGetPossibleBreakpoints: *t = CommandDebuggerGetPossibleBreakpoints case CommandDebuggerGetScriptSource: *t = CommandDebuggerGetScriptSource case CommandDebuggerGetStackTrace: *t = CommandDebuggerGetStackTrace case CommandDebuggerPause: *t = CommandDebuggerPause case CommandDebuggerPauseOnAsyncCall: *t = CommandDebuggerPauseOnAsyncCall case CommandDebuggerRemoveBreakpoint: *t = CommandDebuggerRemoveBreakpoint case CommandDebuggerRestartFrame: *t = CommandDebuggerRestartFrame case CommandDebuggerResume: *t = CommandDebuggerResume case CommandDebuggerScheduleStepIntoAsync: *t = CommandDebuggerScheduleStepIntoAsync case CommandDebuggerSearchInContent: *t = CommandDebuggerSearchInContent case CommandDebuggerSetAsyncCallStackDepth: *t = CommandDebuggerSetAsyncCallStackDepth case CommandDebuggerSetBlackboxPatterns: *t = CommandDebuggerSetBlackboxPatterns case CommandDebuggerSetBlackboxedRanges: *t = CommandDebuggerSetBlackboxedRanges case CommandDebuggerSetBreakpoint: *t = CommandDebuggerSetBreakpoint case CommandDebuggerSetBreakpointByURL: *t = CommandDebuggerSetBreakpointByURL case CommandDebuggerSetBreakpointsActive: *t = CommandDebuggerSetBreakpointsActive case CommandDebuggerSetPauseOnExceptions: *t = CommandDebuggerSetPauseOnExceptions case CommandDebuggerSetReturnValue: *t = CommandDebuggerSetReturnValue case CommandDebuggerSetScriptSource: *t = CommandDebuggerSetScriptSource case CommandDebuggerSetSkipAllPauses: *t = CommandDebuggerSetSkipAllPauses case CommandDebuggerSetVariableValue: *t = CommandDebuggerSetVariableValue case CommandDebuggerStepInto: *t = CommandDebuggerStepInto case CommandDebuggerStepOut: *t = CommandDebuggerStepOut case CommandDebuggerStepOver: *t = CommandDebuggerStepOver case EventHeapProfilerAddHeapSnapshotChunk: *t = EventHeapProfilerAddHeapSnapshotChunk case EventHeapProfilerHeapStatsUpdate: *t = EventHeapProfilerHeapStatsUpdate case EventHeapProfilerLastSeenObjectID: *t = EventHeapProfilerLastSeenObjectID case EventHeapProfilerReportHeapSnapshotProgress: *t = EventHeapProfilerReportHeapSnapshotProgress case EventHeapProfilerResetProfiles: *t = EventHeapProfilerResetProfiles case CommandHeapProfilerAddInspectedHeapObject: *t = CommandHeapProfilerAddInspectedHeapObject case CommandHeapProfilerCollectGarbage: *t = CommandHeapProfilerCollectGarbage case CommandHeapProfilerDisable: *t = CommandHeapProfilerDisable case CommandHeapProfilerEnable: *t = CommandHeapProfilerEnable case CommandHeapProfilerGetHeapObjectID: *t = CommandHeapProfilerGetHeapObjectID case CommandHeapProfilerGetObjectByHeapObjectID: *t = CommandHeapProfilerGetObjectByHeapObjectID case CommandHeapProfilerGetSamplingProfile: *t = CommandHeapProfilerGetSamplingProfile case CommandHeapProfilerStartSampling: *t = CommandHeapProfilerStartSampling case CommandHeapProfilerStartTrackingHeapObjects: *t = CommandHeapProfilerStartTrackingHeapObjects case CommandHeapProfilerStopSampling: *t = CommandHeapProfilerStopSampling case CommandHeapProfilerStopTrackingHeapObjects: *t = CommandHeapProfilerStopTrackingHeapObjects case CommandHeapProfilerTakeHeapSnapshot: *t = CommandHeapProfilerTakeHeapSnapshot case EventProfilerConsoleProfileFinished: *t = EventProfilerConsoleProfileFinished case EventProfilerConsoleProfileStarted: *t = EventProfilerConsoleProfileStarted case CommandProfilerDisable: *t = CommandProfilerDisable case CommandProfilerEnable: *t = CommandProfilerEnable case CommandProfilerGetBestEffortCoverage: *t = CommandProfilerGetBestEffortCoverage case CommandProfilerSetSamplingInterval: *t = CommandProfilerSetSamplingInterval case CommandProfilerStart: *t = CommandProfilerStart case CommandProfilerStartPreciseCoverage: *t = CommandProfilerStartPreciseCoverage case CommandProfilerStartTypeProfile: *t = CommandProfilerStartTypeProfile case CommandProfilerStop: *t = CommandProfilerStop case CommandProfilerStopPreciseCoverage: *t = CommandProfilerStopPreciseCoverage case CommandProfilerStopTypeProfile: *t = CommandProfilerStopTypeProfile case CommandProfilerTakePreciseCoverage: *t = CommandProfilerTakePreciseCoverage case CommandProfilerTakeTypeProfile: *t = CommandProfilerTakeTypeProfile case EventRuntimeConsoleAPICalled: *t = EventRuntimeConsoleAPICalled case EventRuntimeExceptionRevoked: *t = EventRuntimeExceptionRevoked case EventRuntimeExceptionThrown: *t = EventRuntimeExceptionThrown case EventRuntimeExecutionContextCreated: *t = EventRuntimeExecutionContextCreated case EventRuntimeExecutionContextDestroyed: *t = EventRuntimeExecutionContextDestroyed case EventRuntimeExecutionContextsCleared: *t = EventRuntimeExecutionContextsCleared case EventRuntimeInspectRequested: *t = EventRuntimeInspectRequested case CommandRuntimeAwaitPromise: *t = CommandRuntimeAwaitPromise case CommandRuntimeCallFunctionOn: *t = CommandRuntimeCallFunctionOn case CommandRuntimeCompileScript: *t = CommandRuntimeCompileScript case CommandRuntimeDisable: *t = CommandRuntimeDisable case CommandRuntimeDiscardConsoleEntries: *t = CommandRuntimeDiscardConsoleEntries case CommandRuntimeEnable: *t = CommandRuntimeEnable case CommandRuntimeEvaluate: *t = CommandRuntimeEvaluate case CommandRuntimeGetProperties: *t = CommandRuntimeGetProperties case CommandRuntimeGlobalLexicalScopeNames: *t = CommandRuntimeGlobalLexicalScopeNames case CommandRuntimeQueryObjects: *t = CommandRuntimeQueryObjects case CommandRuntimeReleaseObject: *t = CommandRuntimeReleaseObject case CommandRuntimeReleaseObjectGroup: *t = CommandRuntimeReleaseObjectGroup case CommandRuntimeRunIfWaitingForDebugger: *t = CommandRuntimeRunIfWaitingForDebugger case CommandRuntimeRunScript: *t = CommandRuntimeRunScript case CommandRuntimeSetCustomObjectFormatterEnabled: *t = CommandRuntimeSetCustomObjectFormatterEnabled default: in.AddError(errors.New("unknown MethodType value")) } } // UnmarshalJSON satisfies json.Unmarshaler. func (t *MethodType) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // Domain returns the Chrome Debugging Protocol domain of the event or command. func (t MethodType) Domain() string { return string(t[:strings.IndexByte(string(t), '.')]) } // ErrorType error type. type ErrorType string // String returns the ErrorType as string value. func (t ErrorType) String() string { return string(t) } // ErrorType values. const ( ErrChannelClosed ErrorType = "channel closed" ErrInvalidResult ErrorType = "invalid result" ErrUnknownResult ErrorType = "unknown result" ) // MarshalEasyJSON satisfies easyjson.Marshaler. func (t ErrorType) MarshalEasyJSON(out *jwriter.Writer) { out.String(string(t)) } // MarshalJSON satisfies json.Marshaler. func (t ErrorType) MarshalJSON() ([]byte, error) { return easyjson.Marshal(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *ErrorType) UnmarshalEasyJSON(in *jlexer.Lexer) { switch ErrorType(in.String()) { case ErrChannelClosed: *t = ErrChannelClosed case ErrInvalidResult: *t = ErrInvalidResult case ErrUnknownResult: *t = ErrUnknownResult default: in.AddError(errors.New("unknown ErrorType value")) } } // UnmarshalJSON satisfies json.Unmarshaler. func (t *ErrorType) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // Error satisfies the error interface. func (t ErrorType) Error() string { return string(t) } // Handler is the common interface for a Chrome Debugging Protocol target. type Handler interface { // SetActive changes the top level frame id. SetActive(context.Context, FrameID) error // GetRoot returns the root document node for the top level frame. GetRoot(context.Context) (*Node, error) // WaitFrame waits for a frame to be available. WaitFrame(context.Context, FrameID) (*Frame, error) // WaitNode waits for a node to be available. WaitNode(context.Context, *Frame, NodeID) (*Node, error) // Execute executes the specified command using the supplied context and // parameters. Execute(context.Context, MethodType, easyjson.Marshaler, easyjson.Unmarshaler) error // Listen creates a channel that will receive an event for the types // specified. Listen(...MethodType) <-chan interface{} // Release releases a channel returned from Listen. Release(<-chan interface{}) } // LoaderID unique loader identifier. type LoaderID string // String returns the LoaderID as string value. func (t LoaderID) String() string { return string(t) } // TimeSinceEpoch uTC time in seconds, counted from January 1, 1970. type TimeSinceEpoch time.Time // Time returns the TimeSinceEpoch as time.Time value. func (t TimeSinceEpoch) Time() time.Time { return time.Time(t) } // MarshalEasyJSON satisfies easyjson.Marshaler. func (t TimeSinceEpoch) MarshalEasyJSON(out *jwriter.Writer) { v := float64(time.Time(t).UnixNano() / int64(time.Second)) out.Buffer.EnsureSpace(20) out.Buffer.Buf = strconv.AppendFloat(out.Buffer.Buf, v, 'f', -1, 64) } // MarshalJSON satisfies json.Marshaler. func (t TimeSinceEpoch) MarshalJSON() ([]byte, error) { return easyjson.Marshal(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *TimeSinceEpoch) UnmarshalEasyJSON(in *jlexer.Lexer) { *t = TimeSinceEpoch(time.Unix(0, int64(in.Float64()*float64(time.Second)))) } // UnmarshalJSON satisfies json.Unmarshaler. func (t *TimeSinceEpoch) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // MonotonicTime monotonically increasing time in seconds since an arbitrary // point in the past. type MonotonicTime time.Time // Time returns the MonotonicTime as time.Time value. func (t MonotonicTime) Time() time.Time { return time.Time(t) } // MonotonicTimeEpoch is the MonotonicTime time epoch. var MonotonicTimeEpoch *time.Time func init() { // initialize epoch bt := sysutil.BootTime() MonotonicTimeEpoch = &bt } // MarshalEasyJSON satisfies easyjson.Marshaler. func (t MonotonicTime) MarshalEasyJSON(out *jwriter.Writer) { v := float64(time.Time(t).Sub(*MonotonicTimeEpoch)) / float64(time.Second) out.Buffer.EnsureSpace(20) out.Buffer.Buf = strconv.AppendFloat(out.Buffer.Buf, v, 'f', -1, 64) } // MarshalJSON satisfies json.Marshaler. func (t MonotonicTime) MarshalJSON() ([]byte, error) { return easyjson.Marshal(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *MonotonicTime) UnmarshalEasyJSON(in *jlexer.Lexer) { *t = MonotonicTime(MonotonicTimeEpoch.Add(time.Duration(in.Float64() * float64(time.Second)))) } // UnmarshalJSON satisfies json.Unmarshaler. func (t *MonotonicTime) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // FrameID unique frame identifier. type FrameID string // String returns the FrameID as string value. func (t FrameID) String() string { return string(t) } // UnmarshalEasyJSON satisfies easyjson.Unmarshaler. func (t *FrameID) UnmarshalEasyJSON(in *jlexer.Lexer) { buf := in.Raw() if l := len(buf); l > 2 && buf[0] == '"' && buf[l-1] == '"' { buf = buf[1 : l-1] } *t = FrameID(buf) } // UnmarshalJSON satisfies json.Unmarshaler. func (t *FrameID) UnmarshalJSON(buf []byte) error { return easyjson.Unmarshal(buf, t) } // Frame information about the Frame on the page. type Frame struct { ID FrameID `json:"id"` // Frame unique identifier. ParentID FrameID `json:"parentId,omitempty"` // Parent frame identifier. LoaderID LoaderID `json:"loaderId"` // Identifier of the loader associated with this frame. Name string `json:"name,omitempty"` // Frame's name as specified in the tag. URL string `json:"url"` // Frame document's URL. SecurityOrigin string `json:"securityOrigin"` // Frame document's security origin. MimeType string `json:"mimeType"` // Frame document's mimeType as determined by the browser. UnreachableURL string `json:"unreachableUrl,omitempty"` // If the frame failed to load, this contains the URL that could not be loaded. State FrameState `json:"-"` // Frame state. Root *Node `json:"-"` // Frame document root. Nodes map[NodeID]*Node `json:"-"` // Frame nodes. sync.RWMutex `json:"-"` // Read write mutex. } // FrameState is the state of a Frame. type FrameState uint16 // FrameState enum values. const ( FrameDOMContentEventFired FrameState = 1 << (15 - iota) FrameLoadEventFired FrameAttached FrameNavigated FrameLoading FrameScheduledNavigation ) // frameStateNames are the names of the frame states. var frameStateNames = map[FrameState]string{ FrameDOMContentEventFired: "DOMContentEventFired", FrameLoadEventFired: "LoadEventFired", FrameAttached: "Attached", FrameNavigated: "Navigated", FrameLoading: "Loading", FrameScheduledNavigation: "ScheduledNavigation", } // String satisfies stringer interface. func (fs FrameState) String() string { var s []string for k, v := range frameStateNames { if fs&k != 0 { s = append(s, v) } } return "[" + strings.Join(s, " ") + "]" } // EmptyFrameID is the "non-existent" frame id. const EmptyFrameID = FrameID("")