Commit Graph

52 Commits (bd9065fdfe769f6a276a864b89d19dfc95257ccf)

Author SHA1 Message Date
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
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
Oliver Eyton-Williams bb7893db8e
feat: show project preview (#43967)
* feat: add data for preview to challengeMeta

* feat: allow creation of project preview frames

* feat: make project preview data available for frame

* refactor: simplify reducer

* feat: show project preview for first challenge

* feat: show project preview on MultiFile challenges

* test: check for presence/absence of preview modal

* fix: simplify previewProject saga

* test: uncomment project preview test

* fix: increase modal size + change modal title

* modal-footer

* feat: adjust preview size

* fix: remove margin, padding, and line-height for preview of finished projects

* Revert "fix: remove margin, padding, and line-height for preview of finished projects"

This reverts commit 0db11a0819.

* fix: remove margin on all previews

* refactor: use closeModal('projectPreview') for clarity

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

* fix: get started -> start coding!

* fix: update closeModal type

Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
Co-authored-by: Ahmad Abdolsaheb <ahmad.abdolsaheb@gmail.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2021-11-29 18:30:28 +00:00
Vishwasa Navada K 9abc5f66ba
feat(client): ts-migrate multiple files (#43262)
* feat(client): ts-migrate rename files

* feat(client): ts-migrate client/src/templates/Introduction/*

* feat(client): ts-migrate client/src/components/formHelpers/form*

* fix: import

* Update client/src/components/formHelpers/form-validators.tsx

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

* Update client/src/components/formHelpers/form-fields.tsx

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

* Update client/src/components/formHelpers/form-fields.tsx

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

* fix: types in client/src/components/formHelpers/index.tsx

* fix: types in client/src/templates/Introduction/super-block-intro.tsx

* fix: types in client/src/components/formHelpers/*

* fix: signInLoading and value types

* Update client/src/templates/Introduction/super-block-intro.tsx

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

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

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

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

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

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

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

* chore(deps): update dependency rollup to v2.58.1

* fix: rename variables and fix imports for ts-migrate

* fix: remove `Type` suffix from the type definition.

* Update client/src/components/formHelpers/form.tsx

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

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-25 18:45:36 +01:00
Igor Cunha 2dd106eb2f
feat(client): migrate to ts - (HelpModal, Preview, VideoModal, Side-Panel) (#42857)
* refactor: migrate HelpModal, Preview, VideoModal, Side-Panel

* refactor: import order

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-09-17 18:37:53 +01:00
awu43 dd5d2919be
feat(client): ts-migrate client/utils/** (#42823)
* rename js files

* update imports and references

* migrate build-challenges

* migrate challenge-types

* migrate utils/index

* migrate state-management

* install @types/psl for tags

* migrate tags

* migrate tags.test

* migrate challenge-page-creator

* migrate utils/gatsby/index

* migrate layout-selector

* migrate layout-selector.test

* revert challenge-types

Curriculum can't handle TS or modules

* convert arrow functions

* revert build-challenges

* revert utils/gatsby/index

* revert challenge-page-creator

* revert challenge-types reference

* Delete state-management

Deleted in #42960

* Disable render-result-naming-convention (for now)

* update layout-selector.test comment

* reorder imports in build-challenges

* change ts-ignore to ts-expect-error
2021-08-09 10:30:31 +02:00
Oliver Eyton-Williams e118dda13a
fix: order imports and remove circular dependencies (#41824)
* 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
2021-08-02 08:39:40 -05:00
Anirudh Modi ef3b7ec955
chore(eslint): enables recommended eslint rules for `testing-library` and `jest-dom` (#42817) 2021-07-20 21:21:16 +07:00
ABHINAV SHARMA e2ca65c803
feat(client): ts-migrate layoutSelector component (#42748) 2021-07-12 14:05:01 +07:00
Tom 918d5a160d
feat(client): ts-migrate challenge templates/show components (#42553) 2021-06-30 20:50:56 +05:30
Ahmad Abdolsaheb b3f2c64de8
fix(client): remove algolia and hot keys modules from landing pages (#42394)
* fix(client): remove algolia and hot keys from landing pages

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-06-24 12:50:36 +03:00
Huyen Nguyen 2c16234853
chore: add jest global variables (#42573) 2021-06-20 09:14:42 +02:00
Tom 067761f2f6
feat(curriculum): add relational databases cert as upcoming change (#41658) 2021-06-15 16:37:13 +01:00
saeed 66c5523909
feat: render footer correctly (#42096)
Co-authored-by: Ahmad Abdolsaheb <ahmad.abdolsaheb@gmail.com>
2021-05-24 00:30:07 +02:00
renovate[bot] 21dd80c47a
chore(deps): update dependency prettier to v2.3.0 (#42074)
* chore(deps): update dependency prettier to v2.3.0

* chore: apply formating per prettier

* fix: correctly disable import/no-unresolved

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Mrugesh Mohapatra <hi@mrugesh.dev>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-05-10 08:48:49 -07:00
Oliver Eyton-Williams 740370eb60
refactor: explicit mocking for analytics (#41562)
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.
2021-03-29 16:48:58 -07:00
Oliver Eyton-Williams f8699a8d55
refactor: simplify challenge.block usage (#41185) 2021-02-23 09:52:48 +05:30
Ahmad Abdolsaheb b57e268329
fix(client): add tests for layoutSelector (#41047) 2021-02-18 10:41:05 +05:30
Oliver Eyton-Williams 97fcaa693f
refactor: only use dasherized superBlock (#41067) 2021-02-13 10:36:04 +05:30
Ahmad Abdolsaheb b45e78d1ee
fix(client): adjust layoutSelector for i18n (#41005) 2021-02-09 11:21:27 +05:30
Ahmad Abdolsaheb 13a248ba2b
fix(client): landing and donate page night mode friendly (#40883) 2021-02-03 00:49:27 +05:30
Tom 625469c82f feat: improve ui/ux learn map (#40579)
Co-authored-by: Kris Koishigawa <scissorsneedfoodtoo@gmail.com>
2021-01-31 12:15:39 +05:30
Kabindra Shrestha ac3d762bb5 fix(learn): split and simplified learn map (#39154) 2021-01-31 12:15:35 +05:30
Oliver Eyton-Williams 4b14f9297b
fix: source certificates into Gatsby (#39648)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Shaun Hamilton <51722130+Sky020@users.noreply.github.com>
2020-09-24 16:04:35 +05:30
Ahmad Abdolsaheb d9dad10f43
feat(client): shinny new landing page 🎉 (#39400)
Co-authored-by: Mrugesh Mohapatra <1884376+raisedadead@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2020-08-24 23:36:40 +05:30
Beau Carnes e776529ed0 feat(learn): add python video challenges (#38424) 2020-05-27 13:19:09 +05:30
Oliver Eyton-Williams 48532d6ccb fix: hide isHidden challenges from hotkey nav 2020-05-25 16:25:19 +05:30
Oliver Eyton-Williams 68aef571ee feat: hide isHidden challenges 2020-05-25 16:25:19 +05:30
Mrugesh Mohapatra 421bbdefbe
fix(client): add footer on learn home (#38830) 2020-05-19 12:50:15 +05:30
Oliver Eyton-Williams c6eb40ceef
feat: remove protection from interview prep (#38136)
The interview prep section includes many challenges that require long
running calculations which can be mistaken for infinite loops. This
removes the loop protection from those challenges, while the tests are
being evaluated.

It keeps the protection for the preview, since it is easy to create
broken code while working on a challenge and that should not crash the
site.
2020-02-04 10:33:56 +05:30
mrugesh 059e826465
fix: remove all year-end gift implementation (#38030) 2020-01-09 02:37:50 +05:30
Ahmad Abdolsaheb 1289d35435
fix: show default theme for donation related pages (#37956)
* fix: show default theme for donation related pages

* feat: add default theme to stripForm
2019-12-18 17:40:48 +03:00
Ahmad Abdolsaheb a9bbcda211
feat(donate):add donation modal and certification message (#37822)
Co-Authored-By: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2019-12-02 15:48:53 +03:00
Mrugesh Mohapatra f737b24b6f feat(donate): remove themes from donate pages 2019-11-19 22:28:05 +05:30
Tom 5ca2d2467a fix: make help button use subforum topics (#37741)
* fix: make help button use subforum topics

* fix: add test to check that block exists

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

* fix: improve error message

* Update curriculum/test/test-challenges.js

Co-Authored-By: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2019-11-15 23:03:08 +05:30
mrugesh 2e82c76b53
Revert "feat: load scripts conditionally based on path " (#37351)
This reverts commit 87be96a244.
2019-10-17 02:41:33 +05:30
Ahmad Abdolsaheb 87be96a244 feat: load scripts conditionally based on path (#37344) 2019-10-17 00:44:53 +05:30
Oliver Eyton-Williams 9c2f1ffd82 refactor: combine slug utils into one module 2019-09-26 22:15:27 +05:30
mrugesh 5d92b3c668 fix: project views and icons for intros (#36811) 2019-09-19 10:14:58 +03:00
Ahmad Abdolsaheb 9ff7bf5801 feat: simplify landing page 2019-09-04 18:23:21 +05:30
Mrugesh Mohapatra 0124e7556d fix: removed all guide bits from gatsby 2019-07-26 19:40:46 +05:30
Tom 8757deb56c feat(client): add prev next btns to lessons (#35485)
* feat/add-prev-next-btns-to-lessons

redirect to learn instead of home

* fix/button-css-properties

* fix/change-buttons-to-suggested

* fix/add-tests+change-button-to-link

Co-authored-by: ojeytonwilliams ojeytonwilliams@gmail.com

* Revert "fix/add-tests+change-button-to-link"

This reverts commit ae26504d1d.

* fix/add-tests+change-button-to-link

Co-authored-by: ojeytonwilliams <ojeytonwilliams@gmail.com>
2019-07-18 15:16:00 +05:30
Valeriy S 73961da21a fix(client): always show footer on 404 page 2019-06-11 20:28:51 +05:30
Bouncey 15f18d1cda fix: Dedupe layout selection logic 2019-06-08 03:16:28 +05:30
jnguyen0220 414219965d fix: adding f to the featureImage source (#35758)
<!-- Please follow this checklist and put an x in each of the boxes, like this: [x]. It will ensure that our team takes your pull request seriously. -->

- [x] I have read [freeCodeCamp's contribution guidelines](https://github.com/freeCodeCamp/freeCodeCamp/blob/master/CONTRIBUTING.md).
- [x] My pull request has a descriptive title (not a vague title like `Update index.md`)
- [x] My pull request targets the `master` branch of freeCodeCamp.
- [x] None of my changes are plagiarized from another source without proper attribution.
- [x] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
- [x] My changes do not use shortened URLs or affiliate links.

<!--If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.-->

Closes #35749
2019-04-04 10:54:31 +05:30
Valeriy 6a93b44aca feat(client): use custom components for guide articles 2019-02-14 09:33:53 +00:00
Mrugesh Mohapatra fdc2219f81 feat: remove news from platform 2019-01-16 13:48:38 +00:00
Stuart Taylor d327a5c36b Feat: News in the client app (#34392) 2018-11-29 15:12:15 +03:00
Stuart Taylor 7da04a348b fix: Update packages and fix local dev (#26907)
<!-- Please follow this checklist and put an x in each of the boxes, like this: [x]. It will ensure that our team takes your pull request seriously. -->

- [x] I have read [freeCodeCamp's contribution guidelines](https://github.com/freeCodeCamp/freeCodeCamp/blob/master/CONTRIBUTING.md).
- [x] My pull request has a descriptive title (not a vague title like `Update index.md`)
- [x] My pull request targets the `master` branch of freeCodeCamp.
2018-10-23 18:48:46 +05:30
Valeriy 6c3b9b616d fix(learn): path to Intros 2018-10-07 08:54:52 +01:00