blob: 1dce00f13b87eb877897681ed85e87e180ab606e [file] [log] [blame]
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -05001body {
Adrien Beraud8e25afb2017-04-19 01:38:57 +02002 margin: 0;
AmarOkb4253242017-07-13 11:21:39 -04003 overflow: hidden;
Adrien Beraud8e25afb2017-04-19 01:38:57 +02004}
5
6#container {
7 position: relative;
8 height: 100%;
9 width: 100%;
AmarOkb4253242017-07-13 11:21:39 -040010 display: flex;
11 flex-direction: column;
12 margin: 0;
13 padding: 0;
AmarOkd55d85e2017-07-14 09:44:05 -040014 justify-content: flex-end;
Adrien Beraud8e25afb2017-04-19 01:38:57 +020015}
16
17#messages {
AmarOkb4253242017-07-13 11:21:39 -040018 position: relative;
AmarOkb4253242017-07-13 11:21:39 -040019 z-index: 0;
Adrien Beraud8e25afb2017-04-19 01:38:57 +020020 width: 100%;
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -050021 overflow-y: scroll;
AmarOkb4253242017-07-13 11:21:39 -040022 height: auto;
AmarOkd55d85e2017-07-14 09:44:05 -040023 max-height: calc(100% - 50px);
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -050024}
25
AmarOkb4253242017-07-13 11:21:39 -040026#sendMessage {
27 display: flex;
AmarOkb4253242017-07-13 11:21:39 -040028 position: relative;
AmarOkb4253242017-07-13 11:21:39 -040029 border-top : 2px solid #d3d3d3;
AmarOk6286ad42017-07-14 12:11:08 -040030 margin-left: 10px;
31 margin-right: 10px;
32 padding-left: 8px;
33 overflow: hidden;
34 padding-top: 8px;
35 padding-bottom: 8px;
36 align-items: center;
37
AmarOkb4253242017-07-13 11:21:39 -040038}
39
40#message {
AmarOkd55d85e2017-07-14 09:44:05 -040041 flex: 1;
AmarOk6286ad42017-07-14 12:11:08 -040042 margin-right: 10px;
43 border: 0;
44 overflow-y: scroll;
45 color: black;
46 max-height: 150px;
47 padding-left: 8px;
48 resize: none;
AmarOkb4253242017-07-13 11:21:39 -040049}
50
51#message:focus,
52#message.focus {
AmarOkb4253242017-07-13 11:21:39 -040053 outline: none;
54}
55
56input[placeholder], [placeholder], *[placeholder] {
57 color: #d3d3d3;
58}
59
60#sendBtn {
61 border-radius: 50%;
62 border: 0;
63 width: 40px;
64 height: 40px;
AmarOk6286ad42017-07-14 12:11:08 -040065 align-self: center;
AmarOkb4253242017-07-13 11:21:39 -040066 transition: all 0.3s ease;
67}
68
69#sendBtn.hover,
70#sendBtn:hover {
71 background: #bae5f0;
72}
73
74#sendBtn.hover svg,
75#sendBtn:hover svg {
76 fill: black;
77}
78
79#sendMessage svg {
80 fill: #666;
81 padding: 5px;
82 width: 100%;
83 height: 100%;
84 transition: all 0.3s ease;
85}
86
87
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -050088.wc {
89 will-change: transform;
90}
91
aviau32b8dd62016-11-02 00:36:57 -040092.status_circle {
93 fill: #A0A0A0;
94 -webkit-animation: circle-dance;
95 -webkit-animation-duration: 0.8s;
96 -webkit-animation-iteration-count: infinite;
97 -webkit-animation-direction: alternate;
98 -webkit-animation-timing-function: ease-in-out;
99}
100
101.anim-first {
102 -webkit-animation-delay: 0.7s;
103}
104
105.anim-second {
106 -webkit-animation-delay: 0.9s;
107}
108
109.anim-third {
110 -webkit-animation-delay: 1.1s;
111}
112
113@-webkit-keyframes circle-dance {
114 0%,50% {
115 -webkit-transform: translateY(0);
116 fill: #A0A0A0;
117 }
118 100% {
119 -webkit-transform: translateY(-8px);
120 fill: #000;
121 }
122}
123
124.status-check {
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -0500125 stroke-dasharray: 17;
126 stroke-dashoffset: 17;
127 -webkit-animation: dash-check;
128 -webkit-animation-duration: 0.4s;
129 -webkit-animation-delay: 0.7s;
130 -webkit-animation-fill-mode: forwards;
131 -webkit-animation-timing-function: ease-in-out;
132 display: none;
133}
134
135.message--sent .status-check {
136 display: inline-block;
aviau32b8dd62016-11-02 00:36:57 -0400137}
138
139@-webkit-keyframes dash-check{
140 from {
141 stroke-dashoffset: 17;
142 }
143 to {
144 stroke-dashoffset: 0;
145 }
146}
147
148.status-x {
149 stroke-dasharray: 12;
150 stroke-dashoffset: 12;
151 -webkit-animation: dash-x;
152 -webkit-animation-duration: 0.2s;
153 -webkit-animation-fill-mode: forwards;
154 -webkit-animation-timing-function: ease-in-out;
155}
156
157.x-first {
158 -webkit-animation-delay: 0.7s;
159}
160
161.x-second {
162 -webkit-animation-delay: 0.9s;
163}
164
165@-webkit-keyframes dash-x{
166 from {
167 stroke-dashoffset: 12;
168 }
169 to {
170 stroke-dashoffset: 0;
171 }
172}
173
174.message_wrapper {
175 transform: scale(0);
176 max-width: 50%;
177 margin: 10px 0;
178 display: inline-block;
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -0500179 padding: 10px;
aviau32b8dd62016-11-02 00:36:57 -0400180 border-radius: 10px;
181 position: relative;
182 -webkit-animation: talk;
183 -webkit-animation-duration: 0.3s;
184 -webkit-animation-delay: 0.1s;
185 -webkit-animation-fill-mode: forwards;
186 -webkit-animation-timing-function: ease-in-out;
187}
188
189.message {
190 font: 0.875em "Open sans",Helvetica,"Segoe UI",sans-serif;
191 margin: 0;
192 display: flex;
193 justify-content: flex-start;
194 align-items: top;
195 overflow: hidden;
196}
197
AmarOk6286ad42017-07-14 12:11:08 -0400198pre {
199 font : inherit;
200 font-family : inherit;
201 font-size : inherit;
202 font-style : inherit;
203 font-variant : inherit;
204 font-weight : inherit;
205 margin: 0;
206 padding: 0;
207}
208
aviau32b8dd62016-11-02 00:36:57 -0400209.message_out {
210 flex-direction: row-reverse;
211}
212
213.message_sender {
214 display: none;
215}
216
217.sender_image {
218 border-radius: 50%;
219 transition: transform 0.2s ease-in-out;
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -0500220 margin: 10px;
aviau32b8dd62016-11-02 00:36:57 -0400221}
222
223.message_in .sender_image {
224 -webkit-animation-name: enter-stage-left;
225 -webkit-animation-duration: 0.2s;
226 -webkit-animation-timing-function: ease-in-out;
227}
228
229.message_out .sender_image {
230 -webkit-animation-name: enter-stage-right;
231 -webkit-animation-duration: 0.2s;
232 -webkit-animation-timing-function: ease-in-out;
233}
234
235@-webkit-keyframes enter-stage-left {
236 from {
237 transform: translateX(-100%);
238 }
239 to {
240 transform: translateX(0);
241 }
242}
243
244@-webkit-keyframes enter-stage-right {
245 from {
246 transform: translateX(100%);
247 }
248 to {
249 transform: translateX(0);
250 }
251}
252
253.message_out > .message_wrapper {
AmarOkb4253242017-07-13 11:21:39 -0400254 background-color: #cfebf5;
aviau32b8dd62016-11-02 00:36:57 -0400255 border-top-right-radius: 0;
256 transform-origin: top right;
257}
258
259.message_out + .message_out > .message_wrapper {
260 border-top-right-radius: 10px;
261}
262
263.message_in > .message_wrapper {
264 background-color: #DEDEE0;
265 border-top-left-radius: 0;
266 transform-origin: top left;
267}
268
269.message_in + .message_in > .message_wrapper {
270 border-top-left-radius: 10px;
271}
272
273.message_timestamp {
274 font-size: 0.8em;
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -0500275 margin-top: 0.5em;
aviau32b8dd62016-11-02 00:36:57 -0400276 opacity: 1;
277 transition: opacity 0.5s ease-in-out;
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -0500278 line-height: 1em;
279 display: inline-block;
280}
281
282.sent-checkmark {
283 margin-left: 0.313em;
aviau32b8dd62016-11-02 00:36:57 -0400284}
285
286.message_in .message_timestamp {
287 color: #9E9E9E;
288}
289
290@-webkit-keyframes fade-in {
291 from {
292 opacity: 0;
293 }
294 to {
295 opacity: 1;
296 }
297}
298
299.message_text {
300 word-wrap: break-word;
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -0500301 display: block;
aviau32b8dd62016-11-02 00:36:57 -0400302}
303
304@-webkit-keyframes talk {
305 from {
306 transform: scale(0);
307 }
308 to {
309 transform: scale(1);
310 }
311}
312
313.message_in > .message_wrapper:before {
314 content: "";
315 width: 10px;
316 height: 10px;
317 position: absolute;
318 left: -10px;
319 top: 0;
320 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E %3Cpath d= 'M10,0 L0,0 C10,0 10,10 10,10' fill='%23DEDEE0'/%3E %3C/svg%3E");
321 transform-origin: top left;
322}
323
324.message_in + .message_in > .message_wrapper:before {
325 display: none;
326}
327
328.message_out + .message_out > .message_wrapper:after {
329 display: none;
330}
331
332.message_out > .message_wrapper:after {
333 content: "";
334 width: 10px;
335 height: 10px;
336 position: absolute;
337 right: -10px;
338 top: 0;
AmarOkb4253242017-07-13 11:21:39 -0400339 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E %3Cpath d= 'M0,0 L10,0 C0,0 0,10 0,10' fill='%23cfebf5'/%3E %3C/svg%3E");
aviau32b8dd62016-11-02 00:36:57 -0400340 transform-origin: top right;
341}
342
343.message_delivery_status {
344 margin: 10px 10px;
345 color: #A0A0A0;
346 opacity: 0;
347 -webkit-animation-name: fade-in;
348 -webkit-animation-duration: 0.2s;
349 -webkit-animation-timing-function: ease-in-out;
350 -webkit-animation-delay: 0.4s;
351 -webkit-animation-fill-mode: forwards;
352 transition: opacity 0.5s ease-in-out;
353}
354
355.message_in + .message_in .sender_image {
356 opacity: 0;
357}
358
359.message_out + .message_out .sender_image {
360 opacity: 0;
361}