Creato componente contenitore messaggio, impostata bozza della visualizzazione di una chat TODO Routing e Keyboard
parent
f5d6da421a
commit
90b37f7297
@ -1,15 +1,65 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="chat-msg">
|
<div
|
||||||
{{v-if MsgSender != "user"}}
|
v-bind:class="[isUser ? 'mainUserMsg' : 'secondaryUserMsg']"
|
||||||
$MsgType = "Receiver"
|
class="bubble bubble-bottom-left"
|
||||||
<div class="$MsgType">Sent text here</div>
|
>
|
||||||
|
<p>{{ msgText }}</p>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
setup() {},
|
setup() {},
|
||||||
|
props: {
|
||||||
|
msgText: String,
|
||||||
|
isUser: Boolean,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped></style>
|
<style scoped>
|
||||||
|
.mainUserMsg {
|
||||||
|
--chat-bg-color: #368dda;
|
||||||
|
--msg-position: absolute;
|
||||||
|
--msg-right: 0;
|
||||||
|
--msg-border-right: 24px solid var(--chat-bg-color);
|
||||||
|
--msg-border-left: 12px solid transparent;
|
||||||
|
--msg-border-position-left: 70%;
|
||||||
|
}
|
||||||
|
.secondaryUserMsg {
|
||||||
|
--chat-bg-color: green;
|
||||||
|
--msg-position: relative;
|
||||||
|
--msg-right: none;
|
||||||
|
--msg-border-right: 12px solid transparent;
|
||||||
|
--msg-border-left: 24px solid var(--chat-bg-color);
|
||||||
|
--msg-border-position-left: 12%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bubble {
|
||||||
|
position: var(--msg-position);
|
||||||
|
right: var(--msg-right);
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
width: 200px;
|
||||||
|
background: var(--chat-bg-color);
|
||||||
|
border-radius: 40px;
|
||||||
|
padding: 20px;
|
||||||
|
text-align: center;
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bubble-bottom-left:before {
|
||||||
|
content: "";
|
||||||
|
width: 0px;
|
||||||
|
height: 0px;
|
||||||
|
position: absolute;
|
||||||
|
border-right: var(--msg-border-right);
|
||||||
|
border-left: var(--msg-border-left);
|
||||||
|
border-top: 12px solid var(--chat-bg-color) fff;
|
||||||
|
border-bottom: 25px solid transparent;
|
||||||
|
left: var(--msg-border-position-left);
|
||||||
|
right: var(--msg-border-position-right);
|
||||||
|
bottom: -24px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
@ -0,0 +1,19 @@
|
|||||||
|
<script setup>
|
||||||
|
import Keyboard from "./Keyboard.vue";
|
||||||
|
import ChatHistory from "./ChatHistory.vue";
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<ChatHistory />
|
||||||
|
<v-if="writeMessage" Keyboard />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
setup() {},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped></style>
|
Loading…
Reference in New Issue