(active)
| 239 | |
| 240 | // ===== GENERATE / CANCEL ===== |
| 241 | function setGeneratingState(active) { |
| 242 | if (active) { |
| 243 | generateButton.classList.add("hidden"); |
| 244 | cancelButton.classList.remove("hidden"); |
| 245 | statusArea.classList.add("active"); |
| 246 | } else { |
| 247 | stopJobPolling(); |
| 248 | activeJobId = null; |
| 249 | generateButton.classList.remove("hidden"); |
| 250 | cancelButton.classList.add("hidden"); |
| 251 | statusArea.classList.remove("active"); |
| 252 | generateButton.disabled = false; |
| 253 | logViewer.classList.remove("active"); |
| 254 | } |
| 255 | } |
| 256 | |
| 257 | function cancelGeneration() { |
| 258 | const targetPath = activeJobId ? `/api/jobs/${activeJobId}/cancel` : "/api/cancel"; |
no test coverage detected