* 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>