(request: StandardRequest)
| 38 | } |
| 39 | |
| 40 | export function parseBatchRequest(request: StandardRequest): StandardRequest[] { |
| 41 | const items = request.method === 'GET' |
| 42 | ? parseEmptyableJSON(request.url.searchParams.getAll('batch').at(-1)) |
| 43 | : request.body |
| 44 | |
| 45 | if (!Array.isArray(items)) { |
| 46 | throw new TypeError('Invalid batch request') |
| 47 | } |
| 48 | |
| 49 | return items.map((item) => { |
| 50 | return { |
| 51 | method: item.method ?? request.method, |
| 52 | url: new URL(item.url), |
| 53 | headers: item.headers ?? {}, |
| 54 | body: item.body, |
| 55 | signal: request.signal, |
| 56 | } satisfies StandardRequest |
| 57 | }) |
| 58 | } |
no test coverage detected