You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

23 lines
968 B

import ApiService from '@/services/api.service'
import { TemplateRepository } from '~/domain/models/autoLabeling/templateRepository'
import { ConfigTemplateItem, ConfigResponse } from '~/domain/models/autoLabeling/template'
export class APITemplateRepository implements TemplateRepository {
constructor(
private readonly request = ApiService
) {}
async list(projectId: string, taskName: string): Promise<string[]> {
const url = `/projects/${projectId}/auto-labeling/templates?task_name=${taskName}`
const response = await this.request.get(url)
const responseItems: string[] = response.data
return responseItems
}
async find(projectId: string, optionName: string): Promise<ConfigTemplateItem> {
const url = `/projects/${projectId}/auto-labeling/templates/${optionName}`
const response = await this.request.get(url)
const responseItem: ConfigResponse = response.data
return ConfigTemplateItem.valueOf(responseItem)
}
}