Fix Lint errors in URLUtility (#462)

This commit is contained in:
Steve Faulkner 2021-03-18 22:19:35 -05:00 committed by GitHub
parent 65c859c835
commit 3cccbdfe81
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 64 additions and 59 deletions

View File

@ -24,7 +24,6 @@ src/Common/ObjectCache.test.ts
src/Common/ObjectCache.ts src/Common/ObjectCache.ts
src/Common/QueriesClient.ts src/Common/QueriesClient.ts
src/Common/Splitter.ts src/Common/Splitter.ts
src/Common/UrlUtility.ts
src/Config.ts src/Config.ts
src/Contracts/ActionContracts.ts src/Contracts/ActionContracts.ts
src/Contracts/DataModels.ts src/Contracts/DataModels.ts

View File

@ -1,55 +1,61 @@
export default class UrlUtility { interface Result {
public static parseDocumentsPath(resourcePath: string): any { type?: string;
if (typeof resourcePath !== "string") { objectBody?: {
return {}; id: string;
} self: string;
};
if (resourcePath.length === 0) { }
return {};
} export function parseDocumentsPath(resourcePath: string): Result {
if (typeof resourcePath !== "string") {
if (resourcePath[resourcePath.length - 1] !== "/") { return {};
resourcePath = resourcePath + "/"; }
}
if (resourcePath.length === 0) {
if (resourcePath[0] !== "/") { return {};
resourcePath = "/" + resourcePath; }
}
if (resourcePath[resourcePath.length - 1] !== "/") {
var id: string; resourcePath = resourcePath + "/";
var type: string; }
var pathParts = resourcePath.split("/");
if (resourcePath[0] !== "/") {
if (pathParts.length % 2 === 0) { resourcePath = "/" + resourcePath;
id = pathParts[pathParts.length - 2]; }
type = pathParts[pathParts.length - 3];
} else { let id: string;
id = pathParts[pathParts.length - 3]; let type: string;
type = pathParts[pathParts.length - 2]; const pathParts = resourcePath.split("/");
}
if (pathParts.length % 2 === 0) {
var result = { id = pathParts[pathParts.length - 2];
type: type, type = pathParts[pathParts.length - 3];
objectBody: { } else {
id: id, id = pathParts[pathParts.length - 3];
self: resourcePath, type = pathParts[pathParts.length - 2];
}, }
};
const result = {
return result; type: type,
} objectBody: {
id: id,
public static createUri(baseUri: string, relativeUri: string): string { self: resourcePath,
if (!baseUri) { },
throw new Error("baseUri is null or empty"); };
}
return result;
var slashAtEndOfUriRegex = /\/$/, }
slashAtStartOfUriRegEx = /^\//;
export function createUri(baseUri: string, relativeUri: string): string {
var normalizedBaseUri = baseUri.replace(slashAtEndOfUriRegex, "") + "/", if (!baseUri) {
normalizedRelativeUri = (relativeUri && relativeUri.replace(slashAtStartOfUriRegEx, "")) || ""; throw new Error("baseUri is null or empty");
}
return normalizedBaseUri + normalizedRelativeUri;
} const slashAtEndOfUriRegex = /\/$/,
slashAtStartOfUriRegEx = /^\//;
const normalizedBaseUri = baseUri.replace(slashAtEndOfUriRegex, "") + "/",
normalizedRelativeUri = (relativeUri && relativeUri.replace(slashAtStartOfUriRegEx, "")) || "";
return normalizedBaseUri + normalizedRelativeUri;
} }

View File

@ -7,7 +7,7 @@ import { ChildrenMargin } from "./GitHubStyleConstants";
import * as GitHubUtils from "../../../Utils/GitHubUtils"; import * as GitHubUtils from "../../../Utils/GitHubUtils";
import { IGitHubRepo } from "../../../GitHub/GitHubClient"; import { IGitHubRepo } from "../../../GitHub/GitHubClient";
import * as TelemetryProcessor from "../../../Shared/Telemetry/TelemetryProcessor"; import * as TelemetryProcessor from "../../../Shared/Telemetry/TelemetryProcessor";
import UrlUtility from "../../../Common/UrlUtility"; import * as UrlUtility from "../../../Common/UrlUtility";
import Explorer from "../../Explorer"; import Explorer from "../../Explorer";
export interface AddRepoComponentProps { export interface AddRepoComponentProps {

View File

@ -1,7 +1,7 @@
import { Octokit } from "@octokit/rest"; import { Octokit } from "@octokit/rest";
import { HttpStatusCodes } from "../Common/Constants"; import { HttpStatusCodes } from "../Common/Constants";
import * as Logger from "../Common/Logger"; import * as Logger from "../Common/Logger";
import UrlUtility from "../Common/UrlUtility"; import * as UrlUtility from "../Common/UrlUtility";
import { NotebookUtil } from "../Explorer/Notebook/NotebookUtil"; import { NotebookUtil } from "../Explorer/Notebook/NotebookUtil";
import { getErrorMessage } from "../Common/ErrorHandlingUtils"; import { getErrorMessage } from "../Common/ErrorHandlingUtils";

View File

@ -8,7 +8,7 @@ import * as Logger from "../Common/Logger";
import { NotebookUtil } from "../Explorer/Notebook/NotebookUtil"; import { NotebookUtil } from "../Explorer/Notebook/NotebookUtil";
import { GitHubClient, IGitHubFile, IGitHubResponse } from "./GitHubClient"; import { GitHubClient, IGitHubFile, IGitHubResponse } from "./GitHubClient";
import * as GitHubUtils from "../Utils/GitHubUtils"; import * as GitHubUtils from "../Utils/GitHubUtils";
import UrlUtility from "../Common/UrlUtility"; import * as UrlUtility from "../Common/UrlUtility";
import { getErrorMessage } from "../Common/ErrorHandlingUtils"; import { getErrorMessage } from "../Common/ErrorHandlingUtils";
export interface GitHubContentProviderParams { export interface GitHubContentProviderParams {

View File

@ -3,7 +3,7 @@ import { HttpStatusCodes } from "../Common/Constants";
import { IResourceProviderClient, IResourceProviderRequestOptions } from "./IResourceProviderClient"; import { IResourceProviderClient, IResourceProviderRequestOptions } from "./IResourceProviderClient";
import { OperationStatus } from "../Contracts/DataModels"; import { OperationStatus } from "../Contracts/DataModels";
import { TokenProviderFactory } from "../TokenProviders/TokenProviderFactory"; import { TokenProviderFactory } from "../TokenProviders/TokenProviderFactory";
import UrlUtility from "../Common/UrlUtility"; import * as UrlUtility from "../Common/UrlUtility";
export class ResourceProviderClient<T> implements IResourceProviderClient<T> { export class ResourceProviderClient<T> implements IResourceProviderClient<T> {
private httpClient: HttpClient; private httpClient: HttpClient;