* 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
* Modify set-up-passport challenge test regex to accept space after secret
* Accept any number of spaces
Co-authored-by: Krzysztof G. <60067306+gikf@users.noreply.github.com>
Co-authored-by: Krzysztof G. <60067306+gikf@users.noreply.github.com>
* 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>
* 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>
* 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>
* Typo fixed in problem 29 Distinct
* Typo fixed using MathJax
* Update curriculum/challenges/english/10-coding-interview-prep/project-euler/problem-29-distinct-powers.md
Co-authored-by: Krzysztof G. <60067306+gikf@users.noreply.github.com>
Co-authored-by: Krzysztof G. <60067306+gikf@users.noreply.github.com>
* chore: rename files
* chore: update codebase
* chore: proper title case
* chore: block name
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* chore: rename files
* chore: update codebase
* chore: proper title case
* chore: missed block name
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
* feat: initial infra
* feat: break down steps
* feat: tests 1-30
* feat: tests 31 to end
* chore: apply gikf's review suggestions
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
* feat: actually testing things helps
* chore: apply review suggestions
Co-authored-by: Sem Bauke <46919888+Sembauke@users.noreply.github.com>
* chore: take the part, put it in a step
* chore: apply shaun's review suggestions
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* chore: missed one
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* chore: clarify verbiage
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
Co-authored-by: Sem Bauke <46919888+Sembauke@users.noreply.github.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* Solving issue #44068
Eliminated the difference between project’s stated requirements in own page and in widget on codepen
* Update build-a-tribute-page.md
* fix comments for which place to edit
solution should be placed in this line, previous comments was missleading.
as discussed in https://github.com/freeCodeCamp/freeCodeCamp/issues/44049
* shorter comments
clear of not needed ward Only
* Update curriculum/challenges/english/02-javascript-algorithms-and-data-structures/basic-javascript/declare-a-read-only-variable-with-the-const-keyword.md
letter fixes
Co-authored-by: Ilenia <nethleen@gmail.com>
* fix for spelling of Change
only letter change
* fix for italian language
all other languages
* revert
revert of changes that will be done in other place
* revert
Co-authored-by: Ilenia <nethleen@gmail.com>
* simplify access props using this.props challenge
* trying to make the test pass
* change description access props challenge
* Update curriculum/challenges/english/03-front-end-development-libraries/react/access-props-using-this.props.md
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
* delete test
* Update curriculum/challenges/english/03-front-end-development-libraries/react/access-props-using-this.props.md
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
* feat(curriculum): add registration-form practice project
* add parts 001-006
* add parts 007-009
* add parts 010-013
* add parts 014-024, fix 013
* add parts 025-043
* add parts 043-046
* add parts 0047-057 without tests
* fix tests and adjust index.md file I do not understand
* add css tests to parts 037-040
* add tests parts 040-057
* remove space around ERM
* add true assertion until document iframe is fixed
* add critical review suggestions
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
* use clear, Tom-like language for 038
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
* change order to match author's age
* apply suggestions with personal pazzaz
* add that thing Nich forgets
* use innerText
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
* refactor: made instructions incurriculum\challenges\english\01-responsive-web-design\applied-visual-design\use-the-strong-tag-to-make-text-bold.md a little more clear to user
* refactor: changed phrasing in instructions in curriculum\challenges\english\01-responsive-web-design\applied-visual-design\use-the-s-tag-to-strikethrough-text.md to make it slightly easier to read and less verbose
* refactor: fix phrasing in curriculum/challenges/english/01-responsive-web-design/applied-visual-design/use-the-s-tag-to-strikethrough-text.md
* fix: streamline phrasing according to requested changes
Co-authored-by: Sem Bauke <46919888+Sembauke@users.noreply.github.com>
* fix: change phrasing according to requested changes
Co-authored-by: Sem Bauke <46919888+Sembauke@users.noreply.github.com>
Co-authored-by: Sem Bauke <46919888+Sembauke@users.noreply.github.com>
* fix: stop showing completion modal on steps
* feat: submit steps with ctrl+enter
* fix: handle ctrl+enter when not focussing editor
* fix: reset tests when user types
* refactor: pass showCompletionModal as an option
Otherwise we have to write executeChallenge(true) which does not mean
what you might reasonably expect.
* fix: always executeChallenge when not on step
* fix: update frontend project show
* fix: handle missing payload
* refactor: isProjectStep -> hasEditableRegion
* refactor: more renaming
* fix: make meta.json control multifile editor use
* fix: update the challengeSchema correctly
* Update client/src/templates/Challenges/classic/editor.tsx
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* fix: remove logging
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
For the check-radio-buttons-and-checkboxes-by-default exercise,
campers are able to pass the exercise if the checked attribute is
written in an incorrect syntax. This PR checks the innerText of the
elements which are being added the 'checked' attribute and ensures that
their value doesn't change.
Fixes#43750
* fix: add test to check if variable is edited
* Update curriculum/challenges/english/02-javascript-algorithms-and-data-structures/regular-expressions/remove-whitespace-from-start-and-end.md
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
* 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
* Update set-state-with-this.setstate.md
revert the base url back to https://facebook.github.io/react/docs/state-and-lifecycle.html
* Update use-proptypes-to-define-the-props-you-expect.md
Linked to the exact place for the types of propTypes you can use. The original link was to the documentation, which states that it has been moved, So I thought it would be intuitive to link the exact place React wants you to go.
* Update curriculum/challenges/english/03-front-end-development-libraries/react/use-proptypes-to-define-the-props-you-expect.md
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
* Update curriculum/challenges/english/03-front-end-development-libraries/react/set-state-with-this.setstate.md
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
* feat: dispatch resetChallenge action
* fix: copy challengeFiles instead of in-place sort
* fix: handle null updateFile payloads in redux
* refactor: reorganise region initialization
* refactor: pull code into editorDidMount
Then we can rely on the presence of the editor and monaco and don't have
litter the code with null checks.
* refactor: use better name for editable region init
* refactor: remove unused decoration
* refactor: rename forbidden region init functions
* fix: keep all challengeFiles when resetting
* refactor: remove unused decoration class
* fix: reinitialize editor on reset
* fix: stop adding multiple scroll listeners
Since the challengeFile update on each keystroke extra (unnecessary)
adding of listeners slowed the editor to a crawl.
* fix: only scroll to editor on mount
Rather than on any edit.
* refactor: remove logs and comments
* fix: rename toSortedArray and fix broken test
* fix: check for null not falsy in updateFile
* fix: only update project features when project
* fix: only reset if editor contents have changed
* feat: focus on editor after reset
* fix: replace responsive web dev bitly links
* Revert "fix: replace responsive web dev bitly links"
This reverts commit 3d2bcbef4b.
* fix: remove video url from html challenges using old image srcs
* fix: update ES6-Compare Scopes of var and let
Fixes Issue: Adding a comment causes a valid answer to be wrong in ES6 > Compare Scopes of the var and let keywords
Fixes: #43578
* Update curriculum/challenges/english/02-javascript-algorithms-and-data-structures/es6/compare-scopes-of-the-var-and-let-keywords.md
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
* Update curriculum/challenges/english/02-javascript-algorithms-and-data-structures/es6/compare-scopes-of-the-var-and-let-keywords.md
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
* Update curriculum/challenges/english/02-javascript-algorithms-and-data-structures/es6/compare-scopes-of-the-var-and-let-keywords.md
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
Co-authored-by: Krzysztof <60067306+gikf@users.noreply.github.com>
* feat(curriculum): add accessibility-quiz practice project
* add parts 002-006
* add parts 7-8, tentative on logo aspect-ratio
* add parts 008-013
* add parts 013-016
* add parts 017-026
* add parts 026-027
* add parts 027-029
* add parts 029-044
* add parts 044-067 - all parts done
* add tests 001-009
* add tests 010 - 033
* add tests 034 - 039
* update tests 008~033, add tests 040-050
* add all tests
* fix some stuff, remove final.md
* take reasonable suggestions from Nich, ignore rest
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
* replace svg link with actual CDN
* remove getAttribute in potentially bad places
* add method to form
* fix silly querySelectors
* adjust selectors for 028
* fix selectors, and add color transformations
Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
* fix: typos, and make one test lenient
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
* fix for issue: #43536, final css property optional semi-colon
* accidentally left a "y" at the end of the sentence
* replaced regex with CSSHelp
* removed trailing white-space
* fix question example code for id: 587d78a7367417b2b2512ae0
* Revert "fix question example code for id: 587d78a7367417b2b2512ae0"
This reverts commit c99edf8609.
* modifying only the english version of button hover example
* change to keep css looking consistent
Suggesting the removal of "-" on line 29 in the description, as the comma before "such" is sufficient to separate the examples from the rest of the sentence.
* (fix)Sort an array alphabetically using the sort Method - Array is returned from the function #43417
* (mod)Curriculum - Adding explicit instructions so that function will return a sorted array #43417
* (fix)Curriculum - Correcting grammetic error in instructions #43417
* mod: updated transaltion message #43417
* fix: Curriculum - Updated grammatical error in instructions #43417
Co-authored-by: Vama Mehta <vama.mehta@inqubit.in>
* feat(curriculum): add initial steps
Add the initial step files for this project.
* feat(curriculum): write test texts
Add some test text (tests coming soon).
* feat: tests for HTML bits
Add tests for the HTML bits - CSS holding off until parser lands.
* feat: CSS tests
New CSS parser works great!
* fix: link href
Fix the href in the boilerplate.
* chore: apply suggestions from code review
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
* fix: clarify link element
* fix: optional chaining
* fix: remove unused meta props
* fix: update helper and fix tests
* chore: apply tom's review suggestions
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
* chore: no console logs
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* feat: intro
Add introductory text, tweak instructions a bit.
Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* fix(curriculum): clarify exercise tracker
* feat:separatetest steps for logs endpoint
* feat:separate test steps for logs endpoint, refactored a description sentence
* feat:separate-test-steps-for-users-endpoint
* added string checks on last commit
* feat:separate-test-steps-for-exercises-endpoint
* feat:separate-test-steps-for-users-endpoint
* feat:separate test steps
* feat:separate test steps
* feat:explicitly specify prop returned from 'GET /api/users'
* feat:explicitly specify obj returned from
* feat:explicitly specify returned responses from 'GET/api/users/:_id/logs'
* feat:separate test steps
* feat:separate test steps(apply req changes)
* feat:spearate test steps(made more req changes)
* feat:separate test steps(apply more req changes)
* feat:separate test steps(modified clarification of return from POST api/users)
* feat:separate test changes(added / after 'url')
* feat:separate test changes(applied more req changes)
* feat:spearate test steps(removed unwanted space)
* feat:separate test steps
* sheesh
* added markdown formatting to challenge
* added formatting to keep space in concatenating strings with the plus equals operator
* Delete husky.sh
* added back in italian dictionary
* removed code formatting
* updating text formatting for challenges, removed space and added instruction
Co-authored-by: Pat Lehmann <patrick.lehmann@homes.com>