pathname(url) {
		if (typeof url !== "string" || !this.PROTOCOL_PATTERN.test(url)) return url;

		url = url.split("?")[0];
		const protocol = (this.PROTOCOL_PATTERN.exec(url) || [])[0] || "";

		if (protocol === "content://") {
			try {
				const { rootUri, docId, isFileUri } = Uri.parse(url);
				if (isFileUri) return this.pathname(rootUri);
				else return "/" + (docId.split(":")[1] || docId);
			} catch (error) {
				return null;
			}
		} else {
			if (protocol) url = url.replace(new RegExp("^" + protocol), "");

			if (protocol !== "file:///")
				return "/" + url.split("/").slice(1).join("/");

			return "/" + url;
		}
	}
Gets pathname from url eg. gets '/foo/bar' from 'ftp://myhost.com/foo/bar'
@param {string} url
@returns {string}