function renderRepoMix(element, data) { const repos = data.repos || []; const issues = (data.issues || []).filter((issue) => issue.state === 'open'); const pullRequests = data.pull_requests || []; element.innerHTML = '
Repos
' + repos.length + '
Open issues
' + issues.length + '
Open PRs
' + pullRequests.length + '
'; } async function updateRepoMix(element, fetchContext = fetch) { try { const response = await fetchContext('api/v1/context', { headers: { Accept: 'application/json' }, }); if (!response.ok) throw new Error('HTTP ' + response.status); renderRepoMix(element, await response.json()); } catch (error) { element.innerHTML = '
Widget unavailable.
'; } } if (typeof module !== 'undefined' && module.exports) { updateRepoMix.renderRepoMix = renderRepoMix; module.exports = updateRepoMix; }