forked from M3-Academy/m3-academy-template-checkout
Merge pull request 'develop' (#11) from develop into main
Reviewed-on: #11
This commit is contained in:
commit
e527a06c9a
@ -62,7 +62,8 @@ function styles() {
|
|||||||
)
|
)
|
||||||
.pipe(
|
.pipe(
|
||||||
autoprefixer({
|
autoprefixer({
|
||||||
cascade: false,
|
cascade: true,
|
||||||
|
add: true,
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
.pipe(
|
.pipe(
|
||||||
|
@ -1,5 +1,11 @@
|
|||||||
import { waitElement } from "m3-utils";
|
import { waitElement } from "m3-utils";
|
||||||
|
|
||||||
|
const insertImage = (name, options) => {
|
||||||
|
const domain = "https://agenciamagma.vteximg.com.br";
|
||||||
|
|
||||||
|
return `<img ${options} src="${domain}/arquivos/${name}M3Academy.png"/>`;
|
||||||
|
};
|
||||||
|
|
||||||
export default class Footer {
|
export default class Footer {
|
||||||
constructor() {
|
constructor() {
|
||||||
this.init();
|
this.init();
|
||||||
@ -7,34 +13,257 @@ export default class Footer {
|
|||||||
|
|
||||||
async init() {
|
async init() {
|
||||||
await this.selectors();
|
await this.selectors();
|
||||||
// this.onUpdate();
|
|
||||||
|
this.createdToPaymentsInFooter();
|
||||||
|
this.createdToDevelopedBy();
|
||||||
|
|
||||||
|
this.onloadWindowVerificatedShelf();
|
||||||
|
|
||||||
|
this.onUpdate();
|
||||||
}
|
}
|
||||||
|
|
||||||
async selectors() {
|
async selectors() {
|
||||||
//Para verificar se o carrinho está vazio e remover a prateleira de produtos:
|
//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
|
// vocês devem olhar a doc fornecida no Desafio para aprender a usar o waitElement
|
||||||
this.checkoutVazio = await waitElement(".empty-cart-content");
|
this.checkoutEmpty = await waitElement(".empty-cart-content");
|
||||||
|
this.paymentContainer = await waitElement(".footerCheckout__stamps");
|
||||||
|
this.developedByContainer = await waitElement(".footerCheckout__developedBy");
|
||||||
|
this.checkoutContainer = await waitElement(".container-main");
|
||||||
|
this.shelf = await waitElement(".footerCheckout__prateleira");
|
||||||
|
}
|
||||||
|
|
||||||
|
createdToPaymentsInFooter() {
|
||||||
|
if (this.isExistElement(this.paymentContainer)) {
|
||||||
|
const paymentCreditContent = this.paymentContainer.children[0].children[0];
|
||||||
|
const verificatedVtexPCI = this.paymentContainer.children[2].children[0];
|
||||||
|
|
||||||
|
let verifacatedContents =
|
||||||
|
this.isExistElement(paymentCreditContent) &&
|
||||||
|
this.isExistElement(verificatedVtexPCI);
|
||||||
|
|
||||||
|
if (verifacatedContents) {
|
||||||
|
let creditStructure = "";
|
||||||
|
let verificatedVtexStructure = insertImage(
|
||||||
|
"vtexPCI",
|
||||||
|
'class="footerCheckout__verificatedVtex"'
|
||||||
|
);
|
||||||
|
|
||||||
|
let creditTypes = this.creditPaymentsName();
|
||||||
|
|
||||||
|
creditTypes.forEach((creditType) => {
|
||||||
|
creditStructure += `<li class="footerCheckout__creditItem" >${insertImage(
|
||||||
|
creditType,
|
||||||
|
'class="footerCheckout__creditImage"'
|
||||||
|
)}</li>`;
|
||||||
|
});
|
||||||
|
|
||||||
|
paymentCreditContent.innerHTML = `<ul class="footerCheckout__creditList">${creditStructure}</ul>`;
|
||||||
|
verificatedVtexPCI.innerHTML = verificatedVtexStructure;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
createdToDevelopedBy() {
|
||||||
|
if (this.isExistElement(this.developedByContainer)) {
|
||||||
|
const poweredByContent = this.developedByContainer.children[0].children[0];
|
||||||
|
const developedByContent = this.developedByContainer.children[1].children[0];
|
||||||
|
|
||||||
|
let verificatedContents =
|
||||||
|
this.isExistElement(poweredByContent) && this.isExistElement(developedByContent);
|
||||||
|
|
||||||
|
if (verificatedContents) {
|
||||||
|
poweredByContent.innerHTML = `<span>Powered By</span>${insertImage(
|
||||||
|
"logoVTEX",
|
||||||
|
'class="footerCheckout__logo footerCheckout__logo--vtex"'
|
||||||
|
)}`;
|
||||||
|
|
||||||
|
developedByContent.innerHTML = `<span>Developed By</span>${insertImage(
|
||||||
|
"logoM3",
|
||||||
|
'class="footerCheckout__logo footerCheckout__logo--m3"'
|
||||||
|
)}`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onloadWindowVerificatedShelf() {
|
||||||
|
let checkoutEmpty = this.checkoutEmpty;
|
||||||
|
let checkoutContainer = this.checkoutContainer;
|
||||||
|
|
||||||
|
if (checkoutEmpty.style.display === "none") {
|
||||||
|
this.addClassToElement(checkoutContainer, "container-cart-fill");
|
||||||
|
} else {
|
||||||
|
this.removeClassToElement(checkoutContainer, "container-fill");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
this.getElementClass(checkoutContainer, "container-cart-fill") &&
|
||||||
|
this.getElementClass(checkoutContainer, "container-cart") &&
|
||||||
|
window.location.href.endsWith("#/cart")
|
||||||
|
) {
|
||||||
|
this.createdInitialShelfList();
|
||||||
|
this.createdProductsToShelf();
|
||||||
|
this.addCarrossel();
|
||||||
|
} else {
|
||||||
|
this.shelf.innerHTML = "";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
onUpdate() {
|
onUpdate() {
|
||||||
//Função qeu fará a verificação se o carrinho está vazio para remover a prateleira de produtos:
|
//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
|
// 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
|
// 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 config = { childList: true, attributes: true };
|
let verificatedContents =
|
||||||
let observer = new MutationObserver((mutations) => {
|
this.isExistElement(this.checkoutEmpty) && this.isExistElement(this.checkoutContainer);
|
||||||
mutations.forEach(function (mutation) {
|
|
||||||
console.log(mutation.type);
|
if (verificatedContents) {
|
||||||
|
let target = this.checkoutEmpty;
|
||||||
|
let config = { childList: true, attributes: true };
|
||||||
|
let observer = new MutationObserver((mutations) => {
|
||||||
|
/* prettier-ignore */
|
||||||
|
for (let i = 0; i < mutations.length; i++) {
|
||||||
|
if (mutations[i].attributeName === "style") {
|
||||||
|
if (this.checkoutEmpty.style.display === "none") {
|
||||||
|
this.addClassToElement(this.checkoutContainer, "container-cart-fill");
|
||||||
|
} else {
|
||||||
|
this.removeClassToElement(this.checkoutContainer,"container-cart-fill");
|
||||||
|
}
|
||||||
|
|
||||||
|
this.onloadWindowVerificatedShelf();
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
observer.observe(target, config);
|
||||||
|
|
||||||
|
window.addEventListener("hashchange", this.onloadWindowVerificatedShelf.bind(this));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
addCarrossel() {
|
||||||
|
$(this.shelf.children[1]).slick({
|
||||||
|
slidesToShow: 4,
|
||||||
|
arrows: true,
|
||||||
|
responsive: [
|
||||||
|
{
|
||||||
|
breakpoint: 1025,
|
||||||
|
settings: {
|
||||||
|
slidesToShow: 3,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
breakpoint: 600,
|
||||||
|
settings: {
|
||||||
|
slidesToShow: 2,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async requestAPIProducts() {
|
||||||
|
let url = (name) => {
|
||||||
|
let domain = "https://m3academy.myvtex.com/";
|
||||||
|
return domain + name;
|
||||||
|
};
|
||||||
|
|
||||||
|
let featchProducts = fetch(
|
||||||
|
url("api/catalog_system/pub/products/search/?fq=productClusterIds:319")
|
||||||
|
);
|
||||||
|
|
||||||
|
let response = await featchProducts.then((res) => res.json());
|
||||||
|
|
||||||
|
return response;
|
||||||
|
}
|
||||||
|
|
||||||
|
async createdProductsToShelf() {
|
||||||
|
let datas = await this.requestAPIProducts();
|
||||||
|
|
||||||
|
datas.forEach(() => {
|
||||||
|
$(this.shelf.children[1]).slick("unslick");
|
||||||
|
|
||||||
|
this.createdCardsProducts(datas);
|
||||||
|
|
||||||
|
this.addCarrossel();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
createdCardsProducts(data) {
|
||||||
|
let structure = "";
|
||||||
|
|
||||||
|
data.forEach((data) => {
|
||||||
|
structure += `<li class="shelf-item product-item">
|
||||||
|
<div class="product-item-container">
|
||||||
|
<div class="product-item-header">
|
||||||
|
<figure class="product-item-figure">
|
||||||
|
<img src="${data.items[0].images[0].imageUrl}" alt="">
|
||||||
|
</figure>
|
||||||
|
|
||||||
|
<h3 class="product-item-name">
|
||||||
|
${data.productName}
|
||||||
|
</h3>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="product-item-types product-type">
|
||||||
|
${data.items.reduce((acc, item) => {
|
||||||
|
return (acc += `<div class="product-type-container">
|
||||||
|
<span class="type-name">${item.name}</span>
|
||||||
|
</div>`);
|
||||||
|
}, "")}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a class="product-item-link" href="${data.link}">
|
||||||
|
<span>
|
||||||
|
Ver Produto
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
</div></li>`;
|
||||||
});
|
});
|
||||||
|
|
||||||
observer.observe(target, config);
|
this.shelf.children[1].innerHTML = `
|
||||||
|
${structure.trim()}
|
||||||
|
`;
|
||||||
}
|
}
|
||||||
async addCarrossel() {
|
|
||||||
const elemento = await waitElement("#my-element");
|
createdInitialShelfList() {
|
||||||
$(elemento).slick({
|
this.shelf.innerHTML = `
|
||||||
slidesToShow: 4,
|
<div class="footerCheckout__prateleira-header">
|
||||||
slidesToScroll: 1,
|
<h2 class="footerCheckout__prateleira-title">Você também pode gostar:</h2>
|
||||||
});
|
</div>
|
||||||
|
<ul class="shelf-list"></ul>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
|
||||||
|
addClassToElement(element, name) {
|
||||||
|
element.classList.add(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
removeClassToElement(element, name) {
|
||||||
|
element.classList.remove(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
getElementClass(element, name) {
|
||||||
|
return element.classList.contains(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
isExistElement(element) {
|
||||||
|
return !!element;
|
||||||
|
}
|
||||||
|
|
||||||
|
creditPaymentsName() {
|
||||||
|
const creditPaymentsTypes = [
|
||||||
|
"masterCard",
|
||||||
|
"visa",
|
||||||
|
"amex",
|
||||||
|
"elo",
|
||||||
|
"hiperCard",
|
||||||
|
"payPal",
|
||||||
|
"boleto",
|
||||||
|
];
|
||||||
|
|
||||||
|
return creditPaymentsTypes;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,115 @@
|
|||||||
// import waitForEl from "../helpers/waitForEl";
|
// import waitForEl from "../helpers/waitForEl";
|
||||||
import { waitElement } from "m3-utils";
|
import { waitElement } from "m3-utils";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {Object} options
|
||||||
|
* @param {HTMLAllElement} target
|
||||||
|
* @return {Object}
|
||||||
|
*/
|
||||||
|
|
||||||
|
function OnProgress(target) {
|
||||||
|
if (!target) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const innerElement = () => {
|
||||||
|
target.innerHTML = `<ul class="progress-list">
|
||||||
|
<li class="progress-item progress-item--left">
|
||||||
|
|
||||||
|
<div class="progress-container">
|
||||||
|
<div class="progress-content">
|
||||||
|
<p>Meu Carrinho</p>
|
||||||
|
<span class="progress-bullet"></span>
|
||||||
|
<span class="progress-line"></span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li class="progress-item progress-item--center">
|
||||||
|
<div class="progress-container">
|
||||||
|
<div class="progress-content">
|
||||||
|
<p>Dados Pessoais</p>
|
||||||
|
<span class="progress-bullet"></span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li class="progress-item progress-item--right">
|
||||||
|
<div class="progress-container">
|
||||||
|
<div class="progress-content">
|
||||||
|
<p>Pagamento</p>
|
||||||
|
<span class="progress-bullet"></span>
|
||||||
|
<span class="progress-line"></span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>`;
|
||||||
|
};
|
||||||
|
|
||||||
|
const verifyCurrentRoute = () => {
|
||||||
|
let bullets = target.querySelectorAll(".progress-bullet");
|
||||||
|
|
||||||
|
bullets.forEach((bullet) => {
|
||||||
|
if (window.location.href.endsWith("#/cart")) {
|
||||||
|
bullets[0].classList.add("active");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
window.location.href.endsWith("#/email") ||
|
||||||
|
window.location.href.endsWith("#/shipping") ||
|
||||||
|
window.location.href.endsWith("#/profile")
|
||||||
|
) {
|
||||||
|
bullets[1].classList.add("active");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (window.location.href.endsWith("#/payment")) {
|
||||||
|
bullets[2].classList.add("active");
|
||||||
|
}
|
||||||
|
|
||||||
|
window.addEventListener("hashchange", () => {
|
||||||
|
if (window.location.href.endsWith("#/cart")) {
|
||||||
|
bullets[0].classList.add("active");
|
||||||
|
|
||||||
|
if (bullet != bullets[0]) {
|
||||||
|
bullet.classList.remove("active");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
window.location.href.endsWith("#/email") ||
|
||||||
|
window.location.href.endsWith("#/shipping") ||
|
||||||
|
window.location.href.endsWith("#/profile")
|
||||||
|
) {
|
||||||
|
bullets[1].classList.add("active");
|
||||||
|
if (bullet != bullets[1]) {
|
||||||
|
bullet.classList.remove("active");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (window.location.href.endsWith("#/payment")) {
|
||||||
|
bullets[2].classList.add("active");
|
||||||
|
if (bullet != bullets[2]) {
|
||||||
|
bullet.classList.remove("active");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
const init = () => {
|
||||||
|
innerElement();
|
||||||
|
verifyCurrentRoute();
|
||||||
|
};
|
||||||
|
|
||||||
|
const remove = () => {
|
||||||
|
target.innerHTML = "";
|
||||||
|
};
|
||||||
|
|
||||||
|
return {
|
||||||
|
ref: target,
|
||||||
|
init,
|
||||||
|
remove,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
export default class Header {
|
export default class Header {
|
||||||
constructor() {
|
constructor() {
|
||||||
this.init();
|
this.init();
|
||||||
@ -8,14 +117,19 @@ export default class Header {
|
|||||||
|
|
||||||
async init() {
|
async init() {
|
||||||
await this.selectors();
|
await this.selectors();
|
||||||
console.log(this.item);
|
this.innerToProgressBar();
|
||||||
}
|
}
|
||||||
|
|
||||||
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
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
innerToProgressBar() {
|
||||||
|
let progress = OnProgress(this.progressBar);
|
||||||
|
|
||||||
|
progress.init();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,4 +2,5 @@
|
|||||||
@import "./lib/slick";
|
@import "./lib/slick";
|
||||||
@import "./partials/header";
|
@import "./partials/header";
|
||||||
@import "./partials/footer";
|
@import "./partials/footer";
|
||||||
|
@import "./partials/prateleira";
|
||||||
@import "./checkout/checkout.scss";
|
@import "./checkout/checkout.scss";
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,11 +1,3 @@
|
|||||||
body .container-main.container-order-form .orderform-template.active {
|
body .container-main.container-order-form .orderform-template.active {
|
||||||
.mini-cart {
|
--none-rules: #000;
|
||||||
width: 32.3242%;
|
|
||||||
margin-left: unset;
|
|
||||||
margin-right: 0;
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
.orderform-template-holder {
|
|
||||||
width: 66.1132%;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -1,38 +1,152 @@
|
|||||||
.empty-cart {
|
@mixin btn-secondary {
|
||||||
font-family: $font-family;
|
display: flex;
|
||||||
&-content {
|
align-items: center;
|
||||||
color: $color-black;
|
justify-content: center;
|
||||||
text-align: center;
|
|
||||||
|
|
||||||
@include mq(md, max) {
|
border: 1px solid $clr-common-black;
|
||||||
padding: 0 16px;
|
border-radius: 0;
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&-title {
|
font-weight: 400;
|
||||||
font-size: 20px;
|
font-family: $font-family-200;
|
||||||
}
|
|
||||||
|
|
||||||
&-links {
|
color: $clr-common-black;
|
||||||
.link-choose-products {
|
background-color: $clr-common-white;
|
||||||
background: $color-black;
|
}
|
||||||
border: none;
|
|
||||||
border-radius: 5px;
|
.container-main.container-cart {
|
||||||
transition: ease-in 0.22s all;
|
display: flex;
|
||||||
outline: none;
|
align-items: center;
|
||||||
font-family: $font-family;
|
justify-content: center;
|
||||||
font-style: normal;
|
flex-direction: column;
|
||||||
font-weight: 500;
|
|
||||||
font-size: 14px;
|
width: 100%;
|
||||||
line-height: 16px;
|
height: 100%;
|
||||||
text-align: center;
|
padding: 0 16px !important;
|
||||||
letter-spacing: 0.05em;
|
|
||||||
color: $color-white;
|
#cart-title {
|
||||||
text-transform: uppercase;
|
display: none !important;
|
||||||
|
}
|
||||||
&:hover {
|
|
||||||
background: lighten($color-black, 5);
|
.checkout-container,
|
||||||
}
|
.cart-template {
|
||||||
}
|
min-height: auto;
|
||||||
}
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.link-choose-products {
|
||||||
|
width: fluid(250px, 343px);
|
||||||
|
max-width: 250px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.transactions-container {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("lg") {
|
||||||
|
width: fluid(400px, 1280px);
|
||||||
|
padding: 0 !important;
|
||||||
|
max-width: none;
|
||||||
|
|
||||||
|
.link-choose-products {
|
||||||
|
width: fluid(327px, 400px);
|
||||||
|
max-width: 327px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("xxl") {
|
||||||
|
width: fluid(659px, 2500px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.empty-cart {
|
||||||
|
&-message {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.container-main.container-cart {
|
||||||
|
.empty-cart {
|
||||||
|
font-family: $font-family-100;
|
||||||
|
&-content {
|
||||||
|
color: $clr-gray-600;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
.empty-cart-title {
|
||||||
|
font-size: 0px;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
@include font-size("s-500");
|
||||||
|
line-height: 24.51px;
|
||||||
|
|
||||||
|
content: "Seu carrinho está vazio.";
|
||||||
|
text-align: center;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-links {
|
||||||
|
.link-choose-products {
|
||||||
|
@include btn-secondary();
|
||||||
|
|
||||||
|
transition: ease-in 0.22s all;
|
||||||
|
font-size: 0px;
|
||||||
|
padding: 16px 0;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
@include font-size("s-300");
|
||||||
|
line-height: 16px;
|
||||||
|
|
||||||
|
content: "Continuar Comprando";
|
||||||
|
|
||||||
|
font-style: normal;
|
||||||
|
letter-spacing: 0.05em;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: lighten($clr-gray-600, 5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-content {
|
||||||
|
@include mq("lg") {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("xl") {
|
||||||
|
.empty-cart-title {
|
||||||
|
&::before {
|
||||||
|
@include font-size("splus-100");
|
||||||
|
line-height: 32.68px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("xxl") {
|
||||||
|
&-content {
|
||||||
|
.empty-cart-title {
|
||||||
|
&::before {
|
||||||
|
@include font-size("sxplus");
|
||||||
|
line-height: 65.37px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-links {
|
||||||
|
.link-choose-products {
|
||||||
|
width: fluid(638.67px, 659px);
|
||||||
|
max-width: none;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
@include font-size("splus-200");
|
||||||
|
line-height: 32.76px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,21 +3,6 @@
|
|||||||
@import "./checkout-pagamento";
|
@import "./checkout-pagamento";
|
||||||
@import "./checkout-autenticacao";
|
@import "./checkout-autenticacao";
|
||||||
|
|
||||||
html {
|
|
||||||
height: 100%;
|
|
||||||
min-height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
footer .footerCheckout__wrapper {
|
|
||||||
width: 94.9734%;
|
|
||||||
margin: auto auto 0 auto;
|
|
||||||
}
|
|
||||||
footer .footerCheckout__prateleira,
|
|
||||||
header {
|
|
||||||
width: 79.53125%;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
body {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@ -29,7 +14,7 @@ body {
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.body-cart {
|
&.body-cart {
|
||||||
font-family: $font-family;
|
font-family: $font-family-100;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.body-cart,
|
&.body-cart,
|
||||||
@ -47,38 +32,38 @@ body {
|
|||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.container-order-form,
|
}
|
||||||
.container-cart {
|
|
||||||
width: 80%;
|
.container-cart {
|
||||||
}
|
min-height: 70vh;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-success {
|
.btn-success {
|
||||||
background: $color-black;
|
background: $clr-gray-600;
|
||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: lighten($color-black, 15%);
|
background: lighten($clr-gray-600, 15%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.emailInfo h3 {
|
.emailInfo h3 {
|
||||||
color: $color-black !important;
|
color: $clr-gray-600 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
#cart-title,
|
#cart-title,
|
||||||
#orderform-title {
|
#orderform-title {
|
||||||
color: $color-gray2;
|
color: $clr-common-black;
|
||||||
font-family: $font-family;
|
font-family: $font-family-100;
|
||||||
font-weight: 500;
|
font-weight: 700;
|
||||||
font-size: 36px;
|
font-size: 24px;
|
||||||
line-height: 42px;
|
line-height: 42px;
|
||||||
margin: 40px 0 30px;
|
margin: 16px 0;
|
||||||
letter-spacing: 0.1em;
|
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
|
@media screen and (min-width: 2500px) {
|
||||||
|
font-size: 48px;
|
||||||
|
|
||||||
@include mq(md, max) {
|
line-height: 65px;
|
||||||
margin-left: 30px;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -96,7 +81,7 @@ body {
|
|||||||
&::before,
|
&::before,
|
||||||
&::after {
|
&::after {
|
||||||
content: "";
|
content: "";
|
||||||
background: $color-gray2;
|
background: $clr-gray-400;
|
||||||
display: block;
|
display: block;
|
||||||
float: right;
|
float: right;
|
||||||
height: 2px;
|
height: 2px;
|
||||||
|
@ -101,14 +101,32 @@
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
}
|
}
|
||||||
.slick-prev {
|
.slick-prev {
|
||||||
background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-left-mini-M3Academy.svg")
|
|
||||||
no-repeat center center;
|
|
||||||
z-index: 4;
|
z-index: 4;
|
||||||
left: 10px;
|
left: 10px;
|
||||||
|
background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-left-mini-M3Academy.svg")
|
||||||
|
no-repeat center center;
|
||||||
|
|
||||||
|
@media screen and (min-width: 2500px) {
|
||||||
|
height: 57.99px;
|
||||||
|
width: 26px;
|
||||||
|
|
||||||
|
background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-left-M3Academy.svg")
|
||||||
|
no-repeat center center / cover;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.slick-next {
|
.slick-next {
|
||||||
z-index: 4;
|
z-index: 4;
|
||||||
right: 10px;
|
right: 10px;
|
||||||
|
background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-right-mini-M3Academy.svg")
|
||||||
|
no-repeat center center;
|
||||||
|
|
||||||
|
@media screen and (min-width: 2500px) {
|
||||||
|
height: 57.99px;
|
||||||
|
width: 26px;
|
||||||
|
|
||||||
|
background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-right-M3Academy.svg")
|
||||||
|
no-repeat center center / cover;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.slick-arrow.slick-hidden {
|
.slick-arrow.slick-hidden {
|
||||||
display: none;
|
display: none;
|
||||||
|
@ -1,54 +1,168 @@
|
|||||||
/* _footer.scss */
|
/* prettier-ignore*/
|
||||||
.footerCheckout {
|
.footerCheckout {
|
||||||
border-top: none;
|
color: $clr-gray-400;
|
||||||
color: $color-gray2;
|
|
||||||
|
|
||||||
&__wrapper {
|
&__wrapper {
|
||||||
align-items: center;
|
border-top: 1px solid $clr-common-black;
|
||||||
display: flex;
|
padding: 16px 25px 18.88px 8px;
|
||||||
justify-content: space-between;
|
}
|
||||||
|
|
||||||
|
&__stamps {
|
||||||
|
order: 0;
|
||||||
|
margin: 0 0 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&__address {
|
&__address {
|
||||||
color: $color-gray2;
|
order: 1;
|
||||||
font-family: $font-family;
|
margin: 0 0 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__developedBy {
|
||||||
|
order: 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* prettier-ignore*/
|
||||||
|
.footerCheckout {
|
||||||
|
.container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
|
&::before,
|
||||||
|
&::after {
|
||||||
|
content: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout {
|
||||||
|
&__developedBy a,
|
||||||
|
&__developedBy,
|
||||||
|
&__wrapper,
|
||||||
|
&__stamps {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__wrapper {
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout {
|
||||||
|
@include mq("md") {
|
||||||
|
&__stamps {
|
||||||
|
width: 34.510595358%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__wrapper {
|
||||||
|
padding: 16px 0;
|
||||||
|
|
||||||
|
.container {
|
||||||
|
width: 94.9734%;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("lg") {
|
||||||
|
.container {
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__wrapper {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__address {
|
||||||
|
order: 0;
|
||||||
|
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__stamps {
|
||||||
|
order: 1;
|
||||||
|
|
||||||
|
width: 33.223684211%;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__developedBy {
|
||||||
|
order: 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("xxl") {
|
||||||
|
&__address {
|
||||||
|
span {
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__stamps {
|
||||||
|
width: 29.074771156%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__developedBy {
|
||||||
|
span {
|
||||||
|
font-size: map-get($text-sizes, "s-500");
|
||||||
|
line-height: 24.51px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout {
|
||||||
|
&__creditList {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 4px;
|
||||||
|
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__creditItem,
|
||||||
|
&__verificatedVtex {
|
||||||
|
max-width: 100%;
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout {
|
||||||
|
&__address {
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
font-size: 10px;
|
font-size: 10px;
|
||||||
line-height: 12px;
|
line-height: 12px;
|
||||||
text-transform: capitalize;
|
text-transform: capitalize;
|
||||||
max-width: 40%;
|
|
||||||
|
|
||||||
@include mq(md, max) {
|
color: $clr-gray-400;
|
||||||
margin-bottom: 24px;
|
|
||||||
max-width: 100%;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout {
|
||||||
&__stamps {
|
&__stamps {
|
||||||
align-items: center;
|
|
||||||
display: flex;
|
|
||||||
justify-self: center;
|
|
||||||
list-style: none;
|
|
||||||
|
|
||||||
@include mq(md, max) {
|
|
||||||
align-self: center;
|
|
||||||
margin-bottom: 12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&__divider {
|
&__divider {
|
||||||
background-color: $color-gray4;
|
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
|
||||||
|
width: 1px;
|
||||||
height: 24px;
|
height: 24px;
|
||||||
margin: 0 8px;
|
margin: 0 8px;
|
||||||
width: 1px;
|
|
||||||
|
background-color: $clr-gray-300;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout {
|
||||||
&__developedBy {
|
&__developedBy {
|
||||||
align-items: center;
|
|
||||||
display: flex;
|
|
||||||
list-style-type: none;
|
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
|
||||||
li:last-child {
|
li:last-child {
|
||||||
@ -56,19 +170,23 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
align-items: center;
|
|
||||||
color: $color-gray2;
|
|
||||||
display: flex;
|
|
||||||
font-family: $font-family;
|
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
font-size: 10px;
|
font-size: 10px;
|
||||||
line-height: 12px;
|
line-height: 12px;
|
||||||
|
font-family: $font-family-100;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
|
|
||||||
|
color: $clr-gray-400;
|
||||||
|
|
||||||
span {
|
span {
|
||||||
margin-right: 8px;
|
margin-right: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 32px;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,36 +1,300 @@
|
|||||||
/* _header.scss */
|
/* _header.scss */
|
||||||
.headerCheckout {
|
|
||||||
.container {
|
body {
|
||||||
width: auto !important;
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
body * {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
body :where(ul, li, ol) {
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@function fluid($width, $design-width) {
|
||||||
|
$width: calc($width / $design-width * 100);
|
||||||
|
|
||||||
|
$width: quote($width + "%");
|
||||||
|
|
||||||
|
@return unquote($width);
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin font-size($size) {
|
||||||
|
$content: $text-sizes;
|
||||||
|
|
||||||
|
@if map-has-key($content, $size) {
|
||||||
|
font-size: map-get($content, $size);
|
||||||
}
|
}
|
||||||
&__wrapper {
|
}
|
||||||
align-items: center;
|
|
||||||
display: flex;
|
.headerCheckout {
|
||||||
justify-content: space-between;
|
position: sticky;
|
||||||
|
position: -webkit-sticky;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
background: $clr-common-white;
|
||||||
|
width: 100%;
|
||||||
|
padding: 16px;
|
||||||
|
border-bottom: 1px solid $clr-common-black;
|
||||||
|
z-index: 10000;
|
||||||
|
|
||||||
|
.container {
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&__logo {
|
&__wrapper,
|
||||||
img {
|
&__safeBuy {
|
||||||
height: 52px;
|
display: flex;
|
||||||
width: auto;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&__wrapper {
|
||||||
|
justify-content: space-between;
|
||||||
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
&__safeBuy {
|
&__safeBuy {
|
||||||
span {
|
gap: 8px;
|
||||||
align-items: center;
|
|
||||||
display: flex;
|
width: 100%;
|
||||||
text-transform: uppercase;
|
max-width: 119px;
|
||||||
font-family: $font-family;
|
}
|
||||||
font-style: normal;
|
}
|
||||||
font-weight: normal;
|
|
||||||
font-size: 12px;
|
.headerCheckout__safeBuy {
|
||||||
line-height: 14px;
|
span {
|
||||||
color: $color-gray;
|
@include font-size("s-200");
|
||||||
|
line-height: 16.34px;
|
||||||
|
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: normal;
|
||||||
|
font-family: $font-family-100;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 12px;
|
||||||
|
height: 13px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.headerCheckout__logo {
|
||||||
|
width: fluid(155.58px, 343px);
|
||||||
|
height: auto;
|
||||||
|
max-width: 155.58px;
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.headerCheckout {
|
||||||
|
.progress-bar {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.headerCheckout {
|
||||||
|
@include mq("lg") {
|
||||||
|
padding: 29px 0;
|
||||||
|
|
||||||
|
&__wrapper {
|
||||||
|
width: fluid(1018px, 1280px);
|
||||||
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
i {
|
.progress-bar {
|
||||||
margin-right: 8px;
|
display: flex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("xxl") {
|
||||||
|
$width-container: 1988.28px;
|
||||||
|
|
||||||
|
&__wrapper {
|
||||||
|
width: fluid($width-container, 2500px);
|
||||||
|
}
|
||||||
|
|
||||||
|
&__logo {
|
||||||
|
width: fluid(382.07px, $width-container);
|
||||||
|
max-width: none;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__safeBuy {
|
||||||
|
width: fluid(235.28px, $width-container);
|
||||||
|
max-width: none;
|
||||||
|
|
||||||
|
span {
|
||||||
|
@include font-size("splus-100");
|
||||||
|
line-height: 32.68px;
|
||||||
|
font-family: $font-family-100;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 29.47px;
|
||||||
|
height: 41.46px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.headerCheckout {
|
||||||
|
.progress-bar {
|
||||||
|
width: 439px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-list,
|
||||||
|
.progress-item,
|
||||||
|
.progress-container,
|
||||||
|
.progress-content {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-list {
|
||||||
|
justify-content: space-between;
|
||||||
|
width: 100%;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-item,
|
||||||
|
.progress-container,
|
||||||
|
.progress-content {
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-container {
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-content {
|
||||||
|
gap: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-item {
|
||||||
|
@include font-size("s-200");
|
||||||
|
line-height: 14.04px;
|
||||||
|
|
||||||
|
font-family: $font-family-200;
|
||||||
|
|
||||||
|
&--left,
|
||||||
|
&--right {
|
||||||
|
width: 40%;
|
||||||
|
|
||||||
|
.progress-line {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 6px;
|
||||||
|
|
||||||
|
width: 100%;
|
||||||
|
height: 1px;
|
||||||
|
border-bottom: 1px solid #000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&--left {
|
||||||
|
.progress-container {
|
||||||
|
align-items: flex-start;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-line {
|
||||||
|
left: 75%;
|
||||||
|
transform: translateX(-50%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&--center {
|
||||||
|
width: 90px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&--right {
|
||||||
|
.progress-container {
|
||||||
|
align-items: flex-end;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-line {
|
||||||
|
right: 72%;
|
||||||
|
transform: translateX(50%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-bullet {
|
||||||
|
$square-size: 12px;
|
||||||
|
|
||||||
|
position: relative;
|
||||||
|
z-index: 10;
|
||||||
|
|
||||||
|
width: $square-size;
|
||||||
|
height: $square-size;
|
||||||
|
border: 1px solid $clr-common-black;
|
||||||
|
border-radius: 100%;
|
||||||
|
|
||||||
|
background-color: $clr-common-white;
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
background-color: $clr-common-black;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.headerCheckout {
|
||||||
|
@include mq("xxl") {
|
||||||
|
.progress-bar {
|
||||||
|
width: 1078.86px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-list {
|
||||||
|
justify-content: initial;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-item {
|
||||||
|
@include font-size("splus-100");
|
||||||
|
line-height: 28.08px;
|
||||||
|
|
||||||
|
&--left,
|
||||||
|
&--right {
|
||||||
|
width: fluid(444px, 1078.86px);
|
||||||
|
|
||||||
|
.progress-line {
|
||||||
|
bottom: 12px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&--left {
|
||||||
|
.progress-line {
|
||||||
|
left: 67%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&--center {
|
||||||
|
width: auto;
|
||||||
|
max-width: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
&--right {
|
||||||
|
.progress-line {
|
||||||
|
right: 67%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress-bullet {
|
||||||
|
$square-size: 24px;
|
||||||
|
|
||||||
|
width: $square-size;
|
||||||
|
height: $square-size;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1 +1,175 @@
|
|||||||
/* _prateleira.scss */
|
/* _prateleira.scss */
|
||||||
|
|
||||||
|
.footerCheckout__prateleira {
|
||||||
|
width: 100%;
|
||||||
|
padding: 0 8px;
|
||||||
|
margin: 43.42px 0 54px;
|
||||||
|
|
||||||
|
.slick-arrow {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
|
||||||
|
width: 13.64px;
|
||||||
|
height: 29.47px;
|
||||||
|
|
||||||
|
border: none;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout__prateleira {
|
||||||
|
&-title {
|
||||||
|
width: 100%;
|
||||||
|
padding: 0 8px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
font-family: $font-family-200;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
color: $clr-common-black;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout__prateleira {
|
||||||
|
.product-item-container {
|
||||||
|
margin: 0 8px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout__prateleira {
|
||||||
|
.product-item {
|
||||||
|
&-figure {
|
||||||
|
width: 100%;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout__prateleira {
|
||||||
|
.product-item {
|
||||||
|
&-name,
|
||||||
|
&-link,
|
||||||
|
.type-name {
|
||||||
|
@include font-size("s-250");
|
||||||
|
line-height: 24px;
|
||||||
|
font-family: $font-family-100;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout__prateleira {
|
||||||
|
.product-item {
|
||||||
|
&-name {
|
||||||
|
min-height: 36px;
|
||||||
|
height: 36px;
|
||||||
|
font-weight: 400;
|
||||||
|
font-family: $font-family-100;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
@media screen and (max-width:410px) {
|
||||||
|
height: 53px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-types {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
gap: 5px;
|
||||||
|
min-height: 68px;
|
||||||
|
height: 68px
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout__prateleira {
|
||||||
|
.product-item {
|
||||||
|
&-link {
|
||||||
|
@include btn-primary-blue-white();
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
width: 100%;
|
||||||
|
padding: 12px 0;
|
||||||
|
border-radius: 8px;
|
||||||
|
|
||||||
|
font-weight: 700;
|
||||||
|
letter-spacing: 5;
|
||||||
|
|
||||||
|
color: $clr-common-white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.product-type-container {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
height: 28px;
|
||||||
|
border-radius: 8px;
|
||||||
|
|
||||||
|
background-color: $clr-primary-blue-500;
|
||||||
|
}
|
||||||
|
|
||||||
|
.type-name {
|
||||||
|
padding: 5px;
|
||||||
|
|
||||||
|
font-weight: 700;
|
||||||
|
letter-spacing: 5;
|
||||||
|
font-family: $font-family-100;
|
||||||
|
|
||||||
|
color: $clr-common-white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footerCheckout__prateleira {
|
||||||
|
@include mq("lg") {
|
||||||
|
width: fluid(1034px, 1280px);
|
||||||
|
margin: 43.42px auto 56px;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("md") {
|
||||||
|
&-title {
|
||||||
|
@include font-size("splus-100");
|
||||||
|
line-height: 38px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@include mq("xxl") {
|
||||||
|
&-title {
|
||||||
|
@include font-size("sxplus");
|
||||||
|
line-height: 76px;
|
||||||
|
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.product-item {
|
||||||
|
&-name,
|
||||||
|
&-link,
|
||||||
|
.type-name {
|
||||||
|
@include font-size("splus-200");
|
||||||
|
line-height: 35.41px;
|
||||||
|
|
||||||
|
font-family: $font-family-100;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.product-item-container {
|
||||||
|
margin: 0 9.965px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -1,183 +1,217 @@
|
|||||||
|
@use "sass:meta";
|
||||||
|
|
||||||
|
@mixin btn-primary-blue-black() {
|
||||||
|
border: none;
|
||||||
|
color: $clr-common-black;
|
||||||
|
background: $clr-primary-blue-500;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin btn-primary-blue-white() {
|
||||||
|
border: none;
|
||||||
|
color: $clr-common-white;
|
||||||
|
background: $clr-primary-blue-500;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin text-size($size) {
|
||||||
|
@if map_has_key($text-sizes, $size) {
|
||||||
|
$size: map_get($text-sizes, $size);
|
||||||
|
|
||||||
|
font-size: $size;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @reference (https://github.com/engageinteractive/core/blob/master/src/scss/utility/_mixins.scss)
|
* @reference (https://github.com/engageinteractive/core/blob/master/src/scss/utility/_mixins.scss)
|
||||||
*/
|
*/
|
||||||
@mixin push--auto {
|
@mixin push--auto {
|
||||||
margin: {
|
margin: {
|
||||||
left: auto;
|
left: auto;
|
||||||
right: auto;
|
right: auto;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@mixin pseudo($display: block, $pos: absolute, $content: ''){
|
@mixin pseudo($display: block, $pos: absolute, $content: "") {
|
||||||
content: $content;
|
content: $content;
|
||||||
display: $display;
|
display: $display;
|
||||||
position: $pos;
|
position: $pos;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@mixin position($top: false, $right: false, $bottom: false, $left: false) {
|
||||||
@mixin position($top: false,$right: false, $bottom:false, $left: false){
|
@if ($top) {
|
||||||
@if( $top ){
|
top: $top;
|
||||||
top:$top;
|
}
|
||||||
}
|
@if ($right) {
|
||||||
@if( $right ){
|
right: $right;
|
||||||
right:$right;
|
}
|
||||||
}
|
@if ($left) {
|
||||||
@if( $left ){
|
left: $left;
|
||||||
left:$left;
|
}
|
||||||
}
|
@if ($bottom) {
|
||||||
@if( $bottom ){
|
bottom: $bottom;
|
||||||
bottom:$bottom;
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin responsive-ratio($x,$y, $pseudo: false) {
|
@mixin responsive-ratio($x, $y, $pseudo: false) {
|
||||||
$padding: unquote( ( $y / $x ) * 100 + '%' );
|
$padding: unquote(($y / $x) * 100 + "%");
|
||||||
@if $pseudo {
|
@if $pseudo {
|
||||||
&:before {
|
&:before {
|
||||||
@include pseudo($pos: relative);
|
@include pseudo($pos: relative);
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding-top: $padding;
|
padding-top: $padding;
|
||||||
}
|
}
|
||||||
} @else {
|
} @else {
|
||||||
padding-top: $padding;
|
padding-top: $padding;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin css-triangle($color, $direction, $size: 6px, $position: absolute, $round: false){
|
@mixin css-triangle($color, $direction, $size: 6px, $position: absolute, $round: false) {
|
||||||
@include pseudo($pos: $position);
|
@include pseudo($pos: $position);
|
||||||
width: 0;
|
width: 0;
|
||||||
height: 0;
|
height: 0;
|
||||||
@if $round {
|
@if $round {
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
}
|
}
|
||||||
@if $direction == down {
|
@if $direction == down {
|
||||||
border-left: $size solid transparent;
|
border-left: $size solid transparent;
|
||||||
border-right: $size solid transparent;
|
border-right: $size solid transparent;
|
||||||
border-top: $size solid $color;
|
border-top: $size solid $color;
|
||||||
margin-top: 0 - round( $size / 2.5 );
|
margin-top: 0 - round($size / 2.5);
|
||||||
} @else if $direction == up {
|
} @else if $direction == up {
|
||||||
border-left: $size solid transparent;
|
border-left: $size solid transparent;
|
||||||
border-right: $size solid transparent;
|
border-right: $size solid transparent;
|
||||||
border-bottom: $size solid $color;
|
border-bottom: $size solid $color;
|
||||||
margin-bottom: 0 - round( $size / 2.5 );
|
margin-bottom: 0 - round($size / 2.5);
|
||||||
} @else if $direction == right {
|
} @else if $direction == right {
|
||||||
border-top: $size solid transparent;
|
border-top: $size solid transparent;
|
||||||
border-bottom: $size solid transparent;
|
border-bottom: $size solid transparent;
|
||||||
border-left: $size solid $color;
|
border-left: $size solid $color;
|
||||||
margin-right: -$size;
|
margin-right: -$size;
|
||||||
} @else if $direction == left {
|
} @else if $direction == left {
|
||||||
border-top: $size solid transparent;
|
border-top: $size solid transparent;
|
||||||
border-bottom: $size solid transparent;
|
border-bottom: $size solid transparent;
|
||||||
border-right: $size solid $color;
|
border-right: $size solid $color;
|
||||||
margin-left: -$size;
|
margin-left: -$size;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin input-placeholder {
|
@mixin input-placeholder {
|
||||||
&.placeholder { @content; }
|
&.placeholder {
|
||||||
&:-moz-placeholder { @content; }
|
@content;
|
||||||
&::-moz-placeholder { @content; }
|
}
|
||||||
&:-ms-input-placeholder { @content; }
|
&:-moz-placeholder {
|
||||||
&::-webkit-input-placeholder { @content; }
|
@content;
|
||||||
|
}
|
||||||
|
&::-moz-placeholder {
|
||||||
|
@content;
|
||||||
|
}
|
||||||
|
&:-ms-input-placeholder {
|
||||||
|
@content;
|
||||||
|
}
|
||||||
|
&::-webkit-input-placeholder {
|
||||||
|
@content;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin hardware($backface: true, $perspective: 1000) {
|
@mixin hardware($backface: true, $perspective: 1000) {
|
||||||
@if $backface {
|
@if $backface {
|
||||||
backface-visibility: hidden;
|
backface-visibility: hidden;
|
||||||
}
|
}
|
||||||
perspective: $perspective;
|
perspective: $perspective;
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin truncate($truncation-boundary) {
|
@mixin truncate($truncation-boundary) {
|
||||||
max-width: $truncation-boundary;
|
max-width: $truncation-boundary;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin appearance($val: none) {
|
@mixin appearance($val: none) {
|
||||||
-webkit-appearance: $val;
|
-webkit-appearance: $val;
|
||||||
-moz-appearance: $val;
|
-moz-appearance: $val;
|
||||||
appearance: $val;
|
appearance: $val;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@mixin separador($cor, $p-right: 5px) {
|
||||||
@mixin separador($cor,$p-right: 5px) {
|
position: relative;
|
||||||
position: relative;
|
padding-right: $p-right;
|
||||||
padding-right: $p-right;
|
display: inline-block;
|
||||||
display: inline-block;
|
&:after {
|
||||||
&:after{
|
content: " ";
|
||||||
content:' ';
|
display: block;
|
||||||
display: block;
|
width: 1px;
|
||||||
width: 1px;
|
height: 100%;
|
||||||
height: 100%;
|
position: absolute;
|
||||||
position: absolute;
|
top: 50%;
|
||||||
top: 50%;
|
right: 0;
|
||||||
right: 0;
|
transform: translateY(-50%);
|
||||||
transform: translateY(-50%);
|
background-color: $cor;
|
||||||
background-color: $cor;
|
}
|
||||||
}
|
&:last-child:after {
|
||||||
&:last-child:after{
|
display: none;
|
||||||
display: none;
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin mq($width, $type: min) {
|
@mixin mq($width, $type: min) {
|
||||||
@if map_has_key($grid-breakpoints, $width) {
|
@if map_has_key($grid-breakpoints, $width) {
|
||||||
$width: map_get($grid-breakpoints, $width);
|
$width: map_get($grid-breakpoints, $width);
|
||||||
@if $type == max {
|
@if $type == max {
|
||||||
$width: $width - 1px;
|
$width: $width - 1px;
|
||||||
}
|
}
|
||||||
@media only screen and (#{$type}-width: $width) {
|
@media only screen and (#{$type}-width: $width) {
|
||||||
@content;
|
@content;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin mq_range($min, $max) {
|
@mixin mq_range($min, $max) {
|
||||||
@if (map_has_key($grid-breakpoints, $min) and map_has_key($grid-breakpoints, $max)) {
|
@if (map_has_key($grid-breakpoints, $min) and map_has_key($grid-breakpoints, $max)) {
|
||||||
|
$width_max: map_get($grid-breakpoints, $max);
|
||||||
$width_max: map_get($grid-breakpoints, $max);
|
$width_min: map_get($grid-breakpoints, $min);
|
||||||
$width_min: map_get($grid-breakpoints, $min);
|
$width_max: $width_max - 1px;
|
||||||
$width_max: $width_max - 1px;
|
@media only screen and (min-width: $width_min) and (max-width: $width_max) {
|
||||||
@media only screen and (min-width: $width_min) and (max-width:$width_max) {
|
@content;
|
||||||
@content;
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin z-index($nome:'',$soma:0){
|
@mixin z-index($nome: "", $soma: 0) {
|
||||||
@if map_has_key($z-index, $nome) {
|
@if map_has_key($z-index, $nome) {
|
||||||
z-index: (map_get($z-index,$nome )+$soma) ;
|
z-index: (map_get($z-index, $nome) + $soma);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin scrollbar($width:8px,$bg-color:#eee, $trak-color:#aaa,$trak-color-hover:#999,$border-radius:0 ){
|
@mixin scrollbar(
|
||||||
&::-webkit-scrollbar {
|
$width: 8px,
|
||||||
width: $width;
|
$bg-color: #eee,
|
||||||
}
|
$trak-color: #aaa,
|
||||||
|
$trak-color-hover: #999,
|
||||||
|
$border-radius: 0
|
||||||
|
) {
|
||||||
|
&::-webkit-scrollbar {
|
||||||
|
width: $width;
|
||||||
|
}
|
||||||
|
|
||||||
&::-webkit-scrollbar-track {
|
&::-webkit-scrollbar-track {
|
||||||
background-color: $bg-color;
|
background-color: $bg-color;
|
||||||
border-radius: $border-radius;
|
border-radius: $border-radius;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::-webkit-scrollbar-thumb {
|
&::-webkit-scrollbar-thumb {
|
||||||
background-color: $trak-color;
|
background-color: $trak-color;
|
||||||
border-radius: $border-radius;
|
border-radius: $border-radius;
|
||||||
&:hover {
|
&:hover {
|
||||||
background: $trak-color-hover;
|
background: $trak-color-hover;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@function map-get-next($map, $key, $fallback: false, $return: value) {
|
@function map-get-next($map, $key, $fallback: false, $return: value) {
|
||||||
|
|
||||||
// Check if map is valid
|
// Check if map is valid
|
||||||
@if type-of($map) == map {
|
@if type-of($map) == map {
|
||||||
|
|
||||||
// Check if key exists in map
|
// Check if key exists in map
|
||||||
@if map-has-key($map, $key) {
|
@if map-has-key($map, $key) {
|
||||||
|
|
||||||
// Init index counter variable
|
// Init index counter variable
|
||||||
$i: 0;
|
$i: 0;
|
||||||
|
|
||||||
|
@ -1,38 +1,61 @@
|
|||||||
/* fonts */
|
/* fonts */
|
||||||
@import url("https://fonts.googleapis.com/css2?family=Tenor+Sans&display=swap");
|
@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");
|
@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-100: "Open Sans", sans-serif;
|
||||||
$font-family-secundary:"Tenor Sans", sans-serif;
|
$font-family-200: "Tenor Sans", sans-serif;
|
||||||
|
|
||||||
/* Colors */
|
/* Colors */
|
||||||
$color-black: #292929;
|
$clr-common-black: #000;
|
||||||
|
$clr-common-white: #fff;
|
||||||
|
|
||||||
$color-white: #fff;
|
$clr-gray-600: #292929;
|
||||||
|
$clr-gray-500: #6c6c6c;
|
||||||
|
$clr-gray-400: #7d7d7d;
|
||||||
|
$clr-gray-300: #8d8d8d;
|
||||||
|
$clr-gray-250: #c4c4c4;
|
||||||
|
$clr-gray-200: #e5e5e5;
|
||||||
|
$clr-gray-100: #f0f0f0;
|
||||||
|
|
||||||
$color-gray: #6c6c6c;
|
$clr-blue-500: #4267b2;
|
||||||
$color-gray2: #7d7d7d;
|
|
||||||
$color-gray3: #f0f0f0;
|
|
||||||
$color-gray4: #8d8d8d;
|
|
||||||
$color-gray5: #e5e5e5;
|
|
||||||
|
|
||||||
$color-blue: #4267b2;
|
$clr-green-500: #4caf50;
|
||||||
|
|
||||||
$color-green: #4caf50;
|
$clr-primary-blue-500: #00c8ff;
|
||||||
|
|
||||||
|
/*prettier-ignore*/
|
||||||
|
$text-sizes: (
|
||||||
|
"s-050": 9px,
|
||||||
|
"s-100": 10px,
|
||||||
|
"s-200": 12px,
|
||||||
|
"s-250": 13px,
|
||||||
|
"s-300": 14px,
|
||||||
|
"s-400": 16px,
|
||||||
|
"s-500": 18px, // MAIN
|
||||||
|
"s-600": 20px,
|
||||||
|
"splus-100": 24px,
|
||||||
|
"splus-200": 26px,
|
||||||
|
"splus-300": 28px,
|
||||||
|
"splus-500": 32px,
|
||||||
|
"splus-700": 36px,
|
||||||
|
"splus-900": 40px,
|
||||||
|
"sxplus": 48px,
|
||||||
|
) !default;
|
||||||
|
|
||||||
/* Grid breakpoints */
|
/* Grid breakpoints */
|
||||||
$grid-breakpoints: (
|
$grid-breakpoints: (
|
||||||
xs: 0,
|
xxs: 0,
|
||||||
cstm: 400,
|
xs: 280px,
|
||||||
sm: 576px,
|
sm: 375px,
|
||||||
md: 768px,
|
md: 600px,
|
||||||
lg: 992px,
|
lg: 1025px,
|
||||||
xl: 1200px
|
xl: 1280px,
|
||||||
|
xxl: 2500px,
|
||||||
) !default;
|
) !default;
|
||||||
|
|
||||||
$z-index: (
|
$z-index: (
|
||||||
level1: 5,
|
level-100: 5,
|
||||||
level2: 10,
|
level-200: 10,
|
||||||
level3: 15,
|
level-300: 15,
|
||||||
level4: 20,
|
level-400: 20,
|
||||||
level5: 25
|
level-500: 25,
|
||||||
) !default;
|
) !default;
|
||||||
|
@ -1,20 +1,31 @@
|
|||||||
<!-- Esse arquivo é só um demonstrativo de como está o html do header do checkout atualmente,
|
<!-- Esse arquivo é só um demonstrativo de como está o html do header do checkout atualmente,
|
||||||
MODIFICA-LO NÃO CAUSARÁ EFEITO ALGUM, todo html que for modificado no header, deverá ser feito através de javaScript. -->
|
MODIFICA-LO NÃO CAUSARÁ EFEITO ALGUM, todo html que for modificado no header, deverá ser feito através de javaScript. -->
|
||||||
|
|
||||||
<header class="headerCheckout">
|
<header class="headerCheckout w-100 h-auto">
|
||||||
<div class="container">
|
<div class="container w-100 h-auto">
|
||||||
<div class="headerCheckout__wrapper">
|
<div class="headerCheckout__wrapper d-flex align-items-center jus-between">
|
||||||
<div class="headerCheckout__logo">
|
<div class="headerCheckout__logo w-PERCENT">
|
||||||
<a href="/">
|
<a class="w-100 h-100" href="/">
|
||||||
<img src="https://agenciamagma.vteximg.com.br/arquivos/LogoM3Academy.png" alt="M3 Academy"/>
|
<img
|
||||||
</a>
|
class="w-100 h-100"
|
||||||
</div>
|
src="https://agenciamagma.vteximg.com.br/arquivos/LogoM3Academy.png"
|
||||||
<div id="progressBar" class="progress-bar"> Aqui entra a barra de progresso
|
alt="M3 Academy"
|
||||||
</div>
|
/>
|
||||||
<div class="headerCheckout__safeBuy">
|
</a>
|
||||||
<img src="https://agenciamagma.vteximg.com.br/arquivos/cadeadoCompraSegM3Academy.png" alt="Cadeado"/>
|
</div>
|
||||||
<span>Compra segura</span>
|
|
||||||
</div>
|
<div id="progressBar w-DEFINE-FIXED" class="progress-bar">
|
||||||
|
<ul class="progress-list w-100 pos-relative d-flex jus-between"></ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="headerCheckout__safeBuy w-PERCENT">
|
||||||
|
<img
|
||||||
|
class="w-100 h-100"
|
||||||
|
src="https://agenciamagma.vteximg.com.br/arquivos/cadeadoCompraSegM3Academy.png"
|
||||||
|
alt="Cadeado"
|
||||||
|
/>
|
||||||
|
<span class="fz-12">Compra segura</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</div>
|
||||||
|
</header>
|
||||||
|
2
package-lock.json
generated
2
package-lock.json
generated
@ -45,6 +45,7 @@
|
|||||||
"jquery": "^3.6.0",
|
"jquery": "^3.6.0",
|
||||||
"m3-utils": "^0.1.0",
|
"m3-utils": "^0.1.0",
|
||||||
"sass": "^1.38.1",
|
"sass": "^1.38.1",
|
||||||
|
"slick-carousel": "^1.8.1",
|
||||||
"terser-webpack-plugin": "^5.1.4"
|
"terser-webpack-plugin": "^5.1.4"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
@ -19345,6 +19346,7 @@
|
|||||||
"m3-utils": "^0.1.0",
|
"m3-utils": "^0.1.0",
|
||||||
"prettier": "^2.3.2",
|
"prettier": "^2.3.2",
|
||||||
"sass": "^1.38.1",
|
"sass": "^1.38.1",
|
||||||
|
"slick-carousel": "^1.8.1",
|
||||||
"terser-webpack-plugin": "^5.1.4",
|
"terser-webpack-plugin": "^5.1.4",
|
||||||
"webpack": "^5.51.1",
|
"webpack": "^5.51.1",
|
||||||
"webpack-merge": "^5.8.0"
|
"webpack-merge": "^5.8.0"
|
||||||
|
Loading…
Reference in New Issue
Block a user