(rawUrl: string, query: HttpQueryEntry[])
| 113 | } |
| 114 | |
| 115 | function buildUrl(rawUrl: string, query: HttpQueryEntry[]): string { |
| 116 | const url = new URL(rawUrl) |
| 117 | if (query.length > 0) { |
| 118 | url.search = '' |
| 119 | } |
| 120 | |
| 121 | for (const entry of query) { |
| 122 | if (entry.enabled === false) |
| 123 | continue |
| 124 | if (entry.key) { |
| 125 | url.searchParams.append(entry.key, entry.value) |
| 126 | } |
| 127 | } |
| 128 | return url.toString() |
| 129 | } |
| 130 | |
| 131 | function toHeadersObject(entries: HttpHeaderEntry[]): Record<string, string> { |
| 132 | const obj: Record<string, string> = {} |
no outgoing calls
no test coverage detected