import { http, HttpResponse, type JsonBodyType } from 'msw' import DefaultFixtures from './fixtures/defaults' export const BASE_URL = 'https://api.pco.test/chat/v2' export const handlers = [ // Session fixtures get(BASE_URL + '/records', DefaultFixtures.records()), get(BASE_URL + '/paginated_records', DefaultFixtures.records()), post(BASE_URL + '/records', DefaultFixtures.records(), 200), patch(BASE_URL + '/records/:id', DefaultFixtures.records()), del(BASE_URL + '/records/:id'), ] function get(url: string, mockedResponse: JsonBodyType, mockedStatus: number = 200) { return http.get(url, () => { return HttpResponse.json(mockedResponse, { status: mockedStatus }) }) } function post(url: string, mockedResponse: JsonBodyType, mockedStatus: number = 200) { return http.post(url, () => { return HttpResponse.json(mockedResponse, { status: mockedStatus }) }) } function del(url: string, mockedResponse?: JsonBodyType, mockedStatus: number = 200) { return http.delete(url, () => { return HttpResponse.json(mockedResponse, { status: mockedStatus }) }) } function patch(url: string, mockedResponse: JsonBodyType, mockedStatus: number = 200) { return http.patch(url, () => { return HttpResponse.json(mockedResponse, { status: mockedStatus }) }) }