Commit Graph

2230 Commits

Author SHA1 Message Date
Tom
b950070f80 feat(curriculum): add college algebra cert as upcoming change (#43605)
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2023-03-10 10:55:50 +00:00
Muhammed Mustafa
74046d1d82 refactor(client): delete honest-Policy file (#49643)
* refactor(client): clean extra element I have added by mistake

* reduce the complexicity of the file
2023-03-10 09:45:29 +01:00
Muhammed Mustafa
86c215acdd feat(client): add type reset (#49628)
* feat(client): add type reset

* downgrade babel types

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

---------

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2023-03-09 14:25:30 +00:00
Mrugesh Mohapatra
b13713c33f chore(client): rename and update analytics (#49626) 2023-03-08 15:01:22 +00:00
Muhammed Mustafa
32380519f9 feat(client): clean extra CSS properties (#49608)
* feat(client): clean extra css property

* remove the extra panel default property
2023-03-08 08:37:36 +01:00
Shaun Hamilton
f45d8b06dc feat(client): warn endpoint url submission (#49560)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2023-03-06 16:24:48 +05:30
sidemt
a4ce8fa425 fix(client): prevent word wrap in Chinese & Japanese button text (#49571)
fix(client): prevent word wrap in CJK button text
2023-03-06 16:20:06 +05:30
Muhammed Mustafa
f937e89bc3 feat(client): improve card accessibility (#49566)
Co-authored-by: Bruce B <bbsmooth@gmail.com>
Co-authored-by: Co-authored-by: Bruce B <bbsmooth@gmail.com>
2023-03-06 10:41:09 +03:00
Naomi Carrigan
ec9fb04fb7 feat: statistics calculator (#48181)
* feat: stats calculator to step 23

* feat: complete steps

* feat: starting the tests

* feat: finish tests

* chore: manual review suggestions

* chore: apply jessica's suggestions

Co-authored-by: Jessica Wilkins  <67210629+jdwilkin4@users.noreply.github.com>

* fix: broken mathjax

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

* chore: fix typo

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

* fix: update regex, clarify first step

* feat: forgot to add solution

* chore: apply sem's review suggestions

Co-authored-by: Sem Bauke <semboot699@gmail.com>

* chore: apply kolade's review suggestions

* chore: apply kris' suggestions

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

---------

Co-authored-by: Jessica Wilkins  <67210629+jdwilkin4@users.noreply.github.com>
Co-authored-by: Kristofer Koishigawa <scissorsneedfoodtoo@gmail.com>
Co-authored-by: Sem Bauke <semboot699@gmail.com>
2023-03-03 17:41:25 +09:00
Oliver Eyton-Williams
d7848ae01a feat: migrate to pnpm for better workspace DX (#49293)
* feat: npm -> pnpm 

This resolves the issues with the gatsby client (gatsby-plugin-pnpm
deals with the fact that gatsby is relying on its own dependencies
being de-duped)
and challenge-editor (which doesn't seem to want to automatically install
codemirror and needed its own eslint config)

* fix: correct mocha path for curriculum tests

* fix: use select workspace with -F not -w

* fix: reorganise packages and restrict hoisting

pnpm works best if the workspaces keep their own dependencies, since
dependencies are not flattened and then what node resolves from a
require is predictable.

@types seem to be a special case and more care is required to prevent
them getting smushed together in the root (hence the .npmrc)

* fix: add types for tools + root

* fix: decouple challenge-auditor from client

* fix: add ui-components types

* fix(client): use the latest types for react 16

* fix: prettify

* fix: prettierignore pnpm-lock

* fix: relax hoisting

Turns out pnpm works just fine with types. I don't know what was going
wrong before, but there are no-longer any type conflicts.

* fix: add @redux-saga/core to fix eslint issue

It seems to only be redux-saga that import/named can't cope with, so it
is probably okay to work around this one.

* chore: add chai to tools/scripts/build

* fix: add store to root for cypress

* fix: allow cypress to download binaries

If we want to keep preventing cypress from downloading binaries, we can
figure out a workaround, but I'm allowing it to ease the transition to
pnpm.

My guess about why this is happening is that npm triggers Cypress's
postinstall script, but pnpm does not (because pnpm install only
installs if necessary, perferring to link)

* chore: re-enable pre/post scripts

* fix: update build scripts for client

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

* chore: update engines to use pnpm


* fix: enable choice of (super)block for tests

Only 'nix machines for now.

* chore: pin pnpm to version 7

* chore: remove last npms

Except web + curriculum-server. I'll update them when I start work on
them again.

* fix: lockfile check to catch any package-locks

* fix(action): install pnpm for upcoming tests

* chore: add nodemon to new api

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2023-03-02 18:17:44 +00:00
Oliver Eyton-Williams
66438c271f fix: add more explicit return types (#49567) 2023-03-02 17:26:40 +00:00
Muhammed Mustafa
caad02d1c5 feat(client): make tables in challenges LTR when it's RTL layout (#49543)
Co-authored-by: hbar1st hanaab@gmail.com
2023-02-28 21:45:20 +07:00
David fox
80c40227d9 fix(client): added conditional to check for 0 (#49465)
added condition to stop the render if 0
2023-02-28 13:27:00 +02:00
Muhammed Mustafa
6c4c360139 feat(client): remove the Media component for our Card component (#49278)
* create a desktop version of the card

* finish creating the grid for the cards

* fix the responsive niche cases

* add screen reader text

* add border and account for the added border

Co-authored: Bruce B <bbsmooth@gmail.com>

* add the full width back

* clean and fix values grid columns values

* make the outline block

* use underline because outline overflows out the

Co-authored-by: sembauke <semboot699@gmail.com>

* turn the link into a button

Co-authored-by: sembauke <semboot699@gmail.com>

* fix: web-layout

* fix: mobile-layout

* sort the large text in wide screens

* hide the tool panel

* Revert "hide the tool panel"

This reverts commit 21499f840d.

* change the grid rows to account for big text

* make the card clickable

---------

Co-authored-by: sembauke <semboot699@gmail.com>
2023-02-28 11:00:27 +01:00
a2937
e300a82b84 feat(client): show error, warn, and info in FCC debug console (#49528)
* Allow error,warn, and info to be logged to FCC console.

* Apply DRY principles
2023-02-28 10:50:16 +01:00
Bruce Blaser
baee36ded4 fix(ui): preserve monaco tab trap on resize (#49477)
* fix: preserve tab trap on resizing

* fix: tab trap aria status messages
2023-02-27 17:18:30 -08:00
Lasse Jørgensen
5751d0c28e feat(client): make the new help icon clearer (#49516)
* feat(learn): update help button

* fix: remove space between svgs

* move style objects out of component
2023-02-27 16:23:44 -08:00
xarcode
de87492cf8 refactor(client): togglebutton's layout from float to flex (#49510)
* Refactor the togglebutton from float to flex

* Update toggle-button.css
2023-02-27 18:12:31 +01:00
a2937
a936806a22 Chore (settings) - Rename tabindex to tabIndex (#49519)
* Chore (settings) - Rename tabindex to tabIndex

* Update client/src/templates/Challenges/components/hotkeys.css

Co-authored-by: Bruce Blaser <bbsmooth@gmail.com>

* Fix hotkeys.css

---------

Co-authored-by: Bruce Blaser <bbsmooth@gmail.com>
2023-02-27 08:03:37 +02:00
Muhammed Mustafa
a64e732458 fix(client): default challengeFiles to array (#49474)
* refactor(client): check challengesfile length in the epic

* change the initial state of challenge files to array
2023-02-23 10:18:04 +00:00
Muhammed Mustafa
06fe9b6d16 refactor(client): stop the homepage image from changing the layout (#49476)
refactor(client): stop the homepage from changing the the layout
2023-02-23 14:53:53 +05:30
Muhammed Mustafa
0971b6a8a3 refactor(client): remove react lazy loader library (#49468)
* feat(client): remove react lazy loader library

* fix: use loading='lazy' to defer loading
2023-02-22 18:05:08 +01:00
Muhammed Mustafa
f56816d3e1 refactor(client): fix types in the nav-links file (#49291)
* refactor(client): clean some mistype errors in the nav-links file

* fix showLanguage prop type in the other files

* add-ts-ignore-comment

* swap to map for easier maintainablity

* Change the eslint naming comment

* fix: using the wrong handlekeydown function

Co-authored-by: Bruce B <bbsmooth@gmail.com>

* hide the menu when focus is on the userimage

* hide the menu only if camper didn't press shift key

---------

Co-authored-by: Bruce B <bbsmooth@gmail.com>
2023-02-22 05:36:05 +02:00
Oliver Eyton-Williams
424711fcad fix(client): provide return types for get-completion-percentage (#49458)
fix: provide return types

I also moved the undefined check closer to the source, so it's clearer
what is missing
2023-02-21 07:40:01 -08:00
Jeff
9f1562291c fix: remove unused className spacer from spacer helper (#49067)
* fix: remove unused className spacer from spacer helper

---------

Co-authored-by: jeff <jeff@vpmbp4.local>
2023-02-21 19:20:29 +05:30
Sem Bauke
8c8cf9afab fix: optional video ids the odin project (#49380)
* fix: optional video ids the odin project

* Update client/src/templates/Challenges/odin/Show.tsx

Co-authored-by: Niraj Nandish <nirajnandish@icloud.com>

---------

Co-authored-by: Niraj Nandish <nirajnandish@icloud.com>
2023-02-21 10:13:31 +00:00
Muhammed Mustafa
181e108418 fix(client): submit button size for external projects (#49448) 2023-02-21 07:40:56 +01:00
Shaun Hamilton
e8b010d7e2 fix(client): selector return, invalid prop val (#49447)
* fix(client): correctly return type from selector

* fix(client): remove incorrect prop [button-spacer]
2023-02-20 21:34:34 +02:00
Muhammed Mustafa
e5bf2ae97e feat(client): make skip to content button translatable (#49439) 2023-02-20 21:22:39 +05:30
Muhammed Mustafa
85e9fbb8df refactor(client): clean extra component and extra unneeded imports (#49391)
* feat: remove extra unnecessary code

* clean the unique way that component was handled

* make bsSize optional

* update snapshot to account for the other button styles

* add comment for our future selves

* clean the changes file
2023-02-19 17:16:53 +05:30
Ahmad Abdolsaheb
13aad8ca37 feat(client): move the block donation modal logic to an epic. (#49381)
feat(client): move percent calculation logic to epic
2023-02-19 09:04:04 +02:00
Muhammed Mustafa
e8f0145a08 feat(client) make pre in instruction ltr when the layout is rtl (#49431)
* feat(client) make pre in instruction ltr when the layout is rtl

* revert the changes in the markdown file
2023-02-18 22:00:44 +01:00
Muhammed Mustafa
45dc6aee9e feat(client): make portfolio section in profile support RTL layout (#49148)
* feat(client): make portfolio section in profile support RTL layout

* Revert "feat(client): make portfolio section in profile support RTL layout"

This reverts commit b4cf5f1ab4.

* make media component responsive

* fix the selector

* hook the media left through an id

* hook the media left through an id
2023-02-18 21:58:01 +01:00
Muhammed Mustafa
251aecc58f feat(client): change the save buttons from disabled to aria-disabled (#49216)
* feat(client): change the buttons from disabled to aria-disabled

Co-authored-by: Bruce Blaser <bbsmooth@gmail.com>

* stop the API call when the validation isn't true

* use aria disabled instead of disabled on the test?

* use have.attr  to check for aria disabled

* hide the button when it's disabled

Co-authored-by: Bruce B <bbsmooth@gmail.com>

* update Privacy Settings save button

---------

Co-authored-by: Bruce Blaser <bbsmooth@gmail.com>
2023-02-18 12:16:35 -08:00
Muhammed Mustafa
c027bce6de fix(client): pre code having extra spaces when code elements are stacked (#49343)
Co-authored-by: hbar1st <hanaab@gmail.com>
2023-02-18 10:18:54 -08:00
Muhammed Mustafa
df1eb8c8de fix(client): misaligned buttons in the RWD certification (#49404)
* fix(client): misalignedbuttons in the RWD certification

* Clean the css file
2023-02-17 21:55:47 -08:00
Muhammed Mustafa
4f357db02f refactor(client): clean extra code in donate form (#49276) 2023-02-17 17:32:41 +03:00
Tom
c29ecaf14f fix(client): site crashing when leaving rdb challenge (#49409)
fix: crashing when leaving rdb
2023-02-17 07:56:28 +02:00
Muhammed Mustafa
150d5cb0d3 feat(client): remove ltr direction from quotes in rtl layout (#49340) 2023-02-16 13:50:35 +01:00
Bruce Blaser
cb0da3bbf9 fix(client): console height in multi-file editor (#49372)
fix: allow console to take up entire height of panel
2023-02-16 12:22:57 +01:00
Muhammed Mustafa
5e4ba38309 refactor(client): delete block save wrapper (#49217)
* refactor(client): delete block save wrapper

* Clean bloating divs and extra css import

* remove the blocksave wrapper snapshot
2023-02-13 23:26:44 +05:30
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
renovate[bot]
ea7df4fb9a fix(deps): update font awesome to v6.3.0 (#49357)
* fix(deps): update font awesome to v6.3.0

* update profile snapshot for the new icon

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Sboonny <muhammed@freecodecamp.org>
2023-02-13 11:23:33 +00:00
Muhammed Mustafa
a1ebe6dcd6 refactor(client): turn image validation component into subComponent (#49155)
* refactor(client): clean extra FormGroup component in personal info

* Revert "refactor(client): clean extra FormGroup component in personal info"

This reverts commit cc29df3033.

* refactor show image component into JSX

* Remove redundant text

Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>

---------

Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
2023-02-10 17:13:27 +00:00
Ahmad Abdolsaheb
6e53c852de feat(client): pull percentage challenge data from redux (#49308)
* feat(client): pull percentage challenge data from redux

* Apply suggestions from code review

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>

* feat: update updateAllChallengesInfo name

---------

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
2023-02-10 13:16:11 +00:00
Mrugesh Mohapatra
0f4fd9d57b chore: rename mockfiles in jest config (#49318) 2023-02-10 13:12:02 +00:00
Mrugesh Mohapatra
96a5699c39 chore: rename icons (#49319) 2023-02-10 13:11:16 +00:00
Mrugesh Mohapatra
eff2166262 chore: rename redux actions (#49320) 2023-02-10 12:04:17 +00:00
Muhammed Mustafa
77c8809b00 refactor(client): cleanup honesty policy section (#49003)
Co-authored-by: Bruce B <bbsmooth@gmail.com>
Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
Co-authored-by: sidemt <25644062+sidemt@users.noreply.github.com>
Co-authored-by: Mrugesh Mohapatra <hi@mrugesh.dev>
Co-authored-by: Quincy Larson <QuincyLarson@users.noreply.github.com>
2023-02-09 13:37:22 -06:00
Ahmad Abdolsaheb
6c97591ca6 feat(client): turn default layout to a functional component (#49289) 2023-02-08 15:28:26 -06:00