/** * Generated by orval v8.19.0 🍺 * Do not edit manually. * Webitel API * OpenAPI spec version: 24.04.0 */ import { faker } from '@faker-js/faker'; import type { RequestHandlerOptions } from 'msw'; import { HttpResponse, http } from 'msw'; import type { WebMeetingBackendCreateMeetingResponse, WebMeetingBackendMeetingView, WebMeetingBackendSatisfactionMeetingResponse, } from '../_models'; export const getCreateMeetingResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WebMeetingBackendCreateMeetingResponse => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), url: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), ...overrideResponse, }); export const getGetMeetingViewResponseMock = ( overrideResponse: Partial> = {}, ): WebMeetingBackendMeetingView => ({ allowSatisfaction: faker.helpers.arrayElement([ faker.datatype.boolean(), undefined, ]), createdAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), expiresAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), satisfaction: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), title: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), ...overrideResponse, }); export const getSatisfactionMeetingResponseMock = (): WebMeetingBackendSatisfactionMeetingResponse => ({}); export const getCreateMeetingMockHandler = ( overrideResponse?: | WebMeetingBackendCreateMeetingResponse | (( info: Parameters[1]>[0], ) => | Promise | WebMeetingBackendCreateMeetingResponse), options?: RequestHandlerOptions, ) => { return http.post( '*/meetings', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getCreateMeetingResponseMock(), { status: 200, }, ); }, options, ); }; export const getGetMeetingViewMockHandler = ( overrideResponse?: | WebMeetingBackendMeetingView | (( info: Parameters[1]>[0], ) => | Promise | WebMeetingBackendMeetingView), options?: RequestHandlerOptions, ) => { return http.get( '*/meetings/:id', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getGetMeetingViewResponseMock(), { status: 200, }, ); }, options, ); }; export const getSatisfactionMeetingMockHandler = ( overrideResponse?: | WebMeetingBackendSatisfactionMeetingResponse | (( info: Parameters[1]>[0], ) => | Promise | WebMeetingBackendSatisfactionMeetingResponse), options?: RequestHandlerOptions, ) => { return http.post( '*/meetings/:id/satisfaction', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getSatisfactionMeetingResponseMock(), { status: 200, }, ); }, options, ); }; export const getMeetingServiceMock = () => [ getCreateMeetingMockHandler(), getGetMeetingViewMockHandler(), getSatisfactionMeetingMockHandler(), ];