# 2° fase session monkchat REACTjs-responsivo
**NOME** kevin ribeiro de andrade
**numero** 27
**turma** INFOA
## COMPONENTS/CABECALHO
```jsx=
import { Barra, Cabecalhocomp } from "./styled"
export default function Cabecalho() {
return (
<Cabecalhocomp>
<div className="logo"><img src = "../assets/images/logoSITEmonk.png"/> </div>
<Barra>
<div className="barra"> <hr></hr> </div>
</Barra>
<div className="titulo"> MonkChatWeb </div>
</Cabecalhocomp>
)
}
import styled from "styled-components";
const Barra = styled.div`
.barra hr {
transform: rotate(90deg);
height: 1px;
width: 70PX;
}
`
const Cabecalhocomp = styled.div`
display: flex;
flex-direction: row;
align-items: center;
margin-bottom: 3em;
.titulo {
font: 700 2.2em Montserrat;
}
`
export {Barra, Cabecalhocomp}
```
## components/monkchat
```jsx=
import Cabecalho from "../../components/cabecalho"
import { containermonk, Containerconteudo, MonkButton, ChatInput, ChatText, SOS} from "./styled"
export default function Monkchat() {
return (
<SOS>
<containermonk className = "f">
<Cabecalho />
<Containerconteudo>
<div className="container-forms">
<div className="box-sala">
<div>
<div className="label">sala:</div>
<ChatInput />
</div>
<div>
<div className="label">Nick:</div>
<ChatInput />
</div>
<div>
<MonkButton> Criar </MonkButton>
<MonkButton> Entrar </MonkButton>
</div>
</div>
<div className = "eu">
<div className="box-mensages"></div>
<div className="label">mensage:</div>
<ChatText />
<MonkButton className="btn-enviar"> Enviar </MonkButton>
</div>
</div>
<div className="container-chat">
<img className="chat-atualizar" src="/assets/images/Vetor.png" alt="" />
<div className="chat">
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
<div className = "chat-mensage">
<div> (15:02:01) </div>
<div><b>Brunex</b> fala para <b>Todos:</b> Oieeeee </div>
</div>
</div>
</div>
</Containerconteudo>
</containermonk>
</SOS>
)
}
import styled from "styled-components";
const containermonk = styled.div`
display: flex;
flex-direction: column;
background-color: #583BBF;
color: #ffffff;
padding: 2em 5em 6em 5em;
font-family: Montserrat;
height: 100vh;
`
const SOS = styled.div`
.f {
display: flex;
flex-direction: column;
background-color: #583BBF;
color: #ffffff;
padding: 2em 5em 6em 5em;
font-family: Montserrat;
height: 100vh;
}
`
const Containerconteudo = styled.div`
display: flex;
flex-direction: row;
background: rgba(0, 0, 0, 0.12);
padding: 3em 5em;
height: 100%;
.container-form {
display: flex;
flex-direction: column;
justify-content: space-between;
padding: 2em;
}
.box-sala {
display: flex;
flex-direction: column;
}
.box-sala > div {
display: flex;
flex-direction: row;
justify-content: flex-end;
align-items: center;
margin: .2em;
}
.label {
font-weight: 700;
font-size: 1.2em;
width: 4em;
}
.eu {
display: flex;
flex-direction: column;
padding-top: 7em;
}
.box-mensagem {
display: flex;
flex-direction: column;
}
.btn-enviar {
align-self: flex-end;
}
.container-chat {
display: flex;
flex-direction: column;
flex-grow: 1;
padding: 0em 2em 2em 2em;
}
.chat-atualizar {
width: 1em;
align-self: flex-end;
margin: .4em;
}
.chat {
display: flex;
flex-direction: column;
background: rgba(192, 65, 224, 0.19);
border-radius: 3px;
padding: 1.5em;
height: 100%;
overflow-y: auto;
}
.chat::-webkit-scrollbar-track
{
-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.6);
background-color: #F5F5F5;
border-radius: 10px;
}
.chat::-webkit-scrollbar
{
width: 6px;
background-color: #F5F5F5;
}
.chat::-webkit-scrollbar-thumb
{
border-radius: 10px;
background-image: -webkit-gradient(linear,
left bottom,
left top,
color-stop(0.44, rgb(0,0,128)),
color-stop(0.72, rgb(75,0,130)),
color-stop(0.86, rgb(139,0,139)));
}
.chat-mensage {
display: flex;
flex-direction: row;
font-size: .9em;
margin: .4em .2em;
}
`
const test = styled.div`
.btn-enviar {
align-self: flex-end;
}
`
const MonkButton = styled.button `
font-weight: 700;
color: #fff;
background: #50B4BF;
border: none !important;
border-radius: 20px;
padding: .5em 1.5em;
margin: .3em;
cursor: pointer;
&:hover {
background-color: #299ca8;
}
`
const ChatInput = styled.input`
border: none;
background: #FFFF;
border-radius: 5PX;
outline: none;
padding: .4em .5em;
cursor: text;
`
const ChatText =styled.textarea`
border: none;
background: #FFFF;
border-radius: 5PX;
outline: none;
padding: .4em .5em;
cursor: text;
height: 12em;
margin: .5em 0em;
`
```
## responsividade
```jsx=
const Responsividade = styled.div`
@media (max-width: 800px) {
.Container {min-width: auto; padding: 1em; height: auto;}
.Cabecalho {flex-direction: column;}
.Conteudo {flex-direction: column; padding: .2em; }
.container-form { padding: 1em; justify-content: flex-start; }
.container-form > div { margin-bottom: 2em;}
.box-sala > div {justify-content: flex-start; }
.box-sala > div::nth-of-type(3) { flex-direction: column; }
.chat { overflow-y: unset; height: auto; }
.chat-mensage { flex-direction: column; margin: 1em 0em; }
.container-chat { height: auto; padding: 1em;}
button { width: 100%; border-radius: .3em; height: 2.5em;}
.label { width: 4em; }
input { width: 100%;}
.barra {display: none; }
```