* 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>
* chore(client): tidy Flash by tidying tone
* add store import
* fix enum, remove default switch case
Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
* typo galore
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
* rejig everything, because refactoring is fun 🙃
* refactor: DRY playTone
* fix url to foss library
Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
* alphabetasize FlashMessage enum
* add all FlashMessages to tone/index.ts
* remove redundant type
* my code is correctnpm run develop:client
* fix: remove circular dependency
* fix: typo
* remove logs, play special tones for nightmode
* play sound on challengeComplete
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* fix: message removed when not logged in
* removed unnecessary code from DonateCompletion.tsx that was added
* now using isSignedIn in props and not donationFromState
* initial loading state unification
* feat(client): show buttons after 3 seconds
* fix: use window.setInterval explicitly
Otherwise TS assumes that it's node's setInterval
* feat(client): remove spinner when first button load
* feat(client): move the loader to the donate page button area
* feat(client): extract grid from modal donation form
* feat(client): remove duplicate donation forms
* feat(client):extract unused components from donationForm
* feat(client): load paypal on load not onInit (for perf)
* feat(client): set paypal loading state if stripe already loaded
* feat(clinet):make lpaypal oading condition strickt.
* Apply suggestions from code review
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* feat: clean up
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* feat: initial button setup client
* feat: rename walletsButton to .tsx
* chore: typescriptize wallet component
* chore: re-add keys to config, env, etc + check in gatsby-node
* feat: refactor donate form and wallet component
* feat(client): set labels correctly
* chore: add stripe package back to server
* chore: add stripe back to allowed paths
* chore: copy donate.js code from PR #41924
* feat: attempt to make back end work
* feat: make redux work
* feat: clean up
* feat: hokify
* feat: add error handling
* fix: back-end should be working
* fix: type errors
* fix: clean up back-end
* feat:addd styles
* feat: connect the client to the api
* feat: display wallets button everywhere
* test: add stripe key for cypress action
* test: fix for cypress tests
* test: cypress tests again
* test: maybe?
* test: more
* test: more
* test: more
* test
* askdfjasklfj
* fix: tests finally?
* revert: remove space from cypress yaml action
* remove logs
Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* 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
* migrate files and update tests
fix: use more memory for gatsby develop (#42433)
feat(client): remove whitespace from calculated values (#42400)
* feat(client?): remove whitespace for calculated values
* feat(client): remove whitespace from styledeclaration
* do not automatically strip
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
* fix: include all properties of CSSStyleDeclaration
* fix test for getPropVal
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
fix: get showUpcomingChange from env.json (#42440)
fix(client): display legacy certs like current ones (#42038)
* fix: display legacy certs like the current ones
* fix: link projects in legacy certs to project pages
* fix: update tests to changed legacy cert display
* fix: update tests for removed legacy certs forms
* fix: display legacy certs like the current ones
* fix: submit projects for cert on projects pages
* fix: remove legacy certs form submitting handling
* fix: move claiming cert setup before both tests
* fix: remove legacy cert update props and actions
* fix: remove legacy cert updates from api
* fix: correct merge conflict
fix(curriculum): rework Project Euler 98 (#42423)
* fix: rework challenge to use argument in function
* fix: add solution
* fix: use MathJax to improve math notation
fix(curriculum): rework Project Euler 56 (#42364)
* fix: rework challenge to use argument in function
* fix: add solution
* fix: use MathJax to improve look of math notation
fix(curriculum): correct small english typo (#42447)
chore: group together monaco-editor and plugin (#42443)
This should get renovate to create PRs where both are modified.
fix(deps): update dependency algoliasearch to v4.9.2 (#42432)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
migrate files and update tests
Algorithm moved to TSX
first ten files renamed to tsx
first 10 migration complete
first 20 files renamed
migrate some files. rename all
test
index.tsx forced to ignore ts issues
rename and migrate all files
update tests
* remove missed propType declarations
* kebab-caseify
* fi xlinting
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Parth Parth <thecodingaviator@users.noreply.github.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
* refactor(client): convert toggle-button to TypeScript
* chore: rename Space to tsx
* refactor(client): convert space to TypeScript
* chore: rename SlimWidthRow to tsx
* refactor(client): slim-width-row to TypeScript
* chore: rename SkeletonSprite to ts
* fix: fixed typos and resolved paths
* chore: resolve path inconsistencies
* refactor(client): skelton-sprite to TypeScript
* chore: rename loader.test to tsx
* chore: add types for react-spinkit
* refactor(client): loader to TypeScript
* refactor(client): link to TypeScript
* refactor(client): image-loader to TypeScript
* refactor(client): full-width-row to TypeScript
* refactor(client): current-challenge-link to TypeScript
* refactor(client): button to TypeScript
* refactor(client): border-color-picker to TypeScript
* refactor(client): avatar-renderer to TypeScript
* chore: changed loadertest(snap) to ts
* chore: optional types added and cleaned files
* fix: args are now optional
* push small updates for Spacer component merge
* update snapshot
* remove type defs from deps
* Revert "remove type defs from deps"
This reverts commit 9f58bf3554.
* correctly remove client type deps
* final push to remove from deps
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>