Commit Graph

55 Commits

Author SHA1 Message Date
Huyen Nguyen
1108d25883 feat(client,challenge-parser): support audio and transcript in quiz questions (#65711) 2026-02-12 08:52:49 +01:00
Huyen Nguyen
582261f70b test(challenge-parser): add test for 'highlighted-text' class (#65546) 2026-01-29 09:06:36 +05:30
Huyen Nguyen
0e2f81831e fix(client,challenge-parser): display highlighted text as span for language challenges (#63802) 2025-12-11 19:03:16 +00:00
MeaslyDay
2beb6c8dc6 fix(tools): update error message for hints without tests (#64354)
Co-authored-by: Jessica Wilkins <67210629+jdwilkin4@users.noreply.github.com>
Co-authored-by: Huyen Nguyen <25715018+huyenltnguyen@users.noreply.github.com>
2025-12-10 09:20:13 +01:00
Huyen Nguyen
cabddb74cb feat(challenge-parser,client): display Chinese dialogue with ruby annotations (#64235) 2025-12-08 10:00:05 +01:00
Krzysztof G.
9d8ed5e348 fix(tools): improve video questions validation (#64176)
Co-authored-by: majestic-owl448 <26656284+majestic-owl448@users.noreply.github.com>
2025-12-03 09:03:25 -08:00
gowtham1412-p
8cbaf2b27d fix(challenge-parser): add missing backtick in challenge parser fixture files (#64131)
Co-authored-by: Navadeep0007 <2400030007@kluniversity.in>
2025-11-27 23:54:55 +01:00
Krzysztof G.
f20d8a7a70 fix(tools): wrong throw causes test to pass (#64159)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-11-26 16:43:08 +01:00
Huyen Nguyen
33325b9002 feat(client,challenge-parser): update fill-in-the-blank to support Chinese (#63741) 2025-11-25 11:02:22 -08:00
Huyen Nguyen
0c844ab007 feat(client,challenge-parser): render Chinese as ruby markup (#63424)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-11-10 11:25:57 -08:00
DanielRosa74
2432f5e9e4 feat(tools, client): add speaking tasks logic (#61906)
Co-authored-by: Huyen Nguyen <25715018+huyenltnguyen@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-11-07 19:29:21 +00:00
Huyen Nguyen
ae8417a467 feat(client): add action row with interactive editor toggle to lectures (#62928)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-10-24 15:12:00 +02:00
Shaun Hamilton
7c20027732 feat(client): add challenge interactive editor (#61805)
Co-authored-by: sembauke <semboot699@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-10-09 09:34:03 +05:30
Huyen Nguyen
95b4056e20 test(challenge-parser): improve validate-sections test (#62385) 2025-09-27 18:52:21 +05:30
Oliver Eyton-Williams
51eba06a7d refactor: remove jest and lint vitest (#62330) 2025-09-24 09:27:03 +02:00
Anna
ee05b0d5da feat(tools): allow tsx tabs (#61936)
Co-authored-by: Huyen Nguyen <25715018+huyenltnguyen@users.noreply.github.com>
2025-09-12 11:16:37 -07:00
Oliver Eyton-Williams
28411a2cec refactor: migrate challenge parser tests to vitest (#62186) 2025-09-12 09:50:02 -07:00
Oliver Eyton-Williams
2b008e5aa8 feat: support afterAll hook in challenge tests (#61256) 2025-09-11 10:46:57 -05:00
Huyen Nguyen
9ebdd29205 feat(challenge-parser): add validateSections plugin (#61148) 2025-08-14 13:39:18 +02:00
Oliver Eyton-Williams
2a7b220a4f feat: support beforeEach and afterEach (#60921)
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2025-07-07 10:46:09 +00:00
Oliver Eyton-Williams
5ef98680f9 refactor: remove unused vars (#59658) 2025-04-10 10:06:46 -05:00
Anna
3104c9e057 feat: test page structure (#59113)
Co-authored-by: Naomi <accounts+github@nhcarrigan.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2025-04-01 15:32:52 -05:00
Oliver Eyton-Williams
96d62330cd feat(client): support beforeAll in DOM challenge tests (#59001) 2025-02-28 14:03:18 +02:00
Oliver Eyton-Williams
6e9513a933 chore: upgrade eslint (#58575) 2025-02-07 22:48:43 +02:00
Oliver Eyton-Williams
321915cbe9 refactor(parser): helper to get paragraph content (#56326) 2024-10-04 09:42:41 -05:00
Lars Kappert
d32e57813e chore: update Knip to v5 (#56244) 2024-09-26 13:12:00 +02:00
Oliver Eyton-Williams
ffe765dac1 refactor: quiz challenge question format (#56285) 2024-09-25 10:41:38 -07:00
Oliver Eyton-Williams
e95b040762 refactor: create and use all-section parser (#56282) 2024-09-25 10:04:16 -07:00
Oliver Eyton-Williams
21fa84348c fix(tools): broken import (#56278) 2024-09-25 17:37:30 +09:00
Oliver Eyton-Williams
435cbc0024 refactor: clean up parser test code (#56271) 2024-09-25 13:04:27 +05:30
Tom
c8f272d3c3 feat(challenge-parser/client): add quiz challenge type (#56058)
Co-authored-by: Jessica Wilkins <67210629+jdwilkin4@users.noreply.github.com>
2024-09-24 21:18:17 +05:30
Oliver Eyton-Williams
8b601d762e feat: allow TS to be used in challenges (#56159) 2024-09-19 18:44:09 -04:00
Tom
a9a1081564 feat(challenge-parser): allow many questions in MC challenge (#55928) 2024-09-19 09:56:47 -05:00
Anna
973b7175c9 fix(curriculum): use-blank-word-instead-of-char (#55444) 2024-07-18 20:13:10 -05:00
Oliver Eyton-Williams
3b9ae66a64 fix: more specific formatting error message (#53626) 2024-02-09 22:15:00 +05:30
Oliver Eyton-Williams
9fe6a46b81 feat: nicer formatting for fill in the blank challenges (#52552) 2023-12-18 23:33:20 +00:00
Tom
a31f6637d7 feat(client/curriculum): add dialogue animations (#52543) 2023-12-15 16:29:45 +01:00
Eric Do
70b4044c6c feat(tools/challenge-parser): Add tests to fill-in-the-blank parser (#52451) 2023-12-07 11:18:52 -06:00
Shaun Hamilton
fb1a5ab16f fix(tools): allow long-form of language id (#52442) 2023-11-28 15:53:41 -06:00
Tom
ddc459e71e feat(client/curriculum): add upcoming english superblock and challenge types (#52201) 2023-11-09 10:08:51 +01:00
Tom
bce1b9915b feat(challenge-parser): add feedback to mc questions (#51942) 2023-11-02 08:28:53 +02:00
Krzysztof G
d7e0f59528 fix: typos in names (#51896)
Co-authored-by: Viktor Szépe <viktor@szepe.net>
2023-10-11 07:33:56 +03:00
Mrugesh Mohapatra
b5c86d4b9c feat(e2e): adding playwright and migrate landing page e2e tests (#51216)
Co-authored-by: Ahmad <57593864+Ahmadkashif@users.noreply.github.com>
Co-authored-by: Hassaan Pasha <pasha.hassaan@gmail.com>
2023-08-11 14:10:10 +05:30
Oliver Eyton-Williams
69d6ee32bf feat: python in the browser (#50913)
Co-authored-by: Beau Carnes <1513130+beaucarnes@users.noreply.github.com>
2023-07-28 07:36:25 +02:00
renovate[bot]
7ecf6a44bc chore(deps): update jest monorepo to v29 (major) (#49775)
* chore(deps): update jest monorepo to v29

* chore: install jest-environment-jsdom

* chore: update snapshots

* fix: update config to transform nanoid+uuid

* chore: update babel's node target

This does not seem strictly necessary, but is probably for the best.

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2023-03-21 12:37:23 +00:00
Sem Bauke
df53c7778c feat: integrate The Odin Project (#48617)
* feat: integrate the odin project

* feat: add assignment to markdown parser

* feat: add assignment logic

* fix: doe not always show assignment block

* fix: some other stuff

* fix: introdiction to html and css questions

* fix: remove assignments after first question

* fix: update snapshots and tests

* feat: create rest of HTML foundation course structure

* feat: meta file

* feat: add descriptions to 'html boiler plate' questions

* feat: add description for 'working with text and list items'

* fix: multiple logic issues

* fix: make linter happy

* feat: add description for 'links and images' questions

* fix: add assignments to Joi schema

* fix: tests

* fix: schema

* fix: add help category

* fix: change to possessive wording

* fix: set upcoming change to true in meta file

* fix: spell unordered and ordered correctly

* fix: switch order in meta

* fix: spell boilerplate correctly

* feat: add final project

* chore: add more tests to the final project

* fix: question spelling

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* fix: translation

* Update client/i18n/locales/english/translations.json

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* fix: create new challenge type

* fix: get the new challenge type working and remove ol css

* fix: translation location

* fix: add challenge type to epic

* fix: set correct video

* fix: max challengeType number

* fix: spelling/grammar errors in project

* fix: check if anchor tags is empty

* Apply suggestions from code review

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* Update tools/challenge-parser/parser/plugins/add-video-question.js

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* chore: multiple suggestions

* chore: separate assignments into different plugin

* Apply suggestions from code review

Co-authored-by: Kristofer Koishigawa <scissorsneedfoodtoo@gmail.com>

* fix: dubble answer header after review

* fix: issue with Gatsby hopefully

* fix: add assignments to Gatsby's Challenge schema

* Update curriculum/schema/challengeSchema.js

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Kristofer Koishigawa <scissorsneedfoodtoo@gmail.com>
2023-01-19 14:55:26 +02:00
Oliver Eyton-Williams
36363f277d test: enable tests for steps (#44550)
* fix: handle missing solutions correctly

Rather than creating an [[]] the parser now creates [] which isEmpty().
This makes the test suite check the next challenge for a solution.

In addition, the logic for testing solutions was fixed.

* chore: update snapshots

* test: build new superblock in node.js-tests CI

* test: allow forward slash in superblock slug

* fix: borked tests oops

* test: ignore duplicated projects

* fix: i did not break these shaun did :)

* fix: idIndex is index of id not id

Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
2021-12-22 12:18:06 -08:00
Oliver Eyton-Williams
f613a1e5fd fix: index.css/js to styles/script (#44356)
* fix: replace index with script/styles as needed

* fix: remove redundant fileKey

It's overwritten by createPoly, so the parser does not need to create it

* fix: curriculum test suite

* Update client/src/templates/Challenges/classic/MultifileEditor.js

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-12-03 12:32:29 -08:00
Oliver Eyton-Williams
bb0e7317c8 fix: only use parts of gfm parser 2021-12-02 19:57:47 +05:30
Shaun Hamilton
59f17f237b refactor: files{} -> challengeFiles[], and key -> fileKey (#43023)
* fix(client): fix client

* fix propType and add comment

* revert user.json prettification

* slight type refactor and payload correction

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* update ChallengeFile type imports

* add cypress test for code-storage

* update test and storage epic

* fix Shaun's tired brain's logic

* refactor with suggestions

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* update codeReset

* increate cypress timeout because firefox is slow

* remove unused import to make linter happy

* use focus on editor

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* use more specific seletor for cypress editor test

* account for silly null challengeFiles

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-08-12 20:48:28 +02:00