* fix(UI): missing sign-in button at small devices
* feat: replace menu and sign-in buttons text with images
* refactor: svg icons replaced by fortawesome ones
* test: fix e2e test of navigation menu button
* feat: display sign in button and hide all
* feat: display sign in icon on nav for small screens
* feat: add accessibility span for menu icon
* fix: lint errors
Co-authored-by: ahmad abdolsaheb <ahmad.abdolsaheb@gmail.com>
* fix: main menu a11y updates
* update font menu
* fix: sign in button text alignment
* fix: disabled button font
* fix: language menu font
* remove sign-in from main menu
* fix: add section dividers to menu
* fix: height on language selector menu
* fix: alignment of Menu button text
* fix: language globe icon
* refactor: remove dup selector
* update language menu colors
* refactor: clearer name for language menu display state
* fix: don't close onBlur if Menu button is clicked
* refactor: move globe icon styling to CSS
* refactor: get rid of switch statements
* refactor: remove try catch block
* fix: translate Change language button
* fix: move search into nav menu for mobile layout
* fix: forgot a merge
* refactor: updates for changes in i18n/all-langs
* fix: prevent menu from collapsing when focus is on change language button and user clicks into search
* fix: translate cancel change option in language picker
* feat: add cypress tests
* feat: display the complete language list
* fix: fix TS typing
* fix: force scrollbar on lang menu
* fix: remove scroll bar from lang menu
* fix: close menu when user tabs away from last menu item
* add list role to navigation list to appease Safari
* chore: capitalize Change Language/remove CSS comment
* fix: right side search box alignment in narrow view
* remove extraneous list role
* fix: cypress
Co-authored-by: ahmad abdolsaheb <ahmad.abdolsaheb@gmail.com>
Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
* feat: migrate locale test to ts v2
* fix: langCodes
* fix: locale test
* fix: nav dropdown
* fix: header test
* fix: use type predicates
* refactor: DRY up all-langs
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* fix: make breadcrumb nav more accessible
* refactor: cypress test and jest snapshot
* slight adjustment to left breadcrumb focus outline
* feat: translate aria for nav
* chore(tools): update snapshot
Co-authored-by: ahmad abdolsaheb <ahmad.abdolsaheb@gmail.com>
Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>
* fix: fcc logo link
* fix: fcc svg label
* feat: use translated aria for logo
* clean up
Co-authored-by: ahmad abdolsaheb <ahmad.abdolsaheb@gmail.com>
* chore(client): tidy Flash by tidying tone
* add store import
* fix enum, remove default switch case
Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
* typo galore
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
* rejig everything, because refactoring is fun 🙃
* refactor: DRY playTone
* fix url to foss library
Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
* alphabetasize FlashMessage enum
* add all FlashMessages to tone/index.ts
* remove redundant type
* my code is correctnpm run develop:client
* fix: remove circular dependency
* fix: typo
* remove logs, play special tones for nightmode
* play sound on challengeComplete
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* feat(UI): language in the side menu is now a drop down. navigation items are now text wrapped
* fix: use redux navigation to redirect links instead
* fix: fix to use clientLocale as curent language instead
* fix: tests to use clientLocale
* fix: remove circular dependency
redux depended on templates/Challenges/redux and vice versa. This
meant that import order mattered and confusing bugs could arise.
(cherry picked from commit 7d67a4e70922bbb3051f2f9982dcc69e240d43dc)
* feat: require imports to be in alphabetical order
Import order generally does not matter, but there are edge cases
(circular imports and css imports, for example) where changing order
changes behaviour
(cherry picked from commit b8d1393a91ec6e068caf8e8498a5c95df68c2b2c)
* chore: order imports
* fix: lift up challenge description + title comps
This brings the classic Show closer to the others as they
now all create the description and title components
* fix: remove donation-saga/index circular import
(cherry picked from commit 51a44ca668a700786d2744feffeae4fdba5fd207)
* refactor: extract action-types from settings
(cherry picked from commit 25e26124d691c84a0d0827d41dafb761c686fadd)
* fix: lint errors
* feat: prevent useless renames
* fix(client): refactor to use correct i18n t type
* appease Oliver by importing directly from react-i18n
* fix: use default TFunction type variable
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* typescript migration for files under search folder
* fixing few more eslint errors and warnings
* reverting changes for redux/index.js
* fixing merge conflicts with next
* deleting redux/index.ts
* migrate files and update tests
fix: use more memory for gatsby develop (#42433)
feat(client): remove whitespace from calculated values (#42400)
* feat(client?): remove whitespace for calculated values
* feat(client): remove whitespace from styledeclaration
* do not automatically strip
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* fix: include all properties of CSSStyleDeclaration
* fix test for getPropVal
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
fix: get showUpcomingChange from env.json (#42440)
fix(client): display legacy certs like current ones (#42038)
* fix: display legacy certs like the current ones
* fix: link projects in legacy certs to project pages
* fix: update tests to changed legacy cert display
* fix: update tests for removed legacy certs forms
* fix: display legacy certs like the current ones
* fix: submit projects for cert on projects pages
* fix: remove legacy certs form submitting handling
* fix: move claiming cert setup before both tests
* fix: remove legacy cert update props and actions
* fix: remove legacy cert updates from api
* fix: correct merge conflict
fix(curriculum): rework Project Euler 98 (#42423)
* fix: rework challenge to use argument in function
* fix: add solution
* fix: use MathJax to improve math notation
fix(curriculum): rework Project Euler 56 (#42364)
* fix: rework challenge to use argument in function
* fix: add solution
* fix: use MathJax to improve look of math notation
fix(curriculum): correct small english typo (#42447)
chore: group together monaco-editor and plugin (#42443)
This should get renovate to create PRs where both are modified.
fix(deps): update dependency algoliasearch to v4.9.2 (#42432)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
migrate files and update tests
Algorithm moved to TSX
first ten files renamed to tsx
first 10 migration complete
first 20 files renamed
migrate some files. rename all
test
index.tsx forced to ignore ts issues
rename and migrate all files
update tests
* remove missed propType declarations
* kebab-caseify
* fi xlinting
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Parth Parth <thecodingaviator@users.noreply.github.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
The previous approach did avoid a fair number of jest.mock calls, but
made debugging the tests harder. If you don't know about the mapping
it's unclear why the imported module does not behave as normal.
By forcing the use of jest.mock it means that the answer to that
question is in the test you are working on.
* fix(api): decouple api from curriculum
This reverts commit 8f0e441644 and
introduces the implementations from #40703.
* fix(gitpod): add curriculum build to GitPod
This reverts commit 706d70f58d and
introduces implementations from #41234.
* docs: update DevOps manual for api change (#41259)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>