Skip to content
Snippets Groups Projects
Commit d09102f6 authored by Theo Lesage's avatar Theo Lesage Committed by ml bonhomme
Browse files

Typescriptify repository api helper

parent 560dc52b
No related branches found
No related tags found
1 merge request!1662Typescriptify repository api helper
import axios from 'axios'
import { unique } from '.'
// List repositories imported on Arkindex
export const listRepositories = unique(async params => (await axios.get('/process/repos/', { params })).data)
// Retrieve a repository
export const retrieveRepository = unique(async id => (await axios.get(`/process/repos/${id}/`)).data)
// Delete a repository
export const deleteRepository = unique(id => axios.delete(`/process/repos/${id}/`))
import axios from 'axios'
import { PageNumberPaginationParameters, unique } from '.'
import { PageNumberPagination, UUID } from '@/types'
import { Repository } from '@/types/worker'
// List repositories imported on Arkindex
export const listRepositories = unique(async (params: PageNumberPaginationParameters): Promise<PageNumberPagination<Repository>> => (await axios.get('/process/repos/', { params })).data)
// Retrieve a repository
export const retrieveRepository = unique(async (id: UUID): Promise<Repository> => (await axios.get(`/process/repos/${id}/`)).data)
// Delete a repository
export const deleteRepository = unique((id: UUID) => axios.delete(`/process/repos/${id}/`))
......@@ -21,7 +21,7 @@ export interface Worker extends WorkerLight {
archived: boolean
}
export function isWorker(worker: WorkerLight): worker is Worker {
export function isWorker (worker: WorkerLight): worker is Worker {
return ('repository_id' in worker && (worker.repository_id === null || typeof worker.repository_id === 'string'))
}
......@@ -55,3 +55,10 @@ export type WorkerVersion = {
revision: RevisionWithRefs
version: null
})
export interface Repository {
id: UUID,
url: string,
workers: Array<WorkerLight>,
authorized_users: number
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment