2017-01-24 15:09:23 +00:00
// Package dom provides the Chrome Debugging Protocol
2017-02-12 04:59:33 +00:00
// commands, types, and events for the DOM domain.
2017-01-24 15:09:23 +00:00
//
// This domain exposes DOM read/write operations. Each DOM Node is
// represented with its mirror object that has an id. This id can be used to get
// additional information on the Node, resolve it into the JavaScript object
// wrapper, etc. It is important that client receives DOM events only for the
// nodes that are known to the client. Backend keeps track of the nodes that
// were sent to the client and never sends the same node twice. It is client's
// responsibility to collect information about the nodes that were sent to the
// client.<p>Note that iframe owner elements will return corresponding document
// elements as their child nodes.</p>.
//
// Generated by the chromedp-gen command.
package dom
2017-07-09 02:05:19 +00:00
// Code generated by chromedp-gen. DO NOT EDIT.
2017-01-24 15:09:23 +00:00
import (
"context"
2017-01-26 07:28:34 +00:00
cdp "github.com/knq/chromedp/cdp"
2017-01-24 15:09:23 +00:00
"github.com/knq/chromedp/cdp/runtime"
)
// EnableParams enables DOM agent for the given page.
type EnableParams struct { }
// Enable enables DOM agent for the given page.
func Enable ( ) * EnableParams {
return & EnableParams { }
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.enable against the provided context and
// target handler.
func ( p * EnableParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMEnable , nil , nil )
2017-01-24 15:09:23 +00:00
}
// DisableParams disables DOM agent for the given page.
type DisableParams struct { }
// Disable disables DOM agent for the given page.
func Disable ( ) * DisableParams {
return & DisableParams { }
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.disable against the provided context and
// target handler.
func ( p * DisableParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMDisable , nil , nil )
2017-01-24 15:09:23 +00:00
}
// GetDocumentParams returns the root DOM node (and optionally the subtree)
// to the caller.
type GetDocumentParams struct {
Depth int64 ` json:"depth,omitempty" ` // The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the entire subtree or provide an integer larger than 0.
Pierce bool ` json:"pierce,omitempty" ` // Whether or not iframes and shadow roots should be traversed when returning the subtree (default is false).
}
// GetDocument returns the root DOM node (and optionally the subtree) to the
// caller.
//
// parameters:
func GetDocument ( ) * GetDocumentParams {
return & GetDocumentParams { }
}
// WithDepth the maximum depth at which children should be retrieved,
// defaults to 1. Use -1 for the entire subtree or provide an integer larger
// than 0.
func ( p GetDocumentParams ) WithDepth ( depth int64 ) * GetDocumentParams {
p . Depth = depth
return & p
}
// WithPierce whether or not iframes and shadow roots should be traversed
// when returning the subtree (default is false).
func ( p GetDocumentParams ) WithPierce ( pierce bool ) * GetDocumentParams {
p . Pierce = pierce
return & p
}
// GetDocumentReturns return values.
type GetDocumentReturns struct {
2017-01-26 07:28:34 +00:00
Root * cdp . Node ` json:"root,omitempty" ` // Resulting node.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.getDocument against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// root - Resulting node.
2017-02-12 04:59:33 +00:00
func ( p * GetDocumentParams ) Do ( ctxt context . Context , h cdp . Handler ) ( root * cdp . Node , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res GetDocumentReturns
err = h . Execute ( ctxt , cdp . CommandDOMGetDocument , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . Root , nil
2017-01-24 15:09:23 +00:00
}
2017-01-29 03:37:56 +00:00
// GetFlattenedDocumentParams returns the root DOM node (and optionally the
// subtree) to the caller.
type GetFlattenedDocumentParams struct {
Depth int64 ` json:"depth,omitempty" ` // The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the entire subtree or provide an integer larger than 0.
Pierce bool ` json:"pierce,omitempty" ` // Whether or not iframes and shadow roots should be traversed when returning the subtree (default is false).
}
// GetFlattenedDocument returns the root DOM node (and optionally the
// subtree) to the caller.
//
// parameters:
func GetFlattenedDocument ( ) * GetFlattenedDocumentParams {
return & GetFlattenedDocumentParams { }
}
// WithDepth the maximum depth at which children should be retrieved,
// defaults to 1. Use -1 for the entire subtree or provide an integer larger
// than 0.
func ( p GetFlattenedDocumentParams ) WithDepth ( depth int64 ) * GetFlattenedDocumentParams {
p . Depth = depth
return & p
}
// WithPierce whether or not iframes and shadow roots should be traversed
// when returning the subtree (default is false).
func ( p GetFlattenedDocumentParams ) WithPierce ( pierce bool ) * GetFlattenedDocumentParams {
p . Pierce = pierce
return & p
}
// GetFlattenedDocumentReturns return values.
type GetFlattenedDocumentReturns struct {
Nodes [ ] * cdp . Node ` json:"nodes,omitempty" ` // Resulting node.
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.getFlattenedDocument against the provided context and
// target handler.
2017-01-29 03:37:56 +00:00
//
// returns:
// nodes - Resulting node.
2017-02-12 04:59:33 +00:00
func ( p * GetFlattenedDocumentParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodes [ ] * cdp . Node , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res GetFlattenedDocumentReturns
err = h . Execute ( ctxt , cdp . CommandDOMGetFlattenedDocument , p , & res )
2017-01-29 03:37:56 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . Nodes , nil
2017-01-29 03:37:56 +00:00
}
2017-01-24 15:09:23 +00:00
// CollectClassNamesFromSubtreeParams collects class names for the node with
// given id and all of it's child nodes.
type CollectClassNamesFromSubtreeParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to collect class names.
2017-01-24 15:09:23 +00:00
}
// CollectClassNamesFromSubtree collects class names for the node with given
// id and all of it's child nodes.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to collect class names.
func CollectClassNamesFromSubtree ( nodeID cdp . NodeID ) * CollectClassNamesFromSubtreeParams {
2017-01-24 15:09:23 +00:00
return & CollectClassNamesFromSubtreeParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
}
}
// CollectClassNamesFromSubtreeReturns return values.
type CollectClassNamesFromSubtreeReturns struct {
ClassNames [ ] string ` json:"classNames,omitempty" ` // Class name list.
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.collectClassNamesFromSubtree against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// classNames - Class name list.
2017-02-12 04:59:33 +00:00
func ( p * CollectClassNamesFromSubtreeParams ) Do ( ctxt context . Context , h cdp . Handler ) ( classNames [ ] string , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res CollectClassNamesFromSubtreeReturns
err = h . Execute ( ctxt , cdp . CommandDOMCollectClassNamesFromSubtree , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . ClassNames , nil
2017-01-24 15:09:23 +00:00
}
// RequestChildNodesParams requests that children of the node with given id
// are returned to the caller in form of setChildNodes events where not only
// immediate children are retrieved, but all children down to the specified
// depth.
type RequestChildNodesParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to get children for.
Depth int64 ` json:"depth,omitempty" ` // The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the entire subtree or provide an integer larger than 0.
Pierce bool ` json:"pierce,omitempty" ` // Whether or not iframes and shadow roots should be traversed when returning the sub-tree (default is false).
2017-01-24 15:09:23 +00:00
}
// RequestChildNodes requests that children of the node with given id are
// returned to the caller in form of setChildNodes events where not only
// immediate children are retrieved, but all children down to the specified
// depth.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to get children for.
func RequestChildNodes ( nodeID cdp . NodeID ) * RequestChildNodesParams {
2017-01-24 15:09:23 +00:00
return & RequestChildNodesParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
}
}
// WithDepth the maximum depth at which children should be retrieved,
// defaults to 1. Use -1 for the entire subtree or provide an integer larger
// than 0.
func ( p RequestChildNodesParams ) WithDepth ( depth int64 ) * RequestChildNodesParams {
p . Depth = depth
return & p
}
// WithPierce whether or not iframes and shadow roots should be traversed
// when returning the sub-tree (default is false).
func ( p RequestChildNodesParams ) WithPierce ( pierce bool ) * RequestChildNodesParams {
p . Pierce = pierce
return & p
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.requestChildNodes against the provided context and
// target handler.
func ( p * RequestChildNodesParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMRequestChildNodes , p , nil )
2017-01-24 15:09:23 +00:00
}
// QuerySelectorParams executes querySelector on a given node.
type QuerySelectorParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to query upon.
Selector string ` json:"selector" ` // Selector string.
2017-01-24 15:09:23 +00:00
}
// QuerySelector executes querySelector on a given node.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to query upon.
2017-01-24 15:09:23 +00:00
// selector - Selector string.
2017-01-26 07:28:34 +00:00
func QuerySelector ( nodeID cdp . NodeID , selector string ) * QuerySelectorParams {
2017-01-24 15:09:23 +00:00
return & QuerySelectorParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
Selector : selector ,
}
}
// QuerySelectorReturns return values.
type QuerySelectorReturns struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Query selector result.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.querySelector against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// nodeID - Query selector result.
2017-02-12 04:59:33 +00:00
func ( p * QuerySelectorParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeID cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res QuerySelectorReturns
err = h . Execute ( ctxt , cdp . CommandDOMQuerySelector , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return 0 , err
}
2017-02-14 08:41:23 +00:00
return res . NodeID , nil
2017-01-24 15:09:23 +00:00
}
// QuerySelectorAllParams executes querySelectorAll on a given node.
type QuerySelectorAllParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to query upon.
Selector string ` json:"selector" ` // Selector string.
2017-01-24 15:09:23 +00:00
}
// QuerySelectorAll executes querySelectorAll on a given node.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to query upon.
2017-01-24 15:09:23 +00:00
// selector - Selector string.
2017-01-26 07:28:34 +00:00
func QuerySelectorAll ( nodeID cdp . NodeID , selector string ) * QuerySelectorAllParams {
2017-01-24 15:09:23 +00:00
return & QuerySelectorAllParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
Selector : selector ,
}
}
// QuerySelectorAllReturns return values.
type QuerySelectorAllReturns struct {
2017-01-26 07:28:34 +00:00
NodeIds [ ] cdp . NodeID ` json:"nodeIds,omitempty" ` // Query selector result.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.querySelectorAll against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// nodeIds - Query selector result.
2017-02-12 04:59:33 +00:00
func ( p * QuerySelectorAllParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeIds [ ] cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res QuerySelectorAllReturns
err = h . Execute ( ctxt , cdp . CommandDOMQuerySelectorAll , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . NodeIds , nil
2017-01-24 15:09:23 +00:00
}
// SetNodeNameParams sets node name for a node with given id.
type SetNodeNameParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to set name for.
Name string ` json:"name" ` // New node's name.
2017-01-24 15:09:23 +00:00
}
// SetNodeName sets node name for a node with given id.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to set name for.
2017-01-24 15:09:23 +00:00
// name - New node's name.
2017-01-26 07:28:34 +00:00
func SetNodeName ( nodeID cdp . NodeID , name string ) * SetNodeNameParams {
2017-01-24 15:09:23 +00:00
return & SetNodeNameParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
Name : name ,
}
}
// SetNodeNameReturns return values.
type SetNodeNameReturns struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // New node's id.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.setNodeName against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// nodeID - New node's id.
2017-02-12 04:59:33 +00:00
func ( p * SetNodeNameParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeID cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res SetNodeNameReturns
err = h . Execute ( ctxt , cdp . CommandDOMSetNodeName , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return 0 , err
}
2017-02-14 08:41:23 +00:00
return res . NodeID , nil
2017-01-24 15:09:23 +00:00
}
// SetNodeValueParams sets node value for a node with given id.
type SetNodeValueParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to set value for.
Value string ` json:"value" ` // New node's value.
2017-01-24 15:09:23 +00:00
}
// SetNodeValue sets node value for a node with given id.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to set value for.
2017-01-24 15:09:23 +00:00
// value - New node's value.
2017-01-26 07:28:34 +00:00
func SetNodeValue ( nodeID cdp . NodeID , value string ) * SetNodeValueParams {
2017-01-24 15:09:23 +00:00
return & SetNodeValueParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
Value : value ,
}
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.setNodeValue against the provided context and
// target handler.
func ( p * SetNodeValueParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMSetNodeValue , p , nil )
2017-01-24 15:09:23 +00:00
}
// RemoveNodeParams removes node with given id.
type RemoveNodeParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to remove.
2017-01-24 15:09:23 +00:00
}
// RemoveNode removes node with given id.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to remove.
func RemoveNode ( nodeID cdp . NodeID ) * RemoveNodeParams {
2017-01-24 15:09:23 +00:00
return & RemoveNodeParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
}
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.removeNode against the provided context and
// target handler.
func ( p * RemoveNodeParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMRemoveNode , p , nil )
2017-01-24 15:09:23 +00:00
}
// SetAttributeValueParams sets attribute for an element with given id.
type SetAttributeValueParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the element to set attribute for.
Name string ` json:"name" ` // Attribute name.
Value string ` json:"value" ` // Attribute value.
2017-01-24 15:09:23 +00:00
}
// SetAttributeValue sets attribute for an element with given id.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the element to set attribute for.
2017-01-24 15:09:23 +00:00
// name - Attribute name.
// value - Attribute value.
2017-01-26 07:28:34 +00:00
func SetAttributeValue ( nodeID cdp . NodeID , name string , value string ) * SetAttributeValueParams {
2017-01-24 15:09:23 +00:00
return & SetAttributeValueParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
Name : name ,
Value : value ,
}
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.setAttributeValue against the provided context and
// target handler.
func ( p * SetAttributeValueParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMSetAttributeValue , p , nil )
2017-01-24 15:09:23 +00:00
}
// SetAttributesAsTextParams sets attributes on element with given id. This
// method is useful when user edits some existing attribute value and types in
// several attribute name/value pairs.
type SetAttributesAsTextParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the element to set attributes for.
Text string ` json:"text" ` // Text with a number of attributes. Will parse this text using HTML parser.
Name string ` json:"name,omitempty" ` // Attribute name to replace with new attributes derived from text in case text parsed successfully.
2017-01-24 15:09:23 +00:00
}
// SetAttributesAsText sets attributes on element with given id. This method
// is useful when user edits some existing attribute value and types in several
// attribute name/value pairs.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the element to set attributes for.
2017-01-24 15:09:23 +00:00
// text - Text with a number of attributes. Will parse this text using HTML parser.
2017-01-26 07:28:34 +00:00
func SetAttributesAsText ( nodeID cdp . NodeID , text string ) * SetAttributesAsTextParams {
2017-01-24 15:09:23 +00:00
return & SetAttributesAsTextParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
Text : text ,
}
}
// WithName attribute name to replace with new attributes derived from text
// in case text parsed successfully.
func ( p SetAttributesAsTextParams ) WithName ( name string ) * SetAttributesAsTextParams {
p . Name = name
return & p
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.setAttributesAsText against the provided context and
// target handler.
func ( p * SetAttributesAsTextParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMSetAttributesAsText , p , nil )
2017-01-24 15:09:23 +00:00
}
// RemoveAttributeParams removes attribute with given name from an element
// with given id.
type RemoveAttributeParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the element to remove attribute from.
Name string ` json:"name" ` // Name of the attribute to remove.
2017-01-24 15:09:23 +00:00
}
// RemoveAttribute removes attribute with given name from an element with
// given id.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the element to remove attribute from.
2017-01-24 15:09:23 +00:00
// name - Name of the attribute to remove.
2017-01-26 07:28:34 +00:00
func RemoveAttribute ( nodeID cdp . NodeID , name string ) * RemoveAttributeParams {
2017-01-24 15:09:23 +00:00
return & RemoveAttributeParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
Name : name ,
}
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.removeAttribute against the provided context and
// target handler.
func ( p * RemoveAttributeParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMRemoveAttribute , p , nil )
2017-01-24 15:09:23 +00:00
}
// GetOuterHTMLParams returns node's HTML markup.
type GetOuterHTMLParams struct {
2017-08-20 23:56:21 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Identifier of the node.
BackendNodeID cdp . BackendNodeID ` json:"backendNodeId,omitempty" ` // Identifier of the backend node.
ObjectID runtime . RemoteObjectID ` json:"objectId,omitempty" ` // JavaScript object id of the node wrapper.
2017-01-24 15:09:23 +00:00
}
// GetOuterHTML returns node's HTML markup.
//
// parameters:
2017-08-20 23:56:21 +00:00
func GetOuterHTML ( ) * GetOuterHTMLParams {
return & GetOuterHTMLParams { }
}
// WithNodeID identifier of the node.
func ( p GetOuterHTMLParams ) WithNodeID ( nodeID cdp . NodeID ) * GetOuterHTMLParams {
p . NodeID = nodeID
return & p
}
// WithBackendNodeID identifier of the backend node.
func ( p GetOuterHTMLParams ) WithBackendNodeID ( backendNodeID cdp . BackendNodeID ) * GetOuterHTMLParams {
p . BackendNodeID = backendNodeID
return & p
}
2017-09-28 08:41:05 +00:00
// WithObjectID JavaScript object id of the node wrapper.
2017-08-20 23:56:21 +00:00
func ( p GetOuterHTMLParams ) WithObjectID ( objectID runtime . RemoteObjectID ) * GetOuterHTMLParams {
p . ObjectID = objectID
return & p
2017-01-24 15:09:23 +00:00
}
// GetOuterHTMLReturns return values.
type GetOuterHTMLReturns struct {
OuterHTML string ` json:"outerHTML,omitempty" ` // Outer HTML markup.
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.getOuterHTML against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// outerHTML - Outer HTML markup.
2017-02-12 04:59:33 +00:00
func ( p * GetOuterHTMLParams ) Do ( ctxt context . Context , h cdp . Handler ) ( outerHTML string , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res GetOuterHTMLReturns
err = h . Execute ( ctxt , cdp . CommandDOMGetOuterHTML , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return "" , err
}
2017-02-14 08:41:23 +00:00
return res . OuterHTML , nil
2017-01-24 15:09:23 +00:00
}
// SetOuterHTMLParams sets node HTML markup, returns new node id.
type SetOuterHTMLParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to set markup for.
OuterHTML string ` json:"outerHTML" ` // Outer HTML markup to set.
2017-01-24 15:09:23 +00:00
}
// SetOuterHTML sets node HTML markup, returns new node id.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to set markup for.
2017-01-24 15:09:23 +00:00
// outerHTML - Outer HTML markup to set.
2017-01-26 07:28:34 +00:00
func SetOuterHTML ( nodeID cdp . NodeID , outerHTML string ) * SetOuterHTMLParams {
2017-01-24 15:09:23 +00:00
return & SetOuterHTMLParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
OuterHTML : outerHTML ,
}
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.setOuterHTML against the provided context and
// target handler.
func ( p * SetOuterHTMLParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMSetOuterHTML , p , nil )
2017-01-24 15:09:23 +00:00
}
// PerformSearchParams searches for a given string in the DOM tree. Use
// getSearchResults to access search results or cancelSearch to end this search
// session.
type PerformSearchParams struct {
Query string ` json:"query" ` // Plain text or query selector or XPath search query.
IncludeUserAgentShadowDOM bool ` json:"includeUserAgentShadowDOM,omitempty" ` // True to search in user agent shadow DOM.
}
// PerformSearch searches for a given string in the DOM tree. Use
// getSearchResults to access search results or cancelSearch to end this search
// session.
//
// parameters:
// query - Plain text or query selector or XPath search query.
func PerformSearch ( query string ) * PerformSearchParams {
return & PerformSearchParams {
Query : query ,
}
}
// WithIncludeUserAgentShadowDOM true to search in user agent shadow DOM.
func ( p PerformSearchParams ) WithIncludeUserAgentShadowDOM ( includeUserAgentShadowDOM bool ) * PerformSearchParams {
p . IncludeUserAgentShadowDOM = includeUserAgentShadowDOM
return & p
}
// PerformSearchReturns return values.
type PerformSearchReturns struct {
SearchID string ` json:"searchId,omitempty" ` // Unique search session identifier.
ResultCount int64 ` json:"resultCount,omitempty" ` // Number of search results.
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.performSearch against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// searchID - Unique search session identifier.
2017-01-24 15:09:23 +00:00
// resultCount - Number of search results.
2017-02-12 04:59:33 +00:00
func ( p * PerformSearchParams ) Do ( ctxt context . Context , h cdp . Handler ) ( searchID string , resultCount int64 , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res PerformSearchReturns
err = h . Execute ( ctxt , cdp . CommandDOMPerformSearch , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return "" , 0 , err
}
2017-02-14 08:41:23 +00:00
return res . SearchID , res . ResultCount , nil
2017-01-24 15:09:23 +00:00
}
// GetSearchResultsParams returns search results from given fromIndex to
2017-09-28 08:41:05 +00:00
// given toIndex from the search with the given identifier.
2017-01-24 15:09:23 +00:00
type GetSearchResultsParams struct {
SearchID string ` json:"searchId" ` // Unique search session identifier.
FromIndex int64 ` json:"fromIndex" ` // Start index of the search result to be returned.
ToIndex int64 ` json:"toIndex" ` // End index of the search result to be returned.
}
// GetSearchResults returns search results from given fromIndex to given
2017-09-28 08:41:05 +00:00
// toIndex from the search with the given identifier.
2017-01-24 15:09:23 +00:00
//
// parameters:
2017-01-26 07:28:34 +00:00
// searchID - Unique search session identifier.
2017-01-24 15:09:23 +00:00
// fromIndex - Start index of the search result to be returned.
// toIndex - End index of the search result to be returned.
2017-01-26 07:28:34 +00:00
func GetSearchResults ( searchID string , fromIndex int64 , toIndex int64 ) * GetSearchResultsParams {
2017-01-24 15:09:23 +00:00
return & GetSearchResultsParams {
2017-01-26 07:28:34 +00:00
SearchID : searchID ,
2017-01-24 15:09:23 +00:00
FromIndex : fromIndex ,
ToIndex : toIndex ,
}
}
// GetSearchResultsReturns return values.
type GetSearchResultsReturns struct {
2017-01-26 07:28:34 +00:00
NodeIds [ ] cdp . NodeID ` json:"nodeIds,omitempty" ` // Ids of the search result nodes.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.getSearchResults against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// nodeIds - Ids of the search result nodes.
2017-02-12 04:59:33 +00:00
func ( p * GetSearchResultsParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeIds [ ] cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res GetSearchResultsReturns
err = h . Execute ( ctxt , cdp . CommandDOMGetSearchResults , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . NodeIds , nil
2017-01-24 15:09:23 +00:00
}
// DiscardSearchResultsParams discards search results from the session with
// the given id. getSearchResults should no longer be called for that search.
type DiscardSearchResultsParams struct {
SearchID string ` json:"searchId" ` // Unique search session identifier.
}
// DiscardSearchResults discards search results from the session with the
// given id. getSearchResults should no longer be called for that search.
//
// parameters:
2017-01-26 07:28:34 +00:00
// searchID - Unique search session identifier.
func DiscardSearchResults ( searchID string ) * DiscardSearchResultsParams {
2017-01-24 15:09:23 +00:00
return & DiscardSearchResultsParams {
2017-01-26 07:28:34 +00:00
SearchID : searchID ,
2017-01-24 15:09:23 +00:00
}
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.discardSearchResults against the provided context and
// target handler.
func ( p * DiscardSearchResultsParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMDiscardSearchResults , p , nil )
2017-01-24 15:09:23 +00:00
}
// RequestNodeParams requests that the node is sent to the caller given the
// JavaScript node object reference. All nodes that form the path from the node
// to the root are also sent to the client as a series of setChildNodes
// notifications.
type RequestNodeParams struct {
ObjectID runtime . RemoteObjectID ` json:"objectId" ` // JavaScript object id to convert into node.
}
// RequestNode requests that the node is sent to the caller given the
// JavaScript node object reference. All nodes that form the path from the node
// to the root are also sent to the client as a series of setChildNodes
// notifications.
//
// parameters:
2017-01-26 07:28:34 +00:00
// objectID - JavaScript object id to convert into node.
func RequestNode ( objectID runtime . RemoteObjectID ) * RequestNodeParams {
2017-01-24 15:09:23 +00:00
return & RequestNodeParams {
2017-01-26 07:28:34 +00:00
ObjectID : objectID ,
2017-01-24 15:09:23 +00:00
}
}
// RequestNodeReturns return values.
type RequestNodeReturns struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Node id for given object.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.requestNode against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// nodeID - Node id for given object.
2017-02-12 04:59:33 +00:00
func ( p * RequestNodeParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeID cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res RequestNodeReturns
err = h . Execute ( ctxt , cdp . CommandDOMRequestNode , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return 0 , err
}
2017-02-14 08:41:23 +00:00
return res . NodeID , nil
2017-01-24 15:09:23 +00:00
}
// PushNodeByPathToFrontendParams requests that the node is sent to the
// caller given its path. // FIXME, use XPath.
type PushNodeByPathToFrontendParams struct {
Path string ` json:"path" ` // Path to node in the proprietary format.
}
// PushNodeByPathToFrontend requests that the node is sent to the caller
// given its path. // FIXME, use XPath.
//
// parameters:
// path - Path to node in the proprietary format.
func PushNodeByPathToFrontend ( path string ) * PushNodeByPathToFrontendParams {
return & PushNodeByPathToFrontendParams {
Path : path ,
}
}
// PushNodeByPathToFrontendReturns return values.
type PushNodeByPathToFrontendReturns struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Id of the node for given path.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.pushNodeByPathToFrontend against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node for given path.
2017-02-12 04:59:33 +00:00
func ( p * PushNodeByPathToFrontendParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeID cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res PushNodeByPathToFrontendReturns
err = h . Execute ( ctxt , cdp . CommandDOMPushNodeByPathToFrontend , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return 0 , err
}
2017-02-14 08:41:23 +00:00
return res . NodeID , nil
2017-01-24 15:09:23 +00:00
}
// PushNodesByBackendIdsToFrontendParams requests that a batch of nodes is
// sent to the caller given their backend node ids.
type PushNodesByBackendIdsToFrontendParams struct {
2017-01-26 07:28:34 +00:00
BackendNodeIds [ ] cdp . BackendNodeID ` json:"backendNodeIds" ` // The array of backend node ids.
2017-01-24 15:09:23 +00:00
}
// PushNodesByBackendIdsToFrontend requests that a batch of nodes is sent to
// the caller given their backend node ids.
//
// parameters:
// backendNodeIds - The array of backend node ids.
2017-01-26 07:28:34 +00:00
func PushNodesByBackendIdsToFrontend ( backendNodeIds [ ] cdp . BackendNodeID ) * PushNodesByBackendIdsToFrontendParams {
2017-01-24 15:09:23 +00:00
return & PushNodesByBackendIdsToFrontendParams {
BackendNodeIds : backendNodeIds ,
}
}
// PushNodesByBackendIdsToFrontendReturns return values.
type PushNodesByBackendIdsToFrontendReturns struct {
2017-01-26 07:28:34 +00:00
NodeIds [ ] cdp . NodeID ` json:"nodeIds,omitempty" ` // The array of ids of pushed nodes that correspond to the backend ids specified in backendNodeIds.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.pushNodesByBackendIdsToFrontend against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// nodeIds - The array of ids of pushed nodes that correspond to the backend ids specified in backendNodeIds.
2017-02-12 04:59:33 +00:00
func ( p * PushNodesByBackendIdsToFrontendParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeIds [ ] cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res PushNodesByBackendIdsToFrontendReturns
err = h . Execute ( ctxt , cdp . CommandDOMPushNodesByBackendIdsToFrontend , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . NodeIds , nil
2017-01-24 15:09:23 +00:00
}
// SetInspectedNodeParams enables console to refer to the node with given id
// via $x (see Command Line API for more details $x functions).
type SetInspectedNodeParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // DOM node id to be accessible by means of $x command line API.
2017-01-24 15:09:23 +00:00
}
// SetInspectedNode enables console to refer to the node with given id via $x
// (see Command Line API for more details $x functions).
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - DOM node id to be accessible by means of $x command line API.
func SetInspectedNode ( nodeID cdp . NodeID ) * SetInspectedNodeParams {
2017-01-24 15:09:23 +00:00
return & SetInspectedNodeParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
}
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.setInspectedNode against the provided context and
// target handler.
func ( p * SetInspectedNodeParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMSetInspectedNode , p , nil )
2017-01-24 15:09:23 +00:00
}
2017-07-11 03:39:08 +00:00
// ResolveNodeParams resolves the JavaScript node object for a given NodeId
// or BackendNodeId.
2017-01-24 15:09:23 +00:00
type ResolveNodeParams struct {
2017-07-11 03:39:08 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Id of the node to resolve.
BackendNodeID cdp . BackendNodeID ` json:"backendNodeId,omitempty" ` // Backend identifier of the node to resolve.
ObjectGroup string ` json:"objectGroup,omitempty" ` // Symbolic group name that can be used to release multiple objects.
2017-01-24 15:09:23 +00:00
}
2017-07-11 03:39:08 +00:00
// ResolveNode resolves the JavaScript node object for a given NodeId or
// BackendNodeId.
2017-01-24 15:09:23 +00:00
//
// parameters:
2017-07-11 03:39:08 +00:00
func ResolveNode ( ) * ResolveNodeParams {
return & ResolveNodeParams { }
}
2017-09-28 08:41:05 +00:00
// WithNodeID ID of the node to resolve.
2017-07-11 03:39:08 +00:00
func ( p ResolveNodeParams ) WithNodeID ( nodeID cdp . NodeID ) * ResolveNodeParams {
p . NodeID = nodeID
return & p
}
// WithBackendNodeID backend identifier of the node to resolve.
func ( p ResolveNodeParams ) WithBackendNodeID ( backendNodeID cdp . BackendNodeID ) * ResolveNodeParams {
p . BackendNodeID = backendNodeID
return & p
2017-01-24 15:09:23 +00:00
}
// WithObjectGroup symbolic group name that can be used to release multiple
// objects.
func ( p ResolveNodeParams ) WithObjectGroup ( objectGroup string ) * ResolveNodeParams {
p . ObjectGroup = objectGroup
return & p
}
// ResolveNodeReturns return values.
type ResolveNodeReturns struct {
Object * runtime . RemoteObject ` json:"object,omitempty" ` // JavaScript object wrapper for given node.
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.resolveNode against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// object - JavaScript object wrapper for given node.
2017-02-12 04:59:33 +00:00
func ( p * ResolveNodeParams ) Do ( ctxt context . Context , h cdp . Handler ) ( object * runtime . RemoteObject , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res ResolveNodeReturns
err = h . Execute ( ctxt , cdp . CommandDOMResolveNode , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . Object , nil
2017-01-24 15:09:23 +00:00
}
// GetAttributesParams returns attributes for the specified node.
type GetAttributesParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to retrieve attibutes for.
2017-01-24 15:09:23 +00:00
}
// GetAttributes returns attributes for the specified node.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to retrieve attibutes for.
func GetAttributes ( nodeID cdp . NodeID ) * GetAttributesParams {
2017-01-24 15:09:23 +00:00
return & GetAttributesParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
}
}
// GetAttributesReturns return values.
type GetAttributesReturns struct {
Attributes [ ] string ` json:"attributes,omitempty" ` // An interleaved array of node attribute names and values.
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.getAttributes against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// attributes - An interleaved array of node attribute names and values.
2017-02-12 04:59:33 +00:00
func ( p * GetAttributesParams ) Do ( ctxt context . Context , h cdp . Handler ) ( attributes [ ] string , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res GetAttributesReturns
err = h . Execute ( ctxt , cdp . CommandDOMGetAttributes , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . Attributes , nil
2017-01-24 15:09:23 +00:00
}
// CopyToParams creates a deep copy of the specified node and places it into
// the target container before the given anchor.
type CopyToParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to copy.
TargetNodeID cdp . NodeID ` json:"targetNodeId" ` // Id of the element to drop the copy into.
InsertBeforeNodeID cdp . NodeID ` json:"insertBeforeNodeId,omitempty" ` // Drop the copy before this node (if absent, the copy becomes the last child of targetNodeId).
2017-01-24 15:09:23 +00:00
}
// CopyTo creates a deep copy of the specified node and places it into the
// target container before the given anchor.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to copy.
// targetNodeID - Id of the element to drop the copy into.
func CopyTo ( nodeID cdp . NodeID , targetNodeID cdp . NodeID ) * CopyToParams {
2017-01-24 15:09:23 +00:00
return & CopyToParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
TargetNodeID : targetNodeID ,
2017-01-24 15:09:23 +00:00
}
}
// WithInsertBeforeNodeID drop the copy before this node (if absent, the copy
// becomes the last child of targetNodeId).
2017-01-26 07:28:34 +00:00
func ( p CopyToParams ) WithInsertBeforeNodeID ( insertBeforeNodeID cdp . NodeID ) * CopyToParams {
p . InsertBeforeNodeID = insertBeforeNodeID
2017-01-24 15:09:23 +00:00
return & p
}
// CopyToReturns return values.
type CopyToReturns struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Id of the node clone.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.copyTo against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node clone.
2017-02-12 04:59:33 +00:00
func ( p * CopyToParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeID cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res CopyToReturns
err = h . Execute ( ctxt , cdp . CommandDOMCopyTo , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return 0 , err
}
2017-02-14 08:41:23 +00:00
return res . NodeID , nil
2017-01-24 15:09:23 +00:00
}
// MoveToParams moves node into the new container, places it before the given
// anchor.
type MoveToParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node to move.
TargetNodeID cdp . NodeID ` json:"targetNodeId" ` // Id of the element to drop the moved node into.
InsertBeforeNodeID cdp . NodeID ` json:"insertBeforeNodeId,omitempty" ` // Drop node before this one (if absent, the moved node becomes the last child of targetNodeId).
2017-01-24 15:09:23 +00:00
}
// MoveTo moves node into the new container, places it before the given
// anchor.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node to move.
// targetNodeID - Id of the element to drop the moved node into.
func MoveTo ( nodeID cdp . NodeID , targetNodeID cdp . NodeID ) * MoveToParams {
2017-01-24 15:09:23 +00:00
return & MoveToParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
TargetNodeID : targetNodeID ,
2017-01-24 15:09:23 +00:00
}
}
// WithInsertBeforeNodeID drop node before this one (if absent, the moved
// node becomes the last child of targetNodeId).
2017-01-26 07:28:34 +00:00
func ( p MoveToParams ) WithInsertBeforeNodeID ( insertBeforeNodeID cdp . NodeID ) * MoveToParams {
p . InsertBeforeNodeID = insertBeforeNodeID
2017-01-24 15:09:23 +00:00
return & p
}
// MoveToReturns return values.
type MoveToReturns struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // New id of the moved node.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.moveTo against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// nodeID - New id of the moved node.
2017-02-12 04:59:33 +00:00
func ( p * MoveToParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeID cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res MoveToReturns
err = h . Execute ( ctxt , cdp . CommandDOMMoveTo , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return 0 , err
}
2017-02-14 08:41:23 +00:00
return res . NodeID , nil
2017-01-24 15:09:23 +00:00
}
// UndoParams undoes the last performed action.
type UndoParams struct { }
// Undo undoes the last performed action.
func Undo ( ) * UndoParams {
return & UndoParams { }
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.undo against the provided context and
// target handler.
func ( p * UndoParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMUndo , nil , nil )
2017-01-24 15:09:23 +00:00
}
// RedoParams re-does the last undone action.
type RedoParams struct { }
// Redo re-does the last undone action.
func Redo ( ) * RedoParams {
return & RedoParams { }
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.redo against the provided context and
// target handler.
func ( p * RedoParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMRedo , nil , nil )
2017-01-24 15:09:23 +00:00
}
// MarkUndoableStateParams marks last undoable state.
type MarkUndoableStateParams struct { }
// MarkUndoableState marks last undoable state.
func MarkUndoableState ( ) * MarkUndoableStateParams {
return & MarkUndoableStateParams { }
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.markUndoableState against the provided context and
// target handler.
func ( p * MarkUndoableStateParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMMarkUndoableState , nil , nil )
2017-01-24 15:09:23 +00:00
}
// FocusParams focuses the given element.
type FocusParams struct {
2017-07-14 03:29:52 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Identifier of the node.
BackendNodeID cdp . BackendNodeID ` json:"backendNodeId,omitempty" ` // Identifier of the backend node.
ObjectID runtime . RemoteObjectID ` json:"objectId,omitempty" ` // JavaScript object id of the node wrapper.
2017-01-24 15:09:23 +00:00
}
// Focus focuses the given element.
//
// parameters:
2017-07-14 03:29:52 +00:00
func Focus ( ) * FocusParams {
return & FocusParams { }
}
// WithNodeID identifier of the node.
func ( p FocusParams ) WithNodeID ( nodeID cdp . NodeID ) * FocusParams {
p . NodeID = nodeID
return & p
}
// WithBackendNodeID identifier of the backend node.
func ( p FocusParams ) WithBackendNodeID ( backendNodeID cdp . BackendNodeID ) * FocusParams {
p . BackendNodeID = backendNodeID
return & p
}
2017-09-28 08:41:05 +00:00
// WithObjectID JavaScript object id of the node wrapper.
2017-07-14 03:29:52 +00:00
func ( p FocusParams ) WithObjectID ( objectID runtime . RemoteObjectID ) * FocusParams {
p . ObjectID = objectID
return & p
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.focus against the provided context and
// target handler.
func ( p * FocusParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMFocus , p , nil )
2017-01-24 15:09:23 +00:00
}
// SetFileInputFilesParams sets files for the given file input element.
type SetFileInputFilesParams struct {
2017-07-14 03:29:52 +00:00
Files [ ] string ` json:"files" ` // Array of file paths to set.
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Identifier of the node.
BackendNodeID cdp . BackendNodeID ` json:"backendNodeId,omitempty" ` // Identifier of the backend node.
ObjectID runtime . RemoteObjectID ` json:"objectId,omitempty" ` // JavaScript object id of the node wrapper.
2017-01-24 15:09:23 +00:00
}
// SetFileInputFiles sets files for the given file input element.
//
// parameters:
// files - Array of file paths to set.
2017-07-14 03:29:52 +00:00
func SetFileInputFiles ( files [ ] string ) * SetFileInputFilesParams {
2017-01-24 15:09:23 +00:00
return & SetFileInputFilesParams {
2017-07-14 03:29:52 +00:00
Files : files ,
2017-01-24 15:09:23 +00:00
}
}
2017-07-14 03:29:52 +00:00
// WithNodeID identifier of the node.
func ( p SetFileInputFilesParams ) WithNodeID ( nodeID cdp . NodeID ) * SetFileInputFilesParams {
p . NodeID = nodeID
return & p
}
// WithBackendNodeID identifier of the backend node.
func ( p SetFileInputFilesParams ) WithBackendNodeID ( backendNodeID cdp . BackendNodeID ) * SetFileInputFilesParams {
p . BackendNodeID = backendNodeID
return & p
}
2017-09-28 08:41:05 +00:00
// WithObjectID JavaScript object id of the node wrapper.
2017-07-14 03:29:52 +00:00
func ( p SetFileInputFilesParams ) WithObjectID ( objectID runtime . RemoteObjectID ) * SetFileInputFilesParams {
p . ObjectID = objectID
return & p
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.setFileInputFiles against the provided context and
// target handler.
func ( p * SetFileInputFilesParams ) Do ( ctxt context . Context , h cdp . Handler ) ( err error ) {
2017-02-14 08:41:23 +00:00
return h . Execute ( ctxt , cdp . CommandDOMSetFileInputFiles , p , nil )
2017-01-24 15:09:23 +00:00
}
// GetBoxModelParams returns boxes for the currently selected nodes.
type GetBoxModelParams struct {
2017-07-14 03:29:52 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Identifier of the node.
BackendNodeID cdp . BackendNodeID ` json:"backendNodeId,omitempty" ` // Identifier of the backend node.
ObjectID runtime . RemoteObjectID ` json:"objectId,omitempty" ` // JavaScript object id of the node wrapper.
2017-01-24 15:09:23 +00:00
}
// GetBoxModel returns boxes for the currently selected nodes.
//
// parameters:
2017-07-14 03:29:52 +00:00
func GetBoxModel ( ) * GetBoxModelParams {
return & GetBoxModelParams { }
}
// WithNodeID identifier of the node.
func ( p GetBoxModelParams ) WithNodeID ( nodeID cdp . NodeID ) * GetBoxModelParams {
p . NodeID = nodeID
return & p
}
// WithBackendNodeID identifier of the backend node.
func ( p GetBoxModelParams ) WithBackendNodeID ( backendNodeID cdp . BackendNodeID ) * GetBoxModelParams {
p . BackendNodeID = backendNodeID
return & p
}
2017-09-28 08:41:05 +00:00
// WithObjectID JavaScript object id of the node wrapper.
2017-07-14 03:29:52 +00:00
func ( p GetBoxModelParams ) WithObjectID ( objectID runtime . RemoteObjectID ) * GetBoxModelParams {
p . ObjectID = objectID
return & p
2017-01-24 15:09:23 +00:00
}
// GetBoxModelReturns return values.
type GetBoxModelReturns struct {
Model * BoxModel ` json:"model,omitempty" ` // Box model for the node.
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.getBoxModel against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
// model - Box model for the node.
2017-02-12 04:59:33 +00:00
func ( p * GetBoxModelParams ) Do ( ctxt context . Context , h cdp . Handler ) ( model * BoxModel , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res GetBoxModelReturns
err = h . Execute ( ctxt , cdp . CommandDOMGetBoxModel , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return nil , err
}
2017-02-14 08:41:23 +00:00
return res . Model , nil
2017-01-24 15:09:23 +00:00
}
// GetNodeForLocationParams returns node id at given location.
type GetNodeForLocationParams struct {
2017-03-24 22:51:18 +00:00
X int64 ` json:"x" ` // X coordinate.
Y int64 ` json:"y" ` // Y coordinate.
IncludeUserAgentShadowDOM bool ` json:"includeUserAgentShadowDOM,omitempty" ` // False to skip to the nearest non-UA shadow root ancestor (default: false).
2017-01-24 15:09:23 +00:00
}
// GetNodeForLocation returns node id at given location.
//
// parameters:
// x - X coordinate.
// y - Y coordinate.
func GetNodeForLocation ( x int64 , y int64 ) * GetNodeForLocationParams {
return & GetNodeForLocationParams {
X : x ,
Y : y ,
}
}
2017-03-24 22:51:18 +00:00
// WithIncludeUserAgentShadowDOM false to skip to the nearest non-UA shadow
// root ancestor (default: false).
func ( p GetNodeForLocationParams ) WithIncludeUserAgentShadowDOM ( includeUserAgentShadowDOM bool ) * GetNodeForLocationParams {
p . IncludeUserAgentShadowDOM = includeUserAgentShadowDOM
return & p
}
2017-01-24 15:09:23 +00:00
// GetNodeForLocationReturns return values.
type GetNodeForLocationReturns struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Id of the node at given coordinates.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.getNodeForLocation against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node at given coordinates.
2017-02-12 04:59:33 +00:00
func ( p * GetNodeForLocationParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeID cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res GetNodeForLocationReturns
err = h . Execute ( ctxt , cdp . CommandDOMGetNodeForLocation , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return 0 , err
}
2017-02-14 08:41:23 +00:00
return res . NodeID , nil
2017-01-24 15:09:23 +00:00
}
// GetRelayoutBoundaryParams returns the id of the nearest ancestor that is a
// relayout boundary.
type GetRelayoutBoundaryParams struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId" ` // Id of the node.
2017-01-24 15:09:23 +00:00
}
// GetRelayoutBoundary returns the id of the nearest ancestor that is a
// relayout boundary.
//
// parameters:
2017-01-26 07:28:34 +00:00
// nodeID - Id of the node.
func GetRelayoutBoundary ( nodeID cdp . NodeID ) * GetRelayoutBoundaryParams {
2017-01-24 15:09:23 +00:00
return & GetRelayoutBoundaryParams {
2017-01-26 07:28:34 +00:00
NodeID : nodeID ,
2017-01-24 15:09:23 +00:00
}
}
// GetRelayoutBoundaryReturns return values.
type GetRelayoutBoundaryReturns struct {
2017-01-26 07:28:34 +00:00
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Relayout boundary node id for the given node.
2017-01-24 15:09:23 +00:00
}
2017-02-12 04:59:33 +00:00
// Do executes DOM.getRelayoutBoundary against the provided context and
// target handler.
2017-01-24 15:09:23 +00:00
//
// returns:
2017-01-26 07:28:34 +00:00
// nodeID - Relayout boundary node id for the given node.
2017-02-12 04:59:33 +00:00
func ( p * GetRelayoutBoundaryParams ) Do ( ctxt context . Context , h cdp . Handler ) ( nodeID cdp . NodeID , err error ) {
2017-02-14 08:41:23 +00:00
// execute
var res GetRelayoutBoundaryReturns
err = h . Execute ( ctxt , cdp . CommandDOMGetRelayoutBoundary , p , & res )
2017-01-24 15:09:23 +00:00
if err != nil {
return 0 , err
}
2017-02-14 08:41:23 +00:00
return res . NodeID , nil
2017-01-24 15:09:23 +00:00
}
2017-08-22 09:23:52 +00:00
// DescribeNodeParams describes node given its id, does not require domain to
// be enabled. Does not start tracking any objects, can be used for automation.
type DescribeNodeParams struct {
NodeID cdp . NodeID ` json:"nodeId,omitempty" ` // Identifier of the node.
BackendNodeID cdp . BackendNodeID ` json:"backendNodeId,omitempty" ` // Identifier of the backend node.
ObjectID runtime . RemoteObjectID ` json:"objectId,omitempty" ` // JavaScript object id of the node wrapper.
Depth int64 ` json:"depth,omitempty" ` // The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the entire subtree or provide an integer larger than 0.
Pierce bool ` json:"pierce,omitempty" ` // Whether or not iframes and shadow roots should be traversed when returning the subtree (default is false).
}
// DescribeNode describes node given its id, does not require domain to be
// enabled. Does not start tracking any objects, can be used for automation.
//
// parameters:
func DescribeNode ( ) * DescribeNodeParams {
return & DescribeNodeParams { }
}
// WithNodeID identifier of the node.
func ( p DescribeNodeParams ) WithNodeID ( nodeID cdp . NodeID ) * DescribeNodeParams {
p . NodeID = nodeID
return & p
}
// WithBackendNodeID identifier of the backend node.
func ( p DescribeNodeParams ) WithBackendNodeID ( backendNodeID cdp . BackendNodeID ) * DescribeNodeParams {
p . BackendNodeID = backendNodeID
return & p
}
2017-09-28 08:41:05 +00:00
// WithObjectID JavaScript object id of the node wrapper.
2017-08-22 09:23:52 +00:00
func ( p DescribeNodeParams ) WithObjectID ( objectID runtime . RemoteObjectID ) * DescribeNodeParams {
p . ObjectID = objectID
return & p
}
// WithDepth the maximum depth at which children should be retrieved,
// defaults to 1. Use -1 for the entire subtree or provide an integer larger
// than 0.
func ( p DescribeNodeParams ) WithDepth ( depth int64 ) * DescribeNodeParams {
p . Depth = depth
return & p
}
// WithPierce whether or not iframes and shadow roots should be traversed
// when returning the subtree (default is false).
func ( p DescribeNodeParams ) WithPierce ( pierce bool ) * DescribeNodeParams {
p . Pierce = pierce
return & p
}
// DescribeNodeReturns return values.
type DescribeNodeReturns struct {
Node * cdp . Node ` json:"node,omitempty" ` // Node description.
}
// Do executes DOM.describeNode against the provided context and
// target handler.
//
// returns:
// node - Node description.
func ( p * DescribeNodeParams ) Do ( ctxt context . Context , h cdp . Handler ) ( node * cdp . Node , err error ) {
// execute
var res DescribeNodeReturns
err = h . Execute ( ctxt , cdp . CommandDOMDescribeNode , p , & res )
if err != nil {
return nil , err
}
return res . Node , nil
}