* Improve typing of client CORS helper
* Take node-fetch as a dependency
* Add explicit Firebase region into config
* Add new Vercel proxy API routes that talk to backend
* Call Vercel proxy routes from `api-call` module
* Tweak import to try to get Vercel happy
* Tidy up a tiny bit
* Add a couple missing dependencies for hooks
* Upgrade eslint
This newer eslint and typescript-eslint fixes some spurious warnings
that were bugs and supports our version of Typescript.
* Use Next Script component the way it wants us to
* Rephrase ContractLeaderboard component to avoid useEffect woes
* Use perhaps more idiomatic type for ContractLeaderboard props
* Make Folds data fetching more correct and more clear
* Add components for CPM landing and charity pages
* Remove misc.ts to fix build
* Set up cloud function for writing txns
* More plumbing for txns
* Fix up API call
* Use Date.now() to keep timestamps simple
* Some styles for charity list page
* Hard code charities data
* Pass charity data to charity page
* Update txn type
* Listen for charity txns
* Handle txn to non-user by burning it
* Read txns for charity card and charity page.
* Set images to object contain
* Clean up txn types
* Move pic to top of card. Other misc styling.
* Update charity short & long descriptions
* Add `token` and `category` to Txn
* Fix breakages
* Show Charity link in the sidebar
* Fix typing issues
* Fix not reading from the right type
* Switch out icon
* Also show Charity icon on mobile
* Update copy
Co-authored-by: Austin Chen <akrolsmir@gmail.com>
Co-authored-by: James Grugett <jahooma@gmail.com>
* Allow users a free daily market
* Show confetti on recent created market
* remove unused import
* remove comment
* Did create market -> hook, capitalize buttons
* Check for confetti with interval
* Just check once
* Capitalize create market button on feed
* Add dev target for TheoremOne
* Restrict signups to theoremone.co emails
* Add new indices
* Forbid reads from unauthenticated users
* Client-side render pages that need auth
These pages are now client-side rendered:
- /home
- /leaderboards
- /market/...
- /fold/...
* Hide 404 for private Manifolds
* Brand instance for TheoremOne
* Hide "Add Funds" and "Personalize your feed"
* "M$" => "T$"
* Hide Discord & About Page too
* Update placeholders for teams
* Update firestore.indexes.json
* Switch /analytics to propz
* Migrate per-env code into common/
* More migrations to PROJECT_ID
* Conditionally use SSG depending on public vs private instance
* Fix props to be empty object
* Move more logic into access
* Spin out config files for each environment
* Generify most of the customizable brand stuff
* Move IS_PRIVATE_MANIFOLD to access.ts
* Rename access.ts to envs/constants.ts
* Add "dev:dev" alias
* Rever firestore rules to existing settings
* Fixes according to James's review
* Admin page using gridjs
* Move hook into separate file
* Link to each user's Manifold and Firestore /user entry
* Gate admin access to Austin/James/Stephen
* Don't leak the existence of /admin
* Add a custom 404 page that directs to Discord.
* Fix broken window.location.href on NextJS server