@plurix/ecom-components 0.0.2-beta.2 → 0.0.2-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/svgs/ArrowIcon.d.ts +9 -0
- package/dist/assets/svgs/ArrowIcon.js +37 -0
- package/dist/assets/svgs/CartEmptyCoupon.d.ts +1 -0
- package/dist/assets/svgs/CartEmptyCoupon.js +937 -0
- package/dist/assets/svgs/CloseIcon.d.ts +7 -1
- package/dist/assets/svgs/CloseIcon.js +13 -9
- package/dist/assets/svgs/CouponIcon.d.ts +4 -0
- package/dist/assets/svgs/CouponIcon.js +22 -0
- package/dist/assets/svgs/DeliveryExpressIcon.d.ts +1 -0
- package/dist/assets/svgs/DeliveryExpressIcon.js +21 -0
- package/dist/assets/svgs/DeliveryIcon.d.ts +1 -0
- package/dist/assets/svgs/DeliveryIcon.js +21 -0
- package/dist/assets/svgs/ErrorIcon.d.ts +5 -0
- package/dist/assets/svgs/ErrorIcon.js +29 -0
- package/dist/assets/svgs/GlassIcon.d.ts +1 -0
- package/dist/assets/svgs/GlassIcon.js +23 -0
- package/dist/assets/svgs/InfoIcon.d.ts +6 -0
- package/dist/assets/svgs/InfoIcon.js +47 -0
- package/dist/assets/svgs/NoCouponIcon.d.ts +1 -0
- package/dist/assets/svgs/NoCouponIcon.js +107 -0
- package/dist/assets/svgs/ShoppingBagsIcon.d.ts +1 -0
- package/dist/assets/svgs/ShoppingBagsIcon.js +30 -0
- package/dist/assets/svgs/ShoppingIcon.d.ts +1 -0
- package/dist/assets/svgs/ShoppingIcon.js +21 -0
- package/dist/assets/svgs/SuccessIcon.d.ts +6 -0
- package/dist/assets/svgs/SuccessIcon.js +38 -0
- package/dist/assets/svgs/WarningIcon.d.ts +1 -0
- package/dist/assets/svgs/WarningIcon.js +25 -0
- package/dist/main.d.ts +5 -0
- package/dist/main.js +11 -3
- package/dist/packages/Carousel/Carousel.d.ts +24 -0
- package/dist/packages/Carousel/Carousel.js +128 -0
- package/dist/packages/Carousel/components/Arrows.d.ts +8 -0
- package/dist/packages/Carousel/components/Arrows.js +43 -0
- package/dist/packages/Carousel/components/Bullets.d.ts +7 -0
- package/dist/packages/Carousel/components/Bullets.js +5 -0
- package/dist/packages/Carousel/test/Carrousel.test.js +80 -0
- package/dist/packages/Carousel/utils/defaultProps.d.ts +19 -0
- package/dist/packages/Carousel/utils/defaultProps.js +22 -0
- package/dist/packages/Coupons/Coupons.d.ts +14 -0
- package/dist/packages/Coupons/Coupons.js +100 -0
- package/dist/packages/Coupons/api/addCoupon.d.ts +3 -0
- package/dist/packages/Coupons/api/addCoupon.js +14 -0
- package/dist/packages/Coupons/api/getCoupons.d.ts +3 -0
- package/dist/packages/Coupons/api/getCoupons.js +15 -0
- package/dist/packages/Coupons/api/removeCoupon.d.ts +3 -0
- package/dist/packages/Coupons/api/removeCoupon.js +13 -0
- package/dist/packages/Coupons/components/Alert.d.ts +6 -0
- package/dist/packages/Coupons/components/Alert.js +13 -0
- package/dist/packages/Coupons/components/Breadcrumb.d.ts +6 -0
- package/dist/packages/Coupons/components/Breadcrumb.js +33 -0
- package/dist/packages/Coupons/components/CouponCard.d.ts +25 -0
- package/dist/packages/Coupons/components/CouponCard.js +132 -0
- package/dist/packages/Coupons/components/Modal.d.ts +8 -0
- package/dist/packages/Coupons/components/Modal.js +34 -0
- package/dist/packages/Coupons/components/ModalFooter.d.ts +8 -0
- package/dist/packages/Coupons/components/ModalFooter.js +14 -0
- package/dist/packages/Coupons/components/ModalHeader.d.ts +6 -0
- package/dist/packages/Coupons/components/ModalHeader.js +25 -0
- package/dist/packages/Coupons/components/NoCoupons.d.ts +1 -0
- package/dist/packages/Coupons/components/NoCoupons.js +10 -0
- package/dist/packages/Coupons/test/Alert.test.js +18 -0
- package/dist/packages/Coupons/test/Breadcrumb.test.js +41 -0
- package/dist/packages/Coupons/test/ModalFooter.test.js +32 -0
- package/dist/packages/Coupons/test/ModalHeader.test.js +23 -0
- package/dist/packages/Coupons/test/NoCoupons.test.js +17 -0
- package/dist/packages/Coupons/types/CouponType.d.ts +8 -0
- package/dist/packages/Coupons/types/CouponType.js +1 -0
- package/dist/packages/Coupons/types/SetOrderFormCouponResponse.d.ts +10 -0
- package/dist/packages/Coupons/types/SetOrderFormCouponResponse.js +1 -0
- package/dist/packages/Coupons/types/Views.d.ts +1 -0
- package/dist/packages/Coupons/types/Views.js +1 -0
- package/dist/packages/Coupons/views/CouponsView.d.ts +13 -0
- package/dist/packages/Coupons/views/CouponsView.js +122 -0
- package/dist/packages/Coupons/views/EmptyCartView.d.ts +6 -0
- package/dist/packages/Coupons/views/EmptyCartView.js +37 -0
- package/dist/packages/Coupons/views/LoadingView.d.ts +7 -0
- package/dist/packages/Coupons/views/LoadingView.js +39 -0
- package/dist/packages/Coupons/views/OverwriteView.d.ts +14 -0
- package/dist/packages/Coupons/views/OverwriteView.js +58 -0
- package/dist/packages/Coupons/views/RulesView.d.ts +13 -0
- package/dist/packages/Coupons/views/RulesView.js +49 -0
- package/dist/packages/Coupons/views/index.d.ts +5 -0
- package/dist/packages/Coupons/views/index.js +12 -0
- package/dist/packages/Regionalization/Regionalization.d.ts +3 -0
- package/dist/packages/Regionalization/Regionalization.js +93 -0
- package/dist/packages/Regionalization/components/Delivery.d.ts +24 -0
- package/dist/packages/Regionalization/components/Delivery.js +48 -0
- package/dist/packages/Regionalization/components/DeliveryExpress.d.ts +9 -0
- package/dist/packages/Regionalization/components/DeliveryExpress.js +25 -0
- package/dist/packages/Regionalization/components/InfoPrices.d.ts +9 -0
- package/dist/packages/Regionalization/components/InfoPrices.js +15 -0
- package/dist/packages/Regionalization/components/Navigation.d.ts +6 -0
- package/dist/packages/Regionalization/components/Navigation.js +59 -0
- package/dist/packages/Regionalization/components/NormalDelivery.d.ts +7 -0
- package/dist/packages/Regionalization/components/NormalDelivery.js +23 -0
- package/dist/packages/Regionalization/components/PickupPoint.d.ts +7 -0
- package/dist/packages/Regionalization/components/PickupPoint.js +32 -0
- package/dist/packages/Regionalization/components/Price.d.ts +7 -0
- package/dist/packages/Regionalization/components/Price.js +10 -0
- package/dist/packages/Regionalization/components/SetViewButton.d.ts +11 -0
- package/dist/packages/Regionalization/components/SetViewButton.js +24 -0
- package/dist/packages/Regionalization/components/Title.d.ts +8 -0
- package/dist/packages/Regionalization/components/Title.js +21 -0
- package/dist/packages/Regionalization/context/RegionalizationContext.d.ts +4 -0
- package/dist/packages/Regionalization/context/RegionalizationContext.js +113 -0
- package/dist/packages/Regionalization/types/Address.d.ts +13 -0
- package/dist/packages/Regionalization/types/Address.js +1 -0
- package/dist/packages/Regionalization/types/ContextProps.d.ts +29 -0
- package/dist/packages/Regionalization/types/ContextProps.js +1 -0
- package/dist/packages/Regionalization/types/PikcupPointType.d.ts +22 -0
- package/dist/packages/Regionalization/types/PikcupPointType.js +1 -0
- package/dist/packages/Regionalization/types/PricesAndHours.d.ts +13 -0
- package/dist/packages/Regionalization/types/PricesAndHours.js +1 -0
- package/dist/packages/Regionalization/types/RegionalizationProps.d.ts +87 -0
- package/dist/packages/Regionalization/types/RegionalizationProps.js +1 -0
- package/dist/packages/Regionalization/types/index.d.ts +5 -0
- package/dist/packages/Regionalization/types/index.js +1 -0
- package/dist/packages/Regionalization/utils/constants.d.ts +1 -0
- package/dist/packages/Regionalization/utils/constants.js +4 -0
- package/dist/packages/Regionalization/utils/deliverySetData.d.ts +3 -0
- package/dist/packages/Regionalization/utils/deliverySetData.js +13 -0
- package/dist/packages/Regionalization/utils/formatPrice.d.ts +1 -0
- package/dist/packages/Regionalization/utils/formatPrice.js +8 -0
- package/dist/packages/Regionalization/utils/localStorage.d.ts +9 -0
- package/dist/packages/Regionalization/utils/localStorage.js +23 -0
- package/dist/packages/Regionalization/utils/pickupSetData.d.ts +3 -0
- package/dist/packages/Regionalization/utils/pickupSetData.js +11 -0
- package/dist/packages/Regionalization/utils/postalCode.d.ts +2 -0
- package/dist/packages/Regionalization/utils/postalCode.js +9 -0
- package/dist/packages/Regionalization/views/AllStoresScreen.d.ts +1 -0
- package/dist/packages/Regionalization/views/AllStoresScreen.js +73 -0
- package/dist/packages/Regionalization/views/ConfirmScreen.d.ts +1 -0
- package/dist/packages/Regionalization/views/ConfirmScreen.js +60 -0
- package/dist/packages/Regionalization/views/InitialView.d.ts +1 -0
- package/dist/packages/Regionalization/views/InitialView.js +49 -0
- package/dist/packages/Regionalization/views/MoreInfosScreen.d.ts +1 -0
- package/dist/packages/Regionalization/views/MoreInfosScreen.js +42 -0
- package/dist/packages/Regionalization/views/PickupPointInfoScreen.d.ts +1 -0
- package/dist/packages/Regionalization/views/PickupPointInfoScreen.js +42 -0
- package/dist/packages/Regionalization/views/PostalCodeInputScreen.d.ts +1 -0
- package/dist/packages/Regionalization/views/PostalCodeInputScreen.js +87 -0
- package/dist/packages/Regionalization/views/ViewsContainer.d.ts +1 -0
- package/dist/packages/Regionalization/views/ViewsContainer.js +22 -0
- package/dist/packages/Tour/Tour.d.ts +10 -0
- package/dist/packages/Tour/Tour.js +68 -0
- package/dist/packages/Tour/components/TooltipFooter.d.ts +11 -0
- package/dist/packages/Tour/components/TooltipFooter.js +14 -0
- package/dist/packages/Tour/components/TooltipHeader.d.ts +8 -0
- package/dist/packages/Tour/components/TooltipHeader.js +13 -0
- package/dist/packages/Tour/components/TourOverlay.d.ts +7 -0
- package/dist/packages/Tour/components/TourOverlay.js +12 -0
- package/dist/packages/Tour/components/TourTooltip.d.ts +17 -0
- package/dist/packages/Tour/components/TourTooltip.js +42 -0
- package/dist/packages/Tour/test/TooltipFooter.test.js +68 -0
- package/dist/packages/Tour/test/TooltipHeader.test.js +18 -0
- package/dist/packages/Tour/test/Tour.test.js +49 -0
- package/dist/packages/Tour/test/TourOverlay.test.js +18 -0
- package/dist/packages/Tour/test/TourTooltip.test.js +40 -0
- package/dist/packages/Tour/types/TourStep.d.ts +4 -0
- package/dist/packages/Tour/types/TourStep.js +1 -0
- package/dist/styles/carousel.global.css +1 -0
- package/dist/styles/coupons.global.css +1 -0
- package/dist/styles/regionalization.global.css +1 -0
- package/dist/styles/tour.global.css +1 -0
- package/package.json +5 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
2
|
+
import { Title as c } from "../components/Title.js";
|
|
3
|
+
import { InfoPrices as l } from "../components/InfoPrices.js";
|
|
4
|
+
import { SetViewButton as i } from "../components/SetViewButton.js";
|
|
5
|
+
import { ArrowIcon as s } from "../../../assets/svgs/ArrowIcon.js";
|
|
6
|
+
import { useRegionalizationContext as a } from "../context/RegionalizationContext.js";
|
|
7
|
+
const N = () => {
|
|
8
|
+
const { pickup: e, textBackButton: t, backToDelivery: o } = a();
|
|
9
|
+
return /* @__PURE__ */ n("div", { className: "delivery-pickup-container", children: /* @__PURE__ */ r("div", { className: "content-container", children: [
|
|
10
|
+
/* @__PURE__ */ n(c, { title: e == null ? void 0 : e.title }),
|
|
11
|
+
/* @__PURE__ */ n(
|
|
12
|
+
l,
|
|
13
|
+
{
|
|
14
|
+
containerClassName: "pickup-container",
|
|
15
|
+
priceClassName: "pickup-price",
|
|
16
|
+
labelPrice: e == null ? void 0 : e.labelPrice,
|
|
17
|
+
price: e == null ? void 0 : e.price
|
|
18
|
+
}
|
|
19
|
+
),
|
|
20
|
+
/* @__PURE__ */ r("div", { className: "pickup-instructions", children: [
|
|
21
|
+
/* @__PURE__ */ n("p", { children: e == null ? void 0 : e.labelScheduling }),
|
|
22
|
+
/* @__PURE__ */ n("span", { children: e == null ? void 0 : e.scheduling })
|
|
23
|
+
] }),
|
|
24
|
+
/* @__PURE__ */ r("div", { className: "pickup-open-stores-container", children: [
|
|
25
|
+
/* @__PURE__ */ r(
|
|
26
|
+
i,
|
|
27
|
+
{
|
|
28
|
+
view: o ? "PostalCodeInputScreen" : "InitialView",
|
|
29
|
+
className: "back-button",
|
|
30
|
+
children: [
|
|
31
|
+
/* @__PURE__ */ n("span", { children: /* @__PURE__ */ n(s, {}) }),
|
|
32
|
+
t
|
|
33
|
+
]
|
|
34
|
+
}
|
|
35
|
+
),
|
|
36
|
+
/* @__PURE__ */ n(i, { view: "AllStoresScreen", className: "pickup-open-stores", children: e == null ? void 0 : e.buttonOpenStores })
|
|
37
|
+
] })
|
|
38
|
+
] }) });
|
|
39
|
+
};
|
|
40
|
+
export {
|
|
41
|
+
N as PickupPointInfoScreen
|
|
42
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const PostalCodeInputScreen: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { jsx as n, Fragment as f, jsxs as o } from "react/jsx-runtime";
|
|
2
|
+
import { Title as g } from "../components/Title.js";
|
|
3
|
+
import { SetViewButton as s } from "../components/SetViewButton.js";
|
|
4
|
+
import { InfoPrices as k } from "../components/InfoPrices.js";
|
|
5
|
+
import { ShoppingIcon as N } from "../../../assets/svgs/ShoppingIcon.js";
|
|
6
|
+
import { WarningIcon as u } from "../../../assets/svgs/WarningIcon.js";
|
|
7
|
+
import { ArrowIcon as w } from "../../../assets/svgs/ArrowIcon.js";
|
|
8
|
+
import { useRegionalizationContext as x } from "../context/RegionalizationContext.js";
|
|
9
|
+
import { postalCodeMask as P } from "../utils/postalCode.js";
|
|
10
|
+
const T = () => {
|
|
11
|
+
const {
|
|
12
|
+
delivery: e,
|
|
13
|
+
status: r,
|
|
14
|
+
postalCodeValidation: c,
|
|
15
|
+
setInputPostalCode: m,
|
|
16
|
+
postalCode: p,
|
|
17
|
+
deliveryPrice: h,
|
|
18
|
+
textBackButton: d,
|
|
19
|
+
pickup: t,
|
|
20
|
+
setBackToDelivery: a
|
|
21
|
+
} = x(), l = (r == null ? void 0 : r.status) === "failed";
|
|
22
|
+
return /* @__PURE__ */ n(f, { children: /* @__PURE__ */ n("div", { className: "delivery-pickup-container", children: /* @__PURE__ */ o("div", { className: "content-container", children: [
|
|
23
|
+
/* @__PURE__ */ n(g, { title: l ? "Tente outro CEP" : e == null ? void 0 : e.title }),
|
|
24
|
+
l ? /* @__PURE__ */ o("div", { className: "warning-container", children: [
|
|
25
|
+
/* @__PURE__ */ n(u, {}),
|
|
26
|
+
/* @__PURE__ */ n("span", { className: "warning-text", children: r == null ? void 0 : r.message })
|
|
27
|
+
] }) : /* @__PURE__ */ n(
|
|
28
|
+
k,
|
|
29
|
+
{
|
|
30
|
+
containerClassName: "delivery-container",
|
|
31
|
+
priceClassName: "info-price",
|
|
32
|
+
labelPrice: e == null ? void 0 : e.labelPrice,
|
|
33
|
+
price: h
|
|
34
|
+
}
|
|
35
|
+
),
|
|
36
|
+
/* @__PURE__ */ o("div", { className: "postal-code-container", children: [
|
|
37
|
+
/* @__PURE__ */ o("div", { className: "postal-code-container-action", children: [
|
|
38
|
+
/* @__PURE__ */ n(
|
|
39
|
+
"input",
|
|
40
|
+
{
|
|
41
|
+
onKeyDown: (i) => i.key === "Enter" && (c == null ? void 0 : c()),
|
|
42
|
+
type: "text",
|
|
43
|
+
onChange: (i) => m(i.target.value),
|
|
44
|
+
maxLength: 9,
|
|
45
|
+
placeholder: p ?? "00000-000",
|
|
46
|
+
onKeyUp: P
|
|
47
|
+
}
|
|
48
|
+
),
|
|
49
|
+
/* @__PURE__ */ n(
|
|
50
|
+
"button",
|
|
51
|
+
{
|
|
52
|
+
onKeyDown: (i) => i.key === "Enter" && (c == null ? void 0 : c()),
|
|
53
|
+
onClick: () => c == null ? void 0 : c(),
|
|
54
|
+
disabled: r == null ? void 0 : r.loading,
|
|
55
|
+
children: r != null && r.loading ? r.message : e == null ? void 0 : e.searchButton
|
|
56
|
+
}
|
|
57
|
+
)
|
|
58
|
+
] }),
|
|
59
|
+
/* @__PURE__ */ n("a", { href: e == null ? void 0 : e.linkHref, target: "_blank", className: "", children: e == null ? void 0 : e.linkText }),
|
|
60
|
+
l && /* @__PURE__ */ o("div", { className: "postal-code-container-pickup", children: [
|
|
61
|
+
/* @__PURE__ */ n("label", { children: "Você pode escolhes retirar na loja" }),
|
|
62
|
+
/* @__PURE__ */ o(
|
|
63
|
+
s,
|
|
64
|
+
{
|
|
65
|
+
onClick: () => a == null ? void 0 : a(!0),
|
|
66
|
+
view: "PickupPointInfoScreen",
|
|
67
|
+
className: "postal-code-container-pickup-select",
|
|
68
|
+
children: [
|
|
69
|
+
/* @__PURE__ */ n(N, {}),
|
|
70
|
+
/* @__PURE__ */ o("div", { className: "postal-code-container-pickup-select-informative", children: [
|
|
71
|
+
/* @__PURE__ */ n("h4", { children: t == null ? void 0 : t.title }),
|
|
72
|
+
/* @__PURE__ */ n("p", { children: " Grátis" })
|
|
73
|
+
] })
|
|
74
|
+
]
|
|
75
|
+
}
|
|
76
|
+
)
|
|
77
|
+
] })
|
|
78
|
+
] }),
|
|
79
|
+
/* @__PURE__ */ o(s, { view: "InitialView", className: "back-button", children: [
|
|
80
|
+
/* @__PURE__ */ n("span", { children: /* @__PURE__ */ n(w, {}) }),
|
|
81
|
+
d
|
|
82
|
+
] })
|
|
83
|
+
] }) }) });
|
|
84
|
+
};
|
|
85
|
+
export {
|
|
86
|
+
T as PostalCodeInputScreen
|
|
87
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const ViewsContainer: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsxs as r, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { InitialView as n } from "./InitialView.js";
|
|
3
|
+
import { PostalCodeInputScreen as i } from "./PostalCodeInputScreen.js";
|
|
4
|
+
import { PickupPointInfoScreen as t } from "./PickupPointInfoScreen.js";
|
|
5
|
+
import { MoreInfosScreen as m } from "./MoreInfosScreen.js";
|
|
6
|
+
import { AllStoresScreen as c } from "./AllStoresScreen.js";
|
|
7
|
+
import { ConfirmScreen as s } from "./ConfirmScreen.js";
|
|
8
|
+
import { useRegionalizationContext as f } from "../context/RegionalizationContext.js";
|
|
9
|
+
const d = () => {
|
|
10
|
+
const { view: o } = f();
|
|
11
|
+
return /* @__PURE__ */ r("div", { className: "regionalization-container", children: [
|
|
12
|
+
o === "InitialView" && /* @__PURE__ */ e(n, {}),
|
|
13
|
+
o === "PostalCodeInputScreen" && /* @__PURE__ */ e(i, {}),
|
|
14
|
+
o === "PickupPointInfoScreen" && /* @__PURE__ */ e(t, {}),
|
|
15
|
+
o === "MoreInfosScreen" && /* @__PURE__ */ e(m, {}),
|
|
16
|
+
o === "AllStoresScreen" && /* @__PURE__ */ e(c, {}),
|
|
17
|
+
o === "ConfirmScreen" && /* @__PURE__ */ e(s, {})
|
|
18
|
+
] });
|
|
19
|
+
};
|
|
20
|
+
export {
|
|
21
|
+
d as ViewsContainer
|
|
22
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { TourStep } from './types/TourStep';
|
|
2
|
+
|
|
3
|
+
interface TourProps {
|
|
4
|
+
steps: TourStep[];
|
|
5
|
+
handleCloseAction: () => void;
|
|
6
|
+
handleFinishAction?: () => void;
|
|
7
|
+
genericTaggingEvent?: (name: string, params: object) => void;
|
|
8
|
+
}
|
|
9
|
+
export declare const Tour: ({ steps, handleCloseAction, handleFinishAction, genericTaggingEvent }: TourProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { jsxs as n, Fragment as N, jsx as k } from "react/jsx-runtime";
|
|
2
|
+
import { useState as S, useRef as H, useEffect as R } from "react";
|
|
3
|
+
import { TourTooltip as j } from "./components/TourTooltip.js";
|
|
4
|
+
import { TourOverlay as q } from "./components/TourOverlay.js";
|
|
5
|
+
/* empty css */const D = ({
|
|
6
|
+
steps: e,
|
|
7
|
+
handleCloseAction: l,
|
|
8
|
+
handleFinishAction: c,
|
|
9
|
+
genericTaggingEvent: t
|
|
10
|
+
}) => {
|
|
11
|
+
const [s, x] = S(0), [y, b] = S({ top: 0 }), u = H(null), m = `Step ${s + 1}`;
|
|
12
|
+
R(() => {
|
|
13
|
+
const o = e[s], r = document.querySelector(o.selector);
|
|
14
|
+
let p;
|
|
15
|
+
if (r && u.current) {
|
|
16
|
+
const z = r.getBoundingClientRect(), P = u.current.offsetHeight, _ = 12;
|
|
17
|
+
p = {
|
|
18
|
+
zIndex: r.style.zIndex,
|
|
19
|
+
background: r.style.background
|
|
20
|
+
}, r.style.zIndex = "9999", r.style.background = "white";
|
|
21
|
+
const d = z.top + window.scrollY - P - _;
|
|
22
|
+
b({
|
|
23
|
+
top: d
|
|
24
|
+
}), window.scrollTo({
|
|
25
|
+
top: d,
|
|
26
|
+
behavior: "smooth"
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
return () => {
|
|
30
|
+
r && (r.style.zIndex = p.zIndex, r.style.background = p.background);
|
|
31
|
+
};
|
|
32
|
+
}, [s, e, u]);
|
|
33
|
+
const f = (o) => {
|
|
34
|
+
t == null || t("tour_closed", {
|
|
35
|
+
clickedText: o,
|
|
36
|
+
name: m
|
|
37
|
+
}), l == null || l(), c == null || c();
|
|
38
|
+
}, I = () => {
|
|
39
|
+
t == null || t("tour_click_next", {
|
|
40
|
+
clickedText: "Próximo",
|
|
41
|
+
name: m
|
|
42
|
+
}), x((o) => o < e.length - 1 ? o + 1 : o);
|
|
43
|
+
}, w = () => {
|
|
44
|
+
t == null || t("tour_click_prev", {
|
|
45
|
+
clickedText: "Anterior",
|
|
46
|
+
name: m
|
|
47
|
+
}), x((o) => o > 0 ? o - 1 : o);
|
|
48
|
+
};
|
|
49
|
+
return e.length === 0 ? null : /* @__PURE__ */ n(N, { children: [
|
|
50
|
+
/* @__PURE__ */ k(
|
|
51
|
+
j,
|
|
52
|
+
{
|
|
53
|
+
ref: u,
|
|
54
|
+
step: e[s],
|
|
55
|
+
position: y,
|
|
56
|
+
onClose: f,
|
|
57
|
+
onPrevious: w,
|
|
58
|
+
onNext: I,
|
|
59
|
+
totalSteps: e.length,
|
|
60
|
+
stepNumber: s + 1
|
|
61
|
+
}
|
|
62
|
+
),
|
|
63
|
+
/* @__PURE__ */ k(q, { stepNumber: s + 1, onClick: f })
|
|
64
|
+
] });
|
|
65
|
+
};
|
|
66
|
+
export {
|
|
67
|
+
D as Tour
|
|
68
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
interface TooltipFooterProps {
|
|
3
|
+
stepNumber: number;
|
|
4
|
+
isFirstStep: boolean;
|
|
5
|
+
isLastStep: boolean;
|
|
6
|
+
onClose: (clickedText: string) => void;
|
|
7
|
+
onPrevious: () => void;
|
|
8
|
+
onNext: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const TooltipFooter: React.FC<TooltipFooterProps>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsxs as s, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
const n = "Fechar Explicação", e = "Legal, Entendi", d = ({
|
|
3
|
+
isFirstStep: i,
|
|
4
|
+
isLastStep: r,
|
|
5
|
+
onClose: o,
|
|
6
|
+
onPrevious: c,
|
|
7
|
+
onNext: l
|
|
8
|
+
}) => /* @__PURE__ */ s("div", { className: "tooltip-footer", children: [
|
|
9
|
+
i ? /* @__PURE__ */ t("button", { onClick: () => o(n), children: n }) : /* @__PURE__ */ t("button", { onClick: c, children: "< Anterior" }),
|
|
10
|
+
r ? /* @__PURE__ */ t("button", { onClick: () => o(e), children: e }) : /* @__PURE__ */ t("button", { onClick: l, children: "Próximo >" })
|
|
11
|
+
] });
|
|
12
|
+
export {
|
|
13
|
+
d as TooltipFooter
|
|
14
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsxs as r, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { CloseIcon as c } from "../../../assets/svgs/CloseIcon.js";
|
|
3
|
+
const l = ({
|
|
4
|
+
stepNumber: e,
|
|
5
|
+
totalSteps: t,
|
|
6
|
+
onClose: i
|
|
7
|
+
}) => /* @__PURE__ */ r("div", { className: "tooltip-header", children: [
|
|
8
|
+
/* @__PURE__ */ o("span", { children: `${e} de ${t}` }),
|
|
9
|
+
/* @__PURE__ */ o("button", { onClick: () => i("Botão Fechar"), children: /* @__PURE__ */ o(c, { width: 16, height: 16 }) })
|
|
10
|
+
] });
|
|
11
|
+
export {
|
|
12
|
+
l as TooltipHeader
|
|
13
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
interface TourStep {
|
|
3
|
+
content: string;
|
|
4
|
+
}
|
|
5
|
+
interface TourTooltipProps {
|
|
6
|
+
step: TourStep;
|
|
7
|
+
position: {
|
|
8
|
+
top: number;
|
|
9
|
+
};
|
|
10
|
+
onClose: (clickedText: string) => void;
|
|
11
|
+
onPrevious: () => void;
|
|
12
|
+
onNext: () => void;
|
|
13
|
+
totalSteps: number;
|
|
14
|
+
stepNumber: number;
|
|
15
|
+
}
|
|
16
|
+
export declare const TourTooltip: import('react').ForwardRefExoticComponent<TourTooltipProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsxs as s, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as a } from "react";
|
|
3
|
+
import { TooltipHeader as c } from "./TooltipHeader.js";
|
|
4
|
+
import { TooltipFooter as e } from "./TooltipFooter.js";
|
|
5
|
+
const j = a(
|
|
6
|
+
({ step: p, position: d, onClose: i, onPrevious: f, onNext: l, totalSteps: r, stepNumber: o }, m) => /* @__PURE__ */ s(
|
|
7
|
+
"div",
|
|
8
|
+
{
|
|
9
|
+
ref: m,
|
|
10
|
+
id: "tour-tooltip",
|
|
11
|
+
"data-testid": "tour-tooltip",
|
|
12
|
+
style: {
|
|
13
|
+
top: `${d.top}px`
|
|
14
|
+
},
|
|
15
|
+
children: [
|
|
16
|
+
/* @__PURE__ */ t(
|
|
17
|
+
c,
|
|
18
|
+
{
|
|
19
|
+
stepNumber: o,
|
|
20
|
+
totalSteps: r,
|
|
21
|
+
onClose: i
|
|
22
|
+
}
|
|
23
|
+
),
|
|
24
|
+
/* @__PURE__ */ t("p", { children: p.content }),
|
|
25
|
+
/* @__PURE__ */ t(
|
|
26
|
+
e,
|
|
27
|
+
{
|
|
28
|
+
stepNumber: o,
|
|
29
|
+
isFirstStep: o === 1,
|
|
30
|
+
isLastStep: o === r,
|
|
31
|
+
onClose: i,
|
|
32
|
+
onPrevious: f,
|
|
33
|
+
onNext: l
|
|
34
|
+
}
|
|
35
|
+
)
|
|
36
|
+
]
|
|
37
|
+
}
|
|
38
|
+
)
|
|
39
|
+
);
|
|
40
|
+
export {
|
|
41
|
+
j as TourTooltip
|
|
42
|
+
};
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { render as n, fireEvent as c } from "@testing-library/react";
|
|
3
|
+
import "@testing-library/jest-dom";
|
|
4
|
+
import { TooltipFooter as r } from "../components/TooltipFooter.js";
|
|
5
|
+
describe("TooltipFooter", () => {
|
|
6
|
+
const t = jest.fn(), s = jest.fn(), o = jest.fn();
|
|
7
|
+
it("should render the previous close button when it is the first step", () => {
|
|
8
|
+
const { getByText: e } = n(
|
|
9
|
+
/* @__PURE__ */ i(
|
|
10
|
+
r,
|
|
11
|
+
{
|
|
12
|
+
stepNumber: 1,
|
|
13
|
+
isFirstStep: !0,
|
|
14
|
+
isLastStep: !1,
|
|
15
|
+
onClose: t,
|
|
16
|
+
onPrevious: s,
|
|
17
|
+
onNext: o
|
|
18
|
+
}
|
|
19
|
+
)
|
|
20
|
+
);
|
|
21
|
+
expect(e("Fechar Explicação")).toBeInTheDocument();
|
|
22
|
+
}), it("should call onClose with specific text when previous close button is clicked", () => {
|
|
23
|
+
const { getByText: e } = n(
|
|
24
|
+
/* @__PURE__ */ i(
|
|
25
|
+
r,
|
|
26
|
+
{
|
|
27
|
+
stepNumber: 1,
|
|
28
|
+
isFirstStep: !0,
|
|
29
|
+
isLastStep: !1,
|
|
30
|
+
onClose: t,
|
|
31
|
+
onPrevious: s,
|
|
32
|
+
onNext: o
|
|
33
|
+
}
|
|
34
|
+
)
|
|
35
|
+
);
|
|
36
|
+
c.click(e("Fechar Explicação")), expect(t).toHaveBeenCalledWith("Fechar Explicação");
|
|
37
|
+
}), it("should render the next button when it is not the last step", () => {
|
|
38
|
+
const { getByText: e } = n(
|
|
39
|
+
/* @__PURE__ */ i(
|
|
40
|
+
r,
|
|
41
|
+
{
|
|
42
|
+
stepNumber: 2,
|
|
43
|
+
isFirstStep: !1,
|
|
44
|
+
isLastStep: !1,
|
|
45
|
+
onClose: t,
|
|
46
|
+
onPrevious: s,
|
|
47
|
+
onNext: o
|
|
48
|
+
}
|
|
49
|
+
)
|
|
50
|
+
);
|
|
51
|
+
expect(e("Próximo >")).toBeInTheDocument();
|
|
52
|
+
}), it("should call onNext when next button is clicked", () => {
|
|
53
|
+
const { getByText: e } = n(
|
|
54
|
+
/* @__PURE__ */ i(
|
|
55
|
+
r,
|
|
56
|
+
{
|
|
57
|
+
stepNumber: 2,
|
|
58
|
+
isFirstStep: !1,
|
|
59
|
+
isLastStep: !1,
|
|
60
|
+
onClose: t,
|
|
61
|
+
onPrevious: s,
|
|
62
|
+
onNext: o
|
|
63
|
+
}
|
|
64
|
+
)
|
|
65
|
+
);
|
|
66
|
+
c.click(e("Próximo >")), expect(o).toHaveBeenCalled();
|
|
67
|
+
});
|
|
68
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { render as r, fireEvent as l } from "@testing-library/react";
|
|
3
|
+
import "@testing-library/jest-dom";
|
|
4
|
+
import { TooltipHeader as s } from "../components/TooltipHeader.js";
|
|
5
|
+
describe("TooltipHeader", () => {
|
|
6
|
+
const e = jest.fn();
|
|
7
|
+
it("should render the step number and total steps correctly", () => {
|
|
8
|
+
const { getByText: t } = r(
|
|
9
|
+
/* @__PURE__ */ o(s, { stepNumber: 2, totalSteps: 5, onClose: e })
|
|
10
|
+
);
|
|
11
|
+
expect(t("2 de 5")).toBeInTheDocument();
|
|
12
|
+
}), it("should call onClose when close button is clicked", () => {
|
|
13
|
+
const { getByRole: t } = r(
|
|
14
|
+
/* @__PURE__ */ o(s, { stepNumber: 2, totalSteps: 5, onClose: e })
|
|
15
|
+
);
|
|
16
|
+
l.click(t("button")), expect(e).toHaveBeenCalledWith("Botão Fechar");
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import a from "react";
|
|
3
|
+
import { render as c, fireEvent as d } from "@testing-library/react";
|
|
4
|
+
import "@testing-library/jest-dom";
|
|
5
|
+
import { Tour as i } from "../Tour.js";
|
|
6
|
+
jest.mock("../components/TourTooltip", () => ({ TourTooltip: a.forwardRef(
|
|
7
|
+
({ stepNumber: e, totalSteps: t, onPrevious: s, onNext: o, ...l }, p) => /* @__PURE__ */ r("div", { ref: p, ...l, "data-testid": "tour-tooltip" })
|
|
8
|
+
) }));
|
|
9
|
+
jest.mock("../components/TourOverlay", () => ({
|
|
10
|
+
TourOverlay: ({
|
|
11
|
+
stepNumber: n,
|
|
12
|
+
onClick: e,
|
|
13
|
+
...t
|
|
14
|
+
}) => /* @__PURE__ */ r("div", { ...t, onClick: e, "data-testid": "tour-overlay" })
|
|
15
|
+
}));
|
|
16
|
+
describe("Tour", () => {
|
|
17
|
+
const n = [
|
|
18
|
+
{ selector: ".step-1", content: "Step 1 Content" },
|
|
19
|
+
{ selector: ".step-2", content: "Step 2 Content" },
|
|
20
|
+
{ selector: ".step-3", content: "Step 3 Content" }
|
|
21
|
+
], e = jest.fn(), t = jest.fn(), s = jest.fn();
|
|
22
|
+
it("should render correctly with initial step", () => {
|
|
23
|
+
const { getByTestId: o } = c(
|
|
24
|
+
/* @__PURE__ */ r(
|
|
25
|
+
i,
|
|
26
|
+
{
|
|
27
|
+
steps: n,
|
|
28
|
+
handleCloseAction: e,
|
|
29
|
+
handleFinishAction: t,
|
|
30
|
+
genericTaggingEvent: s
|
|
31
|
+
}
|
|
32
|
+
)
|
|
33
|
+
);
|
|
34
|
+
expect(o("tour-tooltip")).toBeInTheDocument(), expect(o("tour-overlay")).toBeInTheDocument();
|
|
35
|
+
}), it("should call handleCloseAction when TourOverlay is clicked", () => {
|
|
36
|
+
const { getByTestId: o } = c(
|
|
37
|
+
/* @__PURE__ */ r(
|
|
38
|
+
i,
|
|
39
|
+
{
|
|
40
|
+
steps: n,
|
|
41
|
+
handleCloseAction: e,
|
|
42
|
+
handleFinishAction: t,
|
|
43
|
+
genericTaggingEvent: s
|
|
44
|
+
}
|
|
45
|
+
)
|
|
46
|
+
);
|
|
47
|
+
d.click(o("tour-overlay")), expect(e).toHaveBeenCalled();
|
|
48
|
+
});
|
|
49
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { render as r, fireEvent as c } from "@testing-library/react";
|
|
3
|
+
import "@testing-library/jest-dom";
|
|
4
|
+
import { TourOverlay as l } from "../components/TourOverlay.js";
|
|
5
|
+
describe("TourOverlay", () => {
|
|
6
|
+
const e = jest.fn();
|
|
7
|
+
it("should render the tour overlay", () => {
|
|
8
|
+
const { getByTestId: o } = r(
|
|
9
|
+
/* @__PURE__ */ t(l, { stepNumber: 1, onClick: e })
|
|
10
|
+
);
|
|
11
|
+
expect(o("tour-overlay")).toBeInTheDocument();
|
|
12
|
+
}), it("should call onClick when the overlay is clicked", () => {
|
|
13
|
+
const { getByTestId: o } = r(
|
|
14
|
+
/* @__PURE__ */ t(l, { stepNumber: 1, onClick: e })
|
|
15
|
+
);
|
|
16
|
+
c.click(o("tour-overlay")), expect(e).toHaveBeenCalledWith("Clique no overlay");
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { jsx as p } from "react/jsx-runtime";
|
|
2
|
+
import { render as r } from "@testing-library/react";
|
|
3
|
+
import "@testing-library/jest-dom";
|
|
4
|
+
import { TourTooltip as c } from "../components/TourTooltip.js";
|
|
5
|
+
describe("TourTooltip", () => {
|
|
6
|
+
const t = jest.fn(), e = jest.fn(), n = jest.fn(), s = { content: "Step Content" };
|
|
7
|
+
it("should render correctly with provided props", () => {
|
|
8
|
+
const { getByText: o } = r(
|
|
9
|
+
/* @__PURE__ */ p(
|
|
10
|
+
c,
|
|
11
|
+
{
|
|
12
|
+
step: s,
|
|
13
|
+
position: { top: 100 },
|
|
14
|
+
onClose: t,
|
|
15
|
+
onPrevious: e,
|
|
16
|
+
onNext: n,
|
|
17
|
+
totalSteps: 3,
|
|
18
|
+
stepNumber: 2
|
|
19
|
+
}
|
|
20
|
+
)
|
|
21
|
+
);
|
|
22
|
+
expect(o("Step Content")).toBeInTheDocument(), expect(o("2 de 3")).toBeInTheDocument();
|
|
23
|
+
}), it("should have correct style for position", () => {
|
|
24
|
+
const { getByTestId: o } = r(
|
|
25
|
+
/* @__PURE__ */ p(
|
|
26
|
+
c,
|
|
27
|
+
{
|
|
28
|
+
step: s,
|
|
29
|
+
position: { top: 100 },
|
|
30
|
+
onClose: t,
|
|
31
|
+
onPrevious: e,
|
|
32
|
+
onNext: n,
|
|
33
|
+
totalSteps: 3,
|
|
34
|
+
stepNumber: 2
|
|
35
|
+
}
|
|
36
|
+
)
|
|
37
|
+
), i = o("tour-tooltip");
|
|
38
|
+
expect(i.style.top).toBe("100px");
|
|
39
|
+
});
|
|
40
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
#carousel .carousel-content{width:100%;display:flex;flex-direction:row;justify-content:center}#carousel .carousel-content .carousel-arrow-button-prev,#carousel .carousel-content .carousel-arrow-button-next{display:flex;justify-content:center;align-items:center}#carousel .carousel-content .carousel-container{display:flex;flex-direction:row;width:100%;scroll-behavior:smooth;overflow-x:scroll}#carousel .numeric-bullets{display:flex;flex-direction:row;justify-content:center;text-align:center}#carousel .bullets-container{display:flex;flex-direction:row;justify-content:center}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.coupons-container *{box-sizing:border-box;font-family:DM Sans,sans-serif}.coupons-container h1,.coupons-container h3,.coupons-container p{margin:0}.coupons-container ul{list-style:none;margin:0;padding:0}.coupons-container .modal-title-container{display:flex;align-items:center;justify-content:space-between}.coupons-container .modal-title{margin:0;color:var(--color-grayScale);font-size:16px;font-weight:700;line-height:20px}@media (min-width: 640px){.coupons-container .modal-title{font-size:24px;line-height:28px}}.coupons-container .modal-close-icon{display:flex;outline:0;border:0;margin-left:10px;padding:0;background-color:transparent;cursor:pointer}@media (min-width: 640px){.coupons-container .modal-close-icon{margin-left:16px}}.coupons-container .breadcrumb-container{margin-top:16px;margin-bottom:-8px}.coupons-container .breadcrumb-container .breadcrumb-content-container{align-items:center;display:flex;margin-bottom:16px;font-size:14px;line-height:18px}.coupons-container .breadcrumb-container .breadcrumb-content-container button{outline:0;border:0;background-color:transparent;color:var(--color-grayScale-darkest);font-size:14px;line-height:18px;cursor:pointer}.coupons-container .breadcrumb-container .breadcrumb-content-container svg{margin:0 10px}.coupons-container .breadcrumb-container .breadcrumb-content-container span{color:var(--color-main);font-weight:700}.coupons-container .breadcrumb-container .breadcrumb-back-button{display:flex;justify-content:center;align-items:center;outline:0;border:0;background-color:transparent;cursor:pointer;color:var(--color-support-links);font-size:14px;line-height:18px;text-decoration:underline}.coupons-container .breadcrumb-container .breadcrumb-back-button svg{margin-right:10px}.coupons-container .modal-footer-container{margin-top:24px;background-color:var(--color-grayScale-white)}.coupons-container .modal-footer-container.floating{box-shadow:0 -4px 4px 0 var(--color-support-shadow);position:absolute;bottom:0;left:0;width:100%;padding:16px}.coupons-container .modal-confirm-button{display:flex;justify-content:center;width:100%;outline:0;border:1px solid var(--color-main);border-radius:2px;margin-bottom:16px;padding:8px 16px;background-color:var(--color-main);cursor:pointer;color:var(--color-assistant-main);font-size:16px;font-weight:500;line-height:20px}.coupons-container .modal-cancel-button{display:flex;justify-content:center;width:100%;outline:0;border:1px solid var(--color-main);border-radius:2px;padding:8px 16px;background-color:transparent;cursor:pointer;color:var(--color-main);font-size:16px;font-weight:500;line-height:20px}.coupons-container .form-coupons form{display:flex;flex-direction:column;margin:24px 0}.coupons-container .form-coupons input{padding:8px;margin-bottom:8px;border-radius:2px;border:1px solid var(--color-grayScale-light);background:var(--color-grayScale-white);font-size:16px;line-height:20px}.coupons-container .form-coupons button{display:flex;justify-content:center;padding:8px;font-weight:500;line-height:20px;cursor:pointer;color:var(--color-grayScale-dark);border:1px solid var(--color-grayScale-dark);background-color:var(--color-grayScale-white)}.coupons-container .form-coupons button:disabled{cursor:wait;color:var(--color-grayScale-lightest);background-color:var(--color-grayScale-darkest)}.coupons-container .cart-empty-coupons-label{max-width:500px;margin:1rem 0rem}.coupons-container .cart-empty-coupons-label span{margin-right:16px}.coupons-container .cart-empty-coupons-label p{display:flex;flex-direction:row;padding:8px 16px;margin-top:24px;border-radius:4px;line-height:1rem;font-size:16px;color:var(--color-infoFeedback-dark);background-color:var(--color-infoFeedback-faded)}.coupons-container .container-title-coupons h1{margin-bottom:16px;color:var(--color-grayScale);font-size:16px;font-weight:700;line-height:20px}.coupons-container .container-title-coupons .container-coupons{width:100%;display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:16px}.coupons-container .container-card-coupon{width:100%;display:flex;flex-direction:row;justify-content:space-between;padding:1rem;gap:8px;border-radius:8px;border:1px solid var(--color-grayScale-faded);background:var(--color-grayScale-white);box-shadow:4px 4px 8px 0 var(--color-support-shadow)}.coupons-container .container-card-coupon.active{border:1.5px solid var(--color-positiveFeedback)}.coupons-container .container-card-coupon .text-container{flex:1;display:flex;flex-direction:column;align-self:center;align-items:flex-start;gap:8px}.coupons-container .container-card-coupon .text-container .container-title{display:flex;flex-direction:row}.coupons-container .container-card-coupon .text-container .container-title .title{margin-left:.5rem;line-height:20px;font-weight:700;color:var(--color-grayScale);font-size:16px}.coupons-container .container-card-coupon .text-container .price-badge{border-radius:2rem;padding:.25rem 1rem;font-weight:700;font-size:20px;color:var(--color-main);background-color:var(--color-secondary)}.coupons-container .container-card-coupon .text-container .subtitle{font-weight:400;line-height:20px;font-size:16px;color:var(--color-grayScale-darkest)}.coupons-container .container-card-coupon .vertical-line{border-right:2px dashed var(--color-grayScale-light)}.coupons-container .container-card-coupon .buttons-container{display:flex;flex-direction:column;align-items:center;justify-content:center}.coupons-container .container-card-coupon .buttons-container .applied-coupon{display:flex;align-items:center;width:110px;height:34px;padding:16px 8px;border:unset;border-radius:2px;line-height:20px;font-weight:500;font-size:16px;color:var(--color-main);background:var(--color-positiveFeedback-faded)}.coupons-container .container-card-coupon .buttons-container .applied-coupon span,.coupons-container .container-card-coupon .buttons-container .success-icon{margin-right:8px}.coupons-container .container-card-coupon .buttons-container .apply-coupon{width:110px;height:34px;padding:8px 16px;border:unset;border-radius:2px;color:var(--color-assistant-main);background:var(--color-main);cursor:pointer}.coupons-container .container-card-coupon .buttons-container .apply-coupon:disabled{cursor:wait;color:var(--color-grayScale-lightest);background-color:var(--color-grayScale-darkest)}.coupons-container .container-card-coupon .buttons-container .remove-coupon{width:110px;height:34px;margin-top:16px;padding:8px 16px;border-radius:2px;font-weight:500;line-height:20px;color:var(--color-main);border:1px solid var(--color-main);background:var(--color-grayScale-white);cursor:pointer}.coupons-container .container-card-coupon .buttons-container a{width:110px;margin-top:16px;text-decoration-line:underline;text-align:center;font-weight:400;line-height:20px;font-size:16px;color:var(--color-support-links);cursor:pointer}.coupons-container .modal-rule-coupon-external .modal-rule-coupon-internal .cartEmptyCoupon-h3{font-size:16px;font-weight:700;line-height:20px;color:#1c1c1c;margin:1.5rem 0rem}.coupons-container .modal-rule-coupon-external .modal-rule-coupon-internal #cartEmptyCoupon-p{margin:1.5rem 0rem;line-height:1rem}.coupons-container .modal-rule-coupon-external .modal-rule-coupon-internal .cartEmptyCoupon-svg{display:flex;justify-content:center}.coupons-container .modal-rule-coupon-external .modal-rule-coupon-internal .modal-rule-coupon-children span{margin-right:16px}.coupons-container .modal-rule-coupon-external .modal-rule-coupon-internal .modal-rule-coupon-children p{display:flex;flex-direction:row;padding:8px 16px;margin:24px 0;border-radius:4px;line-height:2.5rem;font-size:16px;color:var(--color-infoFeedback-dark);background-color:var(--color-infoFeedback-faded)}.coupons-container .applied-coupon-badge{display:flex;position:fixed;width:fit-content;justify-content:flex-start;align-items:center;padding:1rem;z-index:10;bottom:40px;left:50%;transform:translate(-50%);border-radius:4px;box-shadow:4px 4px 8px var(--color-support-shadow)}.coupons-container .applied-coupon-badge span{margin-right:8px}.coupons-container .error-coupon{background-color:var(--color-negativeFeedback-faded)}.coupons-container .success-coupon{background-color:var(--color-positiveFeedback-faded)}.coupons-container .noCoupons{display:flex;flex-direction:column;align-items:center}.coupons-container .noCoupons .noCoupons-h1{font-weight:700}.coupons-container .noCoupons .noCoupons-p{margin-bottom:24px;color:var(--color-grayScale-darkest)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.regionalization-container *{box-sizing:border-box;margin:0;padding:0;font-family:DM Sans,sans-serif;font-style:normal}.regionalization-container{border-radius:8px}.regionalization-container button{display:flex;outline:none;border:none;background-color:transparent;cursor:pointer}.regionalization-container .badge{border-radius:12px;padding:4px 8px;background-color:var(--color-main, #2c3490);color:var(--color-assistant-main, #ebe0cf)!important;font-size:12px;font-weight:700;line-height:16px}.regionalization-container{border:1px solid var(--color-grayScale-lightest, #e8e8e8);width:100%;max-width:660px;margin:auto;padding:24px 16px;background-color:var(--color-grayScale-white, #fff)}.regionalization-container .delivery-pickup-container{gap:8px 0}@media screen and (min-width: 769px){.regionalization-container{padding:24px 10px 24px 24px}}.regionalization-container .title-container{display:flex;justify-content:space-between}.regionalization-container .title-container h1{color:var(--color-main);font-size:16px;line-height:20px;font-weight:700;line-height:24px;margin-right:16px}@media screen and (min-width: 769px){.regionalization-container .title-container h1{font-size:24px;line-height:28px}}.regionalization-container .title-container button{display:flex;outline:none;border:none;background-color:transparent;cursor:pointer}.regionalization-container .more-infos-button{align-items:center;margin:16px 0;color:var(--color-support-links, #00289c);font-weight:400;font-size:14px;line-height:18px;text-decoration-line:underline}@media screen and (min-width: 769px){.regionalization-container .more-infos-button{font-size:16px;line-height:20px}}.regionalization-container .more-infos-button span{display:inline-flex;margin-left:8px}.regionalization-container .content-container{display:flex;flex-direction:column}.regionalization-container .content-container h2{color:var(--color-grayScale, #1c1c1c);font-size:24px;line-height:28px;font-weight:700}.regionalization-container .content-container .warning-container{display:flex;align-items:center;border-radius:4px;margin-top:16px;padding:8px 16px;background-color:var(--color-warning-faded, #fff8e5)}.regionalization-container .content-container .warning-container span{display:inline-block;margin-left:16px;color:var(--color-warning-dark, #b28100);font-size:14px;line-height:18px}.regionalization-container .delivery-container{margin-bottom:16px;color:var(--color-grayScale, #1c1c1c);font-size:16px;line-height:20px}.regionalization-container .delivery-container .info-price{margin-bottom:12px}.delivery-subcontainer{border-radius:4px;border:1px solid var(--color-grayScale-lightest);background:var(--color-grayScale-white);padding:16px;margin:16px 0}.normal-delivery-container,.express-delivery-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.normal-delivery-title-container,.express-delivery-title-container{display:flex;align-items:center}.normal-delivery-title,.express-delivery-title{padding-left:8px;font-size:14px;font-weight:400;line-height:18px}.normal-delivery-price,.express-delivery-price{font-size:12px;font-weight:700;line-height:16px;color:var(--color-main)}.normal-delivery-scheduling,.express-delivery-scheduling{font-size:12px;font-weight:400;line-height:16px}.express-delivery-message-container{display:flex;padding:8px 16px;border-radius:4px;background:var(--color-main-faded);margin-top:8px;color:var(--color-main);font-size:12px;font-weight:700;line-height:16px}.delivery-types{color:var(--color-grayScale);font-size:16px;font-weight:700;line-height:20px;margin:6px 0}@media screen and (min-width: 769px){.normal-delivery-title,.express-delivery-title{padding-left:8px;font-size:16px;font-weight:700;line-height:20px}.normal-delivery-price,.express-delivery-price,.normal-delivery-scheduling,.express-delivery-scheduling{font-size:16px;line-height:20px}.express-delivery-message-container{font-size:14px;line-height:18px}.delivery-types{font-size:20px;line-height:24px;margin:16px 0}.regionalization-container .delivery-container{margin:16px 0}.regionalization-container .delivery-container .info-price{margin-bottom:16px}}.regionalization-container .info-price{margin:8px 0 10px;color:var(--color-grayScale, #1c1c1c);font-size:16px;line-height:20px}.regionalization-container .info-price span{color:var(--color-main, #004a93);font-weight:700}.regionalization-container .postal-code-container{display:flex;flex-direction:column;row-gap:8px;margin:16px 0}.regionalization-container .postal-code-container .postal-code-container-action{display:flex}.regionalization-container .postal-code-container .postal-code-container-action input{display:inline-block;width:100%;margin-right:8px;padding:9px 12px;border:1px solid var(--color-grayScale-light, #c6c6c6);border-radius:2px;color:var(--color-grayScale-darkest, #545454);font-size:16px;line-height:20px}.regionalization-container .postal-code-container .postal-code-container-action input::placeholder{color:var(--color-grayScale-light, #c6c6c6)}.regionalization-container .postal-code-container .postal-code-container-action button{justify-content:center;align-items:center;padding:10px 11px;border-radius:2px;background-color:var(--color-main, #2c3490);color:var(--color-assistant-main, #ebe0cf);font-size:16px;font-weight:500;line-height:18px}@media screen and (min-width: 769px){.regionalization-container .postal-code-container .postal-code-container-action button{width:30%}.regionalization-container .postal-code-container .postal-code-container-action input{width:70%}}.regionalization-container .postal-code-container .postal-code-container-action button:disabled{background-color:var(--color-grayScale-faded, #f4f4f4);color:var(--color-grayScale-light, #c6c6c6);cursor:wait}.regionalization-container .postal-code-container .postal-code-container-pickup{display:flex;flex-direction:column}.regionalization-container .postal-code-container .postal-code-container-pickup label{color:var(--color-main, #2c3490);font-size:16px;font-weight:700;line-height:20px;margin-top:24px}.regionalization-container .postal-code-container .postal-code-container-pickup .postal-code-container-pickup-select{width:100%;height:72px;display:flex;column-gap:16px;margin:16px 0;padding:18px 8px;border-radius:8px;border:1px solid var(--color-grayScale-lightest, #e8e8e8);box-shadow:4px 4px 8px 0 var(--color-support-shadow);background:var(--color-grayScale-white, #fff)}.regionalization-container .postal-code-container .postal-code-container-pickup .postal-code-container-pickup-select .postal-code-container-pickup-select-informative{text-align:start}.regionalization-container .postal-code-container .postal-code-container-pickup .postal-code-container-pickup-select .postal-code-container-pickup-select-informative h4{font-size:14px;font-weight:700;line-height:18px;color:var(--color-main, #2c3490)}.regionalization-container .postal-code-container .postal-code-container-pickup .postal-code-container-pickup-select .postal-code-container-pickup-select-informative p{font-size:12px;font-weight:400;line-height:16px;color:var(--color-main, #2c3490)}@media screen and (min-width: 769px){.regionalization-container .postal-code-container .postal-code-container-pickup label{font-size:20px;line-height:24px}.regionalization-container .postal-code-container .postal-code-container-pickup .postal-code-container-pickup-select{height:120px;justify-content:center;align-items:center}.regionalization-container .postal-code-container .postal-code-container-pickup .postal-code-container-pickup-select svg{height:88px;width:88px}.regionalization-container .postal-code-container .postal-code-container-pickup .postal-code-container-pickup-select .postal-code-container-pickup-select-informative h4{font-size:20px;line-height:24px}.regionalization-container .postal-code-container .postal-code-container-pickup .postal-code-container-pickup-select .postal-code-container-pickup-select-informative p{font-size:16px;line-height:20px}}.regionalization-container a{display:block;margin-top:3px;color:var(--color-support-links, #00289c);font-size:12px;line-height:16px}.regionalization-container .pickup-container{margin:26px 0 10px;color:var(--color-grayScale, #1c1c1c);font-size:16px;line-height:20px}.regionalization-container .pickup-instructions{display:flex;flex-direction:column;margin-bottom:24px}.regionalization-container .pickup-price{color:var(--color-grayScale, #1c1c1c);font-size:16px;font-weight:400;line-height:20px;margin-bottom:10px}@media screen and (min-width: 769px){.regionalization-container .pickup-instructions{display:flex;flex-direction:row;column-gap:4px}}.regionalization-container .pickup-instructions{margin-bottom:24px}.regionalization-container .pickup-instructions p{font-size:16px;font-weight:400;line-height:20px}.regionalization-container .pickup-instructions span{font-size:16px;font-weight:700;line-height:20px}.regionalization-container .pickup-open-stores-container{display:flex;justify-content:space-between}.regionalization-container .pickup-open-stores-container .pickup-open-stores{justify-content:center;width:100%;max-width:208px;border-radius:2px;padding:10px 21px;background-color:var(--color-main, #2c3490);color:var(--color-assistant-main, #ebe0cf);text-align:center;font-size:16px;line-height:20px;font-weight:500}@media screen and (min-width: 769px){.regionalization-container .title-container h1{font-size:24px;line-height:28px}.regionalization-container .more-infos-button{font-weight:400;font-size:16px;line-height:20px}.content-container .regionalization-container .content-container h2{font-size:20px;line-height:24px}}.regionalization-container .opening-hours-container{margin:16px 0}.regionalization-container .opening-hours-container p,.regionalization-container .opening-hours-container span{color:var(--color-grayScale, #1c1c1c);font-size:16px;line-height:20px;font-weight:400}.regionalization-container .opening-hours-container span{font-weight:700}.regionalization-container .container-navigation{display:flex;justify-content:space-between;margin-top:24px}.regionalization-container .back-button{align-items:center;color:var(--color-main, #2c3490);font-size:14px;font-weight:500;line-height:18px;margin-right:28px}.regionalization-container .back-button-all-store{align-items:center;color:var(--color-main, #004a93);font-size:14px;line-height:18px;font-weight:500;margin-right:28px}.regionalization-container .back-button-all-store span,.regionalization-container .back-button span{transform:rotate(180deg);display:inline-flex;margin-right:8px}.regionalization-container .continue-button{padding:10px 40px;border-radius:2px;color:var(--color-assistant-main, #ebe0cf);background-color:var(--color-main, #2c3490);font-size:16px;font-weight:500;line-height:20px;width:100%;max-width:208px;display:flex;justify-content:center;align-items:center;white-space:nowrap}@media screen and (min-width: 769px){.regionalization-container .back-button{font-size:16px;line-height:20px}.regionalization-container .back-button-all-store{align-items:center;color:var(--color-main, #004a93);font-size:16px;line-height:20px;font-weight:500;margin-right:28px}.regionalization-container .back-button span svg{width:24px;height:24px}}.regionalization-container .stores-filter p{margin:18px 0 2px;color:var(--color-grayScale, #1c1c1c);font-size:14px;line-height:18px}.regionalization-container .stores-filter div{position:relative;display:flex}.regionalization-container .stores-filter div input{display:block;width:100%;border:1px solid var(--color-grayScale-light, #c6c6c6);padding:8px 40px 8px 12px;color:var(--color-grayScale-darkest, #545454);font-size:16px;line-height:24px}.regionalization-container .stores-filter div .filter-ico-container{position:absolute;right:0;display:flex;align-items:center;justify-content:center;height:42px;width:42px;padding:12px}.regionalization-container .stores-filter div input::placeholder{color:var(--color-grayScale-dark, #8d8d8d)}.regionalization-container .stores-filter div svg{overflow:unset}.regionalization-container .divider{justify-content:center;height:1px;margin-top:26px;background-color:var(--color-grayScale-dark, #8d8d8d)}.regionalization-container .divider span{position:absolute;top:-10px;padding:0 16px;background-color:var(--color-grayScale-white, #fff);color:var(--color-grayScale-dark, #8d8d8d);font-size:16px;line-height:20px}.regionalization-container .stores-label{margin:22px 0 14px;color:var(--color-grayScale, #1c1c1c);font-size:14px;line-height:18px}.regionalization-container .stores-container{display:grid}.regionalization-container .store-container{display:flex;flex-direction:column;box-shadow:4px 4px 8px var(--color-support-shadow, rgba(0, 74, 147, .25));margin-bottom:16px;margin-right:16px}.regionalization-container .store-container h3{padding:9px 16px;background-color:var(--color-main-faded, #e6edf4);color:var(--color-main, #004a93);font-size:14px;line-height:18px;font-weight:700}.regionalization-container .store-container div{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:16px}.regionalization-container .store-container div p{margin-bottom:16px;color:var(--color-grayScale-darkest, #545454);font-size:14px;line-height:18px}.regionalization-container .store-container div .choose-store{justify-content:center;width:100%;border:1px solid var(--color-main, #004a93);border-radius:2px;padding:7px 8px;color:var(--color-main, #004a93);font-size:14px;line-height:18px;font-weight:500}@media screen and (min-width: 769px){.regionalization-container .stores-container{display:grid;grid-template-columns:repeat(2,1fr);max-height:328px}.stores-container{max-height:326px;overflow-y:auto}.stores-container::-webkit-scrollbar{width:4px}.stores-container::-webkit-scrollbar-thumb{background-color:var(--color-main);border-radius:20px;width:3px}}.regionalization-container .address-container{margin-top:24px;margin-bottom:16px;padding:16px;background-color:var(--color-grayScale-faded, #f4f4f4)}.regionalization-container .address-container .address-title{display:flex;justify-content:space-between}.regionalization-container .address-container span:not(.address-delivery){display:block;margin-bottom:2px;font-size:16px;line-height:20px;font-weight:700}.regionalization-container .address-container span.address-delivery,.regionalization-container .address-container .address-pickup{color:var(--color-grayScale-darkest, #545454);font-size:16px;line-height:20px}.regionalization-container .address-container .edit-button{color:var(--color-support-links, #00289c);font-size:16px;line-height:20px;text-decoration:underline}.regionalization-container .inital-view-container .price-stock-information{font-size:14px;font-weight:400;line-height:18px;text-align:center;width:100%;color:var(--color-grayScale, #1c1c1c);margin-top:8px}.regionalization-container .inital-view-container .delivery-option-container{display:flex;flex-direction:row;justify-content:space-between;column-gap:6px}.regionalization-container .inital-view-container .delivery-option-container .option{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:8px;box-shadow:4px 4px 8px 0 var(--color-support-shadow, rgba(0, 74, 147, .25));border:1px solid var(--color-grayScale-lightest, #e8e8e8);padding:8px;width:100%;height:106px}.regionalization-container .inital-view-container .delivery-option-container h4{font-size:14px;font-weight:700;line-height:18px;color:var(--color-main, #2c3490)}.regionalization-container .inital-view-container .delivery-option-container p{font-size:12px;font-weight:400;line-height:16px;color:var(--color-main, #2c3490)}@media screen and (min-width: 769px){.regionalization-container .inital-view-container .price-stock-information{font-size:16px;line-height:20px;margin-top:16px}.regionalization-container .inital-view-container .delivery-option-container .option{height:188px}.regionalization-container .inital-view-container .delivery-option-container svg{height:80px;width:80px}.regionalization-container .inital-view-container .delivery-option-container h4{font-size:20px;line-height:24px}.regionalization-container .inital-view-container .delivery-option-container p{font-size:16px;line-height:20px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
#tour-tooltip{font-family:DM Sans,sans-serif;top:315px;position:absolute;left:50%;transform:translate(-50%);z-index:9999;display:flex;width:328px;padding:16px;flex-direction:column;align-items:flex-start;border-radius:8px;background:var(--color-main-faded);border:1px solid var(--color-main-faded)}#tour-tooltip:after{content:"";display:block;width:20px;height:12px;background:var(--color-main-faded);clip-path:polygon(50% 100%,0 0,100% 0);position:absolute;top:100%;left:50%;transform:translate(-50%)}#tour-tooltip .tooltip-header{display:flex;width:100%;justify-content:space-between;align-items:center;margin-bottom:8px}#tour-tooltip .tooltip-header span{color:var(--color-main);font-family:DM Sans;font-size:12px;font-style:normal;font-weight:400;line-height:16px}#tour-tooltip .tooltip-header button{border:none;background:none;cursor:pointer}#tour-tooltip p{color:var(--color-main);font-family:DM Sans;font-size:14px;font-style:normal;font-weight:700;line-height:18px}#tour-tooltip .tooltip-footer{display:flex;justify-content:space-between;width:100%;align-items:center;margin-top:16px}#tour-tooltip .tooltip-footer button{border:none;background:none;color:var(--color-main);font-family:DM Sans;font-size:14px;font-style:normal;font-weight:400;line-height:18px;cursor:pointer}#tour-overlay{background:var(--color-support-overlay);z-index:9998;position:fixed;height:100vh;width:100%;top:0}
|