forked from M3-Academy/m3-academy-template-checkout
development #4
@ -7,29 +7,109 @@ export default class Footer {
|
||||
|
||||
async init() {
|
||||
await this.selectors();
|
||||
// this.onUpdate();
|
||||
this.onUpdate();
|
||||
/*await this.pegarInfo(
|
||||
"https://m3academy.myvtex.com/api/catalog_system/pub/products/search/?fq=productClusterIds:319"
|
||||
);*/
|
||||
await this.renderIconCreditCards();
|
||||
await this.renderIconVtexPci();
|
||||
await this.renderIconsDeveloped();
|
||||
|
||||
await this.trocaTitle();
|
||||
await this.trocaFrete();
|
||||
await this.trocaUnidade();
|
||||
await this.trocaNotiCliente();
|
||||
/*await this.trocaNoCep();*/
|
||||
await this.trocaIdentificao();
|
||||
this.events();
|
||||
}
|
||||
|
||||
async selectors() {
|
||||
//Para verificar se o carrinho está vazio e remover a prateleira de produtos:
|
||||
// vocês devem olhar a doc fornecida no Desafio para aprender a usar o waitElement
|
||||
this.checkoutVazio = await waitElement(".empty-cart-content");
|
||||
this.tituloCarrinho = await waitElement("#cart-title");
|
||||
this.footerIconsCreditCards = await waitElement(".footerCheckout__payments");
|
||||
this.footerIconVtexPci = await waitElement(".footerCheckout__vtexpci");
|
||||
this.footerIconsDeveloped = await waitElement(".footerCheckout__developedBy");
|
||||
this.titleCart = await waitElement(".empty-cart-title");
|
||||
this.subTitleCart = await waitElement(".empty-cart-message");
|
||||
this.buttonCart = await waitElement("#cart-choose-products");
|
||||
this.prateleiraInfoCards = await waitElement(".footerCheckout__prateleira");
|
||||
this.freteCarrinho = await waitElement(".shipping-date");
|
||||
this.unidadeCarrinho = await waitElement(".product-price");
|
||||
this.notiCliente = await waitElement(".client-notice");
|
||||
this.identificacaoUser = await waitElement(
|
||||
"#client-profile-data > div > div.accordion-heading > span > span",
|
||||
0
|
||||
);
|
||||
/*
|
||||
Cep bugou o programa, não tem nada de diferente que fiz dos outros métodos.
|
||||
this.noCep = await waitElement(
|
||||
"#shipping-preview-container > div > div > div.vtex-shipping-preview-0-x-pc.srp-postal-code > form > div > p > small > a",
|
||||
0
|
||||
);*/
|
||||
}
|
||||
events() {
|
||||
window.addEventListener("hashchange", () => {
|
||||
this.onUpdate();
|
||||
if (window.location.hash == "#/cart" && this.checkoutVazio.style.display == "none") {
|
||||
this.listaInfocards.style.display = "flex";
|
||||
//this.slickOn();
|
||||
}
|
||||
if (window.location.hash != "#/cart") {
|
||||
this.listaInfocards.style.display = "none";
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
onUpdate() {
|
||||
//Função qeu fará a verificação se o carrinho está vazio para remover a prateleira de produtos:
|
||||
// vocês devem olhar a doc fornecida no Desafio para aprender a usar a MutationObserver
|
||||
// sempre que o carrinho estiver vazio o elemento chcekoutVazio fica display: none e isso pode ser usado como atributo para a MutationObserver
|
||||
let target = this.checkoutVazio;
|
||||
let prateleiraItens = this.prateleiraInfoCards;
|
||||
let titulo = this.tituloCarrinho;
|
||||
if (target.style.display == "none" && window.location.hash == "#/cart") {
|
||||
titulo.style.display = "block";
|
||||
this.pegarInfo(
|
||||
"https://m3academy.myvtex.com/api/catalog_system/pub/products/search/?fq=productClusterIds:319"
|
||||
);
|
||||
prateleiraItens.style.display = "flex";
|
||||
this.slickOn();
|
||||
} else {
|
||||
titulo.style.display = "none";
|
||||
prateleiraItens.style.display = "none";
|
||||
}
|
||||
|
||||
let config = { childList: true, attributes: true };
|
||||
let observer = new MutationObserver((mutations) => {
|
||||
this.pegarInfo(
|
||||
"https://m3academy.myvtex.com/api/catalog_system/pub/products/search/?fq=productClusterIds:319"
|
||||
);
|
||||
//console.log("oi", mutations);
|
||||
mutations.forEach(function (mutation) {
|
||||
console.log(mutation.type);
|
||||
console.log("oi", mutation);
|
||||
if (target.style.display != "none") {
|
||||
//this.slickOff();
|
||||
prateleiraItens.style.display = "none";
|
||||
titulo.style.display = "none";
|
||||
} else {
|
||||
prateleiraItens.style.display = "flex";
|
||||
//this.slickOn();
|
||||
titulo.style.display = "block";
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
observer.observe(target, config);
|
||||
}
|
||||
ligaDesligaElementos(observado) {
|
||||
if (observado.style.display === "none") {
|
||||
observado.style.display = "block";
|
||||
} else {
|
||||
observado.style.display = "none";
|
||||
}
|
||||
}
|
||||
async addCarrossel() {
|
||||
const elemento = await waitElement("#my-element");
|
||||
$(elemento).slick({
|
||||
@ -37,4 +117,109 @@ export default class Footer {
|
||||
slidesToScroll: 1,
|
||||
});
|
||||
}
|
||||
produtos(data) {
|
||||
return {
|
||||
imagem: data["items"][0]["images"][0]["imageUrl"],
|
||||
link: data["link"],
|
||||
nome: data["productName"],
|
||||
tamanho: data["items"].map((val) => val["name"]),
|
||||
};
|
||||
}
|
||||
|
||||
async pegarInfo(url) {
|
||||
const response = await fetch(url);
|
||||
//console.log(response);
|
||||
const data = await response.json();
|
||||
//console.log(data);
|
||||
const Items = data.map((val) => this.produtos(val));
|
||||
console.log(Items);
|
||||
await this.renderInfoCards(Items);
|
||||
}
|
||||
estruturaInfoCard(items) {
|
||||
let listaInfocards = ``;
|
||||
for (const i of items) {
|
||||
const elem = `<li class="infoCard">
|
||||
<img class="infoCard__image" src="${i["imagem"]}" /><p class="infoCard__text">${
|
||||
i["nome"]
|
||||
}</p>
|
||||
${this.tamanhosProdutos(i["tamanho"], i["link"])}
|
||||
<a class="infoCard__link" href="${i["link"]}">VER PRODUTO</a></li>`;
|
||||
listaInfocards += elem;
|
||||
}
|
||||
return listaInfocards;
|
||||
}
|
||||
tamanhosProdutos(tam, link) {
|
||||
let listaTamanhos = `<ul class="infoCard__tamanhos">`;
|
||||
for (const n of tam) {
|
||||
const nums = `<li class=infoCard__tamanho><a class=infoCard__tamanho__link href="${link}">${n}</a></li>`;
|
||||
listaTamanhos += nums;
|
||||
}
|
||||
listaTamanhos += `</ul>`;
|
||||
return listaTamanhos;
|
||||
}
|
||||
|
||||
async renderInfoCards(Items) {
|
||||
this.prateleiraInfoCards.innerHTML = `<h2 class="prateleira__subtitle">Você também pode gostar:</h2><ul class="infoCards">${this.estruturaInfoCard(
|
||||
Items
|
||||
)}</ul>`;
|
||||
this.slickOn();
|
||||
}
|
||||
|
||||
renderIconCreditCards() {
|
||||
this.footerIconsCreditCards.innerHTML = `
|
||||
<img class="IconCredImg" src="https://agenciamagma.vteximg.com.br/arquivos/masterCardM3Academy.png" />
|
||||
<img class="IconCredImg" src="https://agenciamagma.vteximg.com.br/arquivos/visaM3Academy.png" />
|
||||
<img class="IconCredImg" src="https://agenciamagma.vteximg.com.br/arquivos/amexM3Academy.png" />
|
||||
<img class="IconCredImg" src="https://agenciamagma.vteximg.com.br/arquivos/eloM3Academy.png" />
|
||||
<img class="IconCredImg" src="https://agenciamagma.vteximg.com.br/arquivos/hiperCardM3Academy.png" />
|
||||
<img class="IconCredImg" src="https://agenciamagma.vteximg.com.br/arquivos/payPalM3Academy.png" />
|
||||
<img class="IconCredImg" src="https://agenciamagma.vteximg.com.br/arquivos/boletoM3Academy.png" />`;
|
||||
}
|
||||
|
||||
renderIconVtexPci() {
|
||||
this.footerIconVtexPci.innerHTML = `<img class="IconVtexImg" src="https://agenciamagma.vteximg.com.br/arquivos/vtexPCIM3Academy.png" />`;
|
||||
}
|
||||
|
||||
renderIconsDeveloped() {
|
||||
this.footerIconsDeveloped.innerHTML = `
|
||||
<li><a href="https://vtex.com/br-pt/"><span>Powered By</span><img class="iconDevV" src="https://agenciamagma.vteximg.com.br/arquivos/logoVTEXM3Academy.png"/> </a></li>
|
||||
<li><a href="https://vtex.com/br-pt/"><span>Developed By</span><img class="iconDeveLM3" src="https://agenciamagma.vteximg.com.br/arquivos/logoM3M3Academy.png"/> </a></li>`;
|
||||
}
|
||||
|
||||
trocaTitle() {
|
||||
const tituloCart = document.querySelector(".empty-cart-title");
|
||||
tituloCart.innerHTML = `<h2>SEU CARRINHO ESTÁ VAZIO</h2>`;
|
||||
this.subTitleCart.innerHTML = `<p></p>`;
|
||||
this.buttonCart.innerHTML = `Continuar comprando`;
|
||||
}
|
||||
trocaFrete() {
|
||||
this.freteCarrinho.innerHTML = `Frete`;
|
||||
}
|
||||
trocaUnidade() {
|
||||
this.unidadeCarrinho.innerHTML = `Unidade`;
|
||||
}
|
||||
|
||||
trocaNotiCliente() {
|
||||
this.notiCliente.innerHTML = ``;
|
||||
}
|
||||
/*
|
||||
async trocaNoCep() {
|
||||
this.noCep.innerHTML = `Não sei meu código postal`;
|
||||
}*/
|
||||
|
||||
trocaIdentificao() {
|
||||
this.identificacaoUser.innerHTML = `Identificação`;
|
||||
}
|
||||
//slick
|
||||
slickOn() {
|
||||
$(".infoCards").slick({
|
||||
dots: false,
|
||||
infinite: true,
|
||||
slidesToShow: 3,
|
||||
slidesToScroll: 1,
|
||||
});
|
||||
}
|
||||
slickOff() {
|
||||
$(".infoCards").slick("unslick");
|
||||
}
|
||||
}
|
||||
|
@ -8,14 +8,103 @@ export default class Header {
|
||||
|
||||
async init() {
|
||||
await this.selectors();
|
||||
console.log(this.item);
|
||||
//console.log(this.item);
|
||||
this.progressBarHTML();
|
||||
await this.progressBarProgress();
|
||||
}
|
||||
|
||||
async selectors() {
|
||||
/*
|
||||
this.item = await waitElement("#my-element", {
|
||||
//#my-element pode ser a class ou o id do elemento html qeu vocÊ quer pegar
|
||||
timeout: 5000, // vai esperar 5 segundos antes de rejeitar a promise
|
||||
interval: 1000, // vai verificar a cada 1 segundo se o elemento existe
|
||||
});
|
||||
});*/
|
||||
this.header = await waitElement(".headerCheckout");
|
||||
this.progressBar = await waitElement("#progressBar");
|
||||
}
|
||||
progressBarHTML() {
|
||||
if (this.progressBar && window.innerWidth > 1024) {
|
||||
this.progressBar.innerHTML = `
|
||||
<ul>
|
||||
<li>
|
||||
<div class="containerLi"><div><p class="progress-bar-text">Meu Carrinho</p><p id="progress-bar-circle-1" class="progress-bar-circle-1"></p><p id="progress-bar-line-1" class="progress-bar-line-1"></p></div></div> </li>
|
||||
|
||||
<li>
|
||||
<div class="containerLi"><div><p class="progress-bar-text">Dados Pessoais</p><p id="progress-bar-circle-2" class="progress-bar-circle-2"></p></div></div></li>
|
||||
|
||||
<li>
|
||||
<div class="containerLi"><div><p class="progress-bar-text">Pagamento</p><p id="progress-bar-circle-3" class="progress-bar-circle-3"></p><p id="progress-bar-line-2" class="progress-bar-line-2"></p></div></div> </li>
|
||||
</ul>
|
||||
`;
|
||||
}
|
||||
if (this.progressBar && window.innerWidth <= 1024) {
|
||||
this.progressBar.innerHTML = ``;
|
||||
}
|
||||
}
|
||||
|
||||
async progressBarProgress() {
|
||||
if (this.progressBar && window.innerWidth > 1024) {
|
||||
const progressBarLista = document.querySelectorAll("#progressBar ul li");
|
||||
progressBarLista.forEach((li) => {
|
||||
if (window.location.href === "https://m3academy.myvtex.com/checkout/#/cart") {
|
||||
this.trataPonto(li, 1);
|
||||
} else if (
|
||||
window.location.href === "https://m3academy.myvtex.com/checkout/#/email" ||
|
||||
window.location.href == "https://m3academy.myvtex.com/checkout/#/profile" ||
|
||||
window.location.href == "https://m3academy.myvtex.com/checkout/#/shipping"
|
||||
) {
|
||||
this.trataPonto(li, 2);
|
||||
} else if (
|
||||
window.location.href === "https://m3academy.myvtex.com/checkout/#/payment"
|
||||
) {
|
||||
this.trataPonto(li, 3);
|
||||
}
|
||||
window.addEventListener("hashchange", () => {
|
||||
if (window.location.hash == "#/cart") {
|
||||
this.trataPonto(li, 1);
|
||||
} else if (
|
||||
window.location.hash == "#/email" ||
|
||||
window.location.hash == "#/profile" ||
|
||||
window.location.hash == "#/shipping"
|
||||
) {
|
||||
this.trataPonto(li, 2);
|
||||
} else if (window.location.hash == "#/payment") {
|
||||
this.trataPonto(li, 3);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
marcarPonto(li, local) {
|
||||
if (li.children[0].children[0].children["progress-bar-circle-" + local]) {
|
||||
li.children[0].children[0].children["progress-bar-circle-" + local].classList.add(
|
||||
"active"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
removerPonto(li, local) {
|
||||
if (li.children[0].children[0].children["progress-bar-circle-" + local]) {
|
||||
if (
|
||||
li.children[0].children[0].children[
|
||||
"progress-bar-circle-" + local
|
||||
].classList.contains("active")
|
||||
) {
|
||||
li.children[0].children[0].children[
|
||||
"progress-bar-circle-" + local
|
||||
].classList.remove("active");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
trataPonto(li, local) {
|
||||
const indice = [1, 2, 3];
|
||||
let indicesPontoBranco = indice.splice(local - 1, 1);
|
||||
this.marcarPonto(li, local);
|
||||
for (const i of indice) {
|
||||
this.removerPonto(li, i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,289 +1,366 @@
|
||||
.checkout-container {
|
||||
.client-pre-email {
|
||||
border-color: $color-gray4;
|
||||
font-family: $font-family;
|
||||
padding-top: 8px;
|
||||
.client-pre-email {
|
||||
border-color: $color-gray4;
|
||||
font-family: $font-family;
|
||||
padding-top: 8px;
|
||||
|
||||
.link-cart {
|
||||
a {
|
||||
color: $color-black;
|
||||
font-size: 14px;
|
||||
.link-cart {
|
||||
a {
|
||||
font-family: $font-family-secundary;
|
||||
font-weight: 400;
|
||||
color: $color-black;
|
||||
font-size: 14px;
|
||||
text-transform: uppercase;
|
||||
&:hover {
|
||||
color: lighen($color-black, 10);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: lighen($color-black, 10);
|
||||
}
|
||||
}
|
||||
}
|
||||
.pre-email {
|
||||
flex-direction: column;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
.pre-email {
|
||||
flex-direction: column;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
h3 {
|
||||
margin-bottom: 16px;
|
||||
|
||||
h3 {
|
||||
margin-bottom: 16px;
|
||||
span {
|
||||
font-family: $font-family-secundary;
|
||||
color: $color-black-100;
|
||||
font-size: 24px;
|
||||
font-weight: 400;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
span {
|
||||
color: #303030;
|
||||
font-size: 24px;
|
||||
}
|
||||
small {
|
||||
font-family: $font-family-secundary;
|
||||
color: $color-black-100;
|
||||
font-size: 24px;
|
||||
font-weight: 400;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
small {
|
||||
color: $color-gray4;
|
||||
}
|
||||
}
|
||||
}
|
||||
.client-email {
|
||||
margin: 0 0 16px;
|
||||
|
||||
.client-email {
|
||||
margin: 0 0 16px;
|
||||
input {
|
||||
box-shadow: none;
|
||||
color: $color-black-100;
|
||||
font-family: $font-family;
|
||||
padding: 0 16px;
|
||||
font-size: 12px;
|
||||
border: 1px solid $color-black-100;
|
||||
border-radius: 5px 8px 8px 5px;
|
||||
box-sizing: border-box;
|
||||
|
||||
input {
|
||||
box-shadow: none;
|
||||
color: $color-black;
|
||||
font-family: $font-family;
|
||||
padding: 0 16px;
|
||||
border: 2px solid $color-gray3;
|
||||
box-sizing: border-box;
|
||||
border-radius: 5px;
|
||||
&:placeholder {
|
||||
color: $color-black-100;
|
||||
}
|
||||
|
||||
@media (max-width: 490px) {
|
||||
width: auto;
|
||||
}
|
||||
}
|
||||
@media (max-width: 490px) {
|
||||
width: auto;
|
||||
}
|
||||
}
|
||||
|
||||
button {
|
||||
background-color: $color-black;
|
||||
border-radius: 5px;
|
||||
border: none;
|
||||
font-family: $font-family;
|
||||
height: 54px;
|
||||
right: 0;
|
||||
top: 0;
|
||||
button {
|
||||
background-color: $color-blue-300;
|
||||
border-radius: 0px 8px 8px 0px;
|
||||
border: none;
|
||||
color: $color-black-100;
|
||||
font-weight: 700;
|
||||
font-family: $font-family;
|
||||
height: 54px;
|
||||
right: 0;
|
||||
top: 0;
|
||||
text-transform: uppercase;
|
||||
&:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
@media (max-width: 490px) {
|
||||
height: 48px;
|
||||
margin: 0;
|
||||
position: absolute;
|
||||
}
|
||||
}
|
||||
@media (max-width: 490px) {
|
||||
height: 48px;
|
||||
margin: 0;
|
||||
position: absolute;
|
||||
}
|
||||
}
|
||||
|
||||
span.help.error {
|
||||
color: red;
|
||||
}
|
||||
}
|
||||
span.help.error {
|
||||
font-family: $font-family;
|
||||
color: $color-red;
|
||||
font-size: 12px;
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
|
||||
.emailInfo {
|
||||
padding: 16px;
|
||||
background-color: $color-white;
|
||||
border: 1px solid $color-gray4;
|
||||
border-radius: 0;
|
||||
.emailInfo {
|
||||
margin-top: 31px;
|
||||
padding: 16px;
|
||||
background-color: $color-white;
|
||||
border: 1px solid $color-black-100;
|
||||
border-radius: 5px;
|
||||
|
||||
h3 {
|
||||
color: #303030;
|
||||
margin: 0 0 8px 0;
|
||||
}
|
||||
h3 {
|
||||
color: $color-black-100;
|
||||
font-family: $font-family;
|
||||
font-weight: 700;
|
||||
font-size: 12px;
|
||||
line-height: 16px;
|
||||
margin: 0 0 8px 0;
|
||||
}
|
||||
|
||||
ul {
|
||||
margin: 0;
|
||||
ul {
|
||||
margin: 0;
|
||||
|
||||
li {
|
||||
span {
|
||||
color: $color-black;
|
||||
}
|
||||
li {
|
||||
span {
|
||||
color: $color-black;
|
||||
font-family: $font-family;
|
||||
font-weight: 700;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
i::before {
|
||||
color: $color-black;
|
||||
font-size: 1rem;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
i::before {
|
||||
color: $color-blue-300;
|
||||
font-size: 1rem;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
i::before {
|
||||
color: $color-black;
|
||||
font-size: 6rem;
|
||||
opacity: 0.5;
|
||||
}
|
||||
}
|
||||
}
|
||||
i::before {
|
||||
color: $color-black;
|
||||
font-size: 6rem;
|
||||
opacity: 0.5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.shipping-data,
|
||||
.payment-data,
|
||||
.client-profile-data {
|
||||
.accordion-group {
|
||||
border-radius: 0;
|
||||
border: 1px solid $color-gray4;
|
||||
font-family: $font-family;
|
||||
padding: 16px;
|
||||
.shipping-data,
|
||||
.payment-data,
|
||||
.client-profile-data {
|
||||
.accordion-group {
|
||||
border-radius: 8px;
|
||||
border: 1px solid $color-gray3;
|
||||
font-family: $font-family;
|
||||
padding: 16px;
|
||||
|
||||
.accordion-heading {
|
||||
span {
|
||||
color: #303030;
|
||||
margin-bottom: 8px;
|
||||
padding: 0;
|
||||
.accordion-heading {
|
||||
span {
|
||||
font-family: $font-family-secundary;
|
||||
color: $color-black;
|
||||
margin-bottom: 8px;
|
||||
font-size: 16px;
|
||||
font-weight: 400;
|
||||
padding: 0;
|
||||
|
||||
i::before {
|
||||
fill: #303030;
|
||||
}
|
||||
}
|
||||
i::before {
|
||||
display: none;
|
||||
fill: white;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
align-items: center;
|
||||
background-color: #303030;
|
||||
border-radius: 8px;
|
||||
border: none;
|
||||
color: $color-white;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 6px 5px 6px 8px;
|
||||
}
|
||||
}
|
||||
a {
|
||||
align-items: center;
|
||||
background-color: $color-white;
|
||||
border-radius: 8px;
|
||||
border: none;
|
||||
color: $color-white;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 6px 5px 6px 8px;
|
||||
.icon-edit {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
background-color: white;
|
||||
color: white;
|
||||
content: url(" https://agenciamagma.vteximg.com.br/arquivos/lapisM3Academy.png");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.accordion-inner {
|
||||
padding: 0;
|
||||
.accordion-inner {
|
||||
padding: 0; /*
|
||||
#opt-in-newsletter {
|
||||
right: 200px;
|
||||
}*/
|
||||
/* General configurations */
|
||||
.newsletter {
|
||||
margin-bottom: 35px;
|
||||
#opt-in-newsletter {
|
||||
width: 18px;
|
||||
height: 20px;
|
||||
margin-right: 8px;
|
||||
position: relative;
|
||||
top: -5px;
|
||||
}
|
||||
.newsletter-text {
|
||||
font-family: $font-family;
|
||||
font-style: normal;
|
||||
font-size: 12px;
|
||||
color: $color-gray100;
|
||||
}
|
||||
}
|
||||
.client-notice {
|
||||
color: $color-black;
|
||||
}
|
||||
|
||||
/* General configurations */
|
||||
p {
|
||||
label {
|
||||
color: $color-gray2;
|
||||
font-family: $font-family;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.client-notice {
|
||||
color: $color-black;
|
||||
}
|
||||
select,
|
||||
input {
|
||||
max-width: 100%;
|
||||
border-radius: 5px;
|
||||
border: 1px solid $color-gray3;
|
||||
box-shadow: none;
|
||||
height: 42px;
|
||||
}
|
||||
|
||||
p {
|
||||
label {
|
||||
color: $color-black;
|
||||
font-weight: 500;
|
||||
}
|
||||
.help.error {
|
||||
color: red;
|
||||
}
|
||||
}
|
||||
|
||||
select,
|
||||
input {
|
||||
border-radius: 0;
|
||||
border: 1px solid $color-gray4;
|
||||
box-shadow: none;
|
||||
}
|
||||
.box-client-info-pj {
|
||||
.link a#is-corporate-client,
|
||||
.link a#not-corporate-client {
|
||||
display: none;
|
||||
color: $color-black;
|
||||
font-weight: 500;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
.help.error {
|
||||
color: red;
|
||||
}
|
||||
}
|
||||
.state-inscription-box span {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.box-client-info-pj {
|
||||
.link a#is-corporate-client,
|
||||
.link a#not-corporate-client {
|
||||
color: $color-black;
|
||||
font-weight: 500;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
button.submit {
|
||||
width: 100%;
|
||||
border: none;
|
||||
font-family: $font-family;
|
||||
font-size: 14px;
|
||||
font-weight: 700;
|
||||
color: $color-white;
|
||||
border-radius: 8px;
|
||||
background: $color-blue-300;
|
||||
margin-top: 8px;
|
||||
outline: none;
|
||||
transition: all 0.2s linear;
|
||||
text-transform: uppercase;
|
||||
|
||||
.state-inscription-box span {
|
||||
font-weight: 500;
|
||||
}
|
||||
&:hover {
|
||||
background: lighten($color-black, 5);
|
||||
}
|
||||
|
||||
button.submit {
|
||||
border: none;
|
||||
border-radius: 5px;
|
||||
background: $color-black;
|
||||
margin-top: 8px;
|
||||
outline: none;
|
||||
transition: all 0.2s linear;
|
||||
&:active {
|
||||
background: darken($color-black, 5);
|
||||
}
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background: lighten($color-black, 5);
|
||||
}
|
||||
/* Shipping configurations */
|
||||
|
||||
&:active {
|
||||
background: darken($color-black, 5);
|
||||
}
|
||||
}
|
||||
.ship-postalCode small a {
|
||||
color: #303030;
|
||||
font-weight: 500;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
/* Shipping configurations */
|
||||
.vtex-omnishipping-1-x-deliveryGroup {
|
||||
p {
|
||||
color: #303030;
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.ship-postalCode small a {
|
||||
color: #303030;
|
||||
font-weight: 500;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.shp-lean {
|
||||
border: 1px solid $color-gray4;
|
||||
border-radius: 0;
|
||||
|
||||
.vtex-omnishipping-1-x-deliveryGroup {
|
||||
p {
|
||||
color: #303030;
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
}
|
||||
label {
|
||||
background-color: $color-white;
|
||||
box-shadow: none;
|
||||
color: #303030;
|
||||
padding: 8px 12px;
|
||||
|
||||
.shp-lean {
|
||||
border: 1px solid $color-gray4;
|
||||
border-radius: 0;
|
||||
svg path {
|
||||
fill: #d8c8ac;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
label {
|
||||
background-color: $color-white;
|
||||
box-shadow: none;
|
||||
color: #303030;
|
||||
padding: 8px 12px;
|
||||
.delivery-address-title {
|
||||
color: #303030;
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
svg path {
|
||||
fill: #d8c8ac;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.shp-summary-group-info {
|
||||
border-color: $color-gray4;
|
||||
}
|
||||
|
||||
.delivery-address-title {
|
||||
color: #303030;
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
}
|
||||
.address-summary {
|
||||
background: none;
|
||||
border-color: $color-gray4;
|
||||
border-radius: 0;
|
||||
color: #303030;
|
||||
padding: 12px;
|
||||
|
||||
.shp-summary-group-info {
|
||||
border-color: $color-gray4;
|
||||
}
|
||||
@include mq(md, max) {
|
||||
background-position: 8px 9px;
|
||||
}
|
||||
|
||||
.address-summary {
|
||||
background: none;
|
||||
border-color: $color-gray4;
|
||||
border-radius: 0;
|
||||
color: #303030;
|
||||
padding: 12px;
|
||||
a {
|
||||
color: #303030;
|
||||
font-weight: 500;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
@include mq(md, max) {
|
||||
background-position: 8px 9px;
|
||||
}
|
||||
.shp-summary-group-price,
|
||||
.shp-summary-package {
|
||||
color: $color-gray4;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #303030;
|
||||
font-weight: 500;
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
.shp-summary-group-price {
|
||||
padding-right: 16px;
|
||||
}
|
||||
|
||||
.shp-summary-group-price,
|
||||
.shp-summary-package {
|
||||
color: $color-gray4;
|
||||
}
|
||||
.shp-summary-package {
|
||||
padding-left: 16px;
|
||||
}
|
||||
|
||||
.shp-summary-group-price {
|
||||
padding-right: 16px;
|
||||
}
|
||||
.vtex-omnishipping-1-x-summaryChange {
|
||||
border-color: #303030;
|
||||
color: #303030;
|
||||
}
|
||||
|
||||
.shp-summary-package {
|
||||
padding-left: 16px;
|
||||
}
|
||||
.vtex-omnishipping-1-x-deliveryChannelsToggle {
|
||||
background-color: #41115d;
|
||||
border: 1px solid #d8c8ac;
|
||||
}
|
||||
|
||||
.vtex-omnishipping-1-x-summaryChange {
|
||||
border-color: #303030;
|
||||
color: #303030;
|
||||
}
|
||||
|
||||
.vtex-omnishipping-1-x-deliveryChannelsToggle {
|
||||
background-color: #d8c8ac;
|
||||
border: 1px solid #d8c8ac;
|
||||
}
|
||||
|
||||
.vtex-omnishipping-1-x-deliveryOptionActive {
|
||||
text-shadow: 1.3px 1px lighten($color-black, 50);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.vtex-omnishipping-1-x-deliveryOptionActive {
|
||||
background: $color-white;
|
||||
font-family: $font-family;
|
||||
color: #41115d;
|
||||
border: 1px solid $color-black;
|
||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
|
||||
border-radius: 100px;
|
||||
text-shadow: 1.3px 1px lighten($color-black, 50);
|
||||
text-transform: uppercase;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -9,7 +9,7 @@ html {
|
||||
}
|
||||
|
||||
footer .footerCheckout__wrapper {
|
||||
width: 94.9734%;
|
||||
width: 100%;
|
||||
margin: auto auto 0 auto;
|
||||
}
|
||||
footer .footerCheckout__prateleira,
|
||||
@ -68,13 +68,14 @@ body {
|
||||
|
||||
#cart-title,
|
||||
#orderform-title {
|
||||
color: $color-gray2;
|
||||
color: $color-black-100;
|
||||
font-family: $font-family;
|
||||
font-weight: 500;
|
||||
font-size: 36px;
|
||||
line-height: 42px;
|
||||
font-weight: 700;
|
||||
font-size: 24px;
|
||||
line-height: 33px;
|
||||
margin: 40px 0 30px;
|
||||
letter-spacing: 0.1em;
|
||||
letter-spacing: 0.05em;
|
||||
|
||||
text-transform: uppercase;
|
||||
|
||||
@include mq(md, max) {
|
||||
|
@ -43,9 +43,10 @@
|
||||
position: relative;
|
||||
left: 0;
|
||||
top: 0;
|
||||
display: block;
|
||||
display: flex;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
gap: 16px;
|
||||
|
||||
&:before,
|
||||
&:after {
|
||||
@ -104,11 +105,16 @@
|
||||
background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-left-mini-M3Academy.svg")
|
||||
no-repeat center center;
|
||||
z-index: 4;
|
||||
left: 10px;
|
||||
left: 23px;
|
||||
line-height: 27px;
|
||||
border: none;
|
||||
}
|
||||
.slick-next {
|
||||
z-index: 4;
|
||||
right: 10px;
|
||||
right: 17px;
|
||||
background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-right-mini-M3Academy.svg");
|
||||
line-height: 27px;
|
||||
border: none;
|
||||
}
|
||||
.slick-arrow.slick-hidden {
|
||||
display: none;
|
||||
|
@ -1,23 +1,141 @@
|
||||
/* _footer.scss */
|
||||
|
||||
.footerCheckout {
|
||||
border-top: none;
|
||||
margin: 0 !important;
|
||||
width: 100% !important;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin-top: 100%;
|
||||
color: $color-gray2;
|
||||
margin-top: auto;
|
||||
|
||||
&__wrapper {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin: 50px 0 0 0 !important;
|
||||
border-top: 1px solid #000000;
|
||||
}
|
||||
.container {
|
||||
padding: 27px 32px 24px 32px;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
|
||||
//margin: 0 0 0 16px !important;
|
||||
}
|
||||
&__prateleira {
|
||||
//display: none;
|
||||
margin: 0 !important;
|
||||
width: 100% !important;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
.prateleira__subtitle {
|
||||
font-size: 24px;
|
||||
font-family: $font-family-secundary;
|
||||
font-weight: 400;
|
||||
color: #000;
|
||||
line-height: 38px;
|
||||
}
|
||||
.infoCards {
|
||||
width: 80%;
|
||||
display: flex;
|
||||
height: 390px;
|
||||
align-items: center;
|
||||
gap: 16px;
|
||||
margin-bottom: 54px;
|
||||
.infoCard {
|
||||
width: 100%;
|
||||
height: 390px;
|
||||
//border: 1px solid #000;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
&__image {
|
||||
min-width: 100%;
|
||||
height: 242px;
|
||||
object-fit: fit;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
&__text {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
margin-top: 20px;
|
||||
margin-bottom: 0;
|
||||
font-family: $font-family;
|
||||
font-size: 13px;
|
||||
color: #000;
|
||||
font-weight: 400;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
&__tamanhos {
|
||||
margin-top: 20px;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
list-style: none;
|
||||
margin-left: 0%;
|
||||
gap: 5px;
|
||||
justify-content: center;
|
||||
}
|
||||
&__tamanho {
|
||||
background-color: $color-blue-300;
|
||||
border-radius: 8px;
|
||||
height: 28px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
&__numero {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
&__link {
|
||||
color: $color-white;
|
||||
margin: 4px;
|
||||
font-family: $font-family;
|
||||
font-size: 13px;
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
&__link {
|
||||
padding: 12px 0;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
height: 17px;
|
||||
margin-top: 17px;
|
||||
font-family: $font-family;
|
||||
font-weight: 700;
|
||||
font-size: 13px;
|
||||
line-height: 18px;
|
||||
color: $color-white;
|
||||
background-color: $color-blue-300;
|
||||
border-radius: 8px;
|
||||
|
||||
&::hoover {
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&__address {
|
||||
color: $color-gray2;
|
||||
color: $color-black;
|
||||
font-family: $font-family;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-size: 10px;
|
||||
line-height: 12px;
|
||||
text-transform: capitalize;
|
||||
max-width: 40%;
|
||||
width: 269px;
|
||||
margin-right: 45px;
|
||||
&:span {
|
||||
width: 269px;
|
||||
}
|
||||
|
||||
@include mq(md, max) {
|
||||
margin-bottom: 24px;
|
||||
@ -26,14 +144,21 @@
|
||||
}
|
||||
|
||||
&__stamps {
|
||||
width: 31.56%;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-self: center;
|
||||
list-style: none;
|
||||
margin-right: 166px;
|
||||
flex-direction: row;
|
||||
//margin-right: 189px;
|
||||
|
||||
ul {
|
||||
margin: 0 0 0 0 !important;
|
||||
}
|
||||
@include mq(md, max) {
|
||||
align-self: center;
|
||||
margin-bottom: 12px;
|
||||
//margin-bottom: 12px;
|
||||
}
|
||||
|
||||
&__divider {
|
||||
@ -43,19 +168,31 @@
|
||||
margin: 0 8px;
|
||||
width: 1px;
|
||||
}
|
||||
&__payments {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
.IconCredImg {
|
||||
width: 12.25%;
|
||||
}
|
||||
.IconVtexImg {
|
||||
width: 87%;
|
||||
}
|
||||
}
|
||||
|
||||
&__developedBy {
|
||||
width: 26.6%;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
|
||||
li:last-child {
|
||||
margin-left: 16px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
a {
|
||||
width: 120px;
|
||||
align-items: center;
|
||||
color: $color-gray2;
|
||||
display: flex;
|
||||
@ -69,6 +206,69 @@
|
||||
span {
|
||||
margin-right: 8px;
|
||||
}
|
||||
.iconDevV {
|
||||
width: 30.65%;
|
||||
}
|
||||
.iconDeveLM3 {
|
||||
width: 30.65%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/*Cart*/
|
||||
.cart-items th {
|
||||
font-family: $font-family-secundary !important;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
color: $color-black;
|
||||
}
|
||||
.cart-template .cart-items td.quantity .icon-plus-sign:before {
|
||||
color: $color-blue-300;
|
||||
}
|
||||
/*
|
||||
.product {
|
||||
font-family: $font-family-secundary;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
line-height: 16px;
|
||||
color: $color-black;
|
||||
}*/
|
||||
/*CSS Body*/
|
||||
.container-cart {
|
||||
#cart-title {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.empty-cart-content {
|
||||
display: flex;
|
||||
margin-top: 170px;
|
||||
.empty-cart-title {
|
||||
margin: 0 !important;
|
||||
h2 {
|
||||
font-family: $font-family;
|
||||
font-weight: 700;
|
||||
font-size: 24px;
|
||||
line-height: 33px;
|
||||
}
|
||||
}
|
||||
.empty-cart-links {
|
||||
margin-top: 32px;
|
||||
#cart-choose-products {
|
||||
margin: 0;
|
||||
padding: 16px 64px;
|
||||
background-color: $color-white;
|
||||
color: $color-black;
|
||||
border: 1px solid #000;
|
||||
font-family: $font-family-secundary;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
&:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,15 +1,110 @@
|
||||
/* _header.scss */
|
||||
.headerCheckout {
|
||||
margin: 0 !important;
|
||||
width: 100% !important;
|
||||
.container {
|
||||
width: auto !important;
|
||||
margin: 0 !important;
|
||||
width: 100% !important;
|
||||
|
||||
&::after {
|
||||
margin: 30px 0 0 0;
|
||||
width: 100%;
|
||||
transform: translateY(-50%);
|
||||
height: 1px;
|
||||
border-bottom: 1px solid #000000;
|
||||
}
|
||||
|
||||
#progressBar {
|
||||
width: 446px;
|
||||
ul {
|
||||
list-style-type: none;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin: 0 !important;
|
||||
}
|
||||
li .containerLi {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
}
|
||||
li.central .containerLi {
|
||||
align-items: center;
|
||||
margin-left: 7px;
|
||||
}
|
||||
li:last-child .containerLi {
|
||||
align-items: flex-end;
|
||||
}
|
||||
li .containerLi div {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
li {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
li.central {
|
||||
width: auto;
|
||||
}
|
||||
li #progress-bar-circle-1,
|
||||
li #progress-bar-circle-2,
|
||||
li #progress-bar-circle-3 {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
border: 1px solid #000;
|
||||
border-radius: 50%;
|
||||
@media (min-width: 2500px) {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
}
|
||||
}
|
||||
li #progress-bar-circle-1.active,
|
||||
li #progress-bar-circle-2.active,
|
||||
li #progress-bar-circle-3.active {
|
||||
border: none;
|
||||
background-color: #000;
|
||||
}
|
||||
li .progress-bar-line-1 {
|
||||
position: absolute;
|
||||
left: 58%;
|
||||
transform: translateY(-50%);
|
||||
bottom: 4px;
|
||||
width: 176px;
|
||||
height: 1px;
|
||||
border-top: 1px solid #000;
|
||||
}
|
||||
li .progress-bar-line-2 {
|
||||
position: absolute;
|
||||
right: 60%;
|
||||
transform: translateY(-50%);
|
||||
bottom: 4px;
|
||||
width: 171px;
|
||||
height: 1px;
|
||||
border-top: 1px solid #000;
|
||||
}
|
||||
p {
|
||||
font-family: $font-family-secundary;
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
color: $color-black-100;
|
||||
}
|
||||
}
|
||||
}
|
||||
&__wrapper {
|
||||
margin-top: 30px;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
&__logo {
|
||||
padding-left: 131px;
|
||||
img {
|
||||
height: 52px;
|
||||
width: auto;
|
||||
@ -17,19 +112,23 @@
|
||||
}
|
||||
|
||||
&__safeBuy {
|
||||
padding-right: 131px;
|
||||
display: flex;
|
||||
span {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
text-transform: uppercase;
|
||||
font-family: $font-family;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-size: 12px;
|
||||
line-height: 14px;
|
||||
color: $color-gray;
|
||||
line-height: 16px;
|
||||
color: $color-black;
|
||||
}
|
||||
|
||||
i {
|
||||
img {
|
||||
width: 10%;
|
||||
margin-right: 8px;
|
||||
}
|
||||
}
|
||||
|
@ -2,11 +2,11 @@
|
||||
@import url("https://fonts.googleapis.com/css2?family=Tenor+Sans&display=swap");
|
||||
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;500;600;700;800&display=swap");
|
||||
$font-family: "Open Sans", sans-serif;
|
||||
$font-family-secundary:"Tenor Sans", sans-serif;
|
||||
$font-family-secundary: "Tenor Sans", sans-serif;
|
||||
|
||||
/* Colors */
|
||||
$color-black: #292929;
|
||||
|
||||
$color-black-100: #000;
|
||||
$color-white: #fff;
|
||||
|
||||
$color-gray: #6c6c6c;
|
||||
@ -14,25 +14,27 @@ $color-gray2: #7d7d7d;
|
||||
$color-gray3: #f0f0f0;
|
||||
$color-gray4: #8d8d8d;
|
||||
$color-gray5: #e5e5e5;
|
||||
|
||||
$color-gray100: #808080;
|
||||
$color-red: #ff0000;
|
||||
$color-blue: #4267b2;
|
||||
$color-blue-300: #00c8ff;
|
||||
|
||||
$color-green: #4caf50;
|
||||
|
||||
/* Grid breakpoints */
|
||||
$grid-breakpoints: (
|
||||
xs: 0,
|
||||
cstm: 400,
|
||||
sm: 576px,
|
||||
md: 768px,
|
||||
lg: 992px,
|
||||
xl: 1200px
|
||||
xs: 0,
|
||||
cstm: 400,
|
||||
sm: 576px,
|
||||
md: 768px,
|
||||
lg: 992px,
|
||||
xl: 1200px,
|
||||
) !default;
|
||||
|
||||
$z-index: (
|
||||
level1: 5,
|
||||
level2: 10,
|
||||
level3: 15,
|
||||
level4: 20,
|
||||
level5: 25
|
||||
level1: 5,
|
||||
level2: 10,
|
||||
level3: 15,
|
||||
level4: 20,
|
||||
level5: 25,
|
||||
) !default;
|
||||
|
Loading…
Reference in New Issue
Block a user