Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(562)

Unified Diff: third_party/WebKit/Source/devtools/front_end/common/ParsedURL.js

Issue 2466123002: DevTools: reformat front-end code to match chromium style. (Closed)
Patch Set: all done Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/devtools/front_end/common/ParsedURL.js
diff --git a/third_party/WebKit/Source/devtools/front_end/common/ParsedURL.js b/third_party/WebKit/Source/devtools/front_end/common/ParsedURL.js
index 5bd0ff221b1f28f846c77a53d5383487457fc26c..561f4681a790b373d071fc9c64571a60e4ed0750 100644
--- a/third_party/WebKit/Source/devtools/front_end/common/ParsedURL.js
+++ b/third_party/WebKit/Source/devtools/front_end/common/ParsedURL.js
@@ -25,77 +25,76 @@
* (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
- * @param {string} url
+ * @unrestricted
*/
-WebInspector.ParsedURL = function(url)
-{
+WebInspector.ParsedURL = class {
+ /**
+ * @param {string} url
+ */
+ constructor(url) {
this.isValid = false;
this.url = url;
- this.scheme = "";
- this.host = "";
- this.port = "";
- this.path = "";
- this.queryParams = "";
- this.fragment = "";
- this.folderPathComponents = "";
- this.lastPathComponent = "";
+ this.scheme = '';
+ this.host = '';
+ this.port = '';
+ this.path = '';
+ this.queryParams = '';
+ this.fragment = '';
+ this.folderPathComponents = '';
+ this.lastPathComponent = '';
var match = url.match(WebInspector.ParsedURL._urlRegex());
if (match) {
- this.isValid = true;
- this.scheme = match[1].toLowerCase();
- this.host = match[2];
- this.port = match[3];
- this.path = match[4] || "/";
- this.queryParams = match[5] || "";
- this.fragment = match[6];
+ this.isValid = true;
+ this.scheme = match[1].toLowerCase();
+ this.host = match[2];
+ this.port = match[3];
+ this.path = match[4] || '/';
+ this.queryParams = match[5] || '';
+ this.fragment = match[6];
} else {
- if (this.url.startsWith("data:")) {
- this.scheme = "data";
- return;
- }
- if (this.url === "about:blank") {
- this.scheme = "about";
- return;
- }
- this.path = this.url;
+ if (this.url.startsWith('data:')) {
+ this.scheme = 'data';
+ return;
+ }
+ if (this.url === 'about:blank') {
+ this.scheme = 'about';
+ return;
+ }
+ this.path = this.url;
}
- var lastSlashIndex = this.path.lastIndexOf("/");
+ var lastSlashIndex = this.path.lastIndexOf('/');
if (lastSlashIndex !== -1) {
- this.folderPathComponents = this.path.substring(0, lastSlashIndex);
- this.lastPathComponent = this.path.substring(lastSlashIndex + 1);
+ this.folderPathComponents = this.path.substring(0, lastSlashIndex);
+ this.lastPathComponent = this.path.substring(lastSlashIndex + 1);
} else {
- this.lastPathComponent = this.path;
+ this.lastPathComponent = this.path;
}
-};
-
-/**
- * @param {string} fileSystemPath
- * @return {string}
- */
-WebInspector.ParsedURL.platformPathToURL = function(fileSystemPath)
-{
- fileSystemPath = fileSystemPath.replace(/\\/g, "/");
- if (!fileSystemPath.startsWith("file://")) {
- if (fileSystemPath.startsWith("/"))
- fileSystemPath = "file://" + fileSystemPath;
- else
- fileSystemPath = "file:///" + fileSystemPath;
+ }
+
+ /**
+ * @param {string} fileSystemPath
+ * @return {string}
+ */
+ static platformPathToURL(fileSystemPath) {
+ fileSystemPath = fileSystemPath.replace(/\\/g, '/');
+ if (!fileSystemPath.startsWith('file://')) {
+ if (fileSystemPath.startsWith('/'))
+ fileSystemPath = 'file://' + fileSystemPath;
+ else
+ fileSystemPath = 'file:///' + fileSystemPath;
}
return fileSystemPath;
-};
+ }
-/**
- * @return {!RegExp}
- */
-WebInspector.ParsedURL._urlRegex = function()
-{
+ /**
+ * @return {!RegExp}
+ */
+ static _urlRegex() {
if (WebInspector.ParsedURL._urlRegexInstance)
- return WebInspector.ParsedURL._urlRegexInstance;
+ return WebInspector.ParsedURL._urlRegexInstance;
// RegExp groups:
// 1 - scheme (using the RFC3986 grammar)
// 2 - hostname
@@ -110,232 +109,222 @@ WebInspector.ParsedURL._urlRegex = function()
var queryRegex = /(?:\?([^#]*))?/;
var fragmentRegex = /(?:#(.*))?/;
- WebInspector.ParsedURL._urlRegexInstance = new RegExp("^" + schemeRegex.source + hostRegex.source + portRegex.source + pathRegex.source + queryRegex.source + fragmentRegex.source + "$");
+ WebInspector.ParsedURL._urlRegexInstance = new RegExp(
+ '^' + schemeRegex.source + hostRegex.source + portRegex.source + pathRegex.source + queryRegex.source +
+ fragmentRegex.source + '$');
return WebInspector.ParsedURL._urlRegexInstance;
-};
+ }
-/**
- * @param {string} url
- * @return {string}
- */
-WebInspector.ParsedURL.extractPath = function(url)
-{
+ /**
+ * @param {string} url
+ * @return {string}
+ */
+ static extractPath(url) {
var parsedURL = url.asParsedURL();
- return parsedURL ? parsedURL.path : "";
-};
-
-/**
- * @param {string} url
- * @return {string}
- */
-WebInspector.ParsedURL.extractOrigin = function(url)
-{
+ return parsedURL ? parsedURL.path : '';
+ }
+
+ /**
+ * @param {string} url
+ * @return {string}
+ */
+ static extractOrigin(url) {
var parsedURL = url.asParsedURL();
- return parsedURL ? parsedURL.securityOrigin() : "";
-};
-
-/**
- * @param {string} url
- * @return {string}
- */
-WebInspector.ParsedURL.extractExtension = function(url)
-{
- var lastIndexOfDot = url.lastIndexOf(".");
- var extension = lastIndexOfDot !== -1 ? url.substr(lastIndexOfDot + 1) : "";
- var indexOfQuestionMark = extension.indexOf("?");
+ return parsedURL ? parsedURL.securityOrigin() : '';
+ }
+
+ /**
+ * @param {string} url
+ * @return {string}
+ */
+ static extractExtension(url) {
+ var lastIndexOfDot = url.lastIndexOf('.');
+ var extension = lastIndexOfDot !== -1 ? url.substr(lastIndexOfDot + 1) : '';
+ var indexOfQuestionMark = extension.indexOf('?');
if (indexOfQuestionMark !== -1)
- extension = extension.substr(0, indexOfQuestionMark);
+ extension = extension.substr(0, indexOfQuestionMark);
return extension;
-};
-
-/**
- * @param {string} url
- * @return {string}
- */
-WebInspector.ParsedURL.extractName = function(url)
-{
- var index = url.lastIndexOf("/");
+ }
+
+ /**
+ * @param {string} url
+ * @return {string}
+ */
+ static extractName(url) {
+ var index = url.lastIndexOf('/');
return index !== -1 ? url.substr(index + 1) : url;
-};
-
-/**
- * @param {string} baseURL
- * @param {string} href
- * @return {?string}
- */
-WebInspector.ParsedURL.completeURL = function(baseURL, href)
-{
+ }
+
+ /**
+ * @param {string} baseURL
+ * @param {string} href
+ * @return {?string}
+ */
+ static completeURL(baseURL, href) {
// Return special URLs as-is.
var trimmedHref = href.trim();
- if (trimmedHref.startsWith("data:") || trimmedHref.startsWith("blob:") || trimmedHref.startsWith("javascript:"))
- return href;
+ if (trimmedHref.startsWith('data:') || trimmedHref.startsWith('blob:') || trimmedHref.startsWith('javascript:'))
+ return href;
// Return absolute URLs as-is.
var parsedHref = trimmedHref.asParsedURL();
if (parsedHref && parsedHref.scheme)
- return trimmedHref;
+ return trimmedHref;
var parsedURL = baseURL.asParsedURL();
if (!parsedURL)
- return null;
+ return null;
if (parsedURL.isDataURL())
- return href;
+ return href;
- if (href.length > 1 && href.charAt(0) === "/" && href.charAt(1) === "/") {
- // href starts with "//" which is a full URL with the protocol dropped (use the baseURL protocol).
- return parsedURL.scheme + ":" + href;
+ if (href.length > 1 && href.charAt(0) === '/' && href.charAt(1) === '/') {
+ // href starts with "//" which is a full URL with the protocol dropped (use the baseURL protocol).
+ return parsedURL.scheme + ':' + href;
}
var securityOrigin = parsedURL.securityOrigin();
var pathText = parsedURL.path;
- var queryText = parsedURL.queryParams ? "?" + parsedURL.queryParams : "";
+ var queryText = parsedURL.queryParams ? '?' + parsedURL.queryParams : '';
// Empty href resolves to a URL without fragment.
if (!href.length)
- return securityOrigin + pathText + queryText;
+ return securityOrigin + pathText + queryText;
- if (href.charAt(0) === "#")
- return securityOrigin + pathText + queryText + href;
+ if (href.charAt(0) === '#')
+ return securityOrigin + pathText + queryText + href;
- if (href.charAt(0) === "?")
- return securityOrigin + pathText + href;
+ if (href.charAt(0) === '?')
+ return securityOrigin + pathText + href;
var hrefPath = href.match(/^[^#?]*/)[0];
var hrefSuffix = href.substring(hrefPath.length);
- if (hrefPath.charAt(0) !== "/")
- hrefPath = parsedURL.folderPathComponents + "/" + hrefPath;
+ if (hrefPath.charAt(0) !== '/')
+ hrefPath = parsedURL.folderPathComponents + '/' + hrefPath;
return securityOrigin + Runtime.normalizePath(hrefPath) + hrefSuffix;
-};
+ }
-WebInspector.ParsedURL.prototype = {
- get displayName()
- {
- if (this._displayName)
- return this._displayName;
-
- if (this.isDataURL())
- return this.dataURLDisplayName();
- if (this.isAboutBlank())
- return this.url;
-
- this._displayName = this.lastPathComponent;
- if (!this._displayName)
- this._displayName = (this.host || "") + "/";
- if (this._displayName === "/")
- this._displayName = this.url;
- return this._displayName;
- },
-
- /**
- * @return {string}
- */
- dataURLDisplayName: function()
- {
- if (this._dataURLDisplayName)
- return this._dataURLDisplayName;
- if (!this.isDataURL())
- return "";
- this._dataURLDisplayName = this.url.trimEnd(20);
- return this._dataURLDisplayName;
- },
-
- /**
- * @return {boolean}
- */
- isAboutBlank: function()
- {
- return this.url === "about:blank";
- },
-
- /**
- * @return {boolean}
- */
- isDataURL: function()
- {
- return this.scheme === "data";
- },
-
- /**
- * @return {string}
- */
- lastPathComponentWithFragment: function()
- {
- return this.lastPathComponent + (this.fragment ? "#" + this.fragment : "");
- },
-
- /**
- * @return {string}
- */
- domain: function()
- {
- if (this.isDataURL())
- return "data:";
- return this.host + (this.port ? ":" + this.port : "");
- },
-
- /**
- * @return {string}
- */
- securityOrigin: function()
- {
- if (this.isDataURL())
- return "data:";
- return this.scheme + "://" + this.domain();
- },
-
- /**
- * @return {string}
- */
- urlWithoutScheme: function()
- {
- if (this.scheme && this.url.startsWith(this.scheme + "://"))
- return this.url.substring(this.scheme.length + 3);
- return this.url;
- },
-};
-
-/**
- * @param {string} string
- * @return {!{url: string, lineNumber: (number|undefined), columnNumber: (number|undefined)}}
- */
-WebInspector.ParsedURL.splitLineAndColumn = function(string)
-{
+ /**
+ * @param {string} string
+ * @return {!{url: string, lineNumber: (number|undefined), columnNumber: (number|undefined)}}
+ */
+ static splitLineAndColumn(string) {
var lineColumnRegEx = /(?::(\d+))?(?::(\d+))?$/;
var lineColumnMatch = lineColumnRegEx.exec(string);
var lineNumber;
var columnNumber;
console.assert(lineColumnMatch);
- if (typeof(lineColumnMatch[1]) === "string") {
- lineNumber = parseInt(lineColumnMatch[1], 10);
- // Immediately convert line and column to 0-based numbers.
- lineNumber = isNaN(lineNumber) ? undefined : lineNumber - 1;
+ if (typeof(lineColumnMatch[1]) === 'string') {
+ lineNumber = parseInt(lineColumnMatch[1], 10);
+ // Immediately convert line and column to 0-based numbers.
+ lineNumber = isNaN(lineNumber) ? undefined : lineNumber - 1;
}
- if (typeof(lineColumnMatch[2]) === "string") {
- columnNumber = parseInt(lineColumnMatch[2], 10);
- columnNumber = isNaN(columnNumber) ? undefined : columnNumber - 1;
+ if (typeof(lineColumnMatch[2]) === 'string') {
+ columnNumber = parseInt(lineColumnMatch[2], 10);
+ columnNumber = isNaN(columnNumber) ? undefined : columnNumber - 1;
}
- return {url: string.substring(0, string.length - lineColumnMatch[0].length), lineNumber: lineNumber, columnNumber: columnNumber};
-};
-
-/**
- * @param {string} url
- * @return {boolean}
- */
-WebInspector.ParsedURL.isRelativeURL = function(url)
-{
+ return {
+ url: string.substring(0, string.length - lineColumnMatch[0].length),
+ lineNumber: lineNumber,
+ columnNumber: columnNumber
+ };
+ }
+
+ /**
+ * @param {string} url
+ * @return {boolean}
+ */
+ static isRelativeURL(url) {
return !(/^[A-Za-z][A-Za-z0-9+.-]*:/.test(url));
+ }
+
+ get displayName() {
+ if (this._displayName)
+ return this._displayName;
+
+ if (this.isDataURL())
+ return this.dataURLDisplayName();
+ if (this.isAboutBlank())
+ return this.url;
+
+ this._displayName = this.lastPathComponent;
+ if (!this._displayName)
+ this._displayName = (this.host || '') + '/';
+ if (this._displayName === '/')
+ this._displayName = this.url;
+ return this._displayName;
+ }
+
+ /**
+ * @return {string}
+ */
+ dataURLDisplayName() {
+ if (this._dataURLDisplayName)
+ return this._dataURLDisplayName;
+ if (!this.isDataURL())
+ return '';
+ this._dataURLDisplayName = this.url.trimEnd(20);
+ return this._dataURLDisplayName;
+ }
+
+ /**
+ * @return {boolean}
+ */
+ isAboutBlank() {
+ return this.url === 'about:blank';
+ }
+
+ /**
+ * @return {boolean}
+ */
+ isDataURL() {
+ return this.scheme === 'data';
+ }
+
+ /**
+ * @return {string}
+ */
+ lastPathComponentWithFragment() {
+ return this.lastPathComponent + (this.fragment ? '#' + this.fragment : '');
+ }
+
+ /**
+ * @return {string}
+ */
+ domain() {
+ if (this.isDataURL())
+ return 'data:';
+ return this.host + (this.port ? ':' + this.port : '');
+ }
+
+ /**
+ * @return {string}
+ */
+ securityOrigin() {
+ if (this.isDataURL())
+ return 'data:';
+ return this.scheme + '://' + this.domain();
+ }
+
+ /**
+ * @return {string}
+ */
+ urlWithoutScheme() {
+ if (this.scheme && this.url.startsWith(this.scheme + '://'))
+ return this.url.substring(this.scheme.length + 3);
+ return this.url;
+ }
};
+
/**
* @return {?WebInspector.ParsedURL}
*/
-String.prototype.asParsedURL = function()
-{
- var parsedURL = new WebInspector.ParsedURL(this.toString());
- if (parsedURL.isValid)
- return parsedURL;
- return null;
+String.prototype.asParsedURL = function() {
+ var parsedURL = new WebInspector.ParsedURL(this.toString());
+ if (parsedURL.isValid)
+ return parsedURL;
+ return null;
};

Powered by Google App Engine
This is Rietveld 408576698