{"version":3,"file":"static/js/804.98b3ac1a.chunk.js","mappings":"oYAOaA,EAAc,SAACC,GACxB,IAAMC,EAASD,EACX,IAAM,IAAIE,gBAAgB,CACtBF,yBAA0B,GAAKA,IAChCG,WAAa,GAEpB,OAAO,KAAQC,IAA6B,+BAAwBH,IAC/DI,MAAK,SAAAC,GAAY,eAAkBA,EAASC,OAAS,EAApC,IAAwC,WAAM,WACxE,EAEaC,EAAwB,SAACC,GAClC,OAAO,KAAQL,IAA6B,qBAAcK,EAAE,0BACvDJ,MAAK,SAAAC,GAAY,eAAkBA,EAASC,OAAS,EAApC,IAAwC,WAAM,WACxE,EAEaG,EAAiB,SAACD,GAC3B,OAAO,KAAQL,IAA2B,oBAAaK,IAClDJ,MAAK,SAACC,GAAa,eAAiBA,EAASC,KAA1B,IAAiC,WAAO,OAAAI,QAAQC,OAAO,KAAK,GACxF,EAEaC,EAAkB,SAACJ,GAC5B,OAAO,KAAQL,IAAuB,oBAAaK,EAAE,kBAChDJ,MAAK,SAACC,GAAa,OAAAA,EAASC,MAAQ,EAAjB,IAAqB,WAAM,WACvD,EAEaO,EAA0B,SAACC,GACpC,IAAMd,EAASc,EACX,IAAM,IAAIb,gBAAgB,CACtBc,UAAW,GAAKD,IACjBZ,WAAa,GACpB,OAAO,KAAQC,IAAkB,oBAAaW,EAAS,yBAAiBd,IACnEI,MAAK,SAACC,GAAa,OAAAA,EAASC,MAAQ,EAAjB,GAC5B,EAEaU,EAA4B,SAACF,GACtC,OAAO,KAAQX,IAAkB,oBAAaW,EAAS,qBAClDV,MAAK,SAACC,GAAa,OAAAA,EAASC,MAAQ,CAAjB,GAC5B,EAEaW,EACT,SAACC,GACG,OAAO,KAAQC,KAAqB,oBAAaD,EAAQJ,UAAS,0BAA0BI,GACvFd,MAAK,SAAAgB,GACF,OAAOA,EAASd,IACpB,IAAG,SAACe,GACA,OAAOX,QAAQC,QAAO,QAAYU,GACtC,GACR,EAESC,EACT,SAACJ,GAGG,OAFAA,EAAQK,QAAUL,EAAQK,SAAWL,EAAQM,UAEtC,KAAQL,KAA+B,oBAAaD,EAAQJ,UAAS,kBAAkBI,GACzFd,MAAK,SAAAgB,GACF,OAAOA,EAASd,KAAKmB,SACzB,IAAG,SAACJ,GACA,OAAOX,QAAQC,QAAO,QAAYU,GACtC,GACR,EAESK,EACT,SAACR,GACG,IAAMlB,EACF,IAAM,IAAIC,gBAAgB,CACtB0B,KAAM,GAAKT,EAAQM,YACpBtB,WAEP,OAAO,KAAQC,IAAoB,oBAAae,EAAQJ,UAAS,wBAAgBd,IAC5EI,MAAK,SAAAgB,GACF,OAAOA,EAASd,IACpB,IAAG,SAACe,GACA,OAAOX,QAAQC,QAAO,QAAYU,GACtC,GACR,C","sources":["services/api/service.ts"],"sourcesContent":["import { IDTO, IResponseDto } from 'src/entities/common';\r\nimport { IQuestion } from '../../entities/question';\r\nimport fetcher from '../fetcher';\r\nimport { IServiceDetails, IServiceIntervalRequest, IServiceArriveTimeRequest, fillPayableField, fillPayableFields } from './../../entities/service';\r\nimport { IDateInterval, ICalendarIntervals } from 'src/entities/calendar';\r\nimport { handleError } from './errorHandler';\r\n\r\nexport const getServices = (onlyWithVisibleCalendars?: boolean): Promise => {\r\n const params = onlyWithVisibleCalendars ?\r\n '?' + new URLSearchParams({\r\n onlyWithVisibleCalendars: '' + onlyWithVisibleCalendars,\r\n }).toString() : ''\r\n\r\n return fetcher.get>(`/Services/WithDetails${params}`)\r\n .then(respJson => fillPayableFields(respJson.Data) || [], () => []);\r\n};\r\n\r\nexport const getServicesByCalendar = (id: number): Promise => {\r\n return fetcher.get>(`/Calendars/${id}/Services/WithDetails`)\r\n .then(respJson => fillPayableFields(respJson.Data) || [], () => []);\r\n};\r\n\r\nexport const getServiceById = (id: number): Promise => {\r\n return fetcher.get>(`/Services/${id}`)\r\n .then((respJson) => fillPayableField(respJson.Data), (() => Promise.reject(null)))\r\n};\r\n\r\nexport const getCustomParams = (id: number): Promise => {\r\n return fetcher.get>(`/Services/${id}/CustomParams`)\r\n .then((respJson) => respJson.Data || [], () => []);\r\n}\r\n\r\nexport const getServiceFirstFreeSlot = (serviceId: number): Promise => {\r\n const params = serviceId ?\r\n '?' + new URLSearchParams({\r\n ServiceId: '' + serviceId,\r\n }).toString() : ''\r\n return fetcher.get>(`/Services/${serviceId}/FirstFreeSlot${params}`)\r\n .then((respJson) => respJson.Data || '');\r\n};\r\n\r\nexport const getServiceMaxWeeksForward = (serviceId: number): Promise => {\r\n return fetcher.get>(`/Services/${serviceId}/WeeksForwardMax`)\r\n .then((respJson) => respJson.Data || 1);\r\n};\r\n\r\nexport const getServiceDaysWithFreeIntervals =\r\n (request: IServiceIntervalRequest): Promise => {\r\n return fetcher.post>(`/Services/${request.serviceId}/DaysWithFreeIntervals`, request)\r\n .then(response => {\r\n return response.Data\r\n }, (errorDto: IResponseDto) => {\r\n return Promise.reject(handleError(errorDto));\r\n });\r\n };\r\n\r\nexport const getServiceFreeIntervals =\r\n (request: IServiceIntervalRequest): Promise => {\r\n request.endDate = request.endDate || request.startDate;\r\n\r\n return fetcher.post>(`/Services/${request.serviceId}/FreeIntervals`, request)\r\n .then(response => {\r\n return response.Data.Intervals\r\n }, (errorDto: IResponseDto) => {\r\n return Promise.reject(handleError(errorDto));\r\n });\r\n }\r\n\r\nexport const getServiceArriveTimes =\r\n (request: IServiceArriveTimeRequest): Promise => {\r\n const params =\r\n '?' + new URLSearchParams({\r\n Date: '' + request.startDate,\r\n }).toString();\r\n\r\n return fetcher.get>(`/Services/${request.serviceId}/ArrivalTimes${params}`)\r\n .then(response => {\r\n return response.Data\r\n }, (errorDto: IResponseDto) => {\r\n return Promise.reject(handleError(errorDto));\r\n });\r\n }"],"names":["getServices","onlyWithVisibleCalendars","params","URLSearchParams","toString","get","then","respJson","Data","getServicesByCalendar","id","getServiceById","Promise","reject","getCustomParams","getServiceFirstFreeSlot","serviceId","ServiceId","getServiceMaxWeeksForward","getServiceDaysWithFreeIntervals","request","post","response","errorDto","getServiceFreeIntervals","endDate","startDate","Intervals","getServiceArriveTimes","Date"],"sourceRoot":""}