const U = window.NEUSICIAN_URLS; export const URLS = U; export async function fetchAstLog() { const res = await fetch(U.astlog); if (!res.ok) throw new Error(`${res.status} ${res.statusText}`); return res.text(); } export async function fetchScoreText() { const res = await fetch(U.score); if (!res.ok) throw new Error(`${res.status} ${res.statusText}`); return res.text(); } export async function putScoreText(text) { const res = await fetch(U.score, { method: 'PUT', headers: { 'Content-Type': 'text/yaml' }, body: text, }); if (!res.ok) throw new Error(`${res.status} ${res.statusText}`); return res; } export async function fetchStatus() { const res = await fetch(U.status); if (!res.ok) throw new Error(`${res.status} ${res.statusText}`); return res.json(); } export async function fetchAudioWidget(resultUrl, errors) { const params = new URLSearchParams(); if (resultUrl) params.set('result_url', resultUrl); if (errors) params.set('errors', errors); const res = await fetch(`${U.audiowidget}?${params}`); if (!res.ok || res.status === 204) return ''; return res.text(); }