Commit Graph

300 Commits (3522ce6f34b63f5d9922835307f31980de1fe0b9)

Author SHA1 Message Date
Naomi Carrigan 58927bf56a
feat: reorder chinese map (#47807) 2022-10-04 13:39:54 -05:00
Kristofer Koishigawa f80e34a950
fix: add freecodecamp to blocklist (#47650) 2022-09-29 11:20:24 +05:30
Mrugesh Mohapatra a201bff867
fix: enable German in the language selector (#47560) 2022-09-21 19:07:48 +05:30
Naomi Carrigan 5e402e6955
feat: allow languages to be hidden (#47362) 2022-08-23 20:53:47 +02:00
Mrugesh Mohapatra 7840015733
fix: disable german in the dropdown (#47359) 2022-08-22 21:04:58 +01:00
Naomi Carrigan ccad7f02ea
feat: enable german (#47312)
* chore: set up lang config

* chore: migrate the manually translated files

Co-authored-by: Sem Bauke <semboot699@gmail.com>
Co-authored-by: Ilenia <nethleen@gmail.com>
2022-08-22 08:54:55 +02:00
Naomi Carrigan c276dc5158
feat: enable Ukrainian RWD (#47306) 2022-08-17 10:44:38 +02:00
Ilenia f61b227665
chore: rename project type from bonfire to jsProject (#46823)
* change bonfire in index.js

* change bonfire in build.js

* change bonfire in challenge-types.js

* change bonfire in test-challenges.js

* add jsProject to constants.js
2022-07-11 07:28:29 -05: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
Dario-DC 30ebb06ced
feat(i18n): enable italian new RWD (#46503) 2022-06-15 23:19:14 +05:30
Oliver Eyton-Williams 1bf51d2f0b
feat: release RWD in Portuguese (#46383)
* feat: release RWD in Portuguese

* fix: Translating the comment on line 111 to pt-BR

Adding the comment on line 111 in Portuguese

Co-authored-by: DanielRosa74 <58576743+DanielRosa74@users.noreply.github.com>
2022-06-07 11:03:36 -07: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
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
Naomi Carrigan fe71a9cf25
feat: new js cert (#45873)
* chore: move files

* wip: i have no idea what i am doing

* feat: finish up the logic

* chore: use order from randy sheet

* chore: standardise titles

* feat: fix layout for new js projects

* fix: utils test

* fix: challenge tests

* fix: ignore show new curriculum on non-english tests

* chore: help category????

* fix: if these tests would fail locally that'd be great

* chore: duplicate ids
2022-05-16 11:53:45 +02:00
Naomi Carrigan 23b4be71d7
feat: release RWD from beta (#45865)
* feat: release RWD from beta

* feat: replace beta banner with legacy banner

* feat: update project links

* fix: cypress tests

* fix: map selector

* chore: legacy verbiage

* chore: remove isBeta flag

* fix: go back url verbiage

* feat: separate order for i18n

* fix: curriculum utils test

* fix: cypress

* tests: use data-cy for robustness

Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-05-10 11:44:23 -05:00
Ahmad Abdolsaheb 0ef633c373
feat: a/b test lock icon button (#45868) 2022-05-06 15:06:48 +02:00
Rafael D. Hernandez 5908f2c74c
feat(i18n,esp):SciCompPy and DataAnalysisPy certs fully translated and proofread (#45870)
Co-authored-by: Rafael Hernandez <rafaeldavish@Rafaels-MacBook-Pro.local>
2022-05-06 13:40:22 +05:30
Sem Bauke c3be968092
feat: migrate locale test to ts v2 (#45793)
* 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>
2022-05-02 17:53:30 +02:00
Rafael D. Hernandez db94165d0f
feat(i18n,esp):quality assurance cert fully translated and proofread (#45750)
* feat: add Quality Assurance Cert to auditedCerts for ES

* fix(i18n,esp) remove extra comma

Co-authored-by: Rafael Hernandez <rafaeldavish@Rafaels-MacBook-Pro.local>
2022-04-25 10:49:28 +05:30
Oliver Eyton-Williams d224311886
fix: remove Coding Interview Prep from audited uk certs (#45735) 2022-04-20 16:20:15 +01:00
Tristan Toye dfe5a7fd05
Add Sentry to client for error handling (#43920)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-04-15 09:54:02 -05:00
Mrugesh Mohapatra 9ea7018740
Merge pull request from GHSA-cc3r-grh4-27gj
* feat: restrict update-user-flag endpoint

* feat(api): add dedicated-endpoints for user

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-04-13 20:51:31 +05:30
Ahmad Abdolsaheb 4034c59ba2
feat(client): add secure donation border to donation form (#45637)
* feat: add secure donation border to donation form

* feat: add string to translations

* Apply suggestions from code review

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

* feat: cleanup and reorder logic

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-04-07 13:24:42 +01:00
Ahmad Abdolsaheb 94650964c4
feat: a/b test lock icon (#45499)
* feat: a/b test

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

* Apply suggestions from code review
2022-03-22 16:28:41 +00:00
Ilenia 6465a79d4f
feat(i18n) : enabling last part of Italian curriculum (#44518) 2022-03-03 12:01:14 +03:00
Oliver Eyton-Williams ce23dcb32c
fix: return 410 for api/github (#45250) 2022-02-25 10:38:29 +01:00
Ahmad Abdolsaheb 64efa96d30
feat(client): add badge benefit to progress modal copy (#45142)
* feat: add badge benefit to progress modal copy

* Update client/src/redux/index.js
2022-02-22 12:38:35 +00:00
Tom fd14608492
feat: release rdbms on staging (#44576)
fix: unhide cert from settings page

fix: add cert variables where missing

fix: show token on settings page

feat: add challenges to certified user data

fix: stylize settings page a little bit

fix: only show rdbms when upcomingChanges = true

fix: relational databases -> relational database
2022-02-18 17:29:30 +01:00
sidemt 47d27412fa
feat(learn, i18n): enable japanese certifications (#44869)
* feat(learn, i18n): enable japanese certifications

* feat(learn, i18n): update links for japanese pages

* Revert "feat(learn, i18n): update links for japanese pages"

This reverts commit 8e16f4dd22.

* feat(learn, i18n): update links for japanese pages

* feat(learn, i18n): update algoliaIndices for japanese

* feat(learn, i18n): update meta tags for japanese
2022-01-27 09:57:33 -08:00
Oliver Eyton-Williams 7216ca55cc
refactor: organise TypeScript config and migrate helpers (#44747)
* feat: allow more 1000 steps to be created at once

* refactor: start migrating to typescript

* refactor: delete-step to ts

* refactor: migrated some helpers

* refactor: migrate create-empty-steps

* refactor: migrate create-step-between

* refactor: finish migrating to TS

* refactor: migrate tests

* fix: ensure mock.restore is done after each test

* fix: prevent double-tscing

* fix: repair the tests

* chore: use ts-node for scripts

We don't need the performance boost of incremental compilation and
ts-node is easier to work with

* refactor: consolidate tsconfigs

* refactor: replace gulp

* fix: use ts-node for build-curriculum

* fix: allow ts compilation of config

* feat: create and use create:config script

* fix: add /config to eslint projects

* fix: remove gulp script
2022-01-25 11:34:16 +01:00
Ahmad Abdolsaheb e97920ae9c
feat: increate minimum challenge requirement AB test (#44764)
* feat: increate minimum challenge requirement AB test

* fix: adjust tests

Co-authored-by: ahmad abdolsaheb <home@mac-16.local>
2022-01-13 12:51:55 -08:00
Oliver Eyton-Williams fd63bb6f85
feat: mvp features for soft launch (#44539)
* refactor: use enum

* feat: create links between legacy and new

* refactor: pull out legacy-links component

* fix: import order

* fix: provide icon for new superblock

* feat: only show the copy on the new superblock

* fix: use the proper i18n keys correctly

* feat: put the new superblock at the end of the map

* feat: update the new superblock title

* test: update for soft launch order

* fix: show original project links on /settings

Soft launch only.

* test: use SHOW_NEW_CURRICULUM in tests

* fix: rename the remaining rwd-22s

* feat: make the messge prettier

* fix: message copy

* refactor: make comment make sense

Co-authored-by: Ahmad Abdolsaheb <ahmad.abdolsaheb@gmail.com>
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
2021-12-22 16:53:40 +00:00
Ahmad Abdolsaheb 449c37fb33
feat(client): add donate faq (#44380)
* feat: add donate faq

* Apply suggestions from code review

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

* clean up

* Apply suggestions from code review

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

* Update client/src/components/Donation/donation-text-components.tsx

Co-authored-by: Kristofer Koishigawa <scissorsneedfoodtoo@gmail.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-12-21 14:42:10 -08:00
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
Nicholas Carrigan (he/him) 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
Mrugesh Mohapatra 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) dd2ff1683c
feat: add curriculum feature flag (#44441) 2021-12-09 12:31:03 -06:00
Ahmad Abdolsaheb 69639bda8a
feat(client): testing donation alert title (#44438) 2021-12-09 09:43:59 -06:00
Nicholas Carrigan (he/him) 40573b5f14
chore: enable portuguese certs (#44338) 2021-12-01 10:29:34 +05:30
Ahmad Abdolsaheb 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 b4326f0ad6
feat: add email to A/B function (#44187)
* feat: add email to A/B function

* fix: declare types for sha-1

* Update client/src/utils/A-B-tester.ts

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

* feat: add custom dimesions for donation events

* feat: re-order if statemetns

* Apply suggestions from code review

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

* fix: assuage TypeScript

* update rename

* rename vars

* update naming

* re add types

* Update client/src/redux/ga-saga.js

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

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-11-22 16:43:28 +03:00
Shaun Hamilton d75e43a1e7
chore: use constants for superblocks (#43886)
* chore: use constants for superblocks

* add prettier ts dec to challenge-helper-scripts

* config/ to ts. broken

* typescripterise tools/ and config/

* create global tsconfig, remove alternate configs

* delete temp ts->js, add to gitignore

* fix gitignore

* re-import SuperBlocks in super-block-intro.tsx

* remove renamed files added again

* fix config

* remove accidental files

* remove snap

* delete built files

* adjust eslintrc for enums

* add node types to root

* ignore build files in lint and prettier

* fix tools/ in tsconfig

* ignore annoying ts warnings

* prettierise Map/index.tsx

* fix enum to match lint rule

* rejig Map to render RWD superblock

* 'pretty minor' - implicitly tsc within root

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

* fix client/package.json for Gitpod

* broken: migrate @types to root

* fix: use typeRoots to prevent duplication

* fix show.tsx, try typeroots in root

* silly fix for duplicate node_modules types

* remove typeRoots from root

* fix: tsconfig or not tsconfig, that is the...

* fix: ...question: Whether 'tis nobler in the mind

to suffer the slings and arrows of outrageous configs...

* fix: Or to take Arms against a Sea of lint errors
And by opposing end them

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-11-19 19:49:40 +05:30
Ahmad Abdolsaheb 421dab38e8
feat(client): add Patreon button (#44113)
* feat(add): add patreon button

* feat: add noreferrer

* Apply suggestions from code review

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

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-11-04 09:06:24 -07:00
Rafael D. Hernandez c080efb89c
feat(i18n,esp): back-end and api cert fully translated and proofread (#44083) 2021-11-02 15:55:29 +05:30
Mrugesh Mohapatra f5ccaf971b
fix(config): add a bolder warning when missing .env (#43979) 2021-10-25 09:23:13 +05:30
Nicholas Carrigan (he/him) b0768b1005
chore: enable data vis cert (#43961) 2021-10-22 08:23:55 +05:30
Nicholas Carrigan (he/him) 2dc68c9be2
chore(tools): ignore step files (#43947) 2021-10-20 22:25:46 +02:00
Oliver Eyton-Williams c8d7f0a782
feat(tools): remove eslint-plugin-prettier for prettier (#42438)
* feat: remove eslint-plugin-prettier for prettier

This removes the annoying lint warnings when all that needs to change is
formatting

* fix: use .js lint-staged config to ignore properly

* fix: lint everything if a lot of files are changed

It's faster than making lots of individual linter calls

* chore: apply prettier

* fix: ignore code in curriculum-file-structure
2021-10-06 21:02:21 +05:30
Rafael D. Hernandez f8dc692290
feat(i18n): enable front-end dev cert in Espanol (#43619) 2021-09-30 00:24:38 +05:30
Ilenia c9d919732a
feat: add last chinese cert (#43539) 2021-09-23 19:19:13 +05:30