From 609d86e8d8640edb8605a3f80189e36994b4b8be Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Feb 2023 13:43:25 -0300 Subject: [PATCH 01/10] =?UTF-8?q?feat:=20adiciona=20estiliza=C3=A7=C3=A3o?= =?UTF-8?q?=20da=20parte=20de=20cima=20do=20produto?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- manifest.json | 1 - react/components/Html/index.tsx | 79 +- react/placeholder.tsx | 14 + store/blocks/pdp/product.jsonc | 42 +- store/interfaces.json | 3 + styles/configs/style.json | 688 +++++++++--------- styles/css/agenciamagma.store-theme.css | 3 +- styles/css/vtex.address-form.css | 9 + styles/css/vtex.breadcrumb.css | 25 + styles/css/vtex.flex-layout.css | 120 +-- styles/css/vtex.login.css | 15 + styles/css/vtex.numeric-stepper.css | 12 + styles/css/vtex.product-price.css | 99 +-- styles/css/vtex.product-quantity.css | 47 ++ styles/css/vtex.rich-text.css | 1 + styles/css/vtex.store-components.css | 312 +++++++- styles/css/vtex.tab-layout.css | 73 ++ .../product/agenciamagma.store-theme.scss | 3 +- .../sass/pages/product/vtex.breadcrumb.scss | 17 + .../sass/pages/product/vtex.flex-layout.scss | 25 + styles/sass/pages/product/vtex.login.scss | 5 + .../pages/product/vtex.product-price.scss | 24 + .../pages/product/vtex.product-quantity.scss | 37 + .../pages/product/vtex.store-components.scss | 353 ++++++++- styles/sass/utils/_vars.scss | 24 +- 25 files changed, 1463 insertions(+), 568 deletions(-) create mode 100644 react/placeholder.tsx create mode 100644 styles/css/vtex.address-form.css create mode 100644 styles/css/vtex.breadcrumb.css create mode 100644 styles/css/vtex.login.css create mode 100644 styles/css/vtex.numeric-stepper.css create mode 100644 styles/css/vtex.product-quantity.css create mode 100644 styles/css/vtex.tab-layout.css create mode 100644 styles/sass/pages/product/vtex.breadcrumb.scss create mode 100644 styles/sass/pages/product/vtex.flex-layout.scss create mode 100644 styles/sass/pages/product/vtex.login.scss create mode 100644 styles/sass/pages/product/vtex.product-price.scss create mode 100644 styles/sass/pages/product/vtex.product-quantity.scss diff --git a/manifest.json b/manifest.json index 9ee3cc5..a2cde0d 100644 --- a/manifest.json +++ b/manifest.json @@ -15,7 +15,6 @@ "postreleasy": "vtex publish --verbose" }, "dependencies": { - "agenciamagma.store-theme": "5.x", "vtex.store": "2.x", "vtex.store-header": "2.x", "vtex.product-summary": "2.x", diff --git a/react/components/Html/index.tsx b/react/components/Html/index.tsx index d60d7f5..847f910 100644 --- a/react/components/Html/index.tsx +++ b/react/components/Html/index.tsx @@ -4,38 +4,49 @@ import { useCssHandles } from "vtex.css-handles"; const CSS_HANDLES = ["html"] as const; type HtmlProps = { - children?: ReactNode, - /** - * Qual tag Html que deseja que seja usar - * - * @default div - */ - tag?: keyof React.ReactHTML - /** - * Classes CSS extras que deseja adicionar. - * Feito para uso de [classes do tachyons](https://tachyons.io/) - */ - tachyonsClasses?: string - /** - * Se caso quiser usar esse componente - * para adicinar um texto simples - */ - text?: string - /** - * Tag ID para - */ - testId?: string -} - -export const Html = ({ children = null, tag = "div", text = "", tachyonsClasses: classes = "", testId }: HtmlProps) => { - const { handles } = useCssHandles(CSS_HANDLES); - - const props = { - className: `${handles.html} ${classes}`, - "data-testid": testId - }; - const Children = <>{children}{text}; - const Element = React.createElement(tag, props, Children); - - return <>{Element}; + children?: ReactNode; + /** + * Qual tag Html que deseja que seja usar + * + * @default div + */ + tag?: keyof React.ReactHTML; + /** + * Classes CSS extras que deseja adicionar. + * Feito para uso de [classes do tachyons](https://tachyons.io/) + */ + tachyonsClasses?: string; + /** + * Se caso quiser usar esse componente + * para adicinar um texto simples + */ + text?: string; + /** + * Tag ID para + */ + testId?: string; +}; + +export const Html = ({ + children = null, + tag = "div", + text = "", + tachyonsClasses: classes = "", + testId, +}: HtmlProps) => { + const { handles } = useCssHandles(CSS_HANDLES); + + const props = { + className: `${handles.html} ${classes}`, + "data-testid": testId, + }; + const Children = ( + <> + {children} + {text} + + ); + const Element = React.createElement(tag, props, Children); + + return <>{Element}; }; diff --git a/react/placeholder.tsx b/react/placeholder.tsx new file mode 100644 index 0000000..aeeb7e0 --- /dev/null +++ b/react/placeholder.tsx @@ -0,0 +1,14 @@ +import React, { useEffect } from "react"; + +const placeholder = () => { + useEffect(() => { + setTimeout(() => { + const exemplo = document.querySelector(".vtex-address-form-4-x-input"); + exemplo?.setAttribute("placeholder", "Digite seu CEP"); + }, 1000); + }, []); + + return <>; +}; + +export default placeholder; diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 6a916dc..579d643 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -26,12 +26,14 @@ "text": "##### Product Specifications" } }, + "flex-layout.row#description": { "props": { "marginBottom": 7 }, "children": ["product-description"] }, + "condition-layout.product#availability": { "props": { "conditions": [ @@ -78,7 +80,7 @@ "flex-layout.col#stack": { "children": ["stack-layout"], "props": { - "width": "60%", + "width": "51%", "rowGap": 0 } }, @@ -91,7 +93,8 @@ "desktop": "auto", "phone": "16:9" }, - "displayThumbnailsArrows": true + "displayThumbnailsArrows": true, + "thumbnailsOrientation": "horizontal" } }, "flex-layout.col#right-col": { @@ -101,20 +104,19 @@ }, "children": [ "flex-layout.row#product-name", + "product-identifier.product", "product-rating-summary", "flex-layout.row#list-price-savings", "flex-layout.row#selling-price", "product-installments", - "product-separator", - "product-identifier.product", "sku-selector", - "product-quantity", "product-assembly-options", "product-gifts", - "flex-layout.row#buy-button", + "flex-layout.row#buy-box", "availability-subscriber", "shipping-simulator", - "share#default" + "share#default", + "placeholder" ] }, @@ -132,10 +134,34 @@ } }, + "flex-layout.row#buy-box": { + "props": { + "colGap": 0, + "blockClass": "buy-box", + "colSizing": "auto" + }, + + "children": [ + "flex-layout.row#product-quantity", + "flex-layout.row#buy-button" + ] + }, + + "flex-layout.row#product-quantity": { + "props": { + "preventHorizontalStretch": true + }, + + "children": ["product-quantity"] + }, + "flex-layout.row#buy-button": { "props": { + "blockClass": "buy-button-container", "marginTop": 4, - "marginBottom": 7 + "marginBottom": 7, + "preventHorizontalStretch": false, + "fullWidth": true }, "children": ["add-to-cart-button"] }, diff --git a/store/interfaces.json b/store/interfaces.json index c4b2ac4..9193346 100644 --- a/store/interfaces.json +++ b/store/interfaces.json @@ -5,5 +5,8 @@ "html": { "component": "html", "composition": "children" + }, + "placeholder": { + "component": "placeholder" } } diff --git a/styles/configs/style.json b/styles/configs/style.json index 7b90b6b..e729845 100644 --- a/styles/configs/style.json +++ b/styles/configs/style.json @@ -1,349 +1,351 @@ { - "typeScale": [ - 3, 2.25, 1.5, 1.25, 1, 0.875, 0.75 - ], - "spacing": [0.125, 0.25, 0.5, 0.75, 1, 1.5, 2, 3, 4, 8, 16], - "customMedia": [ - { "s": 20 }, - { "ns": { - "value": 40, - "minWidth": true - } - }, - { "m": { - "value": 40, - "minWidth": true - } - }, - { "l": { - "value": 64, - "minWidth": true - } - }, - { "xl": { - "value": 80, - "minWidth": true - } - } - ], - "colors": { - "black-90": "rgba(0,0,0,.9)", - "black-80": "rgba(0,0,0,.8)", - "black-70": "rgba(0,0,0,.7)", - "black-60": "rgba(0,0,0,.6)", - "black-50": "rgba(0,0,0,.5)", - "black-40": "rgba(0,0,0,.4)", - "black-30": "rgba(0,0,0,.3)", - "black-20": "rgba(0,0,0,.2)", - "black-10": "rgba(0,0,0,.1)", - "black-05": "rgba(0,0,0,.05)", - "black-025": "rgba(0,0,0,.025)", - "black-0125": "rgba(0,0,0,.0125)", + "typeScale": [3, 2.25, 1.5, 1.25, 1, 0.875, 0.75], + "spacing": [0.125, 0.25, 0.5, 0.75, 1, 1.5, 2, 3, 4, 8, 16], + "customMedia": [ + { "s": 20 }, + { + "ns": { + "value": 40, + "minWidth": true + } + }, + { + "m": { + "value": 40, + "minWidth": true + } + }, + { + "l": { + "value": 64, + "minWidth": true + } + }, + { + "xl": { + "value": 80, + "minWidth": true + } + } + ], + "colors": { + "black-90": "rgba(0,0,0,.9)", + "black-80": "rgba(0,0,0,.8)", + "black-70": "rgba(0,0,0,.7)", + "black-60": "rgba(0,0,0,.6)", + "black-50": "rgba(0,0,0,.5)", + "black-40": "rgba(0,0,0,.4)", + "black-30": "rgba(0,0,0,.3)", + "black-20": "rgba(0,0,0,.2)", + "black-10": "rgba(0,0,0,.1)", + "black-05": "rgba(0,0,0,.05)", + "black-025": "rgba(0,0,0,.025)", + "black-0125": "rgba(0,0,0,.0125)", - "white-90": "rgba(255,255,255,.9)", - "white-80": "rgba(255,255,255,.8)", - "white-70": "rgba(255,255,255,.7)", - "white-60": "rgba(255,255,255,.6)", - "white-50": "rgba(255,255,255,.5)", - "white-40": "rgba(255,255,255,.4)", - "white-30": "rgba(255,255,255,.3)", - "white-20": "rgba(255,255,255,.2)", - "white-10": "rgba(255,255,255,.1)", - "white-05": "rgba(255,255,255,.05)", - "white-025": "rgba(255,255,255,.025)", - "white-0125": "rgba(255,255,255,.0125)" + "white-90": "rgba(255,255,255,.9)", + "white-80": "rgba(255,255,255,.8)", + "white-70": "rgba(255,255,255,.7)", + "white-60": "rgba(255,255,255,.6)", + "white-50": "rgba(255,255,255,.5)", + "white-40": "rgba(255,255,255,.4)", + "white-30": "rgba(255,255,255,.3)", + "white-20": "rgba(255,255,255,.2)", + "white-10": "rgba(255,255,255,.1)", + "white-05": "rgba(255,255,255,.05)", + "white-025": "rgba(255,255,255,.025)", + "white-0125": "rgba(255,255,255,.0125)" + }, + "semanticColors": { + "background": { + "base": "#ffffff", + "base--inverted": "#03044e", + "action-primary": "#0F3E99", + "action-secondary": "#eef3f7", + "emphasis": "#f71963", + "disabled": "#f2f4f5", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#ff4c4c", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0", + "muted-1": "#727273", + "muted-2": "#979899", + "muted-3": "#cacbcc", + "muted-4": "#e3e4e6", + "muted-5": "#f2f4f5" + }, + "hover-background": { + "action-primary": "#072c75", + "action-secondary": "#dbe9fd", + "emphasis": "#dd1659", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#e13232", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0", + "muted-1": "#727273", + "muted-2": "#979899", + "muted-3": "#cacbcc", + "muted-4": "#e3e4e6", + "muted-5": "#f2f4f5" + }, + "active-background": { + "action-primary": "#0c389f", + "action-secondary": "#d2defc", + "emphasis": "#dd1659", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#ff4c4c", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0", + "muted-1": "#727273", + "muted-2": "#979899", + "muted-3": "#cacbcc", + "muted-4": "#e3e4e6", + "muted-5": "#f2f4f5" + }, + "text": { + "action-primary": "#0F3E99", + "action-secondary": "#eef3f7", + "link": "#0F3E99", + "emphasis": "#f71963", + "disabled": "#979899", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#ff4c4c", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0", + "muted-1": "#727273", + "muted-2": "#979899", + "muted-3": "#cacbcc", + "muted-4": "#e3e4e6", + "muted-5": "#f2f4f5" + }, + "visited-text": { + "link": "#0c389f" + }, + "hover-text": { + "action-primary": "#072c75", + "action-secondary": "#dbe9fd", + "link": "#0c389f", + "emphasis": "#dd1659", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#e13232", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0" + }, + "active-text": { + "link": "#0c389f", + "emphasis": "#dd1659", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#ff4c4c", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0" + }, + "border": { + "action-primary": "#0F3E99", + "action-secondary": "#eef3f7", + "emphasis": "#f71963", + "disabled": "#e3e4e6", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#ff4c4c", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0", + "muted-1": "#727273", + "muted-2": "#979899", + "muted-3": "#cacbcc", + "muted-4": "#e3e4e6", + "muted-5": "#f2f4f5" + }, + "hover-border": { + "action-primary": "#072c75", + "action-secondary": "#dbe9fd", + "emphasis": "#dd1659", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#e13232", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0", + "muted-1": "#727273", + "muted-2": "#979899", + "muted-3": "#cacbcc", + "muted-4": "#e3e4e6", + "muted-5": "#f2f4f5" + }, + "active-border": { + "action-primary": "#0c389f", + "action-secondary": "#d2defc", + "emphasis": "#dd1659", + "success": "#8bc34a", + "success--faded": "#eafce3", + "danger": "#ff4c4c", + "danger--faded": "#ffe6e6", + "warning": "#ffb100", + "warning--faded": "#fff6e0", + "muted-1": "#727273", + "muted-2": "#979899", + "muted-3": "#cacbcc", + "muted-4": "#e3e4e6", + "muted-5": "#f2f4f5" + }, + "on": { + "base": "#3f3f40", + "base--inverted": "#ffffff", + "action-primary": "#ffffff", + "action-secondary": "#0F3E99", + "emphasis": "#ffffff", + "disabled": "#979899", + "success": "#ffffff", + "success--faded": "#3f3f40", + "danger": "#ffffff", + "danger--faded": "#3f3f40", + "warning": "#ffffff", + "warning--faded": "#1a1a1a", + "muted-1": "#ffffff", + "muted-2": "#ffffff", + "muted-3": "#3f3f40", + "muted-4": "#3f3f40", + "muted-5": "#3f3f40" + }, + "hover-on": { + "action-primary": "#ffffff", + "action-secondary": "#0F3E99", + "emphasis": "#ffffff", + "success": "#ffffff", + "success--faded": "#3f3f40", + "danger": "#ffffff", + "danger--faded": "#3f3f40", + "warning": "#ffffff", + "warning--faded": "#1a1a1a" + }, + "active-on": { + "action-primary": "#ffffff", + "action-secondary": "#0F3E99", + "emphasis": "#ffffff", + "success": "#ffffff", + "success--faded": "#3f3f40", + "danger": "#ffffff", + "danger--faded": "#3f3f40", + "warning": "#ffffff", + "warning--faded": "#1a1a1a" + } + }, + "borderWidths": [0, 0.125, 0.25, 0.5, 1, 2], + "borderRadius": [0, 0.125, 0.25, 0.5, 1], + "widths": [1, 2, 4, 8, 16], + "maxWidths": [1, 2, 4, 8, 16, 32, 48, 64, 96], + "heights": [1, 2, 4, 8, 16], + "sizes": [ + { "name": "small", "value": 2 }, + { "name": "regular", "value": 2.5 }, + { "name": "large", "value": 3 } + ], + "typography": { + "measure": [30, 34, 20], + "styles": { + "heading-1": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "700", + "fontSize": "3rem", + "textTransform": "initial", + "letterSpacing": "0" }, - "semanticColors": { - "background": { - "base": "#ffffff", - "base--inverted": "#03044e", - "action-primary": "#0F3E99", - "action-secondary": "#eef3f7", - "emphasis": "#f71963", - "disabled": "#f2f4f5", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#ff4c4c", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0", - "muted-1": "#727273", - "muted-2": "#979899", - "muted-3": "#cacbcc", - "muted-4": "#e3e4e6", - "muted-5": "#f2f4f5" - }, - "hover-background": { - "action-primary": "#072c75", - "action-secondary": "#dbe9fd", - "emphasis": "#dd1659", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#e13232", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0", - "muted-1": "#727273", - "muted-2": "#979899", - "muted-3": "#cacbcc", - "muted-4": "#e3e4e6", - "muted-5": "#f2f4f5" - }, - "active-background": { - "action-primary": "#0c389f", - "action-secondary": "#d2defc", - "emphasis": "#dd1659", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#ff4c4c", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0", - "muted-1": "#727273", - "muted-2": "#979899", - "muted-3": "#cacbcc", - "muted-4": "#e3e4e6", - "muted-5": "#f2f4f5" - }, - "text": { - "action-primary": "#0F3E99", - "action-secondary": "#eef3f7", - "link": "#0F3E99", - "emphasis": "#f71963", - "disabled": "#979899", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#ff4c4c", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0", - "muted-1": "#727273", - "muted-2": "#979899", - "muted-3": "#cacbcc", - "muted-4": "#e3e4e6", - "muted-5": "#f2f4f5" - }, - "visited-text": { - "link": "#0c389f" - }, - "hover-text": { - "action-primary": "#072c75", - "action-secondary": "#dbe9fd", - "link": "#0c389f", - "emphasis": "#dd1659", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#e13232", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0" - }, - "active-text": { - "link": "#0c389f", - "emphasis": "#dd1659", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#ff4c4c", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0" - }, - "border": { - "action-primary": "#0F3E99", - "action-secondary": "#eef3f7", - "emphasis": "#f71963", - "disabled": "#e3e4e6", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#ff4c4c", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0", - "muted-1": "#727273", - "muted-2": "#979899", - "muted-3": "#cacbcc", - "muted-4": "#e3e4e6", - "muted-5": "#f2f4f5" - }, - "hover-border": { - "action-primary": "#072c75", - "action-secondary": "#dbe9fd", - "emphasis": "#dd1659", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#e13232", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0", - "muted-1": "#727273", - "muted-2": "#979899", - "muted-3": "#cacbcc", - "muted-4": "#e3e4e6", - "muted-5": "#f2f4f5" - }, - "active-border": { - "action-primary": "#0c389f", - "action-secondary": "#d2defc", - "emphasis": "#dd1659", - "success": "#8bc34a", - "success--faded": "#eafce3", - "danger": "#ff4c4c", - "danger--faded": "#ffe6e6", - "warning": "#ffb100", - "warning--faded": "#fff6e0", - "muted-1": "#727273", - "muted-2": "#979899", - "muted-3": "#cacbcc", - "muted-4": "#e3e4e6", - "muted-5": "#f2f4f5" - }, - "on": { - "base": "#3f3f40", - "base--inverted": "#ffffff", - "action-primary": "#ffffff", - "action-secondary": "#0F3E99", - "emphasis": "#ffffff", - "disabled": "#979899", - "success": "#ffffff", - "success--faded": "#3f3f40", - "danger": "#ffffff", - "danger--faded": "#3f3f40", - "warning": "#ffffff", - "warning--faded": "#1a1a1a", - "muted-1": "#ffffff", - "muted-2": "#ffffff", - "muted-3": "#3f3f40", - "muted-4": "#3f3f40", - "muted-5": "#3f3f40" - }, - "hover-on": { - "action-primary": "#ffffff", - "action-secondary": "#0F3E99", - "emphasis": "#ffffff", - "success": "#ffffff", - "success--faded": "#3f3f40", - "danger": "#ffffff", - "danger--faded": "#3f3f40", - "warning": "#ffffff", - "warning--faded": "#1a1a1a" - }, - "active-on": { - "action-primary": "#ffffff", - "action-secondary": "#0F3E99", - "emphasis": "#ffffff", - "success": "#ffffff", - "success--faded": "#3f3f40", - "danger": "#ffffff", - "danger--faded": "#3f3f40", - "warning": "#ffffff", - "warning--faded": "#1a1a1a" - } + "heading-2": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "700", + "fontSize": "2.25rem", + "textTransform": "initial", + "letterSpacing": "0" }, - "borderWidths": [0, 0.125, 0.25, 0.5, 1, 2], - "borderRadius": [0, 0.125, 0.25, 0.5, 1], - "widths": [1, 2, 4, 8, 16], - "maxWidths": [1, 2, 4, 8, 16, 32, 48, 64, 96], - "heights": [1, 2, 4, 8, 16], - "sizes": [ - {"name": "small", "value": 2}, - {"name": "regular", "value": 2.5}, - {"name": "large", "value": 3} - ], - "typography":{ - "measure": [30, 34, 20], - "styles": { - "heading-1": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "700", - "fontSize": "3rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "heading-2": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "700", - "fontSize": "2.25rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "heading-3": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "700", - "fontSize": "1.75rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "heading-4": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "normal", - "fontSize": "1.5rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "heading-5": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "normal", - "fontSize": "1.25rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "heading-6": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "normal", - "fontSize": "1.25rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "body": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "normal", - "fontSize": "1rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "small": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "normal", - "fontSize": "0.875rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "mini": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "normal", - "fontSize": "0.75rem", - "textTransform": "initial", - "letterSpacing": "0" - }, - "action": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "500", - "fontSize": "1rem", - "textTransform": "uppercase", - "letterSpacing": "0" - }, - "action--small": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "500", - "fontSize": "0.875rem", - "textTransform": "uppercase", - "letterSpacing": "0" - }, - "action--large": { - "fontFamily": "San Francisco, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", - "fontWeight": "500", - "fontSize": "1.25rem", - "textTransform": "uppercase", - "letterSpacing": "0" - }, - "code": { - "fontFamily": "Consolas, monaco, monospace", - "fontWeight": "normal", - "fontSize": "1rem", - "textTransform": "initial", - "letterSpacing": "0" - } - } + "heading-3": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "700", + "fontSize": "1.75rem", + "textTransform": "initial", + "letterSpacing": "0" }, - "opacity": [1, 0.9, 0.8, 0.7, 0.6, 0.5, 0.4, 0.3, 0.2, 0.1, 0.05, 0.025, 0] + "heading-4": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "normal", + "fontSize": "1.5rem", + "textTransform": "initial", + "letterSpacing": "0" + }, + "heading-5": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "normal", + "fontSize": "1.25rem", + "textTransform": "initial", + "letterSpacing": "0" + }, + "heading-6": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "normal", + "fontSize": "1.25rem", + "textTransform": "initial", + "letterSpacing": "0" + }, + "body": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "normal", + "fontSize": "1rem", + "textTransform": "initial", + "letterSpacing": "0" + }, + "small": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "normal", + "fontSize": "0.875rem", + "textTransform": "initial", + "letterSpacing": "0" + }, + "mini": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "normal", + "fontSize": "0.75rem", + "textTransform": "initial", + "letterSpacing": "0" + }, + "action": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "500", + "fontSize": "1rem", + "textTransform": "uppercase", + "letterSpacing": "0" + }, + "action--small": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "500", + "fontSize": "0.875rem", + "textTransform": "uppercase", + "letterSpacing": "0" + }, + "action--large": { + "fontFamily": "Open Sans, -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, arial, sans-serif", + "fontWeight": "500", + "fontSize": "1.25rem", + "textTransform": "uppercase", + "letterSpacing": "0" + }, + "code": { + "fontFamily": "Consolas, monaco, monospace", + "fontWeight": "normal", + "fontSize": "1rem", + "textTransform": "initial", + "letterSpacing": "0" + } + } + }, + "opacity": [1, 0.9, 0.8, 0.7, 0.6, 0.5, 0.4, 0.3, 0.2, 0.1, 0.05, 0.025, 0] } diff --git a/styles/css/agenciamagma.store-theme.css b/styles/css/agenciamagma.store-theme.css index 5e37ba5..7f0a2f5 100644 --- a/styles/css/agenciamagma.store-theme.css +++ b/styles/css/agenciamagma.store-theme.css @@ -6,11 +6,12 @@ 1800px + : Big desktop */ /* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); /* Grid breakpoints */ .html { background-color: red; } .html--pdp-breadcrumb { - background-color: green; + background-color: white; } \ No newline at end of file diff --git a/styles/css/vtex.address-form.css b/styles/css/vtex.address-form.css new file mode 100644 index 0000000..34c4328 --- /dev/null +++ b/styles/css/vtex.address-form.css @@ -0,0 +1,9 @@ +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +/* Grid breakpoints */ \ No newline at end of file diff --git a/styles/css/vtex.breadcrumb.css b/styles/css/vtex.breadcrumb.css new file mode 100644 index 0000000..72451a6 --- /dev/null +++ b/styles/css/vtex.breadcrumb.css @@ -0,0 +1,25 @@ +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); +/* Grid breakpoints */ +.container { + font-size: 14px; + line-height: 19px; + padding: 0 40px 16px 40px; +} +.container .homeIconm, +.container .homeLink { + display: none; +} +.container .arrow--1 { + padding-left: 0; +} +.container .arrow--1 .caretIcon { + display: none; +} \ No newline at end of file diff --git a/styles/css/vtex.flex-layout.css b/styles/css/vtex.flex-layout.css index a7c5732..84ff0e2 100644 --- a/styles/css/vtex.flex-layout.css +++ b/styles/css/vtex.flex-layout.css @@ -1,98 +1,34 @@ -.flexRowContent--menu-link, -.flexRowContent--main-header { - padding: 0 0.5rem; +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); +/* Grid breakpoints */ +.flexRowContent { + padding: 0; + margin: 0; } - -@media screen and (min-width: 40em) { - .flexRowContent--menu-link, - .flexRowContent--main-header { - padding: 0 1rem; +@media screen and (max-width: 1024px) { + .flexRowContent { + display: flex; + flex-direction: column; } } -@media screen and (min-width: 80rem) { - .flexRowContent--menu-link, - .flexRowContent--main-header { - padding: 0 0.25rem; - } +.flexRowContent--buy-button-container { + margin-bottom: 16px; +} +.flexRowContent--buy-button-container :global(.vtex-button) { + background-color: black; + border: none; + height: 50px; + margin-left: 10px; } -.flexRowContent--menu-link { - background-color: #03044e; - color: #fff; -} - -.flexRowContent--main-header { - background-color: #f0f0f0; -} - -.flexRowContent--main-header-mobile { - align-items: center; - padding: 0.625rem 0.5rem; - background-color: #f0f0f0; -} - -.flexRowContent--menu-link :global(.vtex-menu-2-x-styledLink) { - color: #ffffff; - font-size: 14px; -} - -.flexRowContent--main-header :global(.vtex-menu-2-x-styledLink) { - color: #727273; - font-size: 14px; -} - -.flexRow--deals { - background-color: #0F3E99; - padding: 14px 0px; -} - -.flexRow--deals .stretchChildrenWidth { - align-items: center; -} - -.flexRow--deals .flexCol { - align-items: center; - margin-bottom: 5px; - padding-top: 5px; -} - -.flexCol--filterCol { - max-width: 500px; - min-width: 230px; -} - -.flexCol--productCountCol { - align-items: flex-start; -} - -.flexCol--orderByCol { - align-items: flex-end; -} - -.flexCol--orderByMobileCol { - width: 42%; -} - -.flexCol--filterMobileCol { - width: 38%; -} - -.flexRow--quickviewMainRow { - display: flex; - max-height: 100%; -} - -.flexColChild--quickviewDetails:first-child { - overflow-y: auto; - height: 66% !important; - overflow-x: hidden; -} - -.flexColChild--quickviewDetails:last-child { - height: 34% !important; -} - -.flexRow--addToCartRow { - padding-bottom: 1rem; -} +.flexRow--buy-box .stretchChildrenWidth:nth-child(2n) { + width: 100% !important; +} \ No newline at end of file diff --git a/styles/css/vtex.login.css b/styles/css/vtex.login.css new file mode 100644 index 0000000..ab98158 --- /dev/null +++ b/styles/css/vtex.login.css @@ -0,0 +1,15 @@ +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); +/* Grid breakpoints */ +:global(.vtex-address-form__postalCode + .vtex-address-form__postalCode-forgottenURL + a) { + color: black; +} \ No newline at end of file diff --git a/styles/css/vtex.numeric-stepper.css b/styles/css/vtex.numeric-stepper.css new file mode 100644 index 0000000..cff6c35 --- /dev/null +++ b/styles/css/vtex.numeric-stepper.css @@ -0,0 +1,12 @@ +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +/* Grid breakpoints */ +.numeric-stepper__input { + height: 49px; +} \ No newline at end of file diff --git a/styles/css/vtex.product-price.css b/styles/css/vtex.product-price.css index 95f4cfe..1fa8ccf 100644 --- a/styles/css/vtex.product-price.css +++ b/styles/css/vtex.product-price.css @@ -1,79 +1,32 @@ -.listPrice { - color: #727273; - margin-bottom: .25rem; - font-size: 1rem; +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); +/* Grid breakpoints */ +.listPrice, +.savings { + display: none; } -.sellingPrice { - color: #3f3f40; - font-size: 1.25rem; -} - -.sellingPriceValue { - font-size: 2.25rem; +.sellingPrice--hasListPrice { + font-family: "Open Sans"; + font-style: normal; font-weight: 700; + font-size: 25px; + line-height: 38px; + color: #000000; } .installments { - color: #727273; - margin-bottom: 1rem; -} - -.savings { - font-weight: 500; - color: #79B03A; -} - -.sellingPriceValue--summary { - font-size: 1.25rem; - font-weight: 600; - color: #2E2E2E; -} - -.savings--summary { - background: #8BC34A; - border-radius: 1000px; - align-items: center; - display: flex; - - padding-left: 0.5rem; - padding-right: 0.5rem; - font-size: 0.875rem; - font-weight: 600; - vertical-align: baseline; - color: #FFFFFF; -} - -.savings-discount--summary { - font-size: 0.875rem; - font-weight: 600; - vertical-align: baseline; - color: #FFFFFF; - padding-left: 0.5rem; - padding-right: 0.5rem; -} - -.listPrice--summary { - margin-bottom: 0.25rem; - font-size: .875rem; -} - -.installments--summary { - margin-bottom: 2rem; - font-size: 0.875rem; -} - -.savings--summaryPercentage { - background: #0f3e99; - border-radius: 1000px; - align-items: center; - display: flex; -} - -.savingsPercentage--summaryPercentage { - font-size: 0.875rem; - font-weight: 600; - vertical-align: baseline; - color: #FFFFFF; - padding: 0.25rem 0.5rem 0.25rem 0.5rem; -} + font-family: "Open Sans"; + font-style: normal; + font-weight: 700; + font-size: 16px; + line-height: 22px; + color: #929292; +} \ No newline at end of file diff --git a/styles/css/vtex.product-quantity.css b/styles/css/vtex.product-quantity.css new file mode 100644 index 0000000..4051955 --- /dev/null +++ b/styles/css/vtex.product-quantity.css @@ -0,0 +1,47 @@ +@charset "UTF-8"; +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); +/* Grid breakpoints */ +.quantitySelectorContainer { + margin: 0; +} +.quantitySelectorContainer .quantitySelectorTitle { + display: none; +} + +:global(.vtex-numeric-stepper__plus-button), +:global(.vtex-numeric-stepper__minus-button), +:global(.vtex-numeric-stepper__input) { + height: 50px; +} + +:global(.vtex-numeric-stepper__minus-button) { + background-color: white; +} + +:global(.vtex-numeric-stepper__plus-button) { + color: black; +} + +:global(.vtex-numeric-stepper__input) { + border-right: none; + border-left: none; +} + +:global(.vtex-add-to-cart-button-0-x-buttonText) { + font-size: 0; +} +:global(.vtex-add-to-cart-button-0-x-buttonText)::before { + content: "Adicionar à sacola"; + font-family: "Open Sans", sans-serif; + font-size: 18px; + line-height: 25px; + color: #ffffff; +} \ No newline at end of file diff --git a/styles/css/vtex.rich-text.css b/styles/css/vtex.rich-text.css index 34c4328..2959ac9 100644 --- a/styles/css/vtex.rich-text.css +++ b/styles/css/vtex.rich-text.css @@ -6,4 +6,5 @@ 1800px + : Big desktop */ /* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); /* Grid breakpoints */ \ No newline at end of file diff --git a/styles/css/vtex.store-components.css b/styles/css/vtex.store-components.css index f8fa6cb..e800822 100644 --- a/styles/css/vtex.store-components.css +++ b/styles/css/vtex.store-components.css @@ -6,7 +6,317 @@ 1800px + : Big desktop */ /* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); /* Grid breakpoints */ -.newsletter { +.container { + padding: 0 40px; +} +.container .newsletter { background: red; +} +.container .productNameContainer--quickview { + font-weight: 300; + font-size: 20px; + line-height: 34px; + text-align: right; + color: #575757; +} +.container .skuSelectorContainer { + display: flex; + flex-direction: column; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor { + order: 2; + margin-bottom: 10px; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorNameSeparator { + display: none; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorSelectorImageValue { + display: none; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorNameContainer { + margin-left: 0; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorNameContainer .skuSelectorTextContainer .skuSelectorName { + font-size: 0; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorNameContainer .skuSelectorTextContainer::before { + content: "Outras Cores: "; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 400; + font-size: 14px; + line-height: 19px; + text-transform: uppercase; + color: #929292; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList { + margin-left: 0; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem { + width: 40px; + height: 40px; + margin-left: 0; + margin-right: 16px; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem .frameAround { + display: none; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem .skuSelectorInternalBox { + border: 1px solid #989898; + border-radius: 50%; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem .skuSelectorInternalBox .skuSelectorItemTextValue { + padding: 0; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem--selected { + width: 40px; + height: 40px; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem--selected .frameAround { + display: none; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem--selected .skuSelectorInternalBox { + border: 2px solid black; + border-radius: 50%; + z-index: unset; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho { + order: 1; + margin-bottom: 10px; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorNameContainer { + margin-left: 0; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorNameContainer .skuSelectorTextContainer .skuSelectorName { + font-size: 0; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorNameContainer .skuSelectorTextContainer::before { + content: "Outros Tamanhos:"; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 400; + font-size: 14px; + line-height: 19px; + text-transform: uppercase; + color: #929292; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList { + margin-left: 0; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem { + width: 40px; + height: 40px; + margin-left: 0; + margin-right: 16px; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem .frameAround { + display: none; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem .skuSelectorInternalBox { + border: 1px solid #989898; + border-radius: 50%; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem .skuSelectorInternalBox .skuSelectorItemTextValue { + color: rgba(185, 185, 185, 0.6); + padding: 0; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem--selected { + width: 40px; + height: 40px; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem--selected .frameAround { + display: none; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem--selected .skuSelectorInternalBox { + border: 2px solid black; + border-radius: 50%; + z-index: unset; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem--selected .skuSelectorInternalBox .skuSelectorItemTextValue { + color: black; +} +.container .skuSelectorContainer .skuSelectorSubcontainer--tamanho .skuSelectorOptionsList .skuSelectorItem--selected .skuSelectorInternalBox .diagonalCross { + width: 10px; + margin: 0 auto; + color: black; + transform: rotate(60deg); +} +.container .skuSelectorContainer .diagonalCross { + width: 10px; + margin: 0 auto; + color: #d5d5d5; + transform: rotate(60deg); +} + +:global(.vtex-input__label) { + font-size: 0; +} +:global(.vtex-input__label)::before { + content: "Calcular frete:"; + font-family: "Open Sans", sans-serif; + font-size: 14px; + line-height: 19px; + text-transform: uppercase; + color: #929292; +} + +.shippingContainer { + display: flex; + position: relative; +} +.shippingContainer :global(.vtex-button) { + font-size: 0; + background-color: black; + height: 50px; + max-width: 50px; + border: none; + border-radius: 0; + top: 27px; +} +.shippingContainer :global(.vtex-button)::before { + content: "OK"; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 600; + font-size: 14px; + line-height: 19px; + color: #ffffff; +} +.shippingContainer :global(.vtex-button) :global(.vtex-button__label) { + width: unset; + height: unset; +} +.shippingContainer :global(.vtex-input-prefix__group) { + height: 50px; +} +.shippingContainer :global(.vtex-input__suffix) { + display: none; +} + +.shippingTable { + border: none; + padding-top: unset; + margin-top: 16px; + table-layout: fixed; + width: 100%; + max-width: 362px; +} +.shippingTable .shippingTableRow { + display: flex; +} +.shippingTable .shippingTableRow .shippingTableCell { + font-family: "Open Sans", sans-serif; + font-size: 12px; + line-height: 16px; + color: #afafaf; + padding: 0 0 15px 0; +} +.shippingTable .shippingTableRow .shippingTableCell .shippingTableRadioBtn { + display: none; +} +.shippingTable .shippingTableRow .shippingTableCellDeliveryName { + width: 33%; + padding-left: 0; + order: 1; +} +.shippingTable .shippingTableRow .shippingTableCellDeliveryEstimate { + width: 33%; + padding-left: 0; + order: 3; +} +.shippingTable .shippingTableRow .shippingTableCellDeliveryPrice { + width: 25%; + padding-left: 0; + order: 2; +} +.shippingTable .shippingTableHead { + display: block; + margin-bottom: 15px; +} +.shippingTable .shippingTableHead .shippingTableHeadDeliveryName { + width: 33%; + text-align: left; + order: 1; +} +.shippingTable .shippingTableHead .shippingTableHeadDeliveryEstimate { + width: 33%; + text-align: left; + order: 3; +} +.shippingTable .shippingTableHead .shippingTableHeadDeliveryPrice { + width: 25%; + text-align: left; + order: 2; +} + +.shareContainer { + display: none; +} + +:global(.vtex-address-form__postalCode) { + padding: unset; +} + +:global(.vtex-address-form__postalCode-forgottenURL) { + position: absolute; + right: 32px; + bottom: 15px; + text-decoration: underline; +} +:global(.vtex-address-form__postalCode-forgottenURL) :global(.vtex__icon-external-link) { + display: none; +} + +.postalCode-forgottenURL { + bottom: 100px; +} + +:global(.vtex-product-identifier-0-x-product-identifier) { + display: flex; + justify-content: end; + margin-top: 8px; + margin-bottom: 24px; + font-family: "Open Sans", sans-serif; + font-size: 14px; + line-height: 19px; + color: rgba(146, 146, 146, 0.48); +} + +:global(.vtex-store-components-3-x-swiper-pagination), +:global(.vtex-store-components-3-x-swiperCaretNext), +:global(.vtex-store-components-3-x-swiperCaretPrev) { + display: none; +} + +:global(.vtex-store-components-3-x-productImageTag) { + object-fit: unset !important; + margin-bottom: 16px; + max-height: 664px !important; + max-width: 664px; +} + +:global(.vtex-store-components-3-x-figure) { + max-width: 90px; + width: 90px; +} + +:global(.vtex-store-components-3-x-carouselGaleryThumbs) { + margin-top: unset; +} + +.thumbImg--video { + height: 90px; +} + +.thumbImg { + width: 90px !important; + height: 90px; +} + +.productImagesThumb { + max-width: 90px; + max-height: 90px !important; + margin: 0 16px 0 0; } \ No newline at end of file diff --git a/styles/css/vtex.tab-layout.css b/styles/css/vtex.tab-layout.css new file mode 100644 index 0000000..2ebf3af --- /dev/null +++ b/styles/css/vtex.tab-layout.css @@ -0,0 +1,73 @@ +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); +/* Grid breakpoints */ +.container--description { + margin: 16px 40px; +} +.container--description .listContainer { + display: flex; + justify-content: space-around; + border-bottom: 1px solid #bfbfbf; +} +.container--description .listContainer .listItem { + padding: 0; + margin: 0; +} +.container--description .listContainer .listItem :global(.vtex-button) { + background: white; + border: none; + font-family: "Open Sans", sans-serif; + font-size: 18px; + text-transform: none; + color: #bfbfbf; +} +.container--description .listContainer .listItem :global(.vtex-button) :global(.vtex-button__label) { + padding: 0; +} +.container--description .listContainer .listItemActive { + border-bottom: 2px solid black; +} +.container--description .listContainer .listItemActive :global(.vtex-button) { + color: black; +} +.container--description .contentContainer .contentItem { + display: flex; +} +.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productImagesContainer) { + width: 100%; + height: 100%; + max-width: 632px; + max-height: 632px; +} +.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productImagesGallerySlide) { + margin: 32px 32px 16px 32px; +} +.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-carouselGaleryThumbs) { + display: none; +} +.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) { + margin-top: 32px; + margin-left: 32px; +} +.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-productDescriptionTitle) { + font-family: "Open Sans", sans-serif; + font-size: 24px; + line-height: 32px; + color: #575757; +} +.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-productDescriptionText) { + font-family: "Open Sans", sans-serif; + font-size: 16px; + line-height: 22px; + color: #929292; +} +.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-container) { + padding: 0; +} \ No newline at end of file diff --git a/styles/sass/pages/product/agenciamagma.store-theme.scss b/styles/sass/pages/product/agenciamagma.store-theme.scss index ea7d5b9..f7710ca 100644 --- a/styles/sass/pages/product/agenciamagma.store-theme.scss +++ b/styles/sass/pages/product/agenciamagma.store-theme.scss @@ -3,6 +3,5 @@ } .html--pdp-breadcrumb { - background-color: green; + background-color: white; } - diff --git a/styles/sass/pages/product/vtex.breadcrumb.scss b/styles/sass/pages/product/vtex.breadcrumb.scss new file mode 100644 index 0000000..254b4ef --- /dev/null +++ b/styles/sass/pages/product/vtex.breadcrumb.scss @@ -0,0 +1,17 @@ +.container { + font-size: 14px; + line-height: 19px; + padding: 0 40px 16px 40px; + + .homeIconm, + .homeLink { + display: none; + } + + .arrow--1 { + padding-left: 0; + .caretIcon { + display: none; + } + } +} diff --git a/styles/sass/pages/product/vtex.flex-layout.scss b/styles/sass/pages/product/vtex.flex-layout.scss new file mode 100644 index 0000000..217a3d6 --- /dev/null +++ b/styles/sass/pages/product/vtex.flex-layout.scss @@ -0,0 +1,25 @@ +.flexRowContent { + padding: 0; + margin: 0; + + @media screen and (max-width: 1024px) { + display: flex; + flex-direction: column; + } +} + +.flexRowContent--buy-button-container { + margin-bottom: 16px; + :global(.vtex-button) { + background-color: black; + border: none; + height: 50px; + margin-left: 10px; + } +} + +.flexRow--buy-box { + .stretchChildrenWidth:nth-child(2n) { + width: 100% !important; + } +} diff --git a/styles/sass/pages/product/vtex.login.scss b/styles/sass/pages/product/vtex.login.scss new file mode 100644 index 0000000..c060054 --- /dev/null +++ b/styles/sass/pages/product/vtex.login.scss @@ -0,0 +1,5 @@ +:global(.vtex-address-form__postalCode + .vtex-address-form__postalCode-forgottenURL + a) { + color: black; +} diff --git a/styles/sass/pages/product/vtex.product-price.scss b/styles/sass/pages/product/vtex.product-price.scss new file mode 100644 index 0000000..9a084b3 --- /dev/null +++ b/styles/sass/pages/product/vtex.product-price.scss @@ -0,0 +1,24 @@ +.listPrice, +.savings { + display: none; +} + +.sellingPrice--hasListPrice { + font-family: "Open Sans"; + font-style: normal; + font-weight: 700; + font-size: 25px; + line-height: 38px; + + color: #000000; +} + +.installments { + font-family: "Open Sans"; + font-style: normal; + font-weight: 700; + font-size: 16px; + line-height: 22px; + + color: #929292; +} diff --git a/styles/sass/pages/product/vtex.product-quantity.scss b/styles/sass/pages/product/vtex.product-quantity.scss new file mode 100644 index 0000000..509d826 --- /dev/null +++ b/styles/sass/pages/product/vtex.product-quantity.scss @@ -0,0 +1,37 @@ +.quantitySelectorContainer { + margin: 0; + .quantitySelectorTitle { + display: none; + } +} + +:global(.vtex-numeric-stepper__plus-button), +:global(.vtex-numeric-stepper__minus-button), +:global(.vtex-numeric-stepper__input) { + height: 50px; +} + +:global(.vtex-numeric-stepper__minus-button) { + background-color: white; +} + +:global(.vtex-numeric-stepper__plus-button) { + color: black; +} + +:global(.vtex-numeric-stepper__input) { + border-right: none; + border-left: none; +} + +:global(.vtex-add-to-cart-button-0-x-buttonText) { + font-size: 0; + + &::before { + content: "Adicionar à sacola"; + font-family: "Open Sans", sans-serif; + font-size: 18px; + line-height: 25px; + color: #ffffff; + } +} diff --git a/styles/sass/pages/product/vtex.store-components.scss b/styles/sass/pages/product/vtex.store-components.scss index 36d0f22..83b9531 100644 --- a/styles/sass/pages/product/vtex.store-components.scss +++ b/styles/sass/pages/product/vtex.store-components.scss @@ -1,3 +1,352 @@ -.newsletter{ +.container { + padding: 0 40px; + .newsletter { background: red; -} \ No newline at end of file + } + + .productNameContainer--quickview { + font-weight: 300; + font-size: 20px; + line-height: 34px; + text-align: right; + color: #575757; + } + + .skuSelectorContainer { + display: flex; + flex-direction: column; + + .skuSelectorSubcontainer--cor { + order: 2; + margin-bottom: 10px; + + .skuSelectorNameSeparator { + display: none; + } + + .skuSelectorSelectorImageValue { + display: none; + } + + .skuSelectorNameContainer { + margin-left: 0; + .skuSelectorTextContainer { + .skuSelectorName { + font-size: 0; + } + + &::before { + content: "Outras Cores: "; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 400; + font-size: 14px; + line-height: 19px; + text-transform: uppercase; + + color: #929292; + } + } + } + + .skuSelectorOptionsList { + margin-left: 0; + .skuSelectorItem { + width: 40px; + height: 40px; + margin-left: 0; + margin-right: 16px; + + .frameAround { + display: none; + } + + .skuSelectorInternalBox { + border: 1px solid #989898; + border-radius: 50%; + .skuSelectorItemTextValue { + padding: 0; + } + } + } + .skuSelectorItem--selected { + width: 40px; + height: 40px; + + .frameAround { + display: none; + } + .skuSelectorInternalBox { + border: 2px solid black; + border-radius: 50%; + z-index: unset; + } + } + } + } + + .skuSelectorSubcontainer--tamanho { + order: 1; + margin-bottom: 10px; + + .skuSelectorNameContainer { + margin-left: 0; + .skuSelectorTextContainer { + .skuSelectorName { + font-size: 0; + } + + &::before { + content: "Outros Tamanhos:"; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 400; + font-size: 14px; + line-height: 19px; + text-transform: uppercase; + + color: #929292; + } + } + } + + .skuSelectorOptionsList { + margin-left: 0; + .skuSelectorItem { + width: 40px; + height: 40px; + margin-left: 0; + margin-right: 16px; + + .frameAround { + display: none; + } + + .skuSelectorInternalBox { + border: 1px solid #989898; + border-radius: 50%; + .skuSelectorItemTextValue { + color: rgba(185, 185, 185, 0.6); + padding: 0; + } + } + } + .skuSelectorItem--selected { + width: 40px; + height: 40px; + + .frameAround { + display: none; + } + .skuSelectorInternalBox { + border: 2px solid black; + border-radius: 50%; + z-index: unset; + + .skuSelectorItemTextValue { + color: black; + } + + .diagonalCross { + width: 10px; + margin: 0 auto; + color: black; + transform: rotate(60deg); + } + } + } + } + } + + .diagonalCross { + width: 10px; + margin: 0 auto; + color: #d5d5d5; + transform: rotate(60deg); + } + } +} + +:global(.vtex-input__label) { + font-size: 0; + + &::before { + content: "Calcular frete:"; + font-family: "Open Sans", sans-serif; + font-size: 14px; + line-height: 19px; + text-transform: uppercase; + + color: #929292; + } +} + +.shippingContainer { + display: flex; + position: relative; + :global(.vtex-button) { + font-size: 0; + background-color: black; + height: 50px; + max-width: 50px; + border: none; + border-radius: 0; + top: 27px; + &::before { + content: "OK"; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 600; + font-size: 14px; + line-height: 19px; + + color: #ffffff; + } + :global(.vtex-button__label) { + width: unset; + height: unset; + } + } + + :global(.vtex-input-prefix__group) { + height: 50px; + } + + :global(.vtex-input__suffix) { + display: none; + } +} + +.shippingTable { + border: none; + padding-top: unset; + margin-top: 16px; + table-layout: fixed; + width: 100%; + max-width: 362px; + + .shippingTableRow { + display: flex; + .shippingTableCell { + font-family: "Open Sans", sans-serif; + font-size: 12px; + line-height: 16px; + color: #afafaf; + padding: 0 0 15px 0; + + .shippingTableRadioBtn { + display: none; + } + } + + .shippingTableCellDeliveryName { + width: 33%; + padding-left: 0; + order: 1; + } + + .shippingTableCellDeliveryEstimate { + width: 33%; + padding-left: 0; + order: 3; + } + + .shippingTableCellDeliveryPrice { + width: 25%; + padding-left: 0; + order: 2; + } + } + .shippingTableHead { + display: block; + margin-bottom: 15px; + + .shippingTableHeadDeliveryName { + width: 33%; + text-align: left; + order: 1; + } + + .shippingTableHeadDeliveryEstimate { + width: 33%; + text-align: left; + order: 3; + } + + .shippingTableHeadDeliveryPrice { + width: 25%; + text-align: left; + order: 2; + } + } +} + +.shareContainer { + display: none; +} + +:global(.vtex-address-form__postalCode) { + padding: unset; +} + +:global(.vtex-address-form__postalCode-forgottenURL) { + position: absolute; + right: 32px; + bottom: 15px; + text-decoration: underline; + + :global(.vtex__icon-external-link) { + display: none; + } +} + +.postalCode-forgottenURL { + bottom: 100px; +} +:global(.vtex-product-identifier-0-x-product-identifier) { + display: flex; + justify-content: end; + margin-top: 8px; + margin-bottom: 24px; + font-family: "Open Sans", sans-serif; + font-size: 14px; + line-height: 19px; + color: rgba(146, 146, 146, 0.48); +} + +:global(.vtex-store-components-3-x-swiper-pagination), +:global(.vtex-store-components-3-x-swiperCaretNext), +:global(.vtex-store-components-3-x-swiperCaretPrev) { + display: none; +} + +:global(.vtex-store-components-3-x-productImageTag) { + object-fit: unset !important; + margin-bottom: 16px; + max-height: 664px !important; + max-width: 664px; +} + +:global(.vtex-store-components-3-x-figure) { + max-width: 90px; + width: 90px; +} + +:global(.vtex-store-components-3-x-carouselGaleryThumbs) { + margin-top: unset; +} + +.thumbImg--video { + height: 90px; +} + +.thumbImg { + width: 90px !important; + height: 90px; +} + +.productImagesThumb { + max-width: 90px; + max-height: 90px !important; + margin: 0 16px 0 0; +} diff --git a/styles/sass/utils/_vars.scss b/styles/sass/utils/_vars.scss index daf3adb..502b958 100644 --- a/styles/sass/utils/_vars.scss +++ b/styles/sass/utils/_vars.scss @@ -1,3 +1,5 @@ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); + $color-black: #292929; $color-white: #fff; @@ -14,18 +16,18 @@ $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; -- 2.34.1 From 55a199af2fd21ffecd3f65a8e7612afef1660cbc Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Feb 2023 13:47:35 -0300 Subject: [PATCH 02/10] =?UTF-8?q?feat:=20remove=20a=20parte=20de=20descri?= =?UTF-8?q?=C3=A7=C3=A3o=20do=20produto=20e=20as=20especifica=C3=A7=C3=B5e?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- store/blocks/pdp/product.jsonc | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 579d643..7c06a5c 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -3,9 +3,9 @@ "children": [ "html#breadcrumb", "condition-layout.product#availability", - "flex-layout.row#description", - "flex-layout.row#specifications-title", - "product-specification-group#table", + // "flex-layout.row#description", + // "flex-layout.row#specifications-title", + // "product-specification-group#table", "shelf.relatedProducts", "product-questions-and-answers" ] @@ -27,12 +27,12 @@ } }, - "flex-layout.row#description": { - "props": { - "marginBottom": 7 - }, - "children": ["product-description"] - }, + // "flex-layout.row#description": { + // "props": { + // "marginBottom": 7 + // }, + // "children": ["product-description"] + // }, "condition-layout.product#availability": { "props": { -- 2.34.1 From e4c1b8ff4e7dc8ec15c8920188c52732369d0fa3 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Feb 2023 13:55:08 -0300 Subject: [PATCH 03/10] feat: adiciona a estrutura do tab-layout no bloco json --- store/blocks/pdp/product.jsonc | 114 +++++++++++++++++++++++++++++---- 1 file changed, 100 insertions(+), 14 deletions(-) diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 7c06a5c..58b114b 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -3,9 +3,7 @@ "children": [ "html#breadcrumb", "condition-layout.product#availability", - // "flex-layout.row#description", - // "flex-layout.row#specifications-title", - // "product-specification-group#table", + "tab-layout#description", "shelf.relatedProducts", "product-questions-and-answers" ] @@ -18,21 +16,109 @@ }, "children": ["breadcrumb"] }, - "flex-layout.row#specifications-title": { - "children": ["rich-text#specifications"] - }, - "rich-text#specifications": { + + "tab-layout#description": { + "children": ["tab-list#description", "tab-content#description"], "props": { - "text": "##### Product Specifications" + "blockClass": "description", + "defaultActiveTabId": "description1" } }, - // "flex-layout.row#description": { - // "props": { - // "marginBottom": 7 - // }, - // "children": ["product-description"] - // }, + "tab-list#description": { + "children": [ + "tab-list.item#description1", + "tab-list.item#description2", + "tab-list.item#description3", + "tab-list.item#description4", + "tab-list.item#description5" + ] + }, + + "tab-list.item#description1": { + "props": { + "tabId": "description1", + "label": "Descrição", + "defaultActiveTab": true + } + }, + + "tab-list.item#description2": { + "props": { + "tabId": "description2", + "label": "Descrição", + "defaultActiveTab": false + } + }, + + "tab-list.item#description3": { + "props": { + "tabId": "description3", + "label": "Descrição", + "defaultActiveTab": false + } + }, + + "tab-list.item#description4": { + "props": { + "tabId": "description4", + "label": "Descrição", + "defaultActiveTab": false + } + }, + + "tab-list.item#description5": { + "props": { + "tabId": "description5", + "label": "Descrição", + "defaultActiveTab": false + } + }, + + "tab-content#description": { + "children": [ + "tab-content.item#description1", + "tab-content.item#description2", + "tab-content.item#description3", + "tab-content.item#description4", + "tab-content.item#description5" + ] + }, + + "tab-content.item#description1": { + "children": ["product-images", "product-description"], + "props": { + "tabId": "description1" + } + }, + + "tab-content.item#description2": { + "children": ["product-images", "product-description"], + "props": { + "tabId": "description2" + } + }, + + "tab-content.item#description3": { + "children": ["product-images", "product-description"], + "props": { + "tabId": "description3" + } + }, + + "tab-content.item#description4": { + "children": ["product-images", "product-description"], + "props": { + "tabId": "description4" + } + }, + + "tab-content.item#description5": { + "children": ["product-images", "product-description"], + "props": { + "tabId": "description5" + } + }, "condition-layout.product#availability": { "props": { -- 2.34.1 From 2c529d93d1e61c44a532858e57fee4ae2943ec33 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Feb 2023 13:56:43 -0300 Subject: [PATCH 04/10] =?UTF-8?q?feat:=20adiciona=20estiliza=C3=A7=C3=A3o?= =?UTF-8?q?=20do=20tab-layout=20e=20a=20descri=C3=A7=C3=A3o=20do=20produto?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sass/pages/product/vtex.tab-layout.scss | 83 +++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 styles/sass/pages/product/vtex.tab-layout.scss diff --git a/styles/sass/pages/product/vtex.tab-layout.scss b/styles/sass/pages/product/vtex.tab-layout.scss new file mode 100644 index 0000000..5078643 --- /dev/null +++ b/styles/sass/pages/product/vtex.tab-layout.scss @@ -0,0 +1,83 @@ +.container--description { + margin: 16px 40px; + + .listContainer { + display: flex; + justify-content: space-around; + border-bottom: 1px solid #bfbfbf; + + .listItem { + padding: 0; + margin: 0; + + :global(.vtex-button) { + background: white; + border: none; + + font-family: "Open Sans", sans-serif; + font-size: 18px; + text-transform: none; + + color: #bfbfbf; + + :global(.vtex-button__label) { + padding: 0; + } + } + } + + .listItemActive { + border-bottom: 2px solid black; + + :global(.vtex-button) { + color: black; + } + } + } + + .contentContainer { + .contentItem { + display: flex; + + :global(.vtex-store-components-3-x-productImagesContainer) { + width: 100%; + height: 100%; + max-width: 632px; + max-height: 632px; + } + + :global(.vtex-store-components-3-x-productImagesGallerySlide) { + margin: 32px 32px 16px 32px; + } + + :global(.vtex-store-components-3-x-carouselGaleryThumbs) { + display: none; + } + + :global(.vtex-store-components-3-x-productDescriptionContainer) { + margin-top: 32px; + margin-left: 32px; + + :global(.vtex-store-components-3-x-productDescriptionTitle) { + font-family: "Open Sans", sans-serif; + font-size: 24px; + line-height: 32px; + + color: #575757; + } + + :global(.vtex-store-components-3-x-productDescriptionText) { + font-family: "Open Sans", sans-serif; + font-size: 16px; + line-height: 22px; + + color: #929292; + } + + :global(.vtex-store-components-3-x-container) { + padding: 0; + } + } + } + } +} -- 2.34.1 From 9a58a63876dfda8c2196da731af24885b5d76225 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Feb 2023 14:51:47 -0300 Subject: [PATCH 05/10] feat: adiciona estrutura da prateleira de produtos no bloco json --- store/blocks/pdp/product.jsonc | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 58b114b..3a8b1fd 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -4,7 +4,8 @@ "html#breadcrumb", "condition-layout.product#availability", "tab-layout#description", - "shelf.relatedProducts", + // "shelf.relatedProducts", + "flex-layout.row#shelf", "product-questions-and-answers" ] }, @@ -120,6 +121,37 @@ } }, + "product-summary.shelf#teste": { + "children": [ + "product-summary-image#shelf", + "product-summary-name", + "product-list-price#summary", + "product-selling-price#summary" + ] + }, + + "list-context.product-list#teste": { + "blocks": ["product-summary.shelf#teste"], + "children": ["slider-layout#prateleira"] + }, + + "slider-layout#prateleira": { + "props": { + "itemsPerPage": { + "desktop": 4, + "tablet": 1, + "phone": 1 + }, + "infinite": true, + "showNavigationArrows": "desktopOnly", + "blockClass": "carousel" + } + }, + + "flex-layout.row#shelf": { + "children": ["list-context.product-list#teste"] + }, + "condition-layout.product#availability": { "props": { "conditions": [ -- 2.34.1 From 9602fd9adeea3c8e03ccd78bd9d19836ebba9276 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Feb 2023 16:53:49 -0300 Subject: [PATCH 06/10] =?UTF-8?q?feat:=20adiciona=20estiliza=C3=A7=C3=A3o?= =?UTF-8?q?=20da=20prateleira=20de=20produtos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- store/blocks/pdp/product.jsonc | 5 +- styles/css/vtex.slider-layout.css | 106 +++++++++++++----- styles/css/vtex.tab-layout.css | 1 + .../pages/product/vtex.slider-layout.scss | 91 +++++++++++++++ .../sass/pages/product/vtex.tab-layout.scss | 1 + 5 files changed, 176 insertions(+), 28 deletions(-) create mode 100644 styles/sass/pages/product/vtex.slider-layout.scss diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 3a8b1fd..35e3b16 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -4,7 +4,6 @@ "html#breadcrumb", "condition-layout.product#availability", "tab-layout#description", - // "shelf.relatedProducts", "flex-layout.row#shelf", "product-questions-and-answers" ] @@ -139,8 +138,8 @@ "props": { "itemsPerPage": { "desktop": 4, - "tablet": 1, - "phone": 1 + "tablet": 3, + "phone": 2 }, "infinite": true, "showNavigationArrows": "desktopOnly", diff --git a/styles/css/vtex.slider-layout.css b/styles/css/vtex.slider-layout.css index 55f431f..59b76f2 100644 --- a/styles/css/vtex.slider-layout.css +++ b/styles/css/vtex.slider-layout.css @@ -1,31 +1,87 @@ -.sliderLayoutContainer { - justify-content: center; -} - +/* +0 - 600PX: Phone +600 - 900px: Table portrait +900 - 1200px: Tablet landscape +[1200 - 1800] is where our nortal styles apply +1800px + : Big desktop +*/ +/* Media Query M3 */ +@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); +/* Grid breakpoints */ .sliderLayoutContainer--carousel { - background-color: #F0F0F0; - min-height: 450px; + background-color: white; + height: 630px; } - -.sliderTrackContainer { - max-width: 100%; +.sliderLayoutContainer--carousel .sliderTrackContainer { + margin: 32px 27px 32px 27px; } - -.paginationDotsContainer { - margin-top: .5rem; - margin-bottom: .5rem; +.sliderLayoutContainer--carousel .slide { + width: 100%; + max-width: 314px; + height: 448px; + margin-right: 16px; } - -.layoutContainer--shelf { - margin-top: 20px; - margin-bottom: 20px; - max-width: 96rem; - min-height: 550px; +.sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) { + max-width: unset !important; } - -.slide--shelf { - margin-bottom: 25px; - padding-left: .5rem; - padding-right: .5rem; - min-height: 550px; +.sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) :global(.vtex-product-summary-2-x-element) { + padding: 0; } +.sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) :global(.vtex-product-summary-2-x-imageContainer) { + width: 314px; + height: 314px; +} +.sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) :global(.vtex-product-summary-2-x-imageContainer) :global(.vtex-product-summary-2-x-imageNormal) { + max-height: 314px !important; +} +.sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-nameContainer) { + justify-content: center; + text-align: center; + padding: 16px 0 8px 0; +} +.sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-nameContainer) :global(.vtex-product-summary-2-x-productBrand) { + font-family: "Open Sans", sans-serif; + font-size: 18px; + line-height: 25px; + color: #000000; +} +.sliderLayoutContainer--carousel .slide :global(.vtex-product-price-1-x-listPrice) { + display: block; + font-family: "Open Sans", sans-serif; + font-size: 14px; + line-height: 19px; + text-align: center; + text-decoration-line: line-through; + color: #bababa; + padding-bottom: 8px; +} +.sliderLayoutContainer--carousel .slide :global(.vtex-product-price-1-x-sellingPrice) { + text-align: center; + font-family: "Open Sans", sans-serif; + font-weight: 700; + font-size: 24px; + line-height: 33px; + color: #000000; +} +.sliderLayoutContainer--carousel .sliderLeftArrow, +.sliderLayoutContainer--carousel .sliderRightArrow { + padding: 0; + margin: 0; +} +.sliderLayoutContainer--carousel .paginationDotsContainer { + display: flex; + align-items: center; + margin-bottom: 64px; +} +.sliderLayoutContainer--carousel .paginationDotsContainer .paginationDot { + width: 10px; + height: 10px; + background-color: black; + border: none; +} +.sliderLayoutContainer--carousel .paginationDotsContainer .paginationDot--isActive { + width: 17px !important; + height: 17px !important; + background-color: white; + border: 0.5px solid #000000; +} \ No newline at end of file diff --git a/styles/css/vtex.tab-layout.css b/styles/css/vtex.tab-layout.css index 2ebf3af..2797ed0 100644 --- a/styles/css/vtex.tab-layout.css +++ b/styles/css/vtex.tab-layout.css @@ -10,6 +10,7 @@ /* Grid breakpoints */ .container--description { margin: 16px 40px; + height: 702px; } .container--description .listContainer { display: flex; diff --git a/styles/sass/pages/product/vtex.slider-layout.scss b/styles/sass/pages/product/vtex.slider-layout.scss new file mode 100644 index 0000000..cb9e530 --- /dev/null +++ b/styles/sass/pages/product/vtex.slider-layout.scss @@ -0,0 +1,91 @@ +.sliderLayoutContainer--carousel { + background-color: white; + height: 630px; + + .sliderTrackContainer { + margin: 32px 27px 32px 27px; + } + + .slide { + width: 100%; + max-width: 314px; + height: 448px; + margin-right: 16px; + + :global(.vtex-product-summary-2-x-container) { + max-width: unset !important; + + :global(.vtex-product-summary-2-x-element) { + padding: 0; + } + + :global(.vtex-product-summary-2-x-imageContainer) { + width: 314px; + height: 314px; + + :global(.vtex-product-summary-2-x-imageNormal) { + max-height: 314px !important; + } + } + } + + :global(.vtex-product-summary-2-x-nameContainer) { + justify-content: center; + text-align: center; + padding: 16px 0 8px 0; + :global(.vtex-product-summary-2-x-productBrand) { + font-family: "Open Sans", sans-serif; + font-size: 18px; + line-height: 25px; + + color: #000000; + } + } + + :global(.vtex-product-price-1-x-listPrice) { + display: block; + font-family: "Open Sans", sans-serif; + font-size: 14px; + line-height: 19px; + text-align: center; + text-decoration-line: line-through; + color: #bababa; + padding-bottom: 8px; + } + + :global(.vtex-product-price-1-x-sellingPrice) { + text-align: center; + font-family: "Open Sans", sans-serif; + font-weight: 700; + font-size: 24px; + line-height: 33px; + color: #000000; + } + } + + .sliderLeftArrow, + .sliderRightArrow { + padding: 0; + margin: 0; + } + + .paginationDotsContainer { + display: flex; + align-items: center; + margin-bottom: 64px; + + .paginationDot { + width: 10px; + height: 10px; + background-color: black; + border: none; + } + + .paginationDot--isActive { + width: 17px !important; + height: 17px !important; + background-color: white; + border: 0.5px solid #000000; + } + } +} diff --git a/styles/sass/pages/product/vtex.tab-layout.scss b/styles/sass/pages/product/vtex.tab-layout.scss index 5078643..c11c02d 100644 --- a/styles/sass/pages/product/vtex.tab-layout.scss +++ b/styles/sass/pages/product/vtex.tab-layout.scss @@ -1,5 +1,6 @@ .container--description { margin: 16px 40px; + height: 702px; .listContainer { display: flex; -- 2.34.1 From b52c15b9e0df4d4f5dccda34a30edde0339c2263 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 7 Feb 2023 17:34:47 -0300 Subject: [PATCH 07/10] fix: modifica arrow do slider e ajusta alinhamento do product price --- store/blocks/pdp/product.jsonc | 1 + styles/css/vtex.slider-layout.css | 30 ++++++++++++++++--- .../pages/product/vtex.slider-layout.scss | 29 +++++++++++++++--- 3 files changed, 52 insertions(+), 8 deletions(-) diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 35e3b16..37a0f4e 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -124,6 +124,7 @@ "children": [ "product-summary-image#shelf", "product-summary-name", + "product-summary-space", "product-list-price#summary", "product-selling-price#summary" ] diff --git a/styles/css/vtex.slider-layout.css b/styles/css/vtex.slider-layout.css index 59b76f2..9d49fec 100644 --- a/styles/css/vtex.slider-layout.css +++ b/styles/css/vtex.slider-layout.css @@ -9,7 +9,7 @@ @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); /* Grid breakpoints */ .sliderLayoutContainer--carousel { - background-color: white; + background-color: transparent; height: 630px; } .sliderLayoutContainer--carousel .sliderTrackContainer { @@ -63,10 +63,32 @@ line-height: 33px; color: #000000; } -.sliderLayoutContainer--carousel .sliderLeftArrow, -.sliderLayoutContainer--carousel .sliderRightArrow { - padding: 0; +.sliderLayoutContainer--carousel .sliderRightArrow, +.sliderLayoutContainer--carousel .sliderLeftArrow { margin: 0; + padding: 0; +} +.sliderLayoutContainer--carousel .sliderRightArrow .caretIcon, +.sliderLayoutContainer--carousel .sliderLeftArrow .caretIcon { + display: none; +} +.sliderLayoutContainer--carousel .sliderLeftArrow::after { + content: ""; + display: block; + background-image: url("data:image/svg+xml,%3Csvg width='12' height='31' viewBox='0 0 12 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.000193945 15.2383L10.9291 30.1191L11.2002 27.7468L2.30458 15.2383L11.2002 2.89145L10.9291 0.519139L0.000193945 15.2383Z' fill='black'/%3E%3C/svg%3E%0A"); + background-repeat: no-repeat; + background-size: 100% 100%; + width: 11px; + height: 30px; +} +.sliderLayoutContainer--carousel .sliderRightArrow::after { + content: ""; + display: block; + background-image: url("data:image/svg+xml,%3Csvg width='12' height='31' viewBox='0 0 12 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.9998 15.4004L1.07091 0.519531L0.799804 2.89184L9.69542 15.4004L0.799802 27.7472L1.07091 30.1195L11.9998 15.4004Z' fill='black'/%3E%3C/svg%3E "); + background-repeat: no-repeat; + background-size: 100% 100%; + width: 11px; + height: 30px; } .sliderLayoutContainer--carousel .paginationDotsContainer { display: flex; diff --git a/styles/sass/pages/product/vtex.slider-layout.scss b/styles/sass/pages/product/vtex.slider-layout.scss index cb9e530..2826fee 100644 --- a/styles/sass/pages/product/vtex.slider-layout.scss +++ b/styles/sass/pages/product/vtex.slider-layout.scss @@ -1,5 +1,5 @@ .sliderLayoutContainer--carousel { - background-color: white; + background-color: transparent; height: 630px; .sliderTrackContainer { @@ -63,10 +63,31 @@ } } - .sliderLeftArrow, - .sliderRightArrow { - padding: 0; + .sliderRightArrow, + .sliderLeftArrow { margin: 0; + padding: 0; + .caretIcon { + display: none; + } + } + .sliderLeftArrow::after { + content: ""; + display: block; + background-image: url("data:image/svg+xml,%3Csvg width='12' height='31' viewBox='0 0 12 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.000193945 15.2383L10.9291 30.1191L11.2002 27.7468L2.30458 15.2383L11.2002 2.89145L10.9291 0.519139L0.000193945 15.2383Z' fill='black'/%3E%3C/svg%3E%0A"); + background-repeat: no-repeat; + background-size: 100% 100%; + width: 11px; + height: 30px; + } + .sliderRightArrow::after { + content: ""; + display: block; + background-image: url("data:image/svg+xml,%3Csvg width='12' height='31' viewBox='0 0 12 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.9998 15.4004L1.07091 0.519531L0.799804 2.89184L9.69542 15.4004L0.799802 27.7472L1.07091 30.1195L11.9998 15.4004Z' fill='black'/%3E%3C/svg%3E "); + background-repeat: no-repeat; + background-size: 100% 100%; + width: 11px; + height: 30px; } .paginationDotsContainer { -- 2.34.1 From 7a74f986fbfe9357bfd74f759b52731fd7233cbd Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 8 Feb 2023 00:55:02 -0300 Subject: [PATCH 08/10] feat: adiciona e estiliza a newsletter --- store/blocks/pdp/product.jsonc | 11 ++- styles/css/vtex.slider-layout.css | 4 + styles/css/vtex.store-components.css | 72 ++++++++++++++++- styles/sass/pages/product/vtex.rich-text.scss | 1 + .../pages/product/vtex.slider-layout.scss | 5 ++ .../pages/product/vtex.store-components.scss | 81 ++++++++++++++++++- 6 files changed, 167 insertions(+), 7 deletions(-) diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 37a0f4e..9a065e0 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -5,7 +5,8 @@ "condition-layout.product#availability", "tab-layout#description", "flex-layout.row#shelf", - "product-questions-and-answers" + "product-questions-and-answers", + "newsletter" ] }, "html#breadcrumb": { @@ -245,6 +246,14 @@ "children": ["vtex.store-components:product-name"] }, + "newsletter": { + "props": { + "blockClass": "newsletter", + "label": "Assine nossa Newsletter", + "placeholder": "Digite seu e-mail" + } + }, + "sku-selector": { "props": { "variationsSpacing": 3, diff --git a/styles/css/vtex.slider-layout.css b/styles/css/vtex.slider-layout.css index 9d49fec..004650a 100644 --- a/styles/css/vtex.slider-layout.css +++ b/styles/css/vtex.slider-layout.css @@ -14,6 +14,10 @@ } .sliderLayoutContainer--carousel .sliderTrackContainer { margin: 32px 27px 32px 27px; + padding-bottom: 32px; +} +.sliderLayoutContainer--carousel .sliderTrackContainer .sliderTrack { + margin-bottom: 32px; } .sliderLayoutContainer--carousel .slide { width: 100%; diff --git a/styles/css/vtex.store-components.css b/styles/css/vtex.store-components.css index e800822..28ea8dc 100644 --- a/styles/css/vtex.store-components.css +++ b/styles/css/vtex.store-components.css @@ -11,9 +11,6 @@ .container { padding: 0 40px; } -.container .newsletter { - background: red; -} .container .productNameContainer--quickview { font-weight: 300; font-size: 20px; @@ -319,4 +316,73 @@ max-width: 90px; max-height: 90px !important; margin: 0 16px 0 0; +} + +.newsletter--newsletter { + display: flex; + flex-direction: column; + height: 175px; + background-color: black; + padding-bottom: 16px; + padding-top: 32px; +} +.newsletter--newsletter .container--newsletter { + margin: 0; +} +.newsletter--newsletter .container--newsletter .form--newsletter { + max-width: 774px !important; +} +.newsletter--newsletter .container--newsletter .form--newsletter .label--newsletter { + display: flex; + flex-direction: column; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 400; + font-size: 24px; + line-height: 38px; + text-align: center; + color: #ffffff; +} +.newsletter--newsletter .container--newsletter .form--newsletter .label--newsletter::after { + content: "Receba ofertas e novidades por e-mail"; + font-family: "Open Sans", sans-serif; + font-size: 18px; + line-height: 25px; + color: #929292; + margin-top: 16px; +} +.newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter { + padding-top: 16px; + border-bottom: 1px solid #929292; +} +.newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter :global(.vtex-input-prefix__group) { + border: none; + height: 32px; + padding-bottom: 7px; +} +.newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter :global(.vtex-input-prefix__group) :global(.vtex-styleguide-9-x-input) { + background-color: transparent; + padding: 0; + font-family: "Open Sans", sans-serif; + font-size: 18px; + line-height: 25px; + color: #929292; +} +.newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter .buttonContainer--newsletter { + padding: 0; + border-bottom: 3px solid white; + height: 32px; +} +.newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter .buttonContainer--newsletter :global(.vtex-button) { + background-color: transparent; + border: none; +} +.newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter .buttonContainer--newsletter :global(.vtex-button) :global(.vtex-button__label) { + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 700; + font-size: 14px; + line-height: 19px; + color: #ffffff; + padding: 0px 16px 13px 16px !important; } \ No newline at end of file diff --git a/styles/sass/pages/product/vtex.rich-text.scss b/styles/sass/pages/product/vtex.rich-text.scss index e69de29..8b13789 100644 --- a/styles/sass/pages/product/vtex.rich-text.scss +++ b/styles/sass/pages/product/vtex.rich-text.scss @@ -0,0 +1 @@ + diff --git a/styles/sass/pages/product/vtex.slider-layout.scss b/styles/sass/pages/product/vtex.slider-layout.scss index 2826fee..c87a094 100644 --- a/styles/sass/pages/product/vtex.slider-layout.scss +++ b/styles/sass/pages/product/vtex.slider-layout.scss @@ -4,6 +4,11 @@ .sliderTrackContainer { margin: 32px 27px 32px 27px; + padding-bottom: 32px; + + .sliderTrack { + margin-bottom: 32px; + } } .slide { diff --git a/styles/sass/pages/product/vtex.store-components.scss b/styles/sass/pages/product/vtex.store-components.scss index 83b9531..ef7ac46 100644 --- a/styles/sass/pages/product/vtex.store-components.scss +++ b/styles/sass/pages/product/vtex.store-components.scss @@ -1,8 +1,5 @@ .container { padding: 0 40px; - .newsletter { - background: red; - } .productNameContainer--quickview { font-weight: 300; @@ -350,3 +347,81 @@ max-height: 90px !important; margin: 0 16px 0 0; } + +.newsletter--newsletter { + display: flex; + flex-direction: column; + height: 175px; + background-color: black; + padding-bottom: 16px; + padding-top: 32px; + + .container--newsletter { + margin: 0; + + .form--newsletter { + max-width: 774px !important; + .label--newsletter { + display: flex; + flex-direction: column; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 400; + font-size: 24px; + line-height: 38px; + text-align: center; + color: #ffffff; + + &::after { + content: "Receba ofertas e novidades por e-mail"; + font-family: "Open Sans", sans-serif; + font-size: 18px; + line-height: 25px; + color: #929292; + margin-top: 16px; + } + } + + .inputGroup--newsletter { + padding-top: 16px; + border-bottom: 1px solid #929292; + + :global(.vtex-input-prefix__group) { + border: none; + height: 32px; + padding-bottom: 7px; + + :global(.vtex-styleguide-9-x-input) { + background-color: transparent; + padding: 0; + font-family: "Open Sans", sans-serif; + font-size: 18px; + line-height: 25px; + color: #929292; + } + } + + .buttonContainer--newsletter { + padding: 0; + border-bottom: 3px solid white; + height: 32px; + + :global(.vtex-button) { + background-color: transparent; + border: none; + + :global(.vtex-button__label) { + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 700; + font-size: 14px; + line-height: 19px; + color: #ffffff; + padding: 0px 16px 13px 16px !important; + } + } + } + } + } + } +} -- 2.34.1 From 9f582ec5ca96f0227f31038a2988e1a12b557d41 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 8 Feb 2023 00:58:35 -0300 Subject: [PATCH 09/10] =?UTF-8?q?feat:=20adiciona=20titulo=20da=20pratelei?= =?UTF-8?q?ra=20e=20estiliza=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- store/blocks/pdp/product.jsonc | 8 ++++++++ styles/css/vtex.rich-text.css | 13 ++++++++++++- styles/sass/pages/product/vtex.rich-text.scss | 12 ++++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 9a065e0..6a5b01d 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -4,6 +4,7 @@ "html#breadcrumb", "condition-layout.product#availability", "tab-layout#description", + "rich-text#prateleira", "flex-layout.row#shelf", "product-questions-and-answers", "newsletter" @@ -121,6 +122,13 @@ } }, + "rich-text#prateleira": { + "props": { + "blockClass": "title-shelf", + "text": "Você também pode gostar:" + } + }, + "product-summary.shelf#teste": { "children": [ "product-summary-image#shelf", diff --git a/styles/css/vtex.rich-text.css b/styles/css/vtex.rich-text.css index 2959ac9..9d37b69 100644 --- a/styles/css/vtex.rich-text.css +++ b/styles/css/vtex.rich-text.css @@ -7,4 +7,15 @@ */ /* Media Query M3 */ @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); -/* Grid breakpoints */ \ No newline at end of file +/* Grid breakpoints */ +.container--title-shelf { + display: block; + text-align: center; +} +.container--title-shelf .paragraph--title-shelf { + font-family: "Open Sans", sans-serif; + font-size: 24px; + line-height: 38px; + color: #575757; + margin: 0; +} \ No newline at end of file diff --git a/styles/sass/pages/product/vtex.rich-text.scss b/styles/sass/pages/product/vtex.rich-text.scss index 8b13789..20a1c64 100644 --- a/styles/sass/pages/product/vtex.rich-text.scss +++ b/styles/sass/pages/product/vtex.rich-text.scss @@ -1 +1,13 @@ +.container--title-shelf { + display: block; + text-align: center; + .paragraph--title-shelf { + font-family: "Open Sans", sans-serif; + font-size: 24px; + line-height: 38px; + + color: #575757; + margin: 0; + } +} -- 2.34.1 From e96480482497abf7e74b1d29f815961c69efc991 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 11 Feb 2023 01:29:38 -0300 Subject: [PATCH 10/10] feat: adiciona responsividade da pagina --- assets/iconPix.svg | 38 +++ react/PayWithPix.tsx | 3 + react/PayWithPix/PayWithPix.css | 33 +++ react/PayWithPix/PayWithPix.tsx | 24 ++ react/ProductContext.tsx | 36 +++ store/blocks/home/home.jsonc | 5 +- store/blocks/pdp/product.jsonc | 225 +++++++++++++++--- store/interfaces.json | 6 + styles/css/agenciamagma.store-theme.css | 6 + styles/css/vtex.breadcrumb.css | 20 +- styles/css/vtex.flex-layout.css | 80 ++++++- styles/css/vtex.login.css | 6 + styles/css/vtex.product-quantity.css | 6 + styles/css/vtex.rich-text.css | 10 + styles/css/vtex.slider-layout.css | 71 +++++- styles/css/vtex.store-components.css | 179 +++++++++++++- styles/css/vtex.tab-layout.css | 126 +++++++++- .../product/agenciamagma.store-theme.scss | 6 + .../sass/pages/product/vtex.breadcrumb.scss | 25 +- .../sass/pages/product/vtex.flex-layout.scss | 85 ++++++- styles/sass/pages/product/vtex.login.scss | 6 + .../pages/product/vtex.product-quantity.scss | 6 + styles/sass/pages/product/vtex.rich-text.scss | 8 + .../pages/product/vtex.slider-layout.scss | 64 ++++- .../pages/product/vtex.store-components.scss | 181 +++++++++++++- .../sass/pages/product/vtex.tab-layout.scss | 109 ++++++++- 26 files changed, 1252 insertions(+), 112 deletions(-) create mode 100644 assets/iconPix.svg create mode 100644 react/PayWithPix.tsx create mode 100644 react/PayWithPix/PayWithPix.css create mode 100644 react/PayWithPix/PayWithPix.tsx create mode 100644 react/ProductContext.tsx diff --git a/assets/iconPix.svg b/assets/iconPix.svg new file mode 100644 index 0000000..c80d1da --- /dev/null +++ b/assets/iconPix.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/react/PayWithPix.tsx b/react/PayWithPix.tsx new file mode 100644 index 0000000..3854f6b --- /dev/null +++ b/react/PayWithPix.tsx @@ -0,0 +1,3 @@ +import { PayWithPix } from "./PayWithPix/PayWithPix"; + +export default PayWithPix; diff --git a/react/PayWithPix/PayWithPix.css b/react/PayWithPix/PayWithPix.css new file mode 100644 index 0000000..cef306a --- /dev/null +++ b/react/PayWithPix/PayWithPix.css @@ -0,0 +1,33 @@ +.PayWithPix { + display: flex; + column-gap: 26px; + align-items: center; + margin: 16px 0 24px; +} + +.PayWithPix__pixIcon { + width: 66px; + height: 24px; + display: block; +} + +.PayWithPix__wrapper { + display: flex; + flex-direction: column; +} + +.PayWithPix__price { + font-family: "Open Sans", sans-serif; + font-weight: 700; + font-size: 18px; + line-height: 25px; + color: rgba(0, 0, 0, 0.58); + margin: 0; +} + +.PayWithPix__discount { + font-family: "Open Sans", sans-serif; + font-weight: 300; + font-size: 13px; + color: #929292; +} diff --git a/react/PayWithPix/PayWithPix.tsx b/react/PayWithPix/PayWithPix.tsx new file mode 100644 index 0000000..2f54ace --- /dev/null +++ b/react/PayWithPix/PayWithPix.tsx @@ -0,0 +1,24 @@ +import React from "react"; +import { useProduct } from "vtex.product-context"; + +import style from "./PayWithPix.css"; + +const PayWithPix = () => { + const productContextValue = useProduct(); + + const discount = + (productContextValue?.product?.priceRange?.sellingPrice?.highPrice ?? 0) * + 0.9; + const priceFormatted = discount?.toFixed(2).toString().replace(".", ","); + + return ( +
+
+

R$ {priceFormatted}

+ 10 % de desconto +
+
+ ); +}; + +export { PayWithPix }; diff --git a/react/ProductContext.tsx b/react/ProductContext.tsx new file mode 100644 index 0000000..fbdca5f --- /dev/null +++ b/react/ProductContext.tsx @@ -0,0 +1,36 @@ +import React, { useEffect, useState } from "react"; +import { useProduct } from "vtex.product-context"; + +const ProductContext = () => { + const productContext = useProduct(); + const [simulation, setSimulation] = useState(); + useEffect(() => { + fetch("/api/checkout/pub/orderForms/simulation?sc=1", { + headers: { + Accept: "application/json", + "Content-Type": "application/json", + }, + method: "POST", + body: JSON.stringify({ + paymentData: { + payments: [{ paymentSystem: "125", installments: 1 }], + }, + items: [ + { + id: productContext?.selectedItem?.itemId, + quantity: 1, + seller: "1", + }, + ], + country: "BRA", + }), + }).then(async (res) => { + setSimulation(await res.json()); + }); + }, [productContext?.selectedItem]); + + console.log("productContext", productContext); + return <> {simulation?.paymentData?.payments[0]?.value}; +}; + +export default ProductContext; diff --git a/store/blocks/home/home.jsonc b/store/blocks/home/home.jsonc index a4776bc..e18de24 100644 --- a/store/blocks/home/home.jsonc +++ b/store/blocks/home/home.jsonc @@ -2,8 +2,9 @@ "store.home": { "blocks": [ "list-context.image-list#demo", - "example-component", /* You can make references to blocks defined in other files. - * For example, `flex-layout.row#deals` is defined in the `deals.json` file. */ + "example-component" + /* You can make references to blocks defined in other files. + * For example, `flex-layout.row#deals` is defined in the `deals.json` file. */, "flex-layout.row#deals", "__fold__", "rich-text#shelf-title", diff --git a/store/blocks/pdp/product.jsonc b/store/blocks/pdp/product.jsonc index 6a5b01d..f656582 100644 --- a/store/blocks/pdp/product.jsonc +++ b/store/blocks/pdp/product.jsonc @@ -1,9 +1,7 @@ { "store.product": { "children": [ - "html#breadcrumb", "condition-layout.product#availability", - "tab-layout#description", "rich-text#prateleira", "flex-layout.row#shelf", "product-questions-and-answers", @@ -19,6 +17,104 @@ "children": ["breadcrumb"] }, + "html#imagens": { + "props": { + "testId": "product-images" + }, + "children": ["flex-layout.row#product-image"] + }, + + "html#product-name": { + "props": { + "testId": "product-name" + }, + "children": ["flex-layout.row#product-name"] + }, + + "html#codigo": { + "props": { + "testId": "product-code" + }, + "children": ["product-identifier.product"] + }, + + "html#selling-price": { + "props": { + "testId": "product-price" + }, + "children": ["product-selling-price"] + }, + + "html#product-installments": { + "props": { + "testId": "product-installments" + }, + "children": ["product-installments"] + }, + + "html#pixzap": { + "props": { + "testId": "pix-price" + }, + "children": ["flex-layout.row#pix"] + }, + + "html#sku-selector": { + "props": { + "testId": "sku-selector" + }, + "children": ["sku-selector"] + }, + + "html#product-quantity": { + "props": { + "testId": "product-quantity" + }, + "children": ["flex-layout.row#product-quantity"] + }, + + "html#add-to-cart-button": { + "props": { + "testId": "add-to-cart-button" + }, + "children": ["add-to-cart-button"] + }, + + "html#shipping-simulator": { + "props": { + "testId": "shipping-simulator" + }, + "children": ["shipping-simulator"] + }, + + "html#product-description": { + "props": { + "testId": "product-description" + }, + "children": ["tab-layout#description"] + }, + + "html#slider": { + "props": { + "testId": "product-summary-list" + }, + "children": ["list-context.product-list#teste"] + }, + + "html#prateleira": { + "props": { + "blockClass": "prateleirateste", + "testId": "vtex-product-summary" + }, + "children": [ + "product-summary-image#shelf", + "product-summary-name", + "product-summary-space", + "product-list-price#summary", + "html#selling-price" + ] + }, + "tab-layout#description": { "children": ["tab-list#description", "tab-content#description"], "props": { @@ -88,40 +184,47 @@ }, "tab-content.item#description1": { - "children": ["product-images", "product-description"], + "children": ["image#description", "product-description"], "props": { "tabId": "description1" } }, "tab-content.item#description2": { - "children": ["product-images", "product-description"], + "children": ["image#description", "product-description"], "props": { "tabId": "description2" } }, "tab-content.item#description3": { - "children": ["product-images", "product-description"], + "children": ["image#description", "product-description"], "props": { "tabId": "description3" } }, "tab-content.item#description4": { - "children": ["product-images", "product-description"], + "children": ["image#description", "product-description"], "props": { "tabId": "description4" } }, "tab-content.item#description5": { - "children": ["product-images", "product-description"], + "children": ["image#description", "product-description"], "props": { "tabId": "description5" } }, + "image#description": { + "props": { + "blockClass": "image-description", + "src": "https://agenciamagma.vtexassets.com/arquivos/ids/164491-800-auto?v=637781133812700000&width=800&height=auto&aspect=true" + } + }, + "rich-text#prateleira": { "props": { "blockClass": "title-shelf", @@ -130,13 +233,7 @@ }, "product-summary.shelf#teste": { - "children": [ - "product-summary-image#shelf", - "product-summary-name", - "product-summary-space", - "product-list-price#summary", - "product-selling-price#summary" - ] + "children": ["html#prateleira"] }, "list-context.product-list#teste": { @@ -152,13 +249,12 @@ "phone": 2 }, "infinite": true, - "showNavigationArrows": "desktopOnly", "blockClass": "carousel" } }, "flex-layout.row#shelf": { - "children": ["list-context.product-list#teste"] + "children": ["html#slider"] }, "condition-layout.product#availability": { @@ -174,6 +270,7 @@ }, "flex-layout.row#product-main": { "props": { + "blockClass": "principal", "colGap": 7, "rowGap": 7, "marginTop": 4, @@ -181,15 +278,33 @@ "paddingTop": 7, "paddingBottom": 7 }, + "children": ["flex-layout.col#mainpage-col"] + }, + + "flex-layout.row#mainpage-row": { + "props": { + "blockClass": "mainpage-row" + }, "children": ["flex-layout.col#stack", "flex-layout.col#right-col"] }, + "flex-layout.col#mainpage-col": { + "props": { + "blockClass": "mainpage-col" + }, + "children": [ + "html#breadcrumb", + "flex-layout.row#mainpage-row", + "html#product-description" + ] + }, + "stack-layout": { "props": { "blockClass": "product" }, "children": [ - "flex-layout.row#product-image", + "html#imagens", "product-bookmark", "product-specification-badges" ] @@ -218,7 +333,7 @@ "props": { "aspectRatio": { "desktop": "auto", - "phone": "16:9" + "phone": "1:1" }, "displayThumbnailsArrows": true, "thumbnailsOrientation": "horizontal" @@ -230,23 +345,44 @@ "rowGap": 0 }, "children": [ - "flex-layout.row#product-name", - "product-identifier.product", + "html#product-name", + "html#codigo", "product-rating-summary", "flex-layout.row#list-price-savings", "flex-layout.row#selling-price", - "product-installments", - "sku-selector", - "product-assembly-options", - "product-gifts", + "html#product-installments", + "html#pixzap", + "html#sku-selector", "flex-layout.row#buy-box", "availability-subscriber", - "shipping-simulator", + "html#shipping-simulator", "share#default", "placeholder" ] }, + "flex-layout.row#pix": { + "props": { + "blockClass": "pix-container" + }, + "children": ["image#pix", "pay-with-pix"] + }, + + "image#pix": { + "props": { + "blockClass": "pix-image", + "src": "assets/iconPix.svg" + } + }, + + "product-installments": { + "props": { + "installmentsCriteria": "max-quantity-without-interest", + "markers": ["discount"], + "message": "ou {installmentsNumber}x de {installmentValue} sem juros" + } + }, + "flex-layout.row#product-name": { "props": { "marginBottom": 3 @@ -276,10 +412,7 @@ "colSizing": "auto" }, - "children": [ - "flex-layout.row#product-quantity", - "flex-layout.row#buy-button" - ] + "children": ["html#product-quantity", "flex-layout.row#buy-button"] }, "flex-layout.row#product-quantity": { @@ -298,7 +431,7 @@ "preventHorizontalStretch": false, "fullWidth": true }, - "children": ["add-to-cart-button"] + "children": ["html#add-to-cart-button"] }, "flex-layout.row#product-availability": { @@ -308,11 +441,34 @@ "marginBottom": 7, "paddingTop": 7 }, + "children": ["flex-layout.row#mainpage-row-availability"] + }, + + "flex-layout.row#mainpage-row-availability": { + "props": { + "blockClass": "mainpage-row" + }, + "children": ["flex-layout.col#mainpage-col-availability"] + }, + + "flex-layout.row#teste": { "children": [ "flex-layout.col#stack", "flex-layout.col#right-col-availability" ] }, + + "flex-layout.col#mainpage-col-availability": { + "props": { + "blockClass": "mainpage-col" + }, + "children": [ + "html#breadcrumb", + "flex-layout.row#teste", + "html#product-description" + ] + }, + "flex-layout.col#right-col-availability": { "props": { "preventVerticalStretch": true, @@ -320,12 +476,13 @@ "blockClass": "info-availability" }, "children": [ - "flex-layout.row#product-name", - "product-identifier.product", - "sku-selector", - "flex-layout.row#availability" + "html#product-name", + "html#codigo", + "flex-layout.row#availability", + "html#sku-selector" ] }, + "flex-layout.row#availability": { "props": { "blockClass": "message-availability" diff --git a/store/interfaces.json b/store/interfaces.json index 9193346..60bda72 100644 --- a/store/interfaces.json +++ b/store/interfaces.json @@ -8,5 +8,11 @@ }, "placeholder": { "component": "placeholder" + }, + "product-context": { + "component": "ProductContext" + }, + "pay-with-pix": { + "component": "PayWithPix" } } diff --git a/styles/css/agenciamagma.store-theme.css b/styles/css/agenciamagma.store-theme.css index 7f0a2f5..edea4af 100644 --- a/styles/css/agenciamagma.store-theme.css +++ b/styles/css/agenciamagma.store-theme.css @@ -14,4 +14,10 @@ .html--pdp-breadcrumb { background-color: white; +} + +.html--prateleirateste { + height: 100%; + display: flex; + flex-direction: column; } \ No newline at end of file diff --git a/styles/css/vtex.breadcrumb.css b/styles/css/vtex.breadcrumb.css index 72451a6..86b84d3 100644 --- a/styles/css/vtex.breadcrumb.css +++ b/styles/css/vtex.breadcrumb.css @@ -9,17 +9,25 @@ @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); /* Grid breakpoints */ .container { + display: flex; + align-items: center; + flex-wrap: wrap; font-size: 14px; line-height: 19px; - padding: 0 40px 16px 40px; + padding: 0; + margin-bottom: 16px; } -.container .homeIconm, .container .homeLink { - display: none; + visibility: hidden; + padding: 0; } -.container .arrow--1 { - padding-left: 0; +.container .homeLink::before { + content: "Home"; + font-size: 14px; + line-height: 19px; + visibility: visible; + padding: 0; } -.container .arrow--1 .caretIcon { +.container .homeIcon { display: none; } \ No newline at end of file diff --git a/styles/css/vtex.flex-layout.css b/styles/css/vtex.flex-layout.css index 84ff0e2..8cc4e7b 100644 --- a/styles/css/vtex.flex-layout.css +++ b/styles/css/vtex.flex-layout.css @@ -8,17 +8,6 @@ /* Media Query M3 */ @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); /* Grid breakpoints */ -.flexRowContent { - padding: 0; - margin: 0; -} -@media screen and (max-width: 1024px) { - .flexRowContent { - display: flex; - flex-direction: column; - } -} - .flexRowContent--buy-button-container { margin-bottom: 16px; } @@ -28,7 +17,76 @@ height: 50px; margin-left: 10px; } +@media screen and (min-width: 375px) and (max-width: 768px) { + .flexRowContent--buy-button-container :global(.vtex-button) { + height: 74px; + margin-top: 10px; + margin-left: unset; + } +} .flexRow--buy-box .stretchChildrenWidth:nth-child(2n) { width: 100% !important; +} + +.flexRowContent--principal .stretchChildrenWidth:nth-child(2n) { + width: 100% !important; +} +.flexRowContent--principal .flexColChild--mainpage-col { + padding: 0; +} + +.flexRowContent { + padding: 0; + margin: 0; +} +@media screen and (max-width: 1024px) { + .flexRowContent { + display: flex; + flex-direction: column; + } + .flexRowContent .stretchChildrenWidth { + width: auto !important; + padding: 0; + } + .flexRowContent :global(.vtex-store-components-3-x-carouselGaleryThumbs) { + display: block; + } + .flexRowContent .flexRowContent--buy-box { + flex-direction: row; + } +} +@media screen and (max-width: 1024px) and (min-width: 375px) and (max-width: 768px) { + .flexRowContent .flexRowContent--buy-box { + flex-direction: column; + } +} + +.flexRowContent--main-header-mobile { + flex-direction: row; +} + +.flexColChild--mainpage-col { + padding-bottom: 2rem; +} + +:global(.vtex-flex-layout-0-x-flexRow--pix-container) { + display: flex; + align-items: center; +} +@media screen and (max-width: 1024px) { + :global(.vtex-flex-layout-0-x-flexRow--pix-container) :global(.vtex-flex-layout-0-x-flexRowContent--pix-container) { + flex-direction: row; + display: flex; + } +} +:global(.vtex-flex-layout-0-x-flexRow--pix-container) :global(.vtex-flex-layout-0-x-flexRowContent--pix-container) :global(.vtex-flex-layout-0-x-stretchChildrenWidth) { + display: flex; + align-items: center; + width: auto !important; + padding-right: 26px; +} +:global(.vtex-flex-layout-0-x-flexRow--pix-container) :global(.vtex-flex-layout-0-x-flexRowContent--pix-container) :global(.vtex-flex-layout-0-x-stretchChildrenWidth) :global(.vtex-store-components-3-x-imageElement) { + width: 66px; + height: 24px; } \ No newline at end of file diff --git a/styles/css/vtex.login.css b/styles/css/vtex.login.css index ab98158..da0161c 100644 --- a/styles/css/vtex.login.css +++ b/styles/css/vtex.login.css @@ -12,4 +12,10 @@ .vtex-address-form__postalCode-forgottenURL a) { color: black; +} + +:global(.agenciamagma-store-theme-5-x-html--prateleirateste) { + height: 100%; + display: flex; + flex-direction: column; } \ No newline at end of file diff --git a/styles/css/vtex.product-quantity.css b/styles/css/vtex.product-quantity.css index 4051955..120eec9 100644 --- a/styles/css/vtex.product-quantity.css +++ b/styles/css/vtex.product-quantity.css @@ -22,6 +22,12 @@ height: 50px; } +@media screen and (max-width: 1024px) { + :global(.vtex-numeric-stepper__input) { + width: 44px; + } +} + :global(.vtex-numeric-stepper__minus-button) { background-color: white; } diff --git a/styles/css/vtex.rich-text.css b/styles/css/vtex.rich-text.css index 9d37b69..cb77006 100644 --- a/styles/css/vtex.rich-text.css +++ b/styles/css/vtex.rich-text.css @@ -18,4 +18,14 @@ line-height: 38px; color: #575757; margin: 0; +} +@media screen and (min-width: 1920px) { + .container--title-shelf .paragraph--title-shelf { + margin-top: 16px; + } +} +@media screen and (min-width: 375px) and (max-width: 768px) { + .container--title-shelf .paragraph--title-shelf { + font-size: 20px; + } } \ No newline at end of file diff --git a/styles/css/vtex.slider-layout.css b/styles/css/vtex.slider-layout.css index 004650a..19dfded 100644 --- a/styles/css/vtex.slider-layout.css +++ b/styles/css/vtex.slider-layout.css @@ -12,10 +12,20 @@ background-color: transparent; height: 630px; } +@media screen and (min-width: 375px) and (max-width: 768px) { + .sliderLayoutContainer--carousel { + height: 393px; + } +} .sliderLayoutContainer--carousel .sliderTrackContainer { margin: 32px 27px 32px 27px; padding-bottom: 32px; } +@media screen and (min-width: 375px) and (max-width: 768px) { + .sliderLayoutContainer--carousel .sliderTrackContainer { + padding-bottom: 0; + } +} .sliderLayoutContainer--carousel .sliderTrackContainer .sliderTrack { margin-bottom: 32px; } @@ -25,6 +35,21 @@ height: 448px; margin-right: 16px; } +@media screen and (max-width: 767px) { + .sliderLayoutContainer--carousel .slide { + margin-right: 8px; + } +} +@media screen and (min-width: 768px) and (max-width: 1024px) { + .sliderLayoutContainer--carousel .slide { + margin-right: 12px; + } +} +@media screen and (min-width: 375px) and (max-width: 768px) { + .sliderLayoutContainer--carousel .slide { + height: unset; + } +} .sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) { max-width: unset !important; } @@ -32,9 +57,22 @@ padding: 0; } .sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) :global(.vtex-product-summary-2-x-imageContainer) { - width: 314px; + width: 100%; + max-width: 314px; height: 314px; } +@media screen and (min-width: 375px) and (max-width: 768px) { + .sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) :global(.vtex-product-summary-2-x-imageContainer) { + max-width: 124px; + height: 124px; + } +} +@media screen and (min-width: 768px) and (max-width: 1024px) { + .sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) :global(.vtex-product-summary-2-x-imageContainer) { + max-width: 291px; + height: 291px; + } +} .sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-container) :global(.vtex-product-summary-2-x-imageContainer) :global(.vtex-product-summary-2-x-imageNormal) { max-height: 314px !important; } @@ -49,6 +87,12 @@ line-height: 25px; color: #000000; } +@media screen and (min-width: 375px) and (max-width: 768px) { + .sliderLayoutContainer--carousel .slide :global(.vtex-product-summary-2-x-nameContainer) :global(.vtex-product-summary-2-x-productBrand) { + font-size: 14px; + line-height: 19px; + } +} .sliderLayoutContainer--carousel .slide :global(.vtex-product-price-1-x-listPrice) { display: block; font-family: "Open Sans", sans-serif; @@ -59,7 +103,21 @@ color: #bababa; padding-bottom: 8px; } +@media screen and (min-width: 375px) and (max-width: 768px) { + .sliderLayoutContainer--carousel .slide :global(.vtex-product-price-1-x-listPrice) { + font-size: 12px; + line-height: 16px; + } +} +.sliderLayoutContainer--carousel .slide :global(.vtex-product-price-1-x-listPrice) :global(.vtex-product-price-1-x-listPriceValue)::before { + content: "de "; + font-size: 14px; +} +.sliderLayoutContainer--carousel .slide :global(.vtex-product-price-1-x-listPrice) :global(.vtex-product-price-1-x-listPriceValue)::after { + content: " por"; +} .sliderLayoutContainer--carousel .slide :global(.vtex-product-price-1-x-sellingPrice) { + display: block; text-align: center; font-family: "Open Sans", sans-serif; font-weight: 700; @@ -67,6 +125,12 @@ line-height: 33px; color: #000000; } +@media screen and (min-width: 375px) and (max-width: 768px) { + .sliderLayoutContainer--carousel .slide :global(.vtex-product-price-1-x-sellingPrice) { + font-size: 18px; + line-height: 25px; + } +} .sliderLayoutContainer--carousel .sliderRightArrow, .sliderLayoutContainer--carousel .sliderLeftArrow { margin: 0; @@ -99,6 +163,11 @@ align-items: center; margin-bottom: 64px; } +@media screen and (min-width: 375px) and (max-width: 768px) { + .sliderLayoutContainer--carousel .paginationDotsContainer { + margin-bottom: 32px; + } +} .sliderLayoutContainer--carousel .paginationDotsContainer .paginationDot { width: 10px; height: 10px; diff --git a/styles/css/vtex.store-components.css b/styles/css/vtex.store-components.css index 28ea8dc..1d9aee2 100644 --- a/styles/css/vtex.store-components.css +++ b/styles/css/vtex.store-components.css @@ -1,3 +1,4 @@ +@charset "UTF-8"; /* 0 - 600PX: Phone 600 - 900px: Table portrait @@ -11,6 +12,12 @@ .container { padding: 0 40px; } +@media screen and (min-width: 1920px) { + .container { + max-width: 115rem !important; + padding: 0; + } +} .container .productNameContainer--quickview { font-weight: 300; font-size: 20px; @@ -18,6 +25,12 @@ text-align: right; color: #575757; } +@media screen and (max-width: 1024px) { + .container .productNameContainer--quickview { + text-align: unset; + margin-top: 32px; + } +} .container .skuSelectorContainer { display: flex; flex-direction: column; @@ -67,6 +80,9 @@ .container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem .skuSelectorInternalBox .skuSelectorItemTextValue { padding: 0; } +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem--verde { + display: none; +} .container .skuSelectorContainer .skuSelectorSubcontainer--cor .skuSelectorOptionsList .skuSelectorItem--selected { width: 40px; height: 40px; @@ -79,6 +95,12 @@ border-radius: 50%; z-index: unset; } +.container .skuSelectorContainer .skuSelectorSubcontainer--cor .diagonalCross { + width: 10px; + margin: 0 auto; + color: black; + transform: rotate(60deg); +} .container .skuSelectorContainer .skuSelectorSubcontainer--tamanho { order: 1; margin-bottom: 10px; @@ -160,9 +182,15 @@ } .shippingContainer { - display: flex; + margin-top: 16px; + margin-bottom: 16px; position: relative; } +@media screen and (min-width: 768px) { + .shippingContainer { + max-width: 280px; + } +} .shippingContainer :global(.vtex-button) { font-size: 0; background-color: black; @@ -171,6 +199,8 @@ border: none; border-radius: 0; top: 27px; + position: absolute; + right: 0; } .shippingContainer :global(.vtex-button)::before { content: "OK"; @@ -257,11 +287,23 @@ } :global(.vtex-address-form__postalCode-forgottenURL) { - position: absolute; - right: 32px; - bottom: 15px; text-decoration: underline; } +@media screen and (min-width: 375px) and (max-width: 768px) { + :global(.vtex-address-form__postalCode-forgottenURL) { + display: flex; + flex-direction: row-reverse; + } +} +@media screen and (min-width: 768px) { + :global(.vtex-address-form__postalCode-forgottenURL) { + position: absolute; + right: -50%; + top: calc(50% + 13.5px); + transform: translateY(-50%); + padding: 0; + } +} :global(.vtex-address-form__postalCode-forgottenURL) :global(.vtex__icon-external-link) { display: none; } @@ -280,6 +322,11 @@ line-height: 19px; color: rgba(146, 146, 146, 0.48); } +@media screen and (max-width: 1024px) { + :global(.vtex-product-identifier-0-x-product-identifier) { + justify-content: start; + } +} :global(.vtex-store-components-3-x-swiper-pagination), :global(.vtex-store-components-3-x-swiperCaretNext), @@ -289,9 +336,23 @@ :global(.vtex-store-components-3-x-productImageTag) { object-fit: unset !important; - margin-bottom: 16px; max-height: 664px !important; max-width: 664px; + margin-bottom: 16px; +} +@media screen and (min-width: 1920px) { + :global(.vtex-store-components-3-x-productImageTag) { + max-height: unset !important; + max-width: unset; + width: auto !important; + height: 904px !important; + } +} +@media screen and (max-width: 1024px) { + :global(.vtex-store-components-3-x-productImageTag) { + max-width: 944px; + max-height: 944px !important; + } } :global(.vtex-store-components-3-x-figure) { @@ -302,6 +363,9 @@ :global(.vtex-store-components-3-x-carouselGaleryThumbs) { margin-top: unset; } +:global(.vtex-store-components-3-x-carouselGaleryThumbs) :global(.vtex-store-components-3-x-productImagesThumbCaret) { + display: none; +} .thumbImg--video { height: 90px; @@ -310,10 +374,11 @@ .thumbImg { width: 90px !important; height: 90px; + border-radius: 8px; } .productImagesThumb { - max-width: 90px; + width: 90px !important; max-height: 90px !important; margin: 0 16px 0 0; } @@ -321,17 +386,38 @@ .newsletter--newsletter { display: flex; flex-direction: column; - height: 175px; + align-items: center; + height: 100%; + max-height: 175px; background-color: black; padding-bottom: 16px; padding-top: 32px; } +@media screen and (max-width: 1024px) { + .newsletter--newsletter { + height: 220px; + max-height: unset; + padding-top: 64px; + } +} .newsletter--newsletter .container--newsletter { margin: 0; + width: 100%; + padding: 0; +} +@media screen and (max-width: 1024px) { + .newsletter--newsletter .container--newsletter { + padding: 0 16px; + } } .newsletter--newsletter .container--newsletter .form--newsletter { max-width: 774px !important; } +@media screen and (max-width: 1024px) { + .newsletter--newsletter .container--newsletter .form--newsletter { + max-width: 992px !important; + } +} .newsletter--newsletter .container--newsletter .form--newsletter .label--newsletter { display: flex; flex-direction: column; @@ -351,7 +437,14 @@ color: #929292; margin-top: 16px; } +@media screen and (max-width: 1024px) { + .newsletter--newsletter .container--newsletter .form--newsletter .label--newsletter::after { + font-size: 16px; + line-height: 22px; + } +} .newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter { + display: flex; padding-top: 16px; border-bottom: 1px solid #929292; } @@ -368,9 +461,16 @@ line-height: 25px; color: #929292; } +@media screen and (max-width: 1024px) { + .newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter :global(.vtex-input-prefix__group) :global(.vtex-styleguide-9-x-input) { + font-size: 12px; + line-height: 16px; + padding-left: 16px; + } +} .newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter .buttonContainer--newsletter { padding: 0; - border-bottom: 3px solid white; + border-bottom: 3px solid #bfbfbf; height: 32px; } .newsletter--newsletter .container--newsletter .form--newsletter .inputGroup--newsletter .buttonContainer--newsletter :global(.vtex-button) { @@ -385,4 +485,67 @@ line-height: 19px; color: #ffffff; padding: 0px 16px 13px 16px !important; +} + +.subscriberContainer .title { + font-size: 0; + margin: 0; +} +.subscriberContainer .title::before { + content: "Produto Indisponível"; + font-family: "Open Sans", sans-serif; + font-weight: 700; + font-size: 14px; + line-height: 19px; + color: #868686; +} +.subscriberContainer .subscribeLabel { + font-size: 0; +} +.subscriberContainer .subscribeLabel::before { + content: "Deseja saber quando estiver disponível?"; + font-family: "Open Sans", sans-serif; + font-size: 14px; + line-height: 19px; + color: #868686; +} +.subscriberContainer :global(.vtex-store-components-3-x-content) { + display: grid; + grid-template-columns: repeat(2, 1fr); + grid-column-gap: 10px; + width: 100%; +} +.subscriberContainer .inputName { + margin-right: 8px; +} +.subscriberContainer .inputName :global(.vtex-input-prefix__group), +.subscriberContainer .inputEmail :global(.vtex-input-prefix__group) { + border-radius: 0; + border: 1px solid #989898; +} +.subscriberContainer .inputName :global(.vtex-input-prefix__group) :global(.vtex-styleguide-9-x-input), +.subscriberContainer .inputEmail :global(.vtex-input-prefix__group) :global(.vtex-styleguide-9-x-input) { + padding: 12px 14px; +} +.subscriberContainer .submit { + grid-column: span 2; +} +.subscriberContainer .submit :global(.vtex-button) { + background-color: black; + border-radius: 0; + border: none; + height: 49px; + width: 100%; +} +.subscriberContainer .submit :global(.vtex-button) :global(.vtex-button__label) { + font-size: 0; +} +.subscriberContainer .submit :global(.vtex-button) :global(.vtex-button__label)::before { + content: "Avise-me"; + font-family: "Open Sans", sans-serif; + font-weight: 600; + font-size: 18px; + line-height: 25px; + text-transform: uppercase; + color: #ffffff; } \ No newline at end of file diff --git a/styles/css/vtex.tab-layout.css b/styles/css/vtex.tab-layout.css index 2797ed0..c9ce9b1 100644 --- a/styles/css/vtex.tab-layout.css +++ b/styles/css/vtex.tab-layout.css @@ -9,18 +9,49 @@ @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap"); /* Grid breakpoints */ .container--description { - margin: 16px 40px; height: 702px; + margin-top: 16px; + margin-bottom: 16px; +} +@media screen and (min-width: 1920px) { + .container--description { + height: 974px; + } +} +@media screen and (max-width: 1024px) { + .container--description { + height: 100%; + max-height: 1418px; + border-bottom: 1px solid #bfbfbf; + } } .container--description .listContainer { display: flex; justify-content: space-around; border-bottom: 1px solid #bfbfbf; } +@media screen and (max-width: 1024px) { + .container--description .listContainer { + border-top: 1px solid #bfbfbf; + } +} +@media screen and (max-width: 1024px) { + .container--description .listContainer { + flex-direction: column; + } +} .container--description .listContainer .listItem { padding: 0; margin: 0; } +@media screen and (max-width: 1024px) { + .container--description .listContainer .listItem { + margin-bottom: 16px; + } + .container--description .listContainer .listItem:first-child { + margin-top: 16px; + } +} .container--description .listContainer .listItem :global(.vtex-button) { background: white; border: none; @@ -29,46 +60,121 @@ text-transform: none; color: #bfbfbf; } +@media screen and (min-width: 1920px) { + .container--description .listContainer .listItem :global(.vtex-button) { + font-size: 24px; + line-height: 38px; + } +} +@media screen and (min-width: 375px) and (max-width: 1024px) { + .container--description .listContainer .listItem :global(.vtex-button) { + display: flex; + justify-content: start; + width: 100%; + } +} .container--description .listContainer .listItem :global(.vtex-button) :global(.vtex-button__label) { padding: 0; } .container--description .listContainer .listItemActive { border-bottom: 2px solid black; } +@media screen and (max-width: 1024px) { + .container--description .listContainer .listItemActive { + border: none; + } +} .container--description .listContainer .listItemActive :global(.vtex-button) { color: black; } +.container--description .contentContainer { + padding-top: 32px; +} +@media screen and (min-width: 1920px) { + .container--description .contentContainer { + padding-top: 64px; + } +} +@media screen and (max-width: 1024px) { + .container--description .contentContainer { + padding-top: unset; + } +} .container--description .contentContainer .contentItem { display: flex; } -.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productImagesContainer) { - width: 100%; - height: 100%; +@media screen and (max-width: 1024px) { + .container--description .contentContainer .contentItem { + flex-direction: column; + } +} +.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-imageElement) { max-width: 632px; - max-height: 632px; + margin-left: 32px; } -.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productImagesGallerySlide) { - margin: 32px 32px 16px 32px; +@media screen and (min-width: 1920px) { + .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-imageElement) { + height: 872px; + } } -.container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-carouselGaleryThumbs) { - display: none; +@media screen and (min-width: 1920px) { + .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-imageElement) { + max-width: unset; + } +} +@media screen and (max-width: 1024px) { + .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-imageElement) { + max-width: 944px; + margin-top: 16px; + margin-left: unset; + } } .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) { - margin-top: 32px; margin-left: 32px; } +@media screen and (max-width: 1024px) { + .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) { + margin-top: 16px; + margin-left: unset; + margin-bottom: 16px; + } +} .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-productDescriptionTitle) { font-family: "Open Sans", sans-serif; font-size: 24px; line-height: 32px; color: #575757; } +@media screen and (min-width: 1920px) { + .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-productDescriptionTitle) { + font-size: 32px; + line-height: 32px; + } +} +@media screen and (max-width: 1024px) { + .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-productDescriptionTitle) { + font-size: 20px; + line-height: 32px; + } +} .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-productDescriptionText) { font-family: "Open Sans", sans-serif; font-size: 16px; line-height: 22px; color: #929292; } +@media screen and (min-width: 1920px) { + .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-productDescriptionText) { + font-size: 18px; + line-height: 25px; + } +} +@media screen and (max-width: 1024px) { + .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-productDescriptionText) { + font-size: 14px; + line-height: 19px; + } +} .container--description .contentContainer .contentItem :global(.vtex-store-components-3-x-productDescriptionContainer) :global(.vtex-store-components-3-x-container) { padding: 0; } \ No newline at end of file diff --git a/styles/sass/pages/product/agenciamagma.store-theme.scss b/styles/sass/pages/product/agenciamagma.store-theme.scss index f7710ca..48b4498 100644 --- a/styles/sass/pages/product/agenciamagma.store-theme.scss +++ b/styles/sass/pages/product/agenciamagma.store-theme.scss @@ -5,3 +5,9 @@ .html--pdp-breadcrumb { background-color: white; } + +.html--prateleirateste { + height: 100%; + display: flex; + flex-direction: column; +} diff --git a/styles/sass/pages/product/vtex.breadcrumb.scss b/styles/sass/pages/product/vtex.breadcrumb.scss index 254b4ef..355ba05 100644 --- a/styles/sass/pages/product/vtex.breadcrumb.scss +++ b/styles/sass/pages/product/vtex.breadcrumb.scss @@ -1,17 +1,26 @@ .container { + display: flex; + align-items: center; + flex-wrap: wrap; font-size: 14px; line-height: 19px; - padding: 0 40px 16px 40px; + padding: 0; + margin-bottom: 16px; - .homeIconm, .homeLink { - display: none; - } + visibility: hidden; + padding: 0; - .arrow--1 { - padding-left: 0; - .caretIcon { - display: none; + &::before { + content: "Home"; + font-size: 14px; + line-height: 19px; + visibility: visible; + padding: 0; } } + + .homeIcon { + display: none; + } } diff --git a/styles/sass/pages/product/vtex.flex-layout.scss b/styles/sass/pages/product/vtex.flex-layout.scss index 217a3d6..58b1e74 100644 --- a/styles/sass/pages/product/vtex.flex-layout.scss +++ b/styles/sass/pages/product/vtex.flex-layout.scss @@ -1,20 +1,17 @@ -.flexRowContent { - padding: 0; - margin: 0; - - @media screen and (max-width: 1024px) { - display: flex; - flex-direction: column; - } -} - .flexRowContent--buy-button-container { margin-bottom: 16px; + :global(.vtex-button) { background-color: black; border: none; height: 50px; margin-left: 10px; + + @media screen and (min-width: 375px) and (max-width: 768px) { + height: 74px; + margin-top: 10px; + margin-left: unset; + } } } @@ -23,3 +20,71 @@ width: 100% !important; } } + +.flexRowContent--principal { + .stretchChildrenWidth:nth-child(2n) { + width: 100% !important; + } + + .flexColChild--mainpage-col { + padding: 0; + } +} + +.flexRowContent { + padding: 0; + margin: 0; + + @media screen and (max-width: 1024px) { + display: flex; + flex-direction: column; + + .stretchChildrenWidth { + width: auto !important; + padding: 0; + } + + :global(.vtex-store-components-3-x-carouselGaleryThumbs) { + display: block; + } + + .flexRowContent--buy-box { + flex-direction: row; + + @media screen and (min-width: 375px) and (max-width: 768px) { + flex-direction: column; + } + } + } +} + +.flexRowContent--main-header-mobile { + flex-direction: row; +} +.flexColChild--mainpage-col { + padding-bottom: 2rem; +} + +:global(.vtex-flex-layout-0-x-flexRow--pix-container) { + display: flex; + align-items: center; + + :global(.vtex-flex-layout-0-x-flexRowContent--pix-container) { + @media screen and (max-width: 1024px) { + flex-direction: row; + display: flex; + } + + :global(.vtex-flex-layout-0-x-stretchChildrenWidth) { + display: flex; + align-items: center; + width: auto !important; + padding-right: 26px; + + :global(.vtex-store-components-3-x-imageElement) { + width: 66px; + height: 24px; + } + } + } +} diff --git a/styles/sass/pages/product/vtex.login.scss b/styles/sass/pages/product/vtex.login.scss index c060054..01251a6 100644 --- a/styles/sass/pages/product/vtex.login.scss +++ b/styles/sass/pages/product/vtex.login.scss @@ -3,3 +3,9 @@ a) { color: black; } + +:global(.agenciamagma-store-theme-5-x-html--prateleirateste) { + height: 100%; + display: flex; + flex-direction: column; +} diff --git a/styles/sass/pages/product/vtex.product-quantity.scss b/styles/sass/pages/product/vtex.product-quantity.scss index 509d826..efd890d 100644 --- a/styles/sass/pages/product/vtex.product-quantity.scss +++ b/styles/sass/pages/product/vtex.product-quantity.scss @@ -11,6 +11,12 @@ height: 50px; } +:global(.vtex-numeric-stepper__input) { + @media screen and (max-width: 1024px) { + width: 44px; + } +} + :global(.vtex-numeric-stepper__minus-button) { background-color: white; } diff --git a/styles/sass/pages/product/vtex.rich-text.scss b/styles/sass/pages/product/vtex.rich-text.scss index 20a1c64..ade3e51 100644 --- a/styles/sass/pages/product/vtex.rich-text.scss +++ b/styles/sass/pages/product/vtex.rich-text.scss @@ -9,5 +9,13 @@ color: #575757; margin: 0; + + @media screen and (min-width: 1920px) { + margin-top: 16px; + } + + @media screen and (min-width: 375px) and (max-width: 768px) { + font-size: 20px; + } } } diff --git a/styles/sass/pages/product/vtex.slider-layout.scss b/styles/sass/pages/product/vtex.slider-layout.scss index c87a094..11a5cde 100644 --- a/styles/sass/pages/product/vtex.slider-layout.scss +++ b/styles/sass/pages/product/vtex.slider-layout.scss @@ -2,10 +2,18 @@ background-color: transparent; height: 630px; + @media screen and (min-width: 375px) and (max-width: 768px) { + height: 393px; + } + .sliderTrackContainer { margin: 32px 27px 32px 27px; padding-bottom: 32px; + @media screen and (min-width: 375px) and (max-width: 768px) { + padding-bottom: 0; + } + .sliderTrack { margin-bottom: 32px; } @@ -17,6 +25,18 @@ height: 448px; margin-right: 16px; + @media screen and (max-width: 767px) { + margin-right: 8px; + } + + @media screen and (min-width: 768px) and (max-width: 1024px) { + margin-right: 12px; + } + + @media screen and (min-width: 375px) and (max-width: 768px) { + height: unset; + } + :global(.vtex-product-summary-2-x-container) { max-width: unset !important; @@ -25,9 +45,20 @@ } :global(.vtex-product-summary-2-x-imageContainer) { - width: 314px; + width: 100%; + max-width: 314px; height: 314px; + @media screen and (min-width: 375px) and (max-width: 768px) { + max-width: 124px; + height: 124px; + } + + @media screen and (min-width: 768px) and (max-width: 1024px) { + max-width: 291px; + height: 291px; + } + :global(.vtex-product-summary-2-x-imageNormal) { max-height: 314px !important; } @@ -44,6 +75,11 @@ line-height: 25px; color: #000000; + + @media screen and (min-width: 375px) and (max-width: 768px) { + font-size: 14px; + line-height: 19px; + } } } @@ -56,15 +92,37 @@ text-decoration-line: line-through; color: #bababa; padding-bottom: 8px; + + @media screen and (min-width: 375px) and (max-width: 768px) { + font-size: 12px; + line-height: 16px; + } + + :global(.vtex-product-price-1-x-listPriceValue) { + &::before { + content: "de "; + font-size: 14px; + } + + &::after { + content: " por"; + } + } } :global(.vtex-product-price-1-x-sellingPrice) { + display: block; text-align: center; font-family: "Open Sans", sans-serif; font-weight: 700; font-size: 24px; line-height: 33px; color: #000000; + + @media screen and (min-width: 375px) and (max-width: 768px) { + font-size: 18px; + line-height: 25px; + } } } @@ -100,6 +158,10 @@ align-items: center; margin-bottom: 64px; + @media screen and (min-width: 375px) and (max-width: 768px) { + margin-bottom: 32px; + } + .paginationDot { width: 10px; height: 10px; diff --git a/styles/sass/pages/product/vtex.store-components.scss b/styles/sass/pages/product/vtex.store-components.scss index ef7ac46..a94c951 100644 --- a/styles/sass/pages/product/vtex.store-components.scss +++ b/styles/sass/pages/product/vtex.store-components.scss @@ -1,12 +1,21 @@ .container { padding: 0 40px; + @media screen and (min-width: 1920px) { + max-width: 115rem !important; + padding: 0; + } .productNameContainer--quickview { font-weight: 300; font-size: 20px; line-height: 34px; text-align: right; color: #575757; + + @media screen and (max-width: 1024px) { + text-align: unset; + margin-top: 32px; + } } .skuSelectorContainer { @@ -66,6 +75,10 @@ } } } + + .skuSelectorItem--verde { + display: none; + } .skuSelectorItem--selected { width: 40px; height: 40px; @@ -80,6 +93,13 @@ } } } + + .diagonalCross { + width: 10px; + margin: 0 auto; + color: black; + transform: rotate(60deg); + } } .skuSelectorSubcontainer--tamanho { @@ -179,8 +199,12 @@ } .shippingContainer { - display: flex; + margin-top: 16px; + margin-bottom: 16px; position: relative; + @media screen and (min-width: 768px) { + max-width: 280px; + } :global(.vtex-button) { font-size: 0; background-color: black; @@ -189,6 +213,8 @@ border: none; border-radius: 0; top: 27px; + position: absolute; + right: 0; &::before { content: "OK"; font-family: "Open Sans", sans-serif; @@ -287,11 +313,21 @@ } :global(.vtex-address-form__postalCode-forgottenURL) { - position: absolute; - right: 32px; - bottom: 15px; text-decoration: underline; + @media screen and (min-width: 375px) and (max-width: 768px) { + display: flex; + flex-direction: row-reverse; + } + + @media screen and (min-width: 768px) { + position: absolute; + right: -50%; + top: calc(50% + 13.5px); + transform: translateY(-50%); + padding: 0; + } + :global(.vtex__icon-external-link) { display: none; } @@ -309,6 +345,10 @@ font-size: 14px; line-height: 19px; color: rgba(146, 146, 146, 0.48); + + @media screen and (max-width: 1024px) { + justify-content: start; + } } :global(.vtex-store-components-3-x-swiper-pagination), @@ -319,9 +359,21 @@ :global(.vtex-store-components-3-x-productImageTag) { object-fit: unset !important; - margin-bottom: 16px; max-height: 664px !important; max-width: 664px; + margin-bottom: 16px; + + @media screen and (min-width: 1920px) { + max-height: unset !important; + max-width: unset; + width: auto !important; + height: 904px !important; + } + + @media screen and (max-width: 1024px) { + max-width: 944px; + max-height: 944px !important; + } } :global(.vtex-store-components-3-x-figure) { @@ -331,6 +383,10 @@ :global(.vtex-store-components-3-x-carouselGaleryThumbs) { margin-top: unset; + + :global(.vtex-store-components-3-x-productImagesThumbCaret) { + display: none; + } } .thumbImg--video { @@ -340,10 +396,11 @@ .thumbImg { width: 90px !important; height: 90px; + border-radius: 8px; } .productImagesThumb { - max-width: 90px; + width: 90px !important; max-height: 90px !important; margin: 0 16px 0 0; } @@ -351,16 +408,33 @@ .newsletter--newsletter { display: flex; flex-direction: column; - height: 175px; + align-items: center; + height: 100%; + max-height: 175px; background-color: black; padding-bottom: 16px; padding-top: 32px; + @media screen and (max-width: 1024px) { + height: 220px; + max-height: unset; + padding-top: 64px; + } + .container--newsletter { margin: 0; + width: 100%; + padding: 0; + @media screen and (max-width: 1024px) { + padding: 0 16px; + } .form--newsletter { max-width: 774px !important; + + @media screen and (max-width: 1024px) { + max-width: 992px !important; + } .label--newsletter { display: flex; flex-direction: column; @@ -379,10 +453,16 @@ line-height: 25px; color: #929292; margin-top: 16px; + + @media screen and (max-width: 1024px) { + font-size: 16px; + line-height: 22px; + } } } .inputGroup--newsletter { + display: flex; padding-top: 16px; border-bottom: 1px solid #929292; @@ -398,12 +478,18 @@ font-size: 18px; line-height: 25px; color: #929292; + + @media screen and (max-width: 1024px) { + font-size: 12px; + line-height: 16px; + padding-left: 16px; + } } } .buttonContainer--newsletter { padding: 0; - border-bottom: 3px solid white; + border-bottom: 3px solid #bfbfbf; height: 32px; :global(.vtex-button) { @@ -425,3 +511,82 @@ } } } + +.subscriberContainer { + .title { + font-size: 0; + margin: 0; + + &::before { + content: "Produto Indisponível"; + font-family: "Open Sans", sans-serif; + font-weight: 700; + font-size: 14px; + line-height: 19px; + + color: #868686; + } + } + + .subscribeLabel { + font-size: 0; + + &::before { + content: "Deseja saber quando estiver disponível?"; + font-family: "Open Sans", sans-serif; + font-size: 14px; + line-height: 19px; + + color: #868686; + } + } + + :global(.vtex-store-components-3-x-content) { + display: grid; + grid-template-columns: repeat(2, 1fr); + grid-column-gap: 10px; + width: 100%; + } + + .inputName { + margin-right: 8px; + } + + .inputName, + .inputEmail { + :global(.vtex-input-prefix__group) { + border-radius: 0; + border: 1px solid #989898; + + :global(.vtex-styleguide-9-x-input) { + padding: 12px 14px; + } + } + } + + .submit { + grid-column: span 2; + + :global(.vtex-button) { + background-color: black; + border-radius: 0; + border: none; + height: 49px; + width: 100%; + + :global(.vtex-button__label) { + font-size: 0; + + &::before { + content: "Avise-me"; + font-family: "Open Sans", sans-serif; + font-weight: 600; + font-size: 18px; + line-height: 25px; + text-transform: uppercase; + color: #ffffff; + } + } + } + } +} diff --git a/styles/sass/pages/product/vtex.tab-layout.scss b/styles/sass/pages/product/vtex.tab-layout.scss index c11c02d..024e867 100644 --- a/styles/sass/pages/product/vtex.tab-layout.scss +++ b/styles/sass/pages/product/vtex.tab-layout.scss @@ -1,26 +1,63 @@ .container--description { - margin: 16px 40px; height: 702px; + margin-top: 16px; + margin-bottom: 16px; + + @media screen and (min-width: 1920px) { + height: 974px; + } + + @media screen and (max-width: 1024px) { + height: 100%; + max-height: 1418px; + border-bottom: 1px solid #bfbfbf; + } .listContainer { display: flex; justify-content: space-around; border-bottom: 1px solid #bfbfbf; + @media screen and (max-width: 1024px) { + border-top: 1px solid #bfbfbf; + } + + @media screen and (max-width: 1024px) { + flex-direction: column; + } + .listItem { padding: 0; margin: 0; + @media screen and (max-width: 1024px) { + margin-bottom: 16px; + + &:first-child { + margin-top: 16px; + } + } + :global(.vtex-button) { background: white; border: none; - font-family: "Open Sans", sans-serif; font-size: 18px; text-transform: none; color: #bfbfbf; + @media screen and (min-width: 1920px) { + font-size: 24px; + line-height: 38px; + } + + @media screen and (min-width: 375px) and (max-width: 1024px) { + display: flex; + justify-content: start; + width: 100%; + } + :global(.vtex-button__label) { padding: 0; } @@ -30,6 +67,10 @@ .listItemActive { border-bottom: 2px solid black; + @media screen and (max-width: 1024px) { + border: none; + } + :global(.vtex-button) { color: black; } @@ -37,34 +78,66 @@ } .contentContainer { + padding-top: 32px; + + @media screen and (min-width: 1920px) { + padding-top: 64px; + } + + @media screen and (max-width: 1024px) { + padding-top: unset; + } .contentItem { display: flex; - :global(.vtex-store-components-3-x-productImagesContainer) { - width: 100%; - height: 100%; + @media screen and (max-width: 1024px) { + flex-direction: column; + } + + :global(.vtex-store-components-3-x-imageElement) { max-width: 632px; - max-height: 632px; - } + margin-left: 32px; - :global(.vtex-store-components-3-x-productImagesGallerySlide) { - margin: 32px 32px 16px 32px; - } + @media screen and (min-width: 1920px) { + height: 872px; + } - :global(.vtex-store-components-3-x-carouselGaleryThumbs) { - display: none; + @media screen and (min-width: 1920px) { + max-width: unset; + } + + @media screen and (max-width: 1024px) { + max-width: 944px; + margin-top: 16px; + margin-left: unset; + } } :global(.vtex-store-components-3-x-productDescriptionContainer) { - margin-top: 32px; margin-left: 32px; + @media screen and (max-width: 1024px) { + margin-top: 16px; + margin-left: unset; + margin-bottom: 16px; + } + :global(.vtex-store-components-3-x-productDescriptionTitle) { font-family: "Open Sans", sans-serif; font-size: 24px; line-height: 32px; color: #575757; + + @media screen and (min-width: 1920px) { + font-size: 32px; + line-height: 32px; + } + + @media screen and (max-width: 1024px) { + font-size: 20px; + line-height: 32px; + } } :global(.vtex-store-components-3-x-productDescriptionText) { @@ -73,6 +146,16 @@ line-height: 22px; color: #929292; + + @media screen and (min-width: 1920px) { + font-size: 18px; + line-height: 25px; + } + + @media screen and (max-width: 1024px) { + font-size: 14px; + line-height: 19px; + } } :global(.vtex-store-components-3-x-container) { -- 2.34.1