Commit Graph
2081 Commits
Author SHA1 Message Date
Oliver Eyton-Williams ff566d441a fix: rename superblock to use /2022/ (#44535)
* chore: update superblock properties

* refactor: remove isAudited from certs

It was always defaulting to English, anyway.

* refactor: get superblock from metas, not dirs

* fix: rename responsive-web-design-22

This converts the slugs to /2022/responsive-web-design

* refactor: remove unused export

* test: update test with new curriculum config

* refactor: use key not [key]

* refactor: remove directory reference from test
2021-12-21 12:35:51 -06:00
Tom b0872abd86 fix: hide editor tabs on desktop (#44534) 2021-12-20 15:11:09 -08:00
Nicholas Carrigan (he/him)andOliver Eyton-Williams 8614db7a32 feat: enable new curriculum (#44183)
* feat: use legacy flag

chore: reorder challenges

fix: linter

revert: server change

feat: unblock new editor

fix: proper order

fix: 0-based order

fix: broke the order

feat: move tribute certification to its own block

feat: split the old projects block into 4

fix: put all blocks in order

chore: add intro text

refactor: use block, not blockName in query

fix: project progress indicator

* fix: reorder new challenges/certs

* fix: reorder legacy challenges

* fix: reintroduce legacy certs

* feat: add showNewCurriculum flag to env

* chore: forgot sample.env

* feat: use feature flag for display

* fix: rename meta + dirs to match new blocks

* fix: add new blocks to help-category-map

* fix: update completion-modal for new GQL schema

* test: duplicate title/id errors ->  warnings

* fix: update completion-modal to new GQL schema Mk2

* chore: re-order metas (again)

* fix: revert super-block-intro changes

The intro needs to show both legacy and new content.  We need to decide
which pages are created, rather than than what a page shows when
rendered.

* feat: move upcoming curriculum into own superblock

* fix: handle one certification with two superBlocks

* fix: remove duplicated intros

* fix: remove duplicate projects from /settings

* fix: drop 'two' from Responsive Web Design Two

* chore: rename slug suffix from two to v2

* feat: control display of new curriculum

* feat: control project paths shown on /settings

* fix: use new project order for /settings

This does mean that /settings will change before the release, but I
don't think it's serious.  All the projects are there, just not in the
legacy order.

* fix: claim/show cert button

* chore: remove isLegacy

Since we have legacy superblocks, we don't currently need individual
blocks to be legacy

* test: fix utils.test

* fix: verifyCanClaim needs certification

If Shaun removes the cert claim cards, maybe we can remove this entirely

* fix: add hasEditableBoundaries flags where needed

* chore: remove isUpcomingChange

* chore: v2 -> 22

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-12-20 12:36:31 -06:00
PrashantandIlenia 304773d62b fix(i18n): Expand/Collapse Courses Button text (#44528)
* fix(i18n): Expand/Collapse Courses Button text

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

Co-authored-by: Ilenia <nethleen@gmail.com>

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

Co-authored-by: Ilenia <nethleen@gmail.com>

Co-authored-by: Ilenia <nethleen@gmail.com>
2021-12-20 18:24:09 +01:00
Ahmad Abdolsaheb ee73042c84 feat(client): add background animation for description of first challenge (#44519)
* initial

* Apply suggestions from code review

* Update client/src/templates/Challenges/classic/editor.css
2021-12-17 21:21:17 +01:00
Tom c2aa8ce3e5 fix: make completion modal a little more accessible (#44508)
* fix: make completion modal a little more accessible

* remove: unneeded aria attribute

* fix: update snapshots
2021-12-16 11:17:12 +01:00
Ahmad Abdolsaheb 5a8efaf4a4 feat: show card to signed in users (#44509) 2021-12-15 22:43:26 +03:00
TomandOliver Eyton-Williams 580a51f7a7 fix: simplify mobile layout tabs (#44431)
* fix: simplify mobile layout tabs

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


Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-12-15 13:52:44 +00:00
Oliver Eyton-Williams b57cf4ffa7 fix: store completed js projects in redux (#44496)
* fix: store completed js projects in redux

These were missed when we migrated from files to challengeFiles

* test: put the data-cy on the correct button

Rather than the fallback. The tests were only passing because the
fallback was kicking in and, since that was fixed, the tests started to
fail!
2021-12-14 17:59:53 -06:00
Tom 5c4233a39a remove: unused dispatches from multifile editor (#44493) 2021-12-14 10:18:37 -08:00
Oliver Eyton-Williams 3b560deab6 refactor: stop spreading challenge over the node (#44499)
* refactor: stop spreading challenge over the node

Instead of creating a Gatsby node with id of challenge.id, we create a
single node field that has all the challenge data.

While this makes the GraphQL queries more verbose, it means we're free
to create multiple nodes with the same challenge.id.

* test: update time-line test for new GQL schema

* test: update mocks with new GQL schema
2021-12-14 12:11:20 -06:00
sidemtandMrugesh Mohapatra 34f19bd698 fix(i18n): include period in translatable string (#44474)
* fix: include period in translatable string

* chore: update snapshot

* fix: combine 2 strings into 1

* fix: add placeholder

* fix: update snapshot

Co-authored-by: Mrugesh Mohapatra <hi@mrugesh.dev>
2021-12-14 14:42:57 +00:00
Ahmad Abdolsaheb cd9c57a8c5 feat(client): optimize donation form for holiday alert (#44482)
* feat(client): optmize donation form for holiday alert

* feat: remove key from i18n
2021-12-13 08:25:21 -08:00
JoshandCanopius 9c386c829f fix(client): prevent unusual commas in iframe (#44477)
* fix: Moved src files in the head

* fix: Removed excess indents

Co-authored-by: Canopius <canopius@DESKTOP-KJC5QOG.localdomain>
2021-12-11 20:33:46 +01:00
Nicholas Carrigan (he/him)andMrugesh Mohapatra 4564b71d0e fix(client): i18n news configs (#44463)
Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
2021-12-11 22:40:27 +05:30
Mrugesh MohapatraandNicholas Carrigan a2f799866f feat(learn): enable ukrainian certifications (#44454)
* feat(learn): enable ukrainian certifications

* fix: add algolia config

* chore: apply suggestions from code review

Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
2021-12-10 22:11:52 +01:00
Nicholas Carrigan (he/him)andOliver Eyton-Williams 42acc542b7 fix: handle uppercase and missing user verification (#44444)
* fix: hotfix for isHonest null

* fix: early return if no user?

* fix: handle invalid input on api

Also lowerCases the username it receives since the client could send any
case.

* fix: report errors to user when verification fails

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-12-10 11:23:26 +00:00
Shaun HamiltonandOliver Eyton-Williams 40acfa708b feat: reduce request payload for non-js projects (#44429)
* feat: reduce request payload for non-js projects

* break future TS

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

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-12-09 13:31:21 -06:00
Tom 1c5d136add feat(client): add notes tab to project based curriculum (#44247)
* feat: add notes tab to project based curriculum

* feat: add console key to i18n

* feat: add reset to i18n

* fix: use translations in action-row

* fix: use hasEditableBoundaries as check for when to display instructions/editor-tabs

* fix: clean up notes components and use prism formatting

* feat: add notes to docs/how-to-work-on-challenges

* revert: unused code

* fix: lint errors?

* fix: lint errors

* fix: add notes to graphql schema

* fix: add notes to challenge schema

* fix: only display notes on project based

* fix: add env data back to mobile layout

* fix: prettify

* revert: notes

* fix: hide notes on mobile for non project based

* rename: switchDisplayTab -> togglePane

* revert: hasEditableBoundaries check back to projectBasedChallenge check
2021-12-09 18:42:03 +00:00
Ahmad Abdolsaheb 69639bda8a feat(client): testing donation alert title (#44438) 2021-12-09 09:43:59 -06:00
Oliver Eyton-Williams fca626fc5e fix(client): prevent load from local storage (#44440) 2021-12-09 15:08:03 +00:00
JasmineSun33andShaun Hamilton d95226ff1d chore(client): migrate landing.test.js to ts (#43889)
* rename file

* disable lint

* change to specific annotation

* kebaberise file name

* adjust naming to remove need for eslint-disable

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-12-08 21:27:43 -06:00
Tom 6872262d21 fix(client): make new editor more accessible (#44425) 2021-12-09 00:28:20 +00:00
Ahmed GhoneimandShaun Hamilton 4bdfb6794f feat(client): migrate layout/default to ts (#43866)
* chore: rename Default.js to default.tsx

* chore: refactor default layout to typescript

* use TFunction for type

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-12-08 10:20:20 -08:00
Nicholas Carrigan (he/him) c19bf504b8 Revert "fix: only include frame-runner when running tests (#44337)" (#44419)
This reverts commit a23a47750b.
2021-12-08 22:10:41 +05:30
Nicholas Carrigan (he/him) 118bf713ae fix(client): remove broken current challenge button (#44405) 2021-12-08 01:05:32 +05:30
Shaun Hamilton 86cc757945 fix(client): remove normalize.css from globals (#44403) 2021-12-07 23:08:51 +05:30
Oliver Eyton-Williams a23a47750b fix: only include frame-runner when running tests (#44337)
* fix: only include frame-runner when running tests

* fix: handle missing options

* test: use test runner for curriculum tests
2021-12-06 13:02:49 -06:00
Nicholas Carrigan (he/him)andOliver Eyton-Williams 8372623f69 chore(curriculum): fix + test curriculum order (#44366)
* chore(tools): test curriculum order

* chore: update orders

* fix(tests): temporarily ignore cert super

The Relational Databases cert being 'upcomingChanges' is breaking
the tests.

* fix: graphql query here

* fix: use only one meta

* chore: remove unnecessary superOrders

* chore: zero-based indexing

* fix: update mock

* refactor: remove unused fixture

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-12-06 16:55:13 +00:00
393aeabc8f feat(curriculum): add css-penguin practice project (#44214)
* feat: add css-penguin practice project

* rename block name

* rename meta block

* rename necessary properties

* rename page

* add to step 25

* adjust prototype with better structure/naming

* add step adjusting .ground z-index

* fix: add position: absolute to .ground

* add to step 37

* add to step 103

* remove erm from solution

* add tests to 001-020

* add tests 021-030

* test: update 012 to use dynamic hints

* test: improve tests with dynamic hints

* fix: add position:relative to .penguin

* add tests 032-055

* add tests 056 - 103

* fix some tests

* code blocks and test fixes

Co-authored-by: Krzysztof G. <60067306+gikf@users.noreply.github.com>

* allow 0% 0px 0

* fix: add width and height step for silly firefox

* add instruction to add html element

* Tom's good suggestions, and his American suggestions

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

* adjust wording for - you guessed it - firefox

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

* add missing calc keyword

* just fix it with regex :(

* apply Nich's probably bogus suggestions

Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>

* remove duplicate

Co-authored-by: Krzysztof G. <60067306+gikf@users.noreply.github.com>
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
2021-12-03 17:59:32 -06:00
536a689d34 feat(curriculum): balance sheet project (#44189)
* feat: initial infra

* feat: create steps

* chore: apply sem's review suggestions

Co-authored-by: Sem Bauke <46919888+Sembauke@users.noreply.github.com>

* feat: write tests

* chore: optional?.chaining?.

* chore: gikf's suggestion

Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>

* chore: rename

* chore: *

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

* chore: apply shaun's review suggestions

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

* chore: manual review suggestions

* chore: ?????

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

Co-authored-by: Sem Bauke <46919888+Sembauke@users.noreply.github.com>
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-12-03 16:20:34 -06:00
Oliver Eyton-WilliamsandShaun Hamilton 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 6af8ee6528 fix: hide file tabs on legacy challenges (#44291)
* fix: hide tabs for legacy challenges (desktop)

* fix: hide tabs for legacy challenges (mobile)

* fix: remove editor tabs (desktop)

* refactor: update comment

* fix: add missing usesMultifileEditor flags
2021-12-02 12:05:54 -08:00
Shaun Hamilton d6d523861a fix(client): adjust annual-donation hr (#44360) 2021-12-02 07:45:27 -08:00
Luis H. Ball JrandOliver Eyton-Williams f1d5a86edf refactor(landing): migrate index to tsx (#43966)
* refactor(landing): migrate index to tsx

This commit refactors `client/src/components/landing/index.js` component into a `.tsx` component

Related issue: freeCodeCamp#43778

* fix: rename intex -> index

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-12-02 09:12:46 -06:00
Oliver Eyton-Williams 78757f20b5 fix: ignore unsafe argument 2021-12-02 19:57:47 +05:30
Oliver Eyton-WilliamsandShaun Hamilton 37932c48a7 refactor: drop redundant eslint-enables
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-12-02 19:57:47 +05:30
Oliver Eyton-Williams f34bb986ed fix: remove unused arg from mapStateToProps 2021-12-02 19:57:47 +05:30
Oliver Eyton-Williams 01b354f0d1 refactor: mollify TypeScript 2021-12-02 19:57:47 +05:30
Oliver Eyton-Williams a3e05ab45e chore: use workspaces, fix deps
react-monaco-editor needed rolling back due to an incompatibility with
react 16
monaco-editor then needed rolling back and the editor config, too.

Some @types needed to be added, some lint deps needed updating.
2021-12-02 19:57:47 +05:30
Oliver Eyton-Williams efba2e777d chore: simplify eslint configuration (#44347)
* chore: extend import/recommended

* chore: use recommended lint rules

* refactor: apply lint rules

* chore: drop used config
2021-12-02 00:01:12 +00:00
Oliver Eyton-Williams b89c31c0d1 fix: use the previewMounted connected to redux (#44336) 2021-12-01 13:01:12 -06:00
23e241bbc0 chore(client): tidy Flash by tidying tone (#44320)
* 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>
2021-12-01 10:45:17 -08:00
Nicholas Carrigan (he/him) edf3185b2b feat: editor page title rework (#44246)
* fix: remove "learn" from title

* feat: translate title element
2021-12-01 16:53:37 +01:00
acc4e25cba chore(client): ts migrate frame runner (#43798)
* Preserve history commit

* feat: Typescript migration frame-runner

* fix: types for expected/actual

Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-12-01 10:31:39 +05:30
Tom 69bb48b7e1 fix: failing CI issues (#44339) 2021-11-30 15:18:54 -06:00
Tom e29dbe7e94 fix: block name in block intro pages (#44228) 2021-11-30 22:00:58 +01:00
845659105f feat(client): ts-migration for Introduction templates (#43752)
* chore: rename the file CertificationCard.js to tsx

* refactor: refactor the file CertificationCard to tsx

refactor: refactor the file CertificationCard to tsx

refactor: refactor the file CertificationCard to tsx

* chore: rename the file ClaimCertSteps.js to tsx

* refactor: refactor the file ClaimCertSteps to TS

* chore: rename the file SuperBlockIntro.js to tsx

* refactor: refactor the file SuperBlockIntro to TS

* chore: rename the file Block.js to tsx

* refactor: refactor the file Block to TS

refactor: refactor the file Block to TS

refactor: refactor the file Block to TS

* chore: rename the file CertChallenge.js to tsx

* refactor: refactor the file CertChallenge to TS

* fix typing

* ignore missing redux store connection

Co-authored-by: ismail <i.tlemcani@quinten-maroc.com>
Co-authored-by: Ismail Tlemcani <ismail.tlemcani@gmail.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-11-30 12:36:33 -06:00
Ahmad AbdolsahebandOliver Eyton-Williams 513f27e408 feat: add seasonal learn alert (#44335)
* feat:  add seasonal learn alert

* Update client/src/components/Intro/index.tsx

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

* Update client/src/pages/learn.tsx

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

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-11-30 09:35:35 -08:00
Ahmad Abdolsaheb bcb0465a50 fix: donation clean up (#44257)
* fix: donation clean up

* rename file

* rename2
2021-11-30 07:30:21 -08:00