/** * 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 { WfmCreateWorkingScheduleResponse, WfmDeleteWorkingScheduleResponse, WfmReadWorkingScheduleForecastResponse, WfmReadWorkingScheduleResponse, WfmSearchWorkingScheduleResponse, WfmUpdateWorkingScheduleAddAgentsResponse, WfmUpdateWorkingScheduleRemoveAgentResponse, WfmUpdateWorkingScheduleResponse, } from '../_models'; import { WfmWorkingScheduleState } from '../_models'; export const getWorkingScheduleServiceSearchWorkingScheduleResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WfmSearchWorkingScheduleResponse => ({ items: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ agents: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), blockOutsideActivity: faker.helpers.arrayElement([ faker.datatype.boolean(), undefined, ]), calendar: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), createdAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), createdBy: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), domainId: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), endDateAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), endTimeAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), extraSkills: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), startDateAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), startTimeAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), state: faker.helpers.arrayElement([ faker.helpers.arrayElement(Object.values(WfmWorkingScheduleState)), undefined, ]), team: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), totalAgents: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), updatedAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), updatedBy: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), })), undefined, ]), next: faker.helpers.arrayElement([ faker.datatype.boolean(), undefined, ]), ...overrideResponse, }); export const getWorkingScheduleServiceCreateWorkingScheduleResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WfmCreateWorkingScheduleResponse => ({ item: faker.helpers.arrayElement([ { agents: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), blockOutsideActivity: faker.helpers.arrayElement([ faker.datatype.boolean(), undefined, ]), calendar: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), createdAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), createdBy: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), domainId: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), endDateAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), endTimeAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), extraSkills: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), startDateAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), startTimeAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), state: faker.helpers.arrayElement([ faker.helpers.arrayElement(Object.values(WfmWorkingScheduleState)), undefined, ]), team: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), totalAgents: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), updatedAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), updatedBy: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), }, undefined, ]), ...overrideResponse, }); export const getWorkingScheduleServiceDeleteWorkingScheduleResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WfmDeleteWorkingScheduleResponse => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), ...overrideResponse, }); export const getWorkingScheduleServiceReadWorkingScheduleResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WfmReadWorkingScheduleResponse => ({ item: faker.helpers.arrayElement([ { agents: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), blockOutsideActivity: faker.helpers.arrayElement([ faker.datatype.boolean(), undefined, ]), calendar: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), createdAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), createdBy: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), domainId: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), endDateAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), endTimeAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), extraSkills: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), startDateAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), startTimeAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), state: faker.helpers.arrayElement([ faker.helpers.arrayElement(Object.values(WfmWorkingScheduleState)), undefined, ]), team: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), totalAgents: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), updatedAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), updatedBy: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), }, undefined, ]), ...overrideResponse, }); export const getWorkingScheduleServiceUpdateWorkingScheduleAddAgentsResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WfmUpdateWorkingScheduleAddAgentsResponse => ({ agents: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), ...overrideResponse, }); export const getWorkingScheduleServiceUpdateWorkingScheduleRemoveAgentResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WfmUpdateWorkingScheduleRemoveAgentResponse => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), ...overrideResponse, }); export const getWorkingScheduleServiceReadWorkingScheduleForecastResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WfmReadWorkingScheduleForecastResponse => ({ items: faker.helpers.arrayElement([ { [faker.string.alphanumeric(5)]: { forecast: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ agents: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), hour: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), }, }, undefined, ]), ...overrideResponse, }); export const getWorkingScheduleServiceUpdateWorkingScheduleResponseMock = ( overrideResponse: Partial< Extract > = {}, ): WfmUpdateWorkingScheduleResponse => ({ item: faker.helpers.arrayElement([ { agents: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), blockOutsideActivity: faker.helpers.arrayElement([ faker.datatype.boolean(), undefined, ]), calendar: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), createdAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), createdBy: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), domainId: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), endDateAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), endTimeAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), extraSkills: faker.helpers.arrayElement([ Array.from( { length: faker.number.int({ min: 1, max: 10, }), }, (_, i) => i + 1, ).map(() => ({ id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), })), undefined, ]), id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), startDateAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), startTimeAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), state: faker.helpers.arrayElement([ faker.helpers.arrayElement(Object.values(WfmWorkingScheduleState)), undefined, ]), team: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), totalAgents: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), updatedAt: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), updatedBy: faker.helpers.arrayElement([ { id: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), name: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20, }, }), undefined, ]), }, undefined, ]), }, undefined, ]), ...overrideResponse, }); export const getWorkingScheduleServiceSearchWorkingScheduleMockHandler = ( overrideResponse?: | WfmSearchWorkingScheduleResponse | (( info: Parameters[1]>[0], ) => | Promise | WfmSearchWorkingScheduleResponse), options?: RequestHandlerOptions, ) => { return http.get( '*/wfm/lookups/working_schedules', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getWorkingScheduleServiceSearchWorkingScheduleResponseMock(), { status: 200, }, ); }, options, ); }; export const getWorkingScheduleServiceCreateWorkingScheduleMockHandler = ( overrideResponse?: | WfmCreateWorkingScheduleResponse | (( info: Parameters[1]>[0], ) => | Promise | WfmCreateWorkingScheduleResponse), options?: RequestHandlerOptions, ) => { return http.post( '*/wfm/lookups/working_schedules', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getWorkingScheduleServiceCreateWorkingScheduleResponseMock(), { status: 200, }, ); }, options, ); }; export const getWorkingScheduleServiceDeleteWorkingScheduleMockHandler = ( overrideResponse?: | WfmDeleteWorkingScheduleResponse | (( info: Parameters[1]>[0], ) => | Promise | WfmDeleteWorkingScheduleResponse), options?: RequestHandlerOptions, ) => { return http.delete( '*/wfm/lookups/working_schedules/:id', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getWorkingScheduleServiceDeleteWorkingScheduleResponseMock(), { status: 200, }, ); }, options, ); }; export const getWorkingScheduleServiceReadWorkingScheduleMockHandler = ( overrideResponse?: | WfmReadWorkingScheduleResponse | (( info: Parameters[1]>[0], ) => | Promise | WfmReadWorkingScheduleResponse), options?: RequestHandlerOptions, ) => { return http.get( '*/wfm/lookups/working_schedules/:id', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getWorkingScheduleServiceReadWorkingScheduleResponseMock(), { status: 200, }, ); }, options, ); }; export const getWorkingScheduleServiceUpdateWorkingScheduleAddAgentsMockHandler = ( overrideResponse?: | WfmUpdateWorkingScheduleAddAgentsResponse | (( info: Parameters[1]>[0], ) => | Promise | WfmUpdateWorkingScheduleAddAgentsResponse), options?: RequestHandlerOptions, ) => { return http.post( '*/wfm/lookups/working_schedules/:id/agents', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getWorkingScheduleServiceUpdateWorkingScheduleAddAgentsResponseMock(), { status: 200, }, ); }, options, ); }; export const getWorkingScheduleServiceUpdateWorkingScheduleRemoveAgentMockHandler = ( overrideResponse?: | WfmUpdateWorkingScheduleRemoveAgentResponse | (( info: Parameters[1]>[0], ) => | Promise | WfmUpdateWorkingScheduleRemoveAgentResponse), options?: RequestHandlerOptions, ) => { return http.delete( '*/wfm/lookups/working_schedules/:id/agents/:agentId', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getWorkingScheduleServiceUpdateWorkingScheduleRemoveAgentResponseMock(), { status: 200, }, ); }, options, ); }; export const getWorkingScheduleServiceReadWorkingScheduleForecastMockHandler = ( overrideResponse?: | WfmReadWorkingScheduleForecastResponse | (( info: Parameters[1]>[0], ) => | Promise | WfmReadWorkingScheduleForecastResponse), options?: RequestHandlerOptions, ) => { return http.get( '*/wfm/lookups/working_schedules/:id/forecast', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getWorkingScheduleServiceReadWorkingScheduleForecastResponseMock(), { status: 200, }, ); }, options, ); }; export const getWorkingScheduleServiceUpdateWorkingScheduleMockHandler = ( overrideResponse?: | WfmUpdateWorkingScheduleResponse | (( info: Parameters[1]>[0], ) => | Promise | WfmUpdateWorkingScheduleResponse), options?: RequestHandlerOptions, ) => { return http.put( '*/wfm/lookups/working_schedules/item.id}', async (info: Parameters[1]>[0]) => { return HttpResponse.json( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getWorkingScheduleServiceUpdateWorkingScheduleResponseMock(), { status: 200, }, ); }, options, ); }; export const getWorkingScheduleServiceMock = () => [ getWorkingScheduleServiceSearchWorkingScheduleMockHandler(), getWorkingScheduleServiceCreateWorkingScheduleMockHandler(), getWorkingScheduleServiceDeleteWorkingScheduleMockHandler(), getWorkingScheduleServiceReadWorkingScheduleMockHandler(), getWorkingScheduleServiceUpdateWorkingScheduleAddAgentsMockHandler(), getWorkingScheduleServiceUpdateWorkingScheduleRemoveAgentMockHandler(), getWorkingScheduleServiceReadWorkingScheduleForecastMockHandler(), getWorkingScheduleServiceUpdateWorkingScheduleMockHandler(), ];