* fix: require login as step
* fix: cert rendering temporary
* fix: remove keys from other translation files
* fix: cypress test
* chore: shauns suggestions
* fix: remove steps
* fix: use a seperate UseEffect function
* Suggestions from Shaun
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* fix: certification temp rendering
* fix: cert temp rendering hopefully
* fix: button visibility and cert test
* fix: condition
* test: improve claim cert tests
Without npm run seed, retries will be in a different state.
Check the scroll position to (hopefully) catch the weird cert claim bug.
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* fix(deps): update monaco editor
* chore: rollback monaco, update react-monaco-editor
The latest version of react-monaco-editor is only compatible with monaco
v0.27
* fix: roll-back monaco-editor-webpack-plugin
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* feat(curriculum): add accessibility-quiz practice project
* add parts 002-006
* add parts 7-8, tentative on logo aspect-ratio
* add parts 008-013
* add parts 013-016
* add parts 017-026
* add parts 026-027
* add parts 027-029
* add parts 029-044
* add parts 044-067 - all parts done
* add tests 001-009
* add tests 010 - 033
* add tests 034 - 039
* update tests 008~033, add tests 040-050
* add all tests
* fix some stuff, remove final.md
* take reasonable suggestions from Nich, ignore rest
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
* replace svg link with actual CDN
* remove getAttribute in potentially bad places
* add method to form
* fix silly querySelectors
* adjust selectors for 028
* fix selectors, and add color transformations
Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
* fix: typos, and make one test lenient
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
* fix: move ActionRow outside the ReflexContainer
It does not need to be resizable.
* fix: make DesktopLayout aware of ActionRow
The ReflexContainer seems to need to be inside a display: flex component
to correctly compute the sizes of it's children.
* refactor: remove unused props
* fix: enforce multifile tab order
* fix: sort challengeFiles to prevent remounts
If the challengeFiles are used unsorted, this can unmount an editor.
The editors rely on the mount hook for initialization, so extra mounts
can cause unwanted behaviour.
* fix: make editor tabs and panes match
* refactor: remove ambiguity about editable region
Since the editable region is implemented via decorations and defined in
challenge object, getEditableRegionFromRedux, makes the source obvious
* fix: make jaws follow the highlighted region
* fix: update the jaws on all content changes
* feat: make editable region 'absorb' text
As the user types, the editable region can move, expand and contract.
With this PR then if the user, say, presses backspace on the line after
the editable region, causing that line to move up, then the new contents
will expand/contract as if they had always been part of the region.
* feat(Cypress): hotkey tests
* fix: test previous next for projects
* fix: link time-out firefox
* feat: test the "r" hotkey
* fix: change select back to body for now
* fix: retain navigation mode for video challenges
* test: find focused elements
* fix: move focus from panel before pressing 'r'
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
* test: add hotkey test for backend
* test: remove redundant {esc} presses
* refactor: naming change
* fix: refactor properly
* fix: actually refactor it properly
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
* fix: message removed when not logged in
* removed unnecessary code from DonateCompletion.tsx that was added
* now using isSignedIn in props and not donationFromState