Merge pull request 'develop' (#5) from develop into main

Reviewed-on: #5
This commit is contained in:
Ramon Dias Ferreira 2022-12-19 00:11:34 +00:00
commit c90982d5fe
11 changed files with 1077 additions and 10979 deletions

10970
checkout/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -6,35 +6,173 @@ export default class Footer {
} }
async init() { async init() {
this.list = await this.requestApi();
await this.selectors(); await this.selectors();
// this.onUpdate(); this.creditCardIconsHTML();
this.developedByIconsHTML();
if (window.location.hash === "#/cart") {
await this.shelfUpdate();
}
this.shelfList = await waitElement(".footerCheckout__shelfList");
this.shelfItens();
this.events();
this.addCarrossel();
} }
async selectors() { async selectors() {
//Para verificar se o carrinho está vazio e remover a prateleira de produtos: this.itensShelf = await waitElement(".footerCheckout__prateleira");
// vocês devem olhar a doc fornecida no Desafio para aprender a usar o waitElement
this.checkoutVazio = await waitElement(".empty-cart-content"); this.checkoutVazio = await waitElement(".empty-cart-content");
this.creditCardIcons = await waitElement(".footerCheckout__stamps");
this.developedByIcons = await waitElement(".footerCheckout__developedBy");
} }
onUpdate() { createShelf() {
//Função qeu fará a verificação se o carrinho está vazio para remover a prateleira de produtos: if(this.itensShelf) {
// vocês devem olhar a doc fornecida no Desafio para aprender a usar a MutationObserver this.itensShelf.innerHTML = `
// sempre que o carrinho estiver vazio o elemento chcekoutVazio fica display: none e isso pode ser usado como atributo para a MutationObserver <div class="footerCheckout__prateleira-title">
<h2>Você também pode gostar:</h2>
</div>
<ul class="footerCheckout__shelfList"></ul>
`
}
}
shelfItens() {
let structure = "";
this.list.forEach((response) => {
const sku = response.skus.map((item) => `<li>${item}</li>`);
structure += `
<li class="liItens">
<figure><img src ="${response.img}"/></figure>
<figcaption>${response.name}</figcaption>
<div><ul>${sku}</ul></div>
<button type="button"><a href="${response.link}">Ver Produto</a></button>
</li>
`
})
this.shelfList.innerHTML = structure
}
async requestApi() {
const api =
"https://m3academy.myvtex.com/api/catalog_system/pub/products/search/?fq=productClusterIds:319";
return fetch(api)
.then((response) => response.json())
.then((data) => {
const prodInfo = data.map((response) => ({
name: response.productName,
skus: response.items.map((item) => item.name),
img: response.items[0].images[0].imageUrl,
link: response.link,
}));
return prodInfo
});
}
events() {
window.addEventListener("hashchange", this.hashChange.bind(this))
}
async shelfUpdate() {
let target = this.checkoutVazio; let target = this.checkoutVazio;
let config = { childList: true, attributes: true }; let config = { childList: true, attributes: true };
let observer = new MutationObserver((mutations) => { let observer = new MutationObserver((mutations) => {
mutations.forEach(function (mutation) { mutations.map((mutation) => {
console.log(mutation.type); console.log(mutation.target.attributes.style.nodeValue);
if(mutation.target.attributes.style.nodeValue == "display: none;") {
this.createShelf();
} else if (mutation.target.attributes.style.nodeValue == "display: block;") {
this.removeShelf();
}
}); });
}); });
observer.observe(target, config); observer.observe(target, config);
} }
hashChange(e) {
if(e.newURL !== "https://m3academy.myvtex.com/checkout/#/cart") {
this.itensShelf.classList.add("desativado");
} else {
this.itensShelf.classList.remove("desativado");
}
}
async addCarrossel() { async addCarrossel() {
const elemento = await waitElement("#my-element"); const elemento = await waitElement(".footerCheckout__shelfList");
$(elemento).slick({ $(elemento).slick({
slidesToShow: 4, slidesToShow: 4,
slidesToScroll: 1, slidesToScroll: 1,
arrows: true,
infinite: false,
responsive: [
{
breakpoint: 1024,
settings: {
slidesToShow: 3,
slidesToScroll: 1,
}
},
{
breakpoint: 375,
settings: {
slidesToShow: 2,
slidesToScroll: 1
}
},
{
breakpoint: 290,
settings: {
slidesToShow: 1,
slidesToScroll: 1
}
}
]
}); });
} }
creditCardIconsHTML() {
this.creditCardIcons.innerHTML = `
<li class="credit-card"><img src="https://agenciamagma.vteximg.com.br/arquivos/masterCardM3Academy.png" alt="Mastercard"></li>
<li class="credit-card"><img src="https://agenciamagma.vteximg.com.br/arquivos/visaM3Academy.png" alt=""></li>
<li class="credit-card"><img src="https://agenciamagma.vteximg.com.br/arquivos/amexM3Academy.png" alt="American Express"></li>
<li class="credit-card"><img src="https://agenciamagma.vteximg.com.br/arquivos/eloM3Academy.png" alt="Elo"></li>
<li class="credit-card"><img src="https://agenciamagma.vteximg.com.br/arquivos/hiperCardM3Academy.png" alt="Hipercard"></li>
<li class="credit-card"><img src="https://agenciamagma.vteximg.com.br/arquivos/payPalM3Academy.png" alt="PayPal"></li>
<li class="credit-card"><img src="https://agenciamagma.vteximg.com.br/arquivos/boletoM3Academy.png" alt="Boleto"></li>
<li><span class="footerCheckout__stamps__divider"></span></li>
<li class="vtex-pci credit-card"><img src="https://agenciamagma.vteximg.com.br/arquivos/vtexPCIM3Academy.png" alt="PCI VTEX"></li>
`;
}
developedByIconsHTML() {
this.developedByIcons.innerHTML = `
<li>
<div class="by-vtex">
<a href="https://vtex.com.br-pt/">
<span>Powered By</span>
</a>
<img class="vtex-logo" src="https://agenciamagma.vteximg.com.br/arquivos/logoVTEXM3Academy.png" alt="VTEX" />
</div>
</li>
<li>
<div class="by-m3">
<a href="https://vtex.com.br-pt/">
<span>Developed By</span>
</a>
<img class="m3-logo" src="https://agenciamagma.vteximg.com.br/arquivos/logoM3M3Academy.png" alt="M3" />
</div>
</li>
`;
}
removeShelf() {
this.itensShelf.innerHTML = "";
}
} }

View File

@ -8,14 +8,166 @@ export default class Header {
async init() { async init() {
await this.selectors(); await this.selectors();
console.log(this.item); this.progressBarHTML();
await this.barProgress();
} }
async selectors() { async selectors() {
this.item = await waitElement("#my-element", { this.progressBar = await waitElement("#progressBar", {
//#my-element pode ser a class ou o id do elemento html qeu vocÊ quer pegar timeout: 5000,
timeout: 5000, // vai esperar 5 segundos antes de rejeitar a promise interval: 1000,
interval: 1000, // vai verificar a cada 1 segundo se o elemento existe
}); });
} }
progressBarHTML() {
if (this.progressBar && window.innerWidth > 1024) {
this.progressBar.innerHTML = `
<ul>
<li>
<div class="containerLi">
<p class="progress-bar-text">Meu Carrinho</p>
<div style="margin-left: 29px;">
<p id="progress-bar-circle-1" class="progress-bar-circle"></p>
<p class="progress-bar-line-1"></p>
</div>
</div>
</li>
<li class="central">
<div class="containerLi">
<p class="progress-bar-text">Dados Pessoais</p>
<p id="progress-bar-circle-2" class="progress-bar-circle"></p>
</div>
</li>
<li>
<div class="containerLi">
<p class="progress-bar-text">Pagamento</p>
<div style="margin-right: 22px;">
<p id="progress-bar-circle-3" class="progress-bar-circle"></p>
</div>
<p class="progress-bar-line-2"></p>
</div>
</li>
</ul>
`;
}
if (this.progressBar && window.innerWidth <= 1024) {
this.progressBar.innerHTML = ``;
}
}
async barProgress() {
if (this.progressBar && window.innerWidth > 1024) {
const progressBarLista = document.querySelectorAll("#progressBar ul li");
progressBarLista.forEach((li) => {
console.log(li.children[0]);
const circleOne = li.children[0].children[1].children["progress-bar-circle-1"];
const circleTwo = li.children[0].children["progress-bar-circle-2"];
const circleThree = li.children[0].children[1].children["progress-bar-circle-3"];
if (window.location.href === "https://m3academy.myvtex.com/checkout/#/cart") {
if (circleOne) {
circleOne.classList.add("active");
}
if (circleTwo) {
if (circleTwo.classList.contains("active")) {
circleTwo.classList.remove("active");
}
}
if (circleThree) {
if (circleThree.classList.contains("active")) {
circleThree.classList.remove("active");
}
}
} 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"
) {
if (circleOne) {
if (circleOne.classList.contains("active")) {
circleOne.classList.remove("active");
}
}
if (circleTwo) {
circleTwo.classList.add("active");
}
if (circleThree) {
if (circleThree.classList.contains("active")) {
circleThree.classList.remove("active");
}
}
} else if (
window.location.href === "https://m3academy.myvtex.com/checkout/#/payment"
) {
if (circleOne) {
if (circleOne.classList.contains("active")) {
circleOne.classList.remove("active");
}
}
if (circleTwo) {
if (circleTwo.classList.contains("active")) {
circleTwo.classList.remove("active");
}
}
if (circleThree) {
circleThree.classList.add("active");
}
}
window.addEventListener("hashchange", () => {
if (window.location.hash == "#/cart") {
if (circleOne) {
circleOne.classList.add("active");
}
if (circleTwo) {
if (circleTwo.classList.contains("active")) {
circleTwo.classList.remove("active");
}
}
if (circleThree) {
if (circleThree.classList.contains("active")) {
circleThree.classList.remove("active");
}
}
} else if (
window.location.hash === "#/email" ||
window.location.hash === "#/profile" ||
window.location.hash === "#/shipping"
) {
if (circleOne) {
if (circleOne.classList.contains("active")) {
circleOne.classList.remove("active");
}
}
if (circleTwo) {
circleTwo.classList.add("active");
}
if (circleThree) {
if (circleThree.classList.contains("active")) {
circleThree.classList.remove("active");
}
}
} else if (window.location.hash == "#/payment") {
if (circleOne) {
if (circleOne.classList.contains("active")) {
circleOne.classList.remove("active");
}
}
if (circleTwo) {
if (circleTwo.classList.contains("active")) {
circleTwo.classList.remove("active");
}
}
if (circleThree) {
circleThree.classList.add("active");
}
}
});
});
}
}
} }

View File

@ -6,12 +6,12 @@
.link-cart { .link-cart {
a { a {
color: $color-black; color: $color-black2;
font-weight: 400;
font-family: $font-family-secundary;
font-size: 14px; font-size: 14px;
line-height: 16px;
&:hover { text-transform: uppercase;
color: lighen($color-black, 10);
}
} }
} }
@ -22,30 +22,55 @@
justify-content: center; justify-content: center;
h3 { h3 {
margin-bottom: 16px; margin-bottom: 20px;
margin-top: 7px;
span { span {
color: #303030; color: $color-black2;
font-size: 24px; font-family: $font-family-secundary;
font-size: 20px;
line-height: 23px;
text-transform: uppercase;
font-weight: 400;
} }
small { small {
color: $color-gray4; color: $color-black2;
font-family: $font-family-secundary;
font-size: 20px;
line-height: 23px;
text-transform: uppercase;
font-weight: 400;
padding: 0;
} }
} }
} }
.client-email { .client-email {
margin: 0 0 16px; display: flex;
margin: 0 0 47px;
width: 57%;
justify-content: flex-start;
input { input {
box-shadow: none; box-shadow: none;
color: $color-black; color: $color-black;
font-family: $font-family; font-family: $font-family;
padding: 0 16px; padding: 0 16px;
border: 2px solid $color-gray3; border: 1px solid $color-black2;
border-right: none;
box-sizing: border-box; box-sizing: border-box;
border-radius: 5px; border-radius: 5px 0px 0px 5px;
width: 77%;
height: 52px;
&::placeholder{
color: $color-black2;
font-weight: 400;
font-size: 12px;
line-height: 16px;
display: flex;
align-items: center;
}
@media (max-width: 490px) { @media (max-width: 490px) {
width: auto; width: auto;
@ -68,19 +93,44 @@
} }
} }
#btn-client-pre-email{
right: 14px;
padding: 4px 26px;
height: 52px;
background-color: $color-blue2;
border-radius: 0px 8px 8px 0px;
position: static;
font-family: $font-family;
font-weight: 700;
font-size: 14px;
line-height: 19px;
letter-spacing: 0.05em;
text-transform: uppercase;
}
span.help.error { span.help.error {
color: red; color: red;
position: absolute;
left: 213px;
top: 50px;
font-weight: 700;
font-size: 12px;
line-height: 16px;
} }
} }
.emailInfo { .emailInfo {
padding: 16px; padding: 16px;
background-color: $color-white; background-color: $color-white;
border: 1px solid $color-gray4; border: 1px solid $color-black2;
border-radius: 0; border-radius: 5px;
h3 { h3 {
color: #303030; color: $color-black2;
font-style: normal;
font-weight: 700;
font-size: 12px;
line-height: 16px;
margin: 0 0 8px 0; margin: 0 0 8px 0;
} }
@ -89,11 +139,16 @@
li { li {
span { span {
color: $color-black; font-family: $font-family;
font-style: normal;
font-weight: 700;
font-size: 12px;
line-height: 16px;
color: $color-black2;
} }
i::before { i::before {
color: $color-black; color: $color-blue2;
font-size: 1rem; font-size: 1rem;
opacity: 1; opacity: 1;
} }
@ -108,35 +163,97 @@
} }
} }
.newsletter{
margin-bottom: 44px;
}
#go-to-shipping{
width: 100%;
margin-bottom: 3px;
margin-top: 0;
}
p.input.ship-country.text{
display: none;
}
.vtex-omnishipping-1-x-addressFormPart1 small{
margin-left: 0;
}
.shipping-data, .shipping-data,
.payment-data, .payment-data,
.client-profile-data { .client-profile-data {
.accordion-group { .accordion-group {
border-radius: 0; border-radius: 0;
border: 1px solid $color-gray4; border: 1px solid $color-gray3;
border-radius: 8px;
font-family: $font-family; font-family: $font-family;
padding: 16px; padding: 17px 17px 29px 17px;
span{
font-size: 12px;
line-height: 14px;
}
.accordion-toggle{
font-weight: 400;
font-size: 16px;
line-height: 20px;
}
div.row-fluid:before{
display: none;
}
p.link.link-gift-card{
display: none !important;
}
.row-fluid:before{
content: "Solicitamos apenas informações necessárias para realização da sua compra, sem compromenter seu dados";
font-weight: 400;
font-size: 14px;
line-height: 24px;
letter-spacing: -0.01em;
}
.accordion-heading { .accordion-heading {
span { span {
color: #303030; color: $color-black;
margin-bottom: 8px; margin-bottom: 15px;
padding: 0; padding: 0;
i::before { i {
fill: #303030; font-size: 0;
line-height: 0;
&.icon-edit{
&::before{
content: "";
width: 20px;
height: 20px;
background-image:url(https://agenciamagma.vteximg.com.br/arquivos/lapisM3Academy.png) ;
background-repeat: no-repeat;
margin-top: 7px;
background-size: contain;
}
}
} }
} }
a { a {
align-items: center; align-items: center;
background-color: #303030; background-color: $color-white;
border-radius: 8px; border-radius: 8px;
border: none; border: none;
color: $color-white; color: $color-white;
display: flex; display: flex;
justify-content: center; justify-content: center;
padding: 6px 5px 6px 8px; padding: 0;
display: block !important;
outline: none;
} }
} }
@ -144,24 +261,47 @@
padding: 0; padding: 0;
/* General configurations */ /* General configurations */
.box-client-info-pj{
display: none;
}
.client-notice { .client-notice {
color: $color-black; color: $color-black;
display: none;
} }
p { p {
label { label {
color: $color-black; color: $color-gray2;
font-weight: 500; font-family: $font-family;
font-style: normal;
font-weight: 400;
font-size: 14px;
line-height: 19px;
span.newsletter-text{
color: $color-gray9;
}
} }
select, select,
input { input {
border-radius: 0; border-radius: 5px;
border: 1px solid $color-gray4; border: 1px solid $color-gray10;
box-shadow: none; box-shadow: none;
padding: 10px 6px;
&#opt-in-newsletter{
border-radius: 3px;
color: $color-gray11;
}
} }
#ship-postalCode{
width: 100%;
max-width: 95%;
}
.help.error { .help.error {
color: red; color: red;
} }
@ -180,13 +320,25 @@
font-weight: 500; font-weight: 500;
} }
.submit.btn-submit-wrapper{
margin-top: 0;
}
button.submit { button.submit {
width: 100%;
border: none; border: none;
border-radius: 5px; border-radius: 8px;
background: $color-black; background: $color-blue2;
margin-top: 8px; margin-top: 8px;
outline: none; outline: none;
transition: all 0.2s linear; transition: all 0.2s linear;
font-family: $font-family;
font-weight: 700;
font-size: 14px;
line-height: 19px;
color: $color-white;
letter-spacing: 0.05em;
text-transform: uppercase;
&:hover { &:hover {
background: lighten($color-black, 5); background: lighten($color-black, 5);
@ -197,24 +349,29 @@
} }
} }
/* Shipping configurations */ /* Shipping */
.ship-postalCode small a { .ship-postalCode small a {
color: #303030; color: $color-black;
font-weight: 500; font-weight: 400;
font-size: 12px;
line-height: 16px;
text-decoration: underline; text-decoration: underline;
} }
.vtex-omnishipping-1-x-deliveryGroup { .vtex-omnishipping-1-x-deliveryGroup {
p { p {
color: #303030; color: $color-gray2;
font-size: 14px; font-weight: 700;
font-weight: 500; font-size: 14px;
line-height: 19px;
font-style: normal;
} }
.shp-lean { .shp-lean {
border: 1px solid $color-gray4; border: 1px solid $color-gray10;
border-radius: 0; border-radius: 8px;
margin-bottom: 15px;
label { label {
background-color: $color-white; background-color: $color-white;
@ -230,30 +387,47 @@
} }
.delivery-address-title { .delivery-address-title {
color: #303030; color: $color-gray2;
font-size: 14px; font-weight: 700;
font-weight: 500; font-size: 12px;
line-height: 16px;
letter-spacing: 0.05em;
margin-bottom: 11px;
font-style: normal;
} }
.shp-summary-group-info { .shp-summary-group-info {
border-color: $color-gray4; border-color: $color-gray4;
border: none;
} }
.address-summary { .address-summary {
background: none; background: none;
border-color: $color-gray4; border-color: $color-gray10;
border-radius: 0; border-radius: 8px;
color: #303030; color: #303030;
padding: 12px; padding: 12px;
padding-top: 2px;
&::before{
content: "";
width: 24px;
height: 24px;
background-image: url(https://agenciamagma.vteximg.com.br/arquivos/homeM3Academy.png);
background-repeat: no-repeat;
background-size: 24px;
}
@include mq(md, max) { @include mq(md, max) {
background-position: 8px 9px; background-position: 8px 9px;
} }
a { a {
color: #303030; color: $color-blue2;
font-weight: 500; float: right;
text-decoration: underline; font-weight: 400;
font-size: 12px;
line-height: 16px;
text-transform: lowercase;
} }
} }
@ -264,25 +438,89 @@
.shp-summary-group-price { .shp-summary-group-price {
padding-right: 16px; padding-right: 16px;
display: none;
} }
.shp-summary-package { .shp-summary-package {
padding-left: 16px; padding-left: 12px;
} }
.vtex-omnishipping-1-x-summaryChange { .vtex-omnishipping-1-x-summaryChange {
border-color: #303030; border-color: #303030;
color: #303030; color: #303030;
display: none;
} }
.vtex-omnishipping-1-x-deliveryChannelsToggle { .vtex-omnishipping-1-x-deliveryChannelsToggle {
background-color: #d8c8ac; background-color: $color-white;
border: 1px solid #d8c8ac; border: 1px solid $color-black;
} }
.vtex-omnishipping-1-x-deliveryOptionActive { .vtex-omnishipping-1-x-deliveryOptionActive {
text-shadow: 1.3px 1px lighten($color-black, 50); font-style: normal;
font-weight: 400;
font-size: 14px;
line-height: 19px;
text-transform: uppercase;
color: $color-purple;
} }
.vtex-omnishipping-1-x-deliveryOptionInactive{
color: $color-gray8;
}
p.input.ship-number.required.text{
width: 100%;
}
input#ship-number.input-mini,
input#ship-complement.input-large,
input#ship-receiverName.input-xlarge {
width: 95%;
}
.steps-view{
width: 57%;
margin-top: 35px;
}
span.payment-group-item-text{
background-image: none !important;
}
.payment-group-item{
border-right: 1px solid $color-black2 ;
border: 1px solid $color-black2;
border-radius: 6px;
display: none;
opacity: 0.3;
margin-bottom: 12px;
mix-blend-mode: normal;
padding: 13px 24.5px;
background: $color-gray3;
color: $color-gray6;
font-weight: 400;
font-size: 14px;
line-height: 24px;
text-align: center;
letter-spacing: -0.01em;
&-text{
padding: 5px 0 5px 0;
}
}
.payment-group-item.active{
margin-left: 5px;
border-radius: 6px;
border-right: 1px solid $color-orange ;
border: 1px solid $color-orange;
color: $color-orange;
text-decoration: none;
opacity: 1;
background: rgba(220, 221, 227, 0.3);
}
} }
} }
} }

View File

@ -782,7 +782,7 @@
.btn-place-order-wrapper { .btn-place-order-wrapper {
a { a {
background: $color-green; background: $color-blue2;
border: none; border: none;
border-radius: 5px; border-radius: 5px;
display: block; display: block;
@ -791,7 +791,7 @@
padding: 12px 19px; padding: 12px 19px;
&:hover { &:hover {
background-color: darken($color-green, 5); background-color: darken($color-black, 5);
} }
&:after { &:after {
@ -799,11 +799,11 @@
font-family: $font-family; font-family: $font-family;
font-weight: 500; font-weight: 500;
font-size: 13px; font-size: 13px;
letter-spacing: 0.05em;
color: $color-white;
text-transform: uppercase; text-transform: uppercase;
vertical-align: middle; letter-spacing: 0.05em;
line-height: 19px; line-height: 19px;
vertical-align: middle;
color: $color-white;
text-shadow: none; text-shadow: none;
} }
} }

View File

@ -9,3 +9,24 @@ body .container-main.container-order-form .orderform-template.active {
width: 66.1132%; width: 66.1132%;
} }
} }
body .container-main.container-order-form .orderform-template.active {
.mini-cart {
width: 32.3242%;
margin-left: unset;
margin-right: 0;
float: right;
.payment-submit-wrap{
margin-top: 15px;
}
}
.orderform-template-holder {
width: 66.1132%;
}
}
.cart-template .cart-fixed #payment-data-submit
{
background-color: $color-blue2;
}

View File

@ -3,21 +3,36 @@
&-content { &-content {
color: $color-black; color: $color-black;
text-align: center; text-align: center;
color: $color-black;
@include mq(md, max) { @include mq(md, max) {
padding: 0 16px; padding: 0 16px;
} }
} }
&-message {
display: none;
}
&-title { &-title {
font-size: 20px; font-family: 'Open Sans';
font-style: normal;
font-weight: 700;
font-size: 24px;
line-height: 33px;
text-align: center;
text-transform: uppercase;
color: $color-black2;
} }
&-message {
display: none;
}
&-links { &-links {
.link-choose-products { .link-choose-products {
background: $color-black; background: $color-white;
border: none; color: $color-black !important;
border-radius: 5px; border-radius: 1px solid $color-black2;
transition: ease-in 0.22s all; transition: ease-in 0.22s all;
outline: none; outline: none;
font-family: $font-family; font-family: $font-family;
@ -27,11 +42,11 @@
line-height: 16px; line-height: 16px;
text-align: center; text-align: center;
letter-spacing: 0.05em; letter-spacing: 0.05em;
color: $color-white;
text-transform: uppercase; text-transform: uppercase;
&:hover { &:hover {
background: lighten($color-black, 5); background: lighten($color-black, 5);
color: $color-white !important;
} }
} }
} }

View File

@ -9,14 +9,29 @@ html {
} }
footer .footerCheckout__wrapper { footer .footerCheckout__wrapper {
width: 94.9734%; width: 100%;
margin: auto auto 0 auto; margin: auto auto 0 auto;
border-top: 1px solid $color-black2;
.container{
display: flex;
align-items: center;
width: 94.9734%;
}
} }
footer .footerCheckout__prateleira, footer .footerCheckout__prateleira,
header { header {
width: 79.53125%; width: 100%;
margin: 0 auto; margin: 0 auto;
} }
header{
border-bottom: 1px solid $color-black2;
padding: 29px 0;
}
.headerCheckout__safeBuy{
display: flex;
gap: 8px;
height: 15px;
}
body { body {
display: flex; display: flex;
@ -24,6 +39,156 @@ body {
min-height: 100% !important; min-height: 100% !important;
padding-top: 0 !important; padding-top: 0 !important;
.PaymentCardNumber input {
width: 64%;
height: 25px;
}
p.PaymentCardHolderDocument.input.text.required.mask{
display: none;
}
.PaymentInstallments select{
width: 68%;
}
input#creditCardpayment-card-0Name.input-medium{
width: 34%;
height: 25px;
}
.input#creditCardpayment-card-0Code.input-mini{
width: 16%;
height: 25px;
}
#ship-postalCode{
border: 1px solid $color-gray8;
border-radius: 8px;
}
#find-pickups-manualy-button-denied{
color: $color-black2;
outline: none;
&:hover{
background: $color-white;
color: $color-black2;
}
&:active{
background: $color-white;
color: $color-black2;
}
}
#payment-data-submit{
i.icon-lock{
display: none;
}
}
tbody.totalizers-list{
tr.srp-summary-result.hide{
display: none;
}
}
div.cart-fixed.cart-fixed-transition.affix-top{
.Items{
border-top: 1px solid $color-gray10;
border-bottom: 1px solid $color-gray10;
.info{
padding: 26px 0 !important;
padding-left: 17px !important;
float: none;
}
.monetary{
padding-right: 17px !important;
float: none;
}
}
.Discounts{
border-bottom: 1px solid $color-gray10;
.info{
padding: 26px 0 !important;
padding-left: 17px !important;
float: none;
}
.monetary{
padding-right: 17px !important;
float: none;
}
}
tfoot {
td.info,
td.monetary {
padding-top: 30px;
padding-bottom: 0px;
}
td.info{
padding-left: 17px;
}
td.monetary{
padding-right: 17px;
}
}
div.span5.totalizers.summary-totalizers.cart-totalizers.pull-right{
margin-bottom: 0;
}
button#payment-data-submit.submit.btn.btn-success.btn-large.btn-block{
margin-top: 47px;
}
}
div#client-profile-data.span6.client-profile-data{
.client-profile-email{
margin-bottom: 6px;
}
.client-profile-summary{
span{
margin-bottom: 6px;
}
}
span{
font-size: 0;
line-height: 0;
&::after{
content: "Identificação";
font-family: $font-family-secundary;
font-style: normal;
font-weight: 400;
font-size: 16px;
line-height: 19px;
color: $color-black;
}
}
span.accordion-toggle.collapsed,
span.email,
span.name,
span.tel,
span.newsletter-text{
&::after{
display: none;
}
}
span.email,
span.name,
span.tel{
font-family: $font-family;
font-style: normal;
font-weight: 400;
font-size: 12px;
line-height: 16px;
color: $color-gray2;
}
span.newsletter-text{
font-family: $font-family;
font-style: normal;
font-weight: 400;
font-size: 12px;
line-height: 16px;
color: $color-gray9;
}
}
a#payment-group-creditCardPaymentGroup.payment-group-item,
a#payment-group-bankInvoicePaymentGroup.payment-group-item {
display: block;
}
.payment-group-list-btn{
width: 105%;
}
@include mq(md, max) { @include mq(md, max) {
padding-left: 0; padding-left: 0;
} }
@ -47,34 +212,33 @@ body {
padding-left: 0; padding-left: 0;
} }
} }
.container-order-form, .container-order-form,
.container-cart { .container-cart {
width: 80%; width: 80%;
} }
} }
.row-fluid .full-cart.active{
margin-bottom: 0;
}
.btn-success { .btn-success {
background: $color-black; background: $color-white;
text-shadow: none; text-shadow: none;
&:hover { &:hover {
background: lighten($color-black, 15%); background: lighten($color-white, 15%);
} }
} }
.emailInfo h3 {
color: $color-black !important;
}
#cart-title, #cart-title,
#orderform-title { #orderform-title {
color: $color-gray2; color: $color-black2;
font-family: $font-family; font-family: $font-family;
font-weight: 500; font-weight: 700;
font-size: 36px; font-size: 24px;
line-height: 42px; line-height: 33px;
margin: 40px 0 30px; margin: 17px 0;
letter-spacing: 0.1em;
text-transform: uppercase; text-transform: uppercase;
@include mq(md, max) { @include mq(md, max) {
@ -82,6 +246,18 @@ body {
} }
} }
#cart-title{
display: block !important;
font-weight: 700;
font-size: 24px;
line-height: 33px;
width: max-content;
color: $color-black;
margin: 16px 0;
letter-spacing: 0.05em;
}
.dropdown { .dropdown {
&__content { &__content {
&--closed { &--closed {

View File

@ -3,10 +3,48 @@
border-top: none; border-top: none;
color: $color-gray2; color: $color-gray2;
&__prateleira{
.footerCheckout__prateleira-title {
display: flex;
justify-content: center;
}
}
&__wrapper { &__wrapper {
align-items: center; align-items: center;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
padding-top: 56px;
.container {
display: flex;
justify-content: space-between;
.footerCheckout__address{
width: 21.02%;
left: 2.5%;
}
.footerCheckout__stamps {
width: 31.56%;
}
.footerCheckout__developedBy{
display: flex;
width: 16.95%;
right: 2.5%;
.by-vtex, .by-m3{
display: flex;
.vtex-logo, .m3-logo{
width: 50% ;
}
}
}
}
} }
&__address { &__address {
@ -71,4 +109,7 @@
} }
} }
} }
.desativado {
display: none !important;
}
} }

View File

@ -2,7 +2,108 @@
.headerCheckout { .headerCheckout {
.container { .container {
width: auto !important; width: auto !important;
#progressBar {
width: 439px;
ul {
list-style-type: none;
display: flex;
align-items: center;
justify-content: space-between;
margin: 0;
}
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 .container div {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
li {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-family: "Tenor Sans";
font-size: 12px;
font-weight: 400;
line-height: 28px;
color: #000000;
width: 39.9103%;
@media (min-width: 2500px) {
font-size: 24px;
}
}
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 #000000;
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: #000000;
}
li .progress-bar-line-1 {
position: absolute;
width: 100%;
left: 25%;
transform: translateY(-50%);
bottom: 5px;
height: 1px;
border-top: 1px solid #000000;
}
li .progress-bar-line-2 {
position: absolute;
width: 100%;
right: 21%;
transform: translateY(-50%);
bottom: 5px;
height: 1px;
border-top: 1px solid #000000;
}
}
.active {
background: #000000;
}
} }
&__wrapper { &__wrapper {
align-items: center; align-items: center;
display: flex; display: flex;
@ -19,17 +120,18 @@
&__safeBuy { &__safeBuy {
span { span {
align-items: center; align-items: center;
display: flex;
text-transform: uppercase; text-transform: uppercase;
font-family: $font-family; font-family: $font-family;
line-height: 15px;
color: $color-gray;
font-style: normal; font-style: normal;
font-weight: normal; font-weight: normal;
font-size: 12px; font-size: 12px;
line-height: 14px;
color: $color-gray;
} }
i { img {
width: 12px;
margin-right: 8px; margin-right: 8px;
} }
} }

View File

@ -6,18 +6,31 @@ $font-family-secundary:"Tenor Sans", sans-serif;
/* Colors */ /* Colors */
$color-black: #292929; $color-black: #292929;
$color-black2: #000000;
$color-white: #fff; $color-white: #fff;
$color-purple: #41115D;
$color-gray: #6c6c6c; $color-gray: #6c6c6c;
$color-gray2: #7d7d7d; $color-gray2: #7d7d7d;
$color-gray3: #f0f0f0; $color-gray3: #f0f0f0;
$color-gray4: #8d8d8d; $color-gray4: #8d8d8d;
$color-gray5: #e5e5e5; $color-gray5: #e5e5e5;
$color-gray6: #58595B;
$color-gray7: #EDEDED;
$color-gray8: #C4C4C4;
$color-gray9: #808080;
$color-gray10: #E0E0E0;
$color-gray11: #828282;
$color-blue: #4267b2; $color-blue: #4267b2;
$color-blue2: #00C8FF;
$color-green: #4caf50; $color-green: #4caf50;
$color-green2: #298541;
$color-orange: #F15A31;
/* Grid breakpoints */ /* Grid breakpoints */
$grid-breakpoints: ( $grid-breakpoints: (