| function normalizePaginatedListResponse(response) { |
| if (!response.data) { |
| return { |
| ...response, |
| data: [] |
| }; |
| } |
| const responseNeedsNormalization = "total_count" in response.data && !("url" in response.data); |
| if (!responseNeedsNormalization) |
| return response; |
| const incompleteResults = response.data.incomplete_results; |
| const repositorySelection = response.data.repository_selection; |
| const totalCount = response.data.total_count; |
| delete response.data.incomplete_results; |
| delete response.data.repository_selection; |
| delete response.data.total_count; |
| const namespaceKey = Object.keys(response.data)[0]; |
| const data = response.data[namespaceKey]; |
| response.data = data; |
| if (typeof incompleteResults !== "undefined") { |
| response.data.incomplete_results = incompleteResults; |
| } |
| if (typeof repositorySelection !== "undefined") { |
| response.data.repository_selection = repositorySelection; |
| } |
| response.data.total_count = totalCount; |
| return response; |
| } |
| export { |
| normalizePaginatedListResponse |
| }; |