-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrenderer.js
49 lines (43 loc) · 1.32 KB
/
renderer.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
const axios = require('axios')
$(() => {
$('[name="cep"]').keyup(function(event) {
let cep = this.value
if (cep.length >= 8) {
axios(`https://viacep.com.br/ws/${cep}/json/`)
.then(res => {
if (res.data.erro) return $('#resultado').html(renderFail(cep))
$('#resultado').html(renderResult(res.data))
})
.catch(err => $('#resultado').html(renderFail(cep)))
} else {
$('#resultado').html('')
}
})
})
let renderResult = local => {
return `<div class="card bg-light" style="opacity: .8">
<div class="card-header">${local.localidade} - ${local.cep}</div>
<div class="card-body">
<h5 class="card-title">${local.localidade} - ${local.uf}</h5>
<p class="card-text">IBGE: ${local.ibge}</p>
</div>
</div>`
}
let renderFail = (value) => {
return `<div class="card bg-warning text-light" style="opacity: .8">
<div class="card-header">Opss!</div>
<div class="card-body">
<h5 class="card-title">Não achei isso 😅</h5>
<p class="card-text">Tem certeza que é ${value} ?</p>
</div>
</div>`
}
let inputWord = (key) => {
return `<div class="card bg-danger text-light" style="opacity: .8">
<div class="card-header">O que é isso?</div>
<div class="card-body">
<h5 class="card-title">CEP não tem letras!</h5>
<p class="card-text">O que quer com esse letra: ${key} ?</p>
</div>
</div>`
}