Index: third_party/WebKit/Source/devtools/front_end/network/RequestPreviewView.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/network/RequestPreviewView.js b/third_party/WebKit/Source/devtools/front_end/network/RequestPreviewView.js |
index 3c7ff1cfc46a2a1ebe178b5694db2686c6163283..c1a3b2a82af17ef20d165365855852ccb5093c53 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/network/RequestPreviewView.js |
+++ b/third_party/WebKit/Source/devtools/front_end/network/RequestPreviewView.js |
@@ -27,173 +27,164 @@ |
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
- |
/** |
- * @constructor |
- * @extends {WebInspector.RequestContentView} |
- * @param {!WebInspector.NetworkRequest} request |
- * @param {!WebInspector.Widget} responseView |
+ * @unrestricted |
*/ |
-WebInspector.RequestPreviewView = function(request, responseView) |
-{ |
- WebInspector.RequestContentView.call(this, request); |
+WebInspector.RequestPreviewView = class extends WebInspector.RequestContentView { |
+ /** |
+ * @param {!WebInspector.NetworkRequest} request |
+ * @param {!WebInspector.Widget} responseView |
+ */ |
+ constructor(request, responseView) { |
+ super(request); |
this._responseView = responseView; |
/** @type {?WebInspector.Widget} */ |
this._previewView = null; |
-}; |
- |
-WebInspector.RequestPreviewView.prototype = { |
- contentLoaded: function() |
- { |
- if (!this.request.content && !this.request.contentError()) { |
- if (!this._emptyWidget) { |
- this._emptyWidget = this._createEmptyWidget(); |
- this._emptyWidget.show(this.element); |
- this._previewView = this._emptyWidget; |
- } |
- return; |
- } |
- if (this._emptyWidget) { |
- this._emptyWidget.detach(); |
- delete this._emptyWidget; |
- this._previewView = null; |
- } |
- |
- if (!this._previewView) |
- this._createPreviewView(handlePreviewView.bind(this)); |
- else |
- this._previewView.show(this.element); |
- |
- /** |
- * @param {!WebInspector.Widget} view |
- * @this {WebInspector.RequestPreviewView} |
- */ |
- function handlePreviewView(view) |
- { |
- this._previewView = view; |
- view.show(this.element); |
- if (view instanceof WebInspector.SimpleView) { |
- var toolbar = new WebInspector.Toolbar("network-item-preview-toolbar", this.element); |
- for (var item of /** @type {!WebInspector.SimpleView} */ (this._previewView).syncToolbarItems()) |
- toolbar.appendToolbarItem(item); |
- } |
- this._previewViewHandledForTest(view); |
- } |
- }, |
+ } |
+ |
+ /** |
+ * @override |
+ */ |
+ contentLoaded() { |
+ if (!this.request.content && !this.request.contentError()) { |
+ if (!this._emptyWidget) { |
+ this._emptyWidget = this._createEmptyWidget(); |
+ this._emptyWidget.show(this.element); |
+ this._previewView = this._emptyWidget; |
+ } |
+ return; |
+ } |
+ if (this._emptyWidget) { |
+ this._emptyWidget.detach(); |
+ delete this._emptyWidget; |
+ this._previewView = null; |
+ } |
+ |
+ if (!this._previewView) |
+ this._createPreviewView(handlePreviewView.bind(this)); |
+ else |
+ this._previewView.show(this.element); |
/** |
* @param {!WebInspector.Widget} view |
+ * @this {WebInspector.RequestPreviewView} |
*/ |
- _previewViewHandledForTest: function(view) { }, |
- |
- /** |
- * @return {!WebInspector.EmptyWidget} |
- */ |
- _createEmptyWidget: function() |
- { |
- return this._createMessageView(WebInspector.UIString("This request has no preview available.")); |
- }, |
- |
- /** |
- * @param {string} message |
- * @return {!WebInspector.EmptyWidget} |
- */ |
- _createMessageView: function(message) |
- { |
- return new WebInspector.EmptyWidget(message); |
- }, |
- |
- /** |
- * @return {string} |
- */ |
- _requestContent: function() |
- { |
- var content = this.request.content; |
- return this.request.contentEncoded ? window.atob(content || "") : (content || ""); |
- }, |
- |
- /** |
- * @param {?WebInspector.ParsedJSON} parsedJSON |
- * @return {?WebInspector.SearchableView} |
- */ |
- _jsonView: function(parsedJSON) |
- { |
- if (!parsedJSON || typeof parsedJSON.data !== "object") |
- return null; |
- return WebInspector.JSONView.createSearchableView(/** @type {!WebInspector.ParsedJSON} */ (parsedJSON)); |
- }, |
- |
- /** |
- * @return {?WebInspector.SearchableView} |
- */ |
- _xmlView: function() |
- { |
- var parsedXML = WebInspector.XMLView.parseXML(this._requestContent(), this.request.mimeType); |
- return parsedXML ? WebInspector.XMLView.createSearchableView(parsedXML) : null; |
- }, |
- |
- /** |
- * @return {?WebInspector.RequestHTMLView} |
- */ |
- _htmlErrorPreview: function() |
- { |
- var whitelist = ["text/html", "text/plain", "application/xhtml+xml"]; |
- if (whitelist.indexOf(this.request.mimeType) === -1) |
- return null; |
- |
- var dataURL = this.request.asDataURL(); |
- if (dataURL === null) |
- return null; |
- |
- return new WebInspector.RequestHTMLView(this.request, dataURL); |
- }, |
+ function handlePreviewView(view) { |
+ this._previewView = view; |
+ view.show(this.element); |
+ if (view instanceof WebInspector.SimpleView) { |
+ var toolbar = new WebInspector.Toolbar('network-item-preview-toolbar', this.element); |
+ for (var item of /** @type {!WebInspector.SimpleView} */ (this._previewView).syncToolbarItems()) |
+ toolbar.appendToolbarItem(item); |
+ } |
+ this._previewViewHandledForTest(view); |
+ } |
+ } |
+ |
+ /** |
+ * @param {!WebInspector.Widget} view |
+ */ |
+ _previewViewHandledForTest(view) { |
+ } |
+ |
+ /** |
+ * @return {!WebInspector.EmptyWidget} |
+ */ |
+ _createEmptyWidget() { |
+ return this._createMessageView(WebInspector.UIString('This request has no preview available.')); |
+ } |
+ |
+ /** |
+ * @param {string} message |
+ * @return {!WebInspector.EmptyWidget} |
+ */ |
+ _createMessageView(message) { |
+ return new WebInspector.EmptyWidget(message); |
+ } |
+ |
+ /** |
+ * @return {string} |
+ */ |
+ _requestContent() { |
+ var content = this.request.content; |
+ return this.request.contentEncoded ? window.atob(content || '') : (content || ''); |
+ } |
+ |
+ /** |
+ * @param {?WebInspector.ParsedJSON} parsedJSON |
+ * @return {?WebInspector.SearchableView} |
+ */ |
+ _jsonView(parsedJSON) { |
+ if (!parsedJSON || typeof parsedJSON.data !== 'object') |
+ return null; |
+ return WebInspector.JSONView.createSearchableView(/** @type {!WebInspector.ParsedJSON} */ (parsedJSON)); |
+ } |
+ |
+ /** |
+ * @return {?WebInspector.SearchableView} |
+ */ |
+ _xmlView() { |
+ var parsedXML = WebInspector.XMLView.parseXML(this._requestContent(), this.request.mimeType); |
+ return parsedXML ? WebInspector.XMLView.createSearchableView(parsedXML) : null; |
+ } |
+ |
+ /** |
+ * @return {?WebInspector.RequestHTMLView} |
+ */ |
+ _htmlErrorPreview() { |
+ var whitelist = ['text/html', 'text/plain', 'application/xhtml+xml']; |
+ if (whitelist.indexOf(this.request.mimeType) === -1) |
+ return null; |
+ |
+ var dataURL = this.request.asDataURL(); |
+ if (dataURL === null) |
+ return null; |
+ |
+ return new WebInspector.RequestHTMLView(this.request, dataURL); |
+ } |
+ |
+ /** |
+ * @param {function(!WebInspector.Widget)} callback |
+ */ |
+ _createPreviewView(callback) { |
+ if (this.request.contentError()) { |
+ callback(this._createMessageView(WebInspector.UIString('Failed to load response data'))); |
+ return; |
+ } |
+ |
+ var xmlView = this._xmlView(); |
+ if (xmlView) { |
+ callback(xmlView); |
+ return; |
+ } |
+ |
+ WebInspector.JSONView.parseJSON(this._requestContent()).then(chooseView.bind(this)).then(callback); |
/** |
- * @param {function(!WebInspector.Widget)} callback |
+ * @this {WebInspector.RequestPreviewView} |
+ * @param {?WebInspector.ParsedJSON} jsonData |
+ * @return {!WebInspector.Widget} |
*/ |
- _createPreviewView: function(callback) |
- { |
- if (this.request.contentError()) { |
- callback(this._createMessageView(WebInspector.UIString("Failed to load response data"))); |
- return; |
- } |
- |
- var xmlView = this._xmlView(); |
- if (xmlView) { |
- callback(xmlView); |
- return; |
- } |
- |
- WebInspector.JSONView.parseJSON(this._requestContent()).then(chooseView.bind(this)).then(callback); |
- |
- /** |
- * @this {WebInspector.RequestPreviewView} |
- * @param {?WebInspector.ParsedJSON} jsonData |
- * @return {!WebInspector.Widget} |
- */ |
- function chooseView(jsonData) |
- { |
- if (jsonData) { |
- var jsonView = this._jsonView(jsonData); |
- if (jsonView) |
- return jsonView; |
- } |
- |
- if (this.request.hasErrorStatusCode() || this.request.resourceType() === WebInspector.resourceTypes.XHR) { |
- var htmlErrorPreview = this._htmlErrorPreview(); |
- if (htmlErrorPreview) |
- return htmlErrorPreview; |
- } |
- |
- if (this._responseView.sourceView) |
- return this._responseView.sourceView; |
- |
- if (this.request.resourceType() === WebInspector.resourceTypes.Other) |
- return this._createEmptyWidget(); |
- |
- return WebInspector.RequestView.nonSourceViewForRequest(this.request); |
- } |
- }, |
- |
- __proto__: WebInspector.RequestContentView.prototype |
+ function chooseView(jsonData) { |
+ if (jsonData) { |
+ var jsonView = this._jsonView(jsonData); |
+ if (jsonView) |
+ return jsonView; |
+ } |
+ |
+ if (this.request.hasErrorStatusCode() || this.request.resourceType() === WebInspector.resourceTypes.XHR) { |
+ var htmlErrorPreview = this._htmlErrorPreview(); |
+ if (htmlErrorPreview) |
+ return htmlErrorPreview; |
+ } |
+ |
+ if (this._responseView.sourceView) |
+ return this._responseView.sourceView; |
+ |
+ if (this.request.resourceType() === WebInspector.resourceTypes.Other) |
+ return this._createEmptyWidget(); |
+ |
+ return WebInspector.RequestView.nonSourceViewForRequest(this.request); |
+ } |
+ } |
}; |