* fix(logs): Remove console.log's
* chore(challengeMap): challengeMap -> completedChallenges
* chore(userModel): Update user model
* feat(userIDs): Add user ident fields
* chore(github): Remove more refs to github data
* fix(auth): Route should have specific targets
* fix(signup): Redirection should be to signup
Closes#16945
* feat(redirect): All fallback redirects to signin
* fix: send back to originating route
* fix(server,secrets): Specify profile field for LinkedIn provider.
* fix(profile): Add route to react profile page
* fix(seed): Simplify copy of lessons and remove need for image
* rework copy for account creation and login emails
* fix: Fixup email template and lock-file
* 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