Index: telemetry/third_party/snap-it/HTMLSerializer.js |
diff --git a/telemetry/third_party/snap-it/HTMLSerializer.js b/telemetry/third_party/snap-it/HTMLSerializer.js |
index 7dcc3f69aa8ce4abcda1e65326c1459c4b23e84c..80e28fd805a12c0a0f2cec2abfbfc60f1e57e700 100644 |
--- a/telemetry/third_party/snap-it/HTMLSerializer.js |
+++ b/telemetry/third_party/snap-it/HTMLSerializer.js |
@@ -70,7 +70,7 @@ var HTMLSerializer = class { |
/** |
* @public {Array<string>} This array represents the serialized html that |
- * makes up a node or document. |
+ * makes up a node or document. |
*/ |
this.html = []; |
@@ -187,7 +187,7 @@ var HTMLSerializer = class { |
* eventually be converted into an html file. |
* |
* @param {Document} doc The Document to serialize. |
- */ |
+ */ |
processDocument(doc) { |
this.windowHeight = doc.defaultView.innerHeight; |
this.windowWidth = doc.defaultView.innerWidth; |
@@ -231,7 +231,7 @@ var HTMLSerializer = class { |
* |
* @param {Node} node The Node to serialize. |
* @private |
- */ |
+ */ |
processTree(node) { |
var tagName = node.tagName; |
if (!tagName && node.nodeType != Node.TEXT_NODE) { |
@@ -336,7 +336,7 @@ var HTMLSerializer = class { |
* @param {Element} element The Element to serialize. |
* @param {string} id The id of the Element being serialized. |
* @private |
- */ |
+ */ |
processAttributes(element, id) { |
var win = element.ownerDocument.defaultView; |
var style = win.getComputedStyle(element, null); |
@@ -583,7 +583,7 @@ var HTMLSerializer = class { |
} else { |
var fullyQualifiedName = this.iframeFullyQualifiedName(win.parent); |
var index = this.iframeIndex(win); |
- return fullyQualifiedName + '.' + index; |
+ return fullyQualifiedName + '.' + index; |
} |
} |
@@ -723,6 +723,31 @@ var HTMLSerializer = class { |
} |
} |
+ /** |
+ * Return a JSONizable dictionary that contain all the data of this object. |
+ */ |
+ asDict() { |
wkorman
2017/09/20 20:11:04
Add a unit test for this? May as well while we're
nednguyen
2017/09/26 13:01:35
Acknowledged. I filed a tracking bug here https://
|
+ return { |
+ 'html': htmlSerializer.html, |
+ 'frameHoles': htmlSerializer.frameHoles, |
+ 'idToStyleIndex': htmlSerializer.idToStyleIndex, |
+ 'idToStyleMap': htmlSerializer.idToStyleMap, |
+ 'windowHeight': htmlSerializer.windowHeight, |
+ 'windowWidth': htmlSerializer.windowWidth, |
+ 'rootId': htmlSerializer.rootId, |
+ 'rootStyleIndex': htmlSerializer.rootStyleIndex, |
+ 'pseudoElementSelectorToCSSMap': |
+ htmlSerializer.pseudoElementSelectorToCSSMap, |
+ 'pseudoElementPlaceHolderIndex': |
+ htmlSerializer.pseudoElementPlaceHolderIndex, |
+ 'pseudoElementTestingStyleIndex': |
+ htmlSerializer.pseudoElementStyleTestingIndex, |
+ 'pseudoElementTestingStyleId': htmlSerializer.pseudoElementTestingStyleId, |
+ 'unusedId': htmlSerializer.generateId(document), |
+ 'frameIndex': htmlSerializer.iframeFullyQualifiedName(window) |
+ }; |
+ } |
+ |
/** |
* Take all of the srcHoles and create data urls for the resources, placing |
* them in |this.html|. Calls the callback when complete. |