12 Commits

Author SHA1 Message Date
Oliver Eyton-Williams
37ce134123 refactor: (slightly) decentralize type checking (#64163) 2025-12-01 12:43:53 +01:00
Oliver Eyton-Williams
054d2448fa fix(tools): insert step with appropriate challenge type (#62179) 2025-09-16 13:20:25 +05:30
Oliver Eyton-Williams
10c565828e fix(tools): curriculum command line helpers (#61831) 2025-09-02 16:03:28 +02:00
Oliver Eyton-Williams
6e9513a933 chore: upgrade eslint (#58575) 2025-02-07 22:48:43 +02:00
Oliver Eyton-Williams
fcedb7e98d chore(curriculum): remove upcoming python superblock (#57247) 2024-11-20 09:14:36 -08:00
Oliver Eyton-Williams
1e25cfdf83 refactor: rename superblocks.ts to curriculum (#55624) 2024-07-23 09:04:02 -07:00
Manabu Matsumoto
a6bd2f0981 fix(tools): make the editing steps tool keep the challenge type (#54308) 2024-04-08 11:27:42 -07:00
Oliver Eyton-Williams
efb6398b8e fix: sort challengeOrder when repairing meta (#53037) 2024-01-11 16:36:29 +05:00
Krzysztof G
174865974b fix: text typos (#51876)
Co-authored-by: Viktor Szépe <viktor@szepe.net>
2023-10-09 19:36:27 +07:00
Naomi Carrigan
ab640abee1 chore: detuplication (#50955)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2023-07-13 12:46:00 +02:00
Oliver Eyton-Williams
4ff00922da refactor: fix hidden eslint errors (#49365)
* refactor: explicit types for validate

* refactor: explicit return types for ui-components

* refactor: use exec instead of match

* refactor: add lots more boundary types

* refactor: more eslint warnings

* refactor: more explicit exports

* refactor: more explicit types

* refactor: even more explicit types

* fix: relax type contrainsts for superblock-order

* refactor: final boundaries

* refactor: avoid using 'object' type

* fix: use named import for captureException

This uses TypeScript (which works) instead of import/namespace
(which doesn't) to check if captureException exists in sentry/gatsby
(it does)
2023-02-13 07:13:50 -08:00
Oliver Eyton-Williams
339c6713d2 feat: update challenge helpers to handle id filenames (#44769)
* refactor: light tweaks for readability

* refactor: simplify metadata functions

* fix: most tests

* test: fix utils tests

* test: simplify mocks

* WIP: update get-last-step-file-content

* feat: finish create-next-step

* fix: type error

* test: provide mock meta.json for test

* refactor: get meta path from project path

* refactor: get project name from path

* refactor: simplify getProjectMetaPath further

Also removes some excessive mocking

* refactor: remove more mocks, always clear .env

* feat: update create-next-step

* feat: update create-empty steps

Also refactors slightly, so it's easier to insert steps into the meta

* docs: update challenge-helper-script docs

* feat: create-step-between

* refactor: allow metadata parse errors to propagate

* fix: convert reorderSteps to renameSteps

* refactor: create-step-between -> insert-step

* feat: update delete-step

* refactor: consolidate commands into commands.ts

* refactor: clean up and consolidation

* refactor: more cleanup

* fix: make cli args consistent

Everything accepts a single integer and nothing else

* refactor: renameSteps -> updateStepTitles

* docs: update with the names and args

* feat: add step validating meta + files are synced
2022-03-02 07:12:20 -08:00