/** * Generated by orval 🍺 * Do not edit manually. * API * API documentation for the starter-kit project in NestJS by BinarApps. The API allows management of users, sessions and offers various functions for logged in users. Contains examples of authentication, authorization, and CRUD for selected resources. * OpenAPI spec version: 1.0 */ import { faker } from '@faker-js/faker' import { HttpResponse, delay, http } from 'msw' import type { FileEntity } from '../../types' export const getFilesControllerUploadFileResponseMock = ( overrideResponse: Partial = {} ): FileEntity => ({ id: faker.string.alpha(20), path: faker.string.alpha(20), category: faker.helpers.arrayElement([faker.string.alpha(20), null]), createdAt: `${faker.date.past().toISOString().split('.')[0]}Z`, mimeType: faker.string.alpha(20), name: faker.string.alpha(20), size: faker.number.int({ min: undefined, max: undefined }), userId: faker.string.alpha(20), ...overrideResponse, }) export const getFilesControllerUploadFileMockHandler = ( overrideResponse?: | FileEntity | ((info: Parameters[1]>[0]) => Promise | FileEntity) ) => { return http.post('*/api/v1/files/upload', async (info) => { await delay(1000) return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === 'function' ? await overrideResponse(info) : overrideResponse : getFilesControllerUploadFileResponseMock() ), { status: 201, headers: { 'Content-Type': 'application/json' } } ) }) } export const getFilesControllerDownloadMockHandler = ( overrideResponse?: | unknown | ((info: Parameters[1]>[0]) => Promise | unknown) ) => { return http.get('*/api/v1/files/:fileName', async (info) => { await delay(1000) if (typeof overrideResponse === 'function') { await overrideResponse(info) } return new HttpResponse(null, { status: 200 }) }) } export const getFilesControllerDeleteFileMockHandler = ( overrideResponse?: | unknown | ((info: Parameters[1]>[0]) => Promise | unknown) ) => { return http.delete('*/api/v1/files/:fileName', async (info) => { await delay(1000) if (typeof overrideResponse === 'function') { await overrideResponse(info) } return new HttpResponse(null, { status: 200 }) }) } export const getFilesMock = () => [ getFilesControllerUploadFileMockHandler(), getFilesControllerDownloadMockHandler(), getFilesControllerDeleteFileMockHandler(), ]