feat(backend-gitlab): initial GraphQL support (#6059)

This commit is contained in:
Erez Rokah
2021-12-28 12:39:23 +01:00
committed by GitHub
parent a83dba7acd
commit 1523a4140a
7 changed files with 274 additions and 7 deletions

View File

@ -102,6 +102,7 @@ export type Config = {
api_root?: string;
squash_merges?: boolean;
use_graphql?: boolean;
graphql_api_root?: string;
preview_context?: string;
identity_url?: string;
gateway_url?: string;
@ -205,6 +206,8 @@ type ReadFile = (
type ReadFileMetadata = (path: string, id: string | null | undefined) => Promise<FileMetadata>;
type CustomFetchFunc = (files: ImplementationFile[]) => Promise<ImplementationEntry[]>;
async function fetchFiles(
files: ImplementationFile[],
readFile: ReadFile,
@ -461,6 +464,7 @@ type AllEntriesByFolderArgs = GetKeyArgs &
isShaExistsInBranch: (branch: string, sha: string) => Promise<boolean>;
apiName: string;
localForage: LocalForage;
customFetch?: CustomFetchFunc;
};
export async function allEntriesByFolder({
@ -478,6 +482,7 @@ export async function allEntriesByFolder({
getDifferences,
getFileId,
filterFile,
customFetch,
}: AllEntriesByFolderArgs) {
async function listAllFilesAndPersist() {
const files = await listAllFiles(folder, extension, depth);
@ -561,5 +566,8 @@ export async function allEntriesByFolder({
}
const files = await listFiles();
return fetchFiles(files, readFile, readFileMetadata, apiName);
if (customFetch) {
return await customFetch(files);
}
return await fetchFiles(files, readFile, readFileMetadata, apiName);
}