manifold/web/pages/404.tsx
Austin Chen da4ce99755
Merge Manifold for Teams infra into main codebase (#61)
* 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
2022-03-08 18:43:30 -08:00

30 lines
974 B
TypeScript

import { IS_PRIVATE_MANIFOLD } from '../../common/envs/constants'
import { Page } from '../components/page'
import { Title } from '../components/title'
export default function Custom404() {
if (IS_PRIVATE_MANIFOLD) {
// Since private Manifolds are client-side rendered, they'll blink the 404
// So we just show a blank page here:
return <Page></Page>
}
return (
<Page>
<div className="flex h-full flex-col items-center justify-center">
<Title text="404: Oops!" />
<p>Nothing exists at this location.</p>
<p>If you didn't expect this, let us know on Discord!</p>
<br />
<iframe
src="https://discord.com/widget?id=915138780216823849&theme=dark"
width="350"
height="500"
allowTransparency={true}
frameBorder="0"
sandbox="allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts"
></iframe>
</div>
</Page>
)
}