Commit Graph

2022 Commits

Author SHA1 Message Date
Caden Parker
85f3ecbb0a Change Link Regex Tests to DOM queries (#45890)
* Change link regex tests to DOM queries

* Keep injection of style tag

Co-authored-by: Florencia <sicref001@gmail.com>
Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-06-27 10:37:23 +02:00
Oliver Eyton-Williams
8bc5b0a310 fix: show completion modal (#46589)
* fix: make ctrl/cmd + enter trigger modal

Multifile projects should be handled like legacy challenges in this
regard.

* test: check modal appears

* refactor: ignore additional solutions

* test: fix ctrl + enter tests

* fix: only run on electron

* fix: remove log

* fix: show completion modal if instructions focused

* fix: handle undefined challengeType
2022-06-26 12:23:46 -05:00
Naomi Carrigan
74a03ce0e5 feat: only 3 attempts before showing buttons (#46641)
* feat: only 3 attempts before showing buttons

* fix: linter
2022-06-24 08:27:18 +03:00
Oliver Eyton-Williams
44b1a3dab5 fix(client): inject user's script.js contents correctly (#46627)
With this change the preview should function as if the user had written
a script with script.js's contents.  <script src="script.js"> is
replaced, so the script element's position in the html matters.
2022-06-23 16:34:29 +01:00
Oliver Eyton-Williams
9046d70b67 fix: use certification hours consistently (#46442)
* fix: use certification hours consistently

Since the value appearing on the /learn map was hardcoded, it could have
gone out of sync with the certifications, which were relying on
certification-settings.

Also, for simplicity (and because it's hard to estimate accurately), all
the certifications are set to 300 hours.  Fullstack being the exception,
as it is a set of certifications.

* feat: remove the hours from the map
2022-06-23 14:24:33 +03:00
Shaun Hamilton
7a91407184 fix(client): handle verification of full-stack cert once (#46588) 2022-06-20 13:14:22 -07:00
Bruce Blaser
bcb048a93b fix(a11y): improve RWD challege grid accessibility (#45957)
* fix: improve RWD challege grid accessibility

* fix: change wording from challenge to step

* fix: improve keyboard focus indicator on step links

* fix: style jump link as button

* fix: accessible background color for completed steps

* refactor: make steps a nav region

* refactor: remove duplicate selector

* fix: enhance focus indicator on jump link

* fix: TS type

* refactor: remove unneeded CSS

* chore: resolve conflict

* chore: translate accessible name on nav

* fix: remove h4 from button

* fix: add course name to toggle button

* fix: improve accessibility of course stats on toggle button

* fix: prefix step links with sr-only "Step"

* fix: add start project button

* refactor: remove unnecessary spaces

* fix: clean up styles

* Update client/src/templates/Introduction/intro.css

Co-authored-by: ahmad abdolsaheb <ahmad.abdolsaheb@gmail.com>
2022-06-17 15:45:40 +03:00
Radi Totev
9e51b59584 feat: show sign in button for unauthenticated users (#46401) 2022-06-16 13:47:30 +02:00
Bruce Blaser
46450b802c fix(a11y): improve challenge test suite results accessibility (#45802)
Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
2022-06-14 12:09:25 +05:30
Oliver Eyton-Williams
55e71cb599 fix: slightly improve logging from promises (#46422) 2022-06-10 22:28:38 +05:30
Radi Totev
c0e0dcfef9 chore: improve spelling (#46421) 2022-06-09 16:18:35 +02:00
Bruce Blaser
4f54125e76 fix:enable default mouse/touch events on monaco content widget (#46217)
* fix:enable default mouse events on monaco content widget

* add touch event handling

* initial test of scroll gutter

* disable scroll gutter

* re-enable gutter scroll as content widget

* move scroll gutter over line numbers

* fix: bug in moving scroll gutter over line numbers

* CSS adjustments to put scroll gutter over line numbers

* fix: scroll gutter height

* fix: make scroll gutter width responsive

* refactor: consolidate event handlers

* refactor: simplify args to createWidget
2022-06-09 12:07:40 +05:30
Prathamesh Gawas
f803d60be1 fix: multiple redirects after account deletion (#46350) 2022-06-08 07:48:17 -07:00
Oliver Eyton-Williams
f0f44ca315 feat(client): re-enable failed update re-submission (#46064)
* refactor: return response with data from ajax

Because we still need to manipulate the data coming back from the server
(files -> challengeFiles) and we want to keep ajax.ts as the interface
between client and server we need to return the manipulated data with
the response.

* feat: re-enable failed updates flushing

* test: failed updates get resubmitted and flushed

* fix: convert settings requests to use { data }

* refactor: use preserveSession
2022-06-07 17:52:23 +03:00
Jordan Moore
fcf2dd7254 fix(UI): Remove 'CTRL + Enter' on CTA for mobile (#46239)
Co-authored-by: ahmad abdolsaheb <ahmad.abdolsaheb@gmail.com>
2022-06-07 18:20:16 +05:30
Muhammed Mustafa
e7d7702e25 fix(client-UI): view button takes full width (#45964)
* added class to td so it takes full width

* added width 100% to dropbox components

* removed excessive code

* limit the max space dropdown takes

* `view` takes the same size as `show-solution`

* undo previous change

* view takes the same size as show-solution

* fix: static width for buttons on small screen

* fix: remove max-width cause iocd

Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
2022-06-06 08:43:48 +02:00
Radi Totev
e581bd9081 feat(client): shortcuts legend modal available on pressing the ? key (#45530)
* Add modal texts in translations.json file

* Add shortcuts modal state in redux

* Create shortcuts modal

* Integrate shortcuts modal

* Resolve codefactor.io issues

* Extend list of shortcuts

Based on this comment:
https://github.com/freeCodeCamp/freeCodeCamp/issues/36841#issuecomment-933310078

* Remove temporary placeholder for modal title

* Open modal fom Hotkeys instead of learn.tsx

As suggested in this comment:
https://github.com/freeCodeCamp/freeCodeCamp/pull/45530#issuecomment-1101224993

* Complete list in transaltions

* Change shortcut presentation fo better a11y

Use table instead of list items as suggestedin this comment:
https://github.com/freeCodeCamp/freeCodeCamp/pull/45530#issuecomment-1101796368

* Add aria-labelledby

* Remove GAnalytics

* Remove leftover style

* Remove table caption

* autofocus on modal close button

* Improve modal a11y

- Add requested changes from https://github.com/freeCodeCamp/freeCodeCamp/pull/45530#issuecomment-1104764766
- Leave autofocus and parent div role=dialog changes for later. (https://github.com/freeCodeCamp/freeCodeCamp/pull/45530#issuecomment-1107754148)

* [WIP] Alllow users to turn off keyboard shortcuts

* Add keyboard shortcuts switch in settings

* Disable shortcuts

* Remove toggle switch description

* Refactor and cleanup

* Remove close button from modal header

Suggested by bbsmooth:
https://github.com/freeCodeCamp/freeCodeCamp/pull/45530#issuecomment-1107861091

* Fix lint issues

* Disable shortcuts

* Disable shortcuts by default

* Update challenge output test

* Update challenge-hot-keys test

* Disable shortcuts from inside handlers

Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
2022-06-03 09:57:52 -07:00
Sem Bauke
345268019c fix(client): reduce line number bar width (#46309) 2022-06-03 15:01:08 +02:00
SadmanSyfe
12d742a4f0 fix(client): prevent lower jaw breaking on code evaluation (#46154)
* Fix(issue:#46062)

* feat: render based on earliest available lower jaw conditions

* fix: persist challenge completion properly

Co-authored-by: ahmad abdolsaheb <ahmad.abdolsaheb@gmail.com>
2022-06-03 12:10:49 +02:00
Oliver Eyton-Williams
f55a4c48db test: tighten up two more cypress tests (#46273)
* test: tighten up user-token

This should be faster and a little more reliable.  before should have
worked, but beforeEach seems more reliable, so I'm trying it.

* test: use a single test for intro-page

Should be more robust as well as a lot faster.
2022-06-03 11:44:20 +03:00
Ahmad Abdolsaheb
78090c76ca feat(client): contextually show reset step button (#46272)
* feat: show reset step button contexually

* feat: rename render function

* fix:clean up

* feat: open a reset step modal
2022-06-02 19:34:31 +02:00
Ahmad Abdolsaheb
aead146554 feat(client): center login button (#46287)
* feat(client): center login button

* feat: remove unused file
2022-06-02 17:34:29 +03:00
Shaun Hamilton
b2da57881c chore(client): remove console log (#46275) 2022-06-01 20:16:45 +02:00
Shaun Hamilton
33e0bb79d7 fix(client): add mathjax to intermediate-algorithm-scripting (#46270) 2022-06-01 20:01:22 +05:30
Bruce Blaser
d2332093f6 fix(a11y): main menu a11y updates (#45137)
* 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>
2022-06-01 10:39:26 +03:00
Lasse Jørgensen
6d89576b6c fix(curriculum): don't block fragment links (#46246) 2022-06-01 12:56:19 +05:30
Oliver Eyton-Williams
ed865269a6 test: fix donate page for existing donors (#46255) 2022-05-31 23:06:35 +01:00
Niraj Nandish
d67a617e47 fix(client): prevent code duplication when using help button (#46232)
* fix(client): prevent code duplication when using help button

* feat(client): comment file name when opening issue in forum

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

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2022-05-30 22:29:28 +05:30
Sem Bauke
2790362df8 feat: instruction hiding with button (#46086)
Co-authored-by: ahmad abdolsaheb <ahmad.abdolsaheb@gmail.com>
2022-05-30 18:50:32 +05:30
renovate[bot]
4a1d223429 fix(deps): update dependency react-reflex to v4.0.9 (#46206)
* fix(deps): update dependency react-reflex to v4.0.9

* fix(deps): update dependency react-reflex to v4.0.9

* fix(client): chore to remove unneeded ts comment

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2022-05-30 18:50:01 +05:30
Jordan Moore
5f7d87daf0 feat: add project name on timeline for challenges completed RWD (#46181) 2022-05-28 10:45:03 +05:30
Bruce B
8d90c02747 fix(a11y):add main landmark to super block intro (#46168) 2022-05-27 10:52:49 +02:00
Tom
658b48ba62 fix: third-party cookie issues with CodeAlly login (#46090) 2022-05-26 21:44:10 +05:30
Ahmad Abdolsaheb
97423f7a2f feat: add a leading submitChallenge debounce (#46085)
* feat: reduce submitChallenge debounce

* feat: register the leading call

* fix: presist debounce calls

* Update client/src/templates/Challenges/classic/editor.tsx

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

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-05-26 21:43:12 +05:30
Kristofer Koishigawa
739ee60995 fix: display certs on profile for username with upper chars (#46118) 2022-05-26 15:03:49 +05:30
Naomi Carrigan
ef841bdfb0 fix: throw sound into local storage (#46123) 2022-05-23 12:29:54 -05:00
Sem Bauke
c3e1ba4390 fix(client): prevent iframe from duplicating by using preventDefault (#46082)
* fix: prevent iframe from duplicating

* fix: remove old stuff

* fix: changes

* fix: change wording

* Update client/src/templates/Challenges/utils/frame.ts

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

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>
2022-05-21 09:59:28 +04:00
Radi Totev
ea4cedd3f2 chore(client): typescript migration - utils/frame.js (#46075)
* Change extension to .ts

* Resolve ts issues

* Update test:curriculum script
2022-05-20 14:59:08 +02:00
Bruce B
3d9293f14b fix(a11y): improve accessibility on completed Step heading (#46047)
* fix: improve accessibility on completed Step heading

* fix: add translation
2022-05-20 13:29:03 +02:00
Naomi Carrigan
b9f3345721 feat: update endpoints (#45688) 2022-05-19 21:52:38 +05:30
Niraj Nandish
d4e01b66fb chore: TS migrate MultifileEditor (#45857) 2022-05-19 21:14:22 +05:30
Ahmad Abdolsaheb
23fe76f103 feat: add two second debounce to confirm username validity check intention (#46067) 2022-05-19 07:49:06 -05:00
Oliver Eyton-Williams
58482b9d98 test: skip the failed-updates-epic tests for now (#46053) 2022-05-18 11:13:00 -07:00
Oliver Eyton-Williams
85375e7621 fix: temporarily prevent the client from retrying (#46050) 2022-05-18 10:44:56 -05:00
Sem Bauke
cef1ef1db7 fix: update settings in batch (#46040)
* fix: update settings in batch

* fix: make buttons update

* fix: tests (hopefully)

* fix: cypress promise error

* fix: use submit instead of onclick

Co-authored-by: Niraj Nandish <nirajnandish@icloud.com>
2022-05-18 17:54:50 +03:00
Radi Totev
aaca146d2b fix(client): show checkmark for completed challenges in new RWD (#46038) 2022-05-18 18:57:53 +05:30
Tom
26def9309f chore: check if canClaimCert before calling backend (#46029)
* chore: check if canClaimCert before calling backend

* refactor: make canClaimCert declarative

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-05-18 14:11:03 +03:00
Ahmad Abdolsaheb
d89b129d18 feat(client): combine editor submission and execution calls (#46037)
* feat: combine submission and execution calls

* refactor: rename the click listeners

onChallengeSubmission sounds like something that will get called in
response to challenge submission, not something that will trigger it

* fix: create one debounced function

* fix: use lodash-es

Otherwise we'll include all of lodash in the bundle.

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-05-18 14:34:39 +04:00
Muhammed Mustafa
ac027b0447 fix(client): added .text-center to modal title (#46022) 2022-05-18 02:08:32 +05:30
Oliver Eyton-Williams
301c2a598a fix: comments out update-my-current-challenge call (#46028) 2022-05-18 02:07:29 +05:30