e0e1373468
* Update prettier to latest * Add format command * Create .prettierignore * Add prettier plugin sort imports * Update prettier config * Update prettier config * Update .prettierignore * Fix @babel/parser conflict https://github.com/trivago/prettier-plugin-sort-imports/issues/156 * Revert "Update .prettierignore" This reverts commit 282e5b838376f16b3df7f4c1f99f1106baaffea4. * Revert change for apps/www/pages/v/[id].tsx * Sort imports Moves the third party imports to the top, "~" imports in middle, and "./" at last * Sorting of the specifiers in an import declarations * [www] use path vs "../" * [core] use path "~" vs "../" * [tldraw] use path "~" vs "../.../" * [tldraw] use path "~" vs "../" * [tldraw] Cleanup * Update prettier config * Last use path "~" vs "../.../" * [www] Fix order of the third party imports * Clean prettier config
34 lines
835 B
TypeScript
34 lines
835 B
TypeScript
import { Utils } from '@tldraw/core'
|
|
import type { GetServerSideProps } from 'next'
|
|
import dynamic from 'next/dynamic'
|
|
import * as React from 'react'
|
|
|
|
const IFrameWarning = dynamic(() => import('~components/IFrameWarning'), {
|
|
ssr: false,
|
|
}) as any
|
|
|
|
const ReadOnlyMultiplayerEditor = dynamic(() => import('~components/ReadOnlyMultiplayerEditor'), {
|
|
ssr: false,
|
|
}) as any
|
|
|
|
interface RoomProps {
|
|
id: string
|
|
}
|
|
|
|
export default function Room({ id }: RoomProps) {
|
|
if (typeof window !== 'undefined' && window.self !== window.top) {
|
|
return <IFrameWarning url={`https://tldraw.com/v/${id}`} />
|
|
}
|
|
|
|
return <ReadOnlyMultiplayerEditor roomId={id} />
|
|
}
|
|
|
|
export const getServerSideProps: GetServerSideProps = async (context) => {
|
|
const id = context.query.id?.toString()
|
|
|
|
return {
|
|
props: {
|
|
id: Utils.lns(id),
|
|
},
|
|
}
|
|
}
|