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.

16 lines
582 B

  1. import ApiService from '@/services/api.service'
  2. import { CatalogRepository } from '@/domain/models/upload/catalogRepository'
  3. import { Catalog } from '~/domain/models/upload/catalog'
  4. export class APICatalogRepository implements CatalogRepository {
  5. constructor(
  6. private readonly request = ApiService
  7. ) {}
  8. async list(projectId: string): Promise<Catalog[]> {
  9. const url = `/projects/${projectId}/catalog`
  10. const response = await this.request.get(url)
  11. const responseItems: Catalog[] = response.data
  12. return responseItems.map(item => Catalog.valueOf(item))
  13. }
  14. }