All files / src/features/Merchants/MerchantSidePanel/WithRepository createComponentRepository.ts

66.66% Statements 4/6
100% Branches 0/0
50% Functions 2/4
60% Lines 3/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26      393x   13x         13x                              
import { customInstance } from "@services/api";
import { IComponentRepository } from "./types";
 
export const createComponentRepository = <T,>(): IComponentRepository<T> => ({
  getAll: async (url: string): Promise<{ total: number; data: Array<T> }> => {
    const response = await customInstance({
      method: "GET",
      url: url,
    });
 
    return { total: response.total, data: response.data };
  },
  getById: (url: string, id: string): Promise<T> => {
    return customInstance({
      method: "GET",
      url: `${url}/${id}`,
    });
  },
 
  getByQueryParams: (url: string, queryParams: string): Promise<T> => {
    return customInstance({
      method: "GET",
      url: `${url}${queryParams}`
    })
  }
});