summaryrefslogtreecommitdiff
path: root/source/github-helpers/does-file-exist.tsx
blob: 593cada8828fa08bcb976976490763bb885f23be (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import api from './api.js';
import GitHubURL from './github-url.js';

export default async function doesFileExist(url: GitHubURL): Promise<boolean> {
	const {repository} = await api.v4(`
		query doesFileExist($owner: String!, $name: String!, $file: String!) {
			repository(owner: $owner, name: $name) {
				file: object(expression: $file) {
					id
				}
			}
		}
	`, {
		variables: {
			owner: url.user,
			name: url.repository,
			file: `${url.branch}:${url.filePath}`,
		},
	});

	return Boolean(repository.file);
}