feat(v1.4.0): CSV/Excel/JSON/NextUp exports + hybrid smart year standing

- Export modules (export-csv/json/xlsx) mirroring the PDF layout, plus a
  Next Up import CSV matching the raycast/nextup column contract.
- Hybrid Year Level: View Grades history (exact per-semester standing),
  falling back to units math (prospectus total - lacking), then profile.
  Popup adds a year-mode setting (auto/custom/off).
- On-page button row now offers PDF / CSV / Excel / JSON / Next Up.
- Bump version to 1.4.0.
- Tag-only build workflow with an optional AMO sign step for a signed .xpi;
  separate ci.yml keeps tests on pushes/PRs.
- Tests: year-standing parser tests + export tests (CSV quoting, JSON schema,
  XLSX structure); CI validates XLSX via openpyxl.
This commit is contained in:
2026-08-20 06:45:21 +08:00
parent 89fd587c21
commit 53d5ca6d04
19 changed files with 5231 additions and 76 deletions
+3
View File
@@ -2,3 +2,6 @@ node_modules/
docs/
dist/
.env
.env.*