export type Timestamp = {date?: number | undefined, day?: number | undefined, hours?: number | undefined, minutes?: number | undefined, month?: number | undefined, nanos?: number | undefined, seconds?: number | undefined, time?: number | undefined, timezoneOffset?: number | undefined, year?: number | undefined}; export type AltaRecorridoRequest = {entro?: Timestamp | undefined, id_caseta?: number | undefined, id_visitas?: number | undefined, salio?: Timestamp | undefined}; export type CreateApiApiRecorridoArgs = {body: AltaRecorridoRequest}; export type CreateApiApiRecorridoOptions = {baseUrl: string, fetch?: typeof fetch | undefined}; /** * aƱede casetas por las que debe pasar el visitante * * POST /api/recorrido */ export const createApiApiRecorrido = async (args: CreateApiApiRecorridoArgs, options: CreateApiApiRecorridoOptions) => { const {baseUrl, fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") headers.set('accept', "*/*") const url = `${baseUrl.replace(/\/+$/, '')}/api/recorrido${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return res.blob() };