* fix: improve tests for video challenges
* fix: remove unused challenges + get rid of no description warning
* fix: remove non-existent challenges from meta
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.
* 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>
<!-- 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
<!-- 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.
* fix(files): Decouple files from challenges
* feat(server/react): Remove action logger
use redux remote devtools instead!
* feat(Challenges): Disable js on edit, enable on execute
* feat(Challenge/Preview): Show message when js is disabled
* refactor(frameEpic): Reduce code by using lodash
* feat(frameEpic): Disable js in preview by state
* feat(frameEpic): Colocate epic in Challenges/redux
* refactor(ExecuteChallengeEpic): CoLocated with Challenges
* refactor(executeChallengesEpic): Separate tests from main logic
* feat(Challenge/Preview): Update main on edit
* feat(frameEpuc): Replace frame on edit/execute
This allows for sandbox to work properly
* fix(Challenges/Utils): Require utisl
* revert(frameEpic): Hoist function to mount code in frame
* fix(frameEpic): Ensure new frame is given classname
* feat(executeChallenge): Update main on code unlocked
* fix(frameEpic): Filter out empty test message
* fix(Challenge/Preview): Remove unnessary quote in classname
* feat(codeStorageEpic): Separate localstorage from solutions loading
* fix(fetchUser): Merge user actions into one
prefer many effects from one action over one action to one effect
* fix(themes): Centralize theme utils and defs
* fix(entities.user): Fix user reducer namespacing
* feat(frame): Refactor frameEpic to util
* feat(Challenges.redux): Should not attempt to update main from storage
* fix(loadPreviousChallengeEpic): Refactor for RFR
* fix(Challenges.Modern): Show preview plane
* chore(packages): Update redux utils
* feat(Panes): Invert control of panes map creation
* feat(Modern): Add view
* feat(Panes): Decouple panes from Challenges
* fix(Challenges): Decouple challenge views from panes map
* fix(Challenge/views): PanesMap => mapStateToPanesMap
This clarifies what these functions are doing
* fix(Challenges): Add view type
* fix(Panes): Remove unneeded panes container
* feat(Panes): Invert control of pane content render
This decouples the Panes from the content they render, allowing for
greater flexibility.
* feat(Modern): Add side panel
This is common between modern and classic
* feat(seed): Array to string file content
* fix(files): Modern files should be polyvinyls
* feat(Modern): Create editors per file
* fix(seed/React): Incorrect keyfile name
* feat(Modern): Highligh jsx correctly
This adds highlighting for jsx. Unfortunately, this disables linting for
non-javascript files as jshint will only work for those
* feat(rechallenge): Add jsx ext to babel transformer
* feat(seed): Normalize challenge files head/tail/content
* refactor(rechallenge/build): Rename function
* fix(code-storage): Pull in files from localStorage
* feat(Modern/React): Add Enzyme to test runner
This enables testing of React challenges
* feat(Modern): Add submission type
* refactor(Panes): Rename panes map update action