feat(progress): live status bar + % complete during exports
ci / test (push) Successful in 39s
ci / test (pull_request) Successful in 44s

Adds a progress bar below the export buttons showing the current step
(reading table, fetching course descriptions i/N, profile, year level,
building file) with a 0-100% fill. Threads an onProgress callback through
scrapeStudyLoad and resolveYearLevel. Buttons disable during export to
prevent double-triggers; bar clears ~3s after success.
This commit is contained in:
2026-08-20 09:02:15 +08:00
parent 90e4107bf0
commit eb7087d506
2 changed files with 109 additions and 9 deletions
+6 -3
View File
@@ -92,9 +92,12 @@ built `ismis-helper-chrome.zip` directly:
- Year Level mode: `Auto` (recommended), `Use custom value`, or `Profile value
only`.
- **Smart Year Level**: for the semester being printed, `Auto` derives the
standing from the View Grades history (exact) or, failing that, from remaining
units (Student Prospectus total − Lacking Subjects). Custom value overrides;
the profile-scraped value is the fallback.
standing from remaining units (Student Prospectus total − Lacking Subjects,
reflecting units actually passed) or, failing that, from the View Grades
history. Custom value overrides; the profile-scraped value is the fallback.
- **Live progress indicator**: during any export a status bar below the buttons
shows the current step (reading table, fetching course descriptions `i/N`,
profile, year level, building file) with a progress percentage.
- **Next Up import**: the Next Up export writes CSV in the exact column contract
the Raycast [Next Up](https://github.com/) extension accepts
(`title, courseCode, days, startTime, endTime, room, units, professorName`),