Index: sky/framework/inspector/page-agent.sky |
diff --git a/sky/framework/inspector/page-agent.sky b/sky/framework/inspector/page-agent.sky |
deleted file mode 100644 |
index 62598a6b419ce97c9d2161c8bbc14889d407ff37..0000000000000000000000000000000000000000 |
--- a/sky/framework/inspector/page-agent.sky |
+++ /dev/null |
@@ -1,108 +0,0 @@ |
-<import src="../xmlhttprequest.sky" as="XMLHttpRequest" /> |
-<script> |
-class Page { |
- constructor(delegate) { |
- this.delegate_ = delegate; |
- Object.preventExtensions(this); |
- } |
- |
- enable() { |
- } |
- |
- canScreencast() { |
- return { |
- result: false |
- }; |
- } |
- |
- canEmulate() { |
- return { |
- result: false |
- }; |
- } |
- |
- getResourceContent(params, messageId) { |
- var request = new XMLHttpRequest; |
- request.onload = function() { |
- var message = { |
- 'content' : request.responseText, |
- }; |
- this.delegate_.sendResponse(messageId, message); |
- }.bind(this); |
- request.open("GET", params.url); |
- request.send(); |
- |
- return this.delegate_.ASYNC_RESPONSE; |
- } |
- |
- getResourceTree() { |
- // Unclear if this is all needed, but if we don't return something here |
- // the inspector hits an exception in WebInspector.ResourceTreeModel. |
- return { |
- "frameTree": { |
- "frame": { |
- "id": "1", |
- "loaderId": "1", |
- "url": String(document.URL), |
- "mimeType": "text/html", |
- "securityOrigin": String(document.URL), |
- }, |
- "resources": arrayFromIterator(resourcesMapForSubtree(document).values()), |
- } |
- }; |
- } |
-} |
- |
-// FIXME: ES6 has Array.from which theoretically does this. |
-function arrayFromIterator(iterator) { |
- var a = []; |
- for (var e of iterator) |
- a.push(e); |
- return a; |
-} |
- |
-// FIXME: NodeList will soon inherit from array. |
-function forEachInNodeList(array, callback, scope) { |
- for (var i = 0; i < array.length; i++) { |
- callback.call(scope, array[i]); |
- } |
-} |
- |
-function addResource(map, url, type, mimeType) { |
- // Be sure to string the url object since has(new Object) |
- // will always return false. |
- var absoluteURL = String(new URL(url, document.URL)); |
- if (map.has(absoluteURL)) |
- return; |
- map.set(absoluteURL, { |
- 'url': String(absoluteURL), |
- 'type': type, |
- 'mimeType': mimeType, |
- }) |
-} |
- |
-function resourcesMapForSubtree(root_doc) { |
- var map = new Map; |
- var roots = [root_doc]; |
- while (roots.length) { |
- var root = roots.pop(); |
- var elements = root.querySelectorAll('*'); |
- forEachInNodeList(elements, function(element) { |
- if (element.tagName == "import") { |
- // FIXME: It's no longer possible to walk into an import. :( |
- // roots.push(element.import); |
- addResource(map, element.getAttribute('src'), 'Document', 'text/html'); |
- } else if (element.tagName == "img") { |
- // FIXME: Can't determine the type of an image from the DOM. |
- addResource(map, element.getAttribute('src'), 'Image', 'image/unknown'); |
- } |
- if (element.shadowRoot) { |
- roots.push(element.shadowRoot); |
- } |
- }); |
- } |
- return map; |
-} |
- |
-module.exports = Page; |
-</script> |