diff --git a/src/App.tsx b/src/App.tsx index b8bd44f4..1d31766f 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -3,6 +3,7 @@ import { BrowserRouter, Route, Routes } from 'react-router-dom'; import Lobby from './pages/Lobby'; import Layout from './components/layout/Layout'; import Login from './pages/Login'; +import Room from './pages/Room'; function Router() { return ( @@ -14,6 +15,9 @@ function Router() { }> } /> + }> + } /> + ); diff --git a/src/components/room/Screen.tsx b/src/components/room/Screen.tsx new file mode 100644 index 00000000..c528c6ec --- /dev/null +++ b/src/components/room/Screen.tsx @@ -0,0 +1,17 @@ +import styled from 'styled-components'; +import screenInterface from '../../screen.interface'; + +export default function RoomBlock({ name, id }: screenInterface) { + return ( + +
{name}
+
{id}
+
+ ); +} + +const Container = styled.video` + border: 3px solid red; + height: 46%; + width: 46%; +`; diff --git a/src/components/room/Screens.tsx b/src/components/room/Screens.tsx new file mode 100644 index 00000000..3d2e7b25 --- /dev/null +++ b/src/components/room/Screens.tsx @@ -0,0 +1,24 @@ +import styled from 'styled-components'; +import screenAPI from '../../screens.json'; +import Screen from './Screen'; +import screenInterface from '../../screen.interface'; + +export default function Screens() { + return ( + + {screenAPI.map(({ name, id }: screenInterface) => { + return ; + })} + + ); +} + +const Container = styled.div` + display: flex; + flex-flow: row wrap; + justify-content: space-around; + align-content: space-around; + margin: 0 auto; + width: 86%; + height: 86%; +`; diff --git a/src/pages/Room.tsx b/src/pages/Room.tsx new file mode 100644 index 00000000..ad5fe717 --- /dev/null +++ b/src/pages/Room.tsx @@ -0,0 +1,35 @@ +import styled from 'styled-components'; +import Screens from '../components/room/Screens'; + +export default function MainPage() { + return ( + +
방번호
+ + +
+ ); +} + +const Component = styled.div` + display: flex; + flex-direction: column; + width: 100vw; + height: 100vh; + color: white; +`; + +const Header = styled.header` + font-size: 5rem; +`; + +const Button = styled.button` + color: white; + cursor: pointer; + padding: 2rem; + width: 15rem; + margin: 0 auto; + font-size: 2rem; + background-color: gray; + border-radius: 1rem; +`; diff --git a/src/screen.interface.ts b/src/screen.interface.ts new file mode 100644 index 00000000..d20f0eed --- /dev/null +++ b/src/screen.interface.ts @@ -0,0 +1,4 @@ +export default interface screenInterface { + name: string; + id: number; +} diff --git a/src/screens.json b/src/screens.json new file mode 100644 index 00000000..c2738236 --- /dev/null +++ b/src/screens.json @@ -0,0 +1,18 @@ +[ + { + "name": "screen1", + "id": 1 + }, + { + "name": "screen1", + "id": 1 + }, + { + "name": "screen1", + "id": 1 + }, + { + "name": "screen1", + "id": 1 + } +] diff --git a/src/styles/global.ts b/src/styles/global.ts index e42d7549..8784db1c 100644 --- a/src/styles/global.ts +++ b/src/styles/global.ts @@ -50,7 +50,6 @@ select, table, textarea { font-size: 12px; - line-height: 16px; color: #202020; font-family: Montserrat, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", diff --git a/yarn.lock b/yarn.lock index c5731031..a153f01a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8474,7 +8474,7 @@ style-search@^0.1.0: styled-components@^5.3.5: version "5.3.5" - resolved "https://registry.npmjs.org/styled-components/-/styled-components-5.3.5.tgz" + resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.3.5.tgz#a750a398d01f1ca73af16a241dec3da6deae5ec4" integrity sha512-ndETJ9RKaaL6q41B69WudeqLzOpY1A/ET/glXkNZ2T7dPjPqpPCXXQjDFYZWwNnE5co0wX+gTCqx9mfxTmSIPg== dependencies: "@babel/helper-module-imports" "^7.0.0"