ublo-lib 1.47.54 → 1.47.56

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.
Files changed (33) hide show
  1. package/es/common/components/cart-dialog/cart-dialog-inner.d.ts +2 -1
  2. package/es/common/components/cart-dialog/cart-dialog-inner.d.ts.map +1 -1
  3. package/es/common/components/cart-dialog/cart-dialog-inner.js +7 -2
  4. package/es/common/components/cart-dialog/cart-dialog.d.ts +2 -1
  5. package/es/common/components/cart-dialog/cart-dialog.d.ts.map +1 -1
  6. package/es/common/components/cart-dialog/cart-dialog.js +2 -2
  7. package/es/common/components/cart-dialog/default.d.ts +2 -1
  8. package/es/common/components/cart-dialog/default.d.ts.map +1 -1
  9. package/es/common/components/cart-dialog/default.js +2 -2
  10. package/es/common/components/cart-dialog/esf-custom.d.ts +2 -1
  11. package/es/common/components/cart-dialog/esf-custom.d.ts.map +1 -1
  12. package/es/common/components/cart-dialog/esf-custom.js +2 -2
  13. package/es/common/components/cart-dialog/esf.d.ts +2 -1
  14. package/es/common/components/cart-dialog/esf.d.ts.map +1 -1
  15. package/es/common/components/cart-dialog/esf.js +2 -2
  16. package/es/common/components/cart-dialog/lodging.d.ts +2 -1
  17. package/es/common/components/cart-dialog/lodging.d.ts.map +1 -1
  18. package/es/common/components/cart-dialog/lodging.js +2 -2
  19. package/es/common/components/cart-dialog/ski-passes.d.ts +2 -1
  20. package/es/common/components/cart-dialog/ski-passes.d.ts.map +1 -1
  21. package/es/common/components/cart-dialog/ski-passes.js +2 -2
  22. package/es/common/components/cart-dialog/ski-rental.d.ts +2 -1
  23. package/es/common/components/cart-dialog/ski-rental.d.ts.map +1 -1
  24. package/es/common/components/cart-dialog/ski-rental.js +2 -2
  25. package/es/common/components/cart-dialog/vakario.d.ts +2 -1
  26. package/es/common/components/cart-dialog/vakario.d.ts.map +1 -1
  27. package/es/common/components/cart-dialog/vakario.js +2 -2
  28. package/es/common/components/cart-preview/cart-preview.d.ts.map +1 -1
  29. package/es/common/components/cart-preview/cart-preview.js +11 -1
  30. package/es/future/components/msem/tunnel.d.ts +1 -1
  31. package/es/future/components/msem/tunnel.d.ts.map +1 -1
  32. package/es/future/components/msem/tunnel.js +12 -0
  33. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  export default CartDialogInner;
2
- declare function CartDialogInner({ kind, title, image, thumbnail, price, label, contentTitle, paxPlan, closeDialog, goToCart, cart, zoneId, zonePath, hideSkiPassesStay, }: {
2
+ declare function CartDialogInner({ kind, title, image, thumbnail, price, label, contentTitle, paxPlan, closeDialog, goToCart, cart, zoneId, zonePath, hideSkiPassesStay, customContinueURL, }: {
3
3
  kind: any;
4
4
  title: any;
5
5
  image: any;
@@ -14,5 +14,6 @@ declare function CartDialogInner({ kind, title, image, thumbnail, price, label,
14
14
  zoneId: any;
15
15
  zonePath: any;
16
16
  hideSkiPassesStay: any;
17
+ customContinueURL: any;
17
18
  }): import("react/jsx-runtime").JSX.Element;
18
19
  //# sourceMappingURL=cart-dialog-inner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cart-dialog-inner.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/cart-dialog-inner.js"],"names":[],"mappings":";AAWA;;;;;;;;;;;;;;;4CA6GC"}
1
+ {"version":3,"file":"cart-dialog-inner.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/cart-dialog-inner.js"],"names":[],"mappings":";AAWA;;;;;;;;;;;;;;;;4CAmHC"}
@@ -9,10 +9,15 @@ import { message } from "./message";
9
9
  import CrossSellingOffers from "./cross-selling-offers";
10
10
  import CheckCircleIcon from "dt-design-system/es/icons/check-circle";
11
11
  import styles from "./cart-dialog-inner.module.css";
12
- const CartDialogInner = ({ kind, title, image, thumbnail, price, label, contentTitle, paxPlan, closeDialog, goToCart, cart, zoneId, zonePath, hideSkiPassesStay, }) => {
12
+ const CartDialogInner = ({ kind, title, image, thumbnail, price, label, contentTitle, paxPlan, closeDialog, goToCart, cart, zoneId, zonePath, hideSkiPassesStay, customContinueURL, }) => {
13
13
  const [stay, setStay] = React.useState({ from: "", to: "" });
14
14
  const { lang, config } = useUbloContext();
15
15
  const hasLangPrefix = config.langPrefix.links;
16
+ const continueToSiteURL = customContinueURL
17
+ ? customContinueURL
18
+ : hasLangPrefix
19
+ ? `/${lang}/`
20
+ : "/";
16
21
  React.useEffect(() => {
17
22
  const sessionStay = sessionStorage.getItem("stay");
18
23
  setStay(JSON.parse(sessionStay));
@@ -21,6 +26,6 @@ const CartDialogInner = ({ kind, title, image, thumbnail, price, label, contentT
21
26
  const formattedStayFrom = stay?.from && new Date(stay.from).toLocaleDateString(lang, formatOptions);
22
27
  const formattedStayTo = stay?.to && new Date(stay.to).toLocaleDateString(lang, formatOptions);
23
28
  const buttonClasses = classNames(styles.contentButton, styles.contentButtonContinue);
24
- return (_jsxs("div", { className: styles.inner, children: [_jsxs("div", { className: styles.title, children: [_jsx(CheckCircleIcon, { className: styles.titleIcon }), _jsx("div", { className: styles.titleText, children: title })] }), _jsxs("div", { className: styles.content, children: [image && (_jsx("div", { className: styles.contentLeft, children: _jsx(Image, { className: styles.productImage, src: image, width: 320, height: 200, placeholder: thumbnail ? "blur" : undefined, blurDataURL: thumbnail, alt: "" }) })), _jsxs("div", { className: styles.contentRight, children: [_jsxs("div", { className: styles.wrapper, children: [label && (_jsx("div", { className: styles.contentLabel, dangerouslySetInnerHTML: { __html: label } })), price && price > 0 ? (_jsxs("div", { className: styles.price, children: [parseFloat(price).toFixed(2), " \u20AC"] })) : null, price === 0 && (_jsx("div", { className: styles.price, children: message(lang, "free") }))] }), contentTitle && (_jsx("div", { className: styles.contentTitle, children: contentTitle })), !hideSkiPassesStay && formattedStayFrom && formattedStayTo && (_jsxs("div", { className: styles.stay, children: [formattedStayFrom, " \uA537 ", formattedStayTo] })), paxPlan && _jsx("div", { className: styles.paxPlan, children: paxPlan }), _jsxs("div", { className: styles.contentButtons, children: [_jsx(Button, { tag: Link, href: hasLangPrefix ? `/${lang}/` : "/", className: buttonClasses, variant: "secondary", onClick: closeDialog, children: message(lang, "cart-dialog-continue") }), _jsx(Button, { className: styles.contentButton, onClick: goToCart, children: message(lang, "cart-dialog-go-to-cart") })] })] })] }), kind && (_jsx(CrossSellingOffers, { kind: kind, cart: cart, closeDialog: closeDialog, zoneId: zoneId, zonePath: zonePath }))] }));
29
+ return (_jsxs("div", { className: styles.inner, children: [_jsxs("div", { className: styles.title, children: [_jsx(CheckCircleIcon, { className: styles.titleIcon }), _jsx("div", { className: styles.titleText, children: title })] }), _jsxs("div", { className: styles.content, children: [image && (_jsx("div", { className: styles.contentLeft, children: _jsx(Image, { className: styles.productImage, src: image, width: 320, height: 200, placeholder: thumbnail ? "blur" : undefined, blurDataURL: thumbnail, alt: "" }) })), _jsxs("div", { className: styles.contentRight, children: [_jsxs("div", { className: styles.wrapper, children: [label && (_jsx("div", { className: styles.contentLabel, dangerouslySetInnerHTML: { __html: label } })), price && price > 0 ? (_jsxs("div", { className: styles.price, children: [parseFloat(price).toFixed(2), " \u20AC"] })) : null, price === 0 && (_jsx("div", { className: styles.price, children: message(lang, "free") }))] }), contentTitle && (_jsx("div", { className: styles.contentTitle, children: contentTitle })), !hideSkiPassesStay && formattedStayFrom && formattedStayTo && (_jsxs("div", { className: styles.stay, children: [formattedStayFrom, " \uA537 ", formattedStayTo] })), paxPlan && _jsx("div", { className: styles.paxPlan, children: paxPlan }), _jsxs("div", { className: styles.contentButtons, children: [_jsx(Button, { tag: Link, href: continueToSiteURL, className: buttonClasses, variant: "secondary", onClick: closeDialog, children: message(lang, "cart-dialog-continue") }), _jsx(Button, { className: styles.contentButton, onClick: goToCart, children: message(lang, "cart-dialog-go-to-cart") })] })] })] }), kind && (_jsx(CrossSellingOffers, { kind: kind, cart: cart, closeDialog: closeDialog, zoneId: zoneId, zonePath: zonePath }))] }));
25
30
  };
26
31
  export default CartDialogInner;
@@ -1,5 +1,5 @@
1
1
  export default CartDialog;
2
- declare function CartDialog({ cart, setCart, shortcuts, paxPlan, facet, zoneId, zonePath, hasImage, hideSkiPassesStay, }: {
2
+ declare function CartDialog({ cart, setCart, shortcuts, paxPlan, facet, zoneId, zonePath, hasImage, hideSkiPassesStay, customContinueURL, }: {
3
3
  cart: any;
4
4
  setCart: any;
5
5
  shortcuts: any;
@@ -9,5 +9,6 @@ declare function CartDialog({ cart, setCart, shortcuts, paxPlan, facet, zoneId,
9
9
  zonePath: any;
10
10
  hasImage: any;
11
11
  hideSkiPassesStay: any;
12
+ customContinueURL: any;
12
13
  }): import("react/jsx-runtime").JSX.Element;
13
14
  //# sourceMappingURL=cart-dialog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cart-dialog.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/cart-dialog.js"],"names":[],"mappings":";AAuBA;;;;;;;;;;4CAyEC"}
1
+ {"version":3,"file":"cart-dialog.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/cart-dialog.js"],"names":[],"mappings":";AAuBA;;;;;;;;;;;4CA2EC"}
@@ -19,7 +19,7 @@ const products = {
19
19
  VAKARIO: Vakario,
20
20
  };
21
21
  const STAND_PRODUCTS = ["VAKARIO", "ELLOHA-ACTIVITY"];
22
- const CartDialog = ({ cart, setCart, shortcuts, paxPlan, facet, zoneId, zonePath, hasImage, hideSkiPassesStay, }) => {
22
+ const CartDialog = ({ cart, setCart, shortcuts, paxPlan, facet, zoneId, zonePath, hasImage, hideSkiPassesStay, customContinueURL, }) => {
23
23
  const { lang, config } = useUbloContext();
24
24
  const hasLangPrefix = config.langPrefix.links;
25
25
  if (!cart)
@@ -49,6 +49,6 @@ const CartDialog = ({ cart, setCart, shortcuts, paxPlan, facet, zoneId, zonePath
49
49
  window.location.href = cartUrl;
50
50
  };
51
51
  const Component = isSupported ? products[kind] : products.DEFAULT;
52
- return (_jsx(Dialog, { className: styles.cartDialog, isOpened: Boolean(cart), close: closeDialogAndReload, closeButtonVariant: "link", children: _jsx(Component, { kind: kind, item: newItem, data: data, closeDialog: closeDialog, goToCart: goToCart, cart: cart, paxPlan: paxPlan, facet: facet, zoneId: zoneId, zonePath: zonePath, hasImage: hasImage, hideSkiPassesStay: hideSkiPassesStay }) }));
52
+ return (_jsx(Dialog, { className: styles.cartDialog, isOpened: Boolean(cart), close: closeDialogAndReload, closeButtonVariant: "link", children: _jsx(Component, { kind: kind, item: newItem, data: data, closeDialog: closeDialog, goToCart: goToCart, cart: cart, paxPlan: paxPlan, facet: facet, zoneId: zoneId, zonePath: zonePath, hasImage: hasImage, hideSkiPassesStay: hideSkiPassesStay, customContinueURL: customContinueURL }) }));
53
53
  };
54
54
  export default CartDialog;
@@ -1,5 +1,5 @@
1
1
  export default Default;
2
- declare function Default({ kind, closeDialog, goToCart, cart, facet, zoneId, zonePath, }: {
2
+ declare function Default({ kind, closeDialog, goToCart, cart, facet, zoneId, zonePath, customContinueURL, }: {
3
3
  kind: any;
4
4
  closeDialog: any;
5
5
  goToCart: any;
@@ -7,5 +7,6 @@ declare function Default({ kind, closeDialog, goToCart, cart, facet, zoneId, zon
7
7
  facet: any;
8
8
  zoneId: any;
9
9
  zonePath: any;
10
+ customContinueURL: any;
10
11
  }): import("react/jsx-runtime").JSX.Element;
11
12
  //# sourceMappingURL=default.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/default.js"],"names":[],"mappings":";AAIA;;;;;;;;4CAgCC"}
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/default.js"],"names":[],"mappings":";AAIA;;;;;;;;;4CAkCC"}
@@ -2,11 +2,11 @@ import { jsxs as _jsxs, Fragment as _Fragment, jsx as _jsx } from "react/jsx-run
2
2
  import { useUbloContext } from "ublo/with-ublo";
3
3
  import CartDialogInner from "./cart-dialog-inner";
4
4
  import { message } from "./message";
5
- const Default = ({ kind, closeDialog, goToCart, cart, facet, zoneId, zonePath, }) => {
5
+ const Default = ({ kind, closeDialog, goToCart, cart, facet, zoneId, zonePath, customContinueURL, }) => {
6
6
  const { lang } = useUbloContext();
7
7
  const Title = () => {
8
8
  return (_jsxs(_Fragment, { children: [_jsxs("b", { children: [message(lang, "cart-dialog-product-title"), " "] }), message(lang, "cart-dialog-title-suffix-singular")] }));
9
9
  };
10
- return (_jsx(CartDialogInner, { kind: kind, title: _jsx(Title, {}), closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
10
+ return (_jsx(CartDialogInner, { customContinueURL: customContinueURL, kind: kind, title: _jsx(Title, {}), closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
11
11
  };
12
12
  export default Default;
@@ -1,5 +1,5 @@
1
1
  export default ESFCustom;
2
- declare function ESFCustom({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, }: {
2
+ declare function ESFCustom({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, customContinueURL, }: {
3
3
  item: any;
4
4
  closeDialog: any;
5
5
  goToCart: any;
@@ -8,5 +8,6 @@ declare function ESFCustom({ item, closeDialog, goToCart, cart, facet, zoneId, z
8
8
  zoneId: any;
9
9
  zonePath: any;
10
10
  hasImage: any;
11
+ customContinueURL: any;
11
12
  }): import("react/jsx-runtime").JSX.Element;
12
13
  //# sourceMappingURL=esf-custom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"esf-custom.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/esf-custom.js"],"names":[],"mappings":";AAKA;;;;;;;;;4CA6CC"}
1
+ {"version":3,"file":"esf-custom.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/esf-custom.js"],"names":[],"mappings":";AAKA;;;;;;;;;;4CA+CC"}
@@ -3,7 +3,7 @@ import { useUbloContext } from "ublo/with-ublo";
3
3
  import CartDialogInner from "./cart-dialog-inner";
4
4
  import { message } from "./message";
5
5
  import imagePaths from "./image-paths.json";
6
- const ESFCustom = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, }) => {
6
+ const ESFCustom = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, customContinueURL, }) => {
7
7
  const { lang } = useUbloContext();
8
8
  const { activity, level, name, price } = item.product;
9
9
  const kind = "ski-lessons";
@@ -14,6 +14,6 @@ const ESFCustom = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath,
14
14
  const Title = () => {
15
15
  return (_jsxs(_Fragment, { children: [_jsxs("b", { children: [message(lang, "cart-dialog-esf-title"), " "] }), message(lang, "cart-dialog-title-suffix-singular")] }));
16
16
  };
17
- return (_jsx(CartDialogInner, { kind: kind, title: _jsx(Title, {}), image: image, price: price, contentTitle: name, label: activity.concat(" - ", level), closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
17
+ return (_jsx(CartDialogInner, { customContinueURL: customContinueURL, kind: kind, title: _jsx(Title, {}), image: image, price: price, contentTitle: name, label: activity.concat(" - ", level), closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
18
18
  };
19
19
  export default ESFCustom;
@@ -1,5 +1,5 @@
1
1
  export default ESF;
2
- declare function ESF({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, }: {
2
+ declare function ESF({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, customContinueURL, }: {
3
3
  item: any;
4
4
  closeDialog: any;
5
5
  goToCart: any;
@@ -8,5 +8,6 @@ declare function ESF({ item, closeDialog, goToCart, cart, facet, zoneId, zonePat
8
8
  zoneId: any;
9
9
  zonePath: any;
10
10
  hasImage: any;
11
+ customContinueURL: any;
11
12
  }): import("react/jsx-runtime").JSX.Element;
12
13
  //# sourceMappingURL=esf.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"esf.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/esf.js"],"names":[],"mappings":";AAKA;;;;;;;;;4CAoDC"}
1
+ {"version":3,"file":"esf.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/esf.js"],"names":[],"mappings":";AAKA;;;;;;;;;;4CAsDC"}
@@ -3,7 +3,7 @@ import { useUbloContext } from "ublo/with-ublo";
3
3
  import CartDialogInner from "./cart-dialog-inner";
4
4
  import { message } from "./message";
5
5
  import imagePaths from "./image-paths.json";
6
- const ESF = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, }) => {
6
+ const ESF = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, customContinueURL, }) => {
7
7
  const { lang } = useUbloContext();
8
8
  const { activity, level, name, price } = item.product;
9
9
  const kind = "ski-lessons";
@@ -18,6 +18,6 @@ const ESF = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasIm
18
18
  const Title = () => {
19
19
  return (_jsxs(_Fragment, { children: [_jsxs("b", { children: [message(lang, "cart-dialog-esf-title"), " "] }), message(lang, "cart-dialog-title-suffix-singular")] }));
20
20
  };
21
- return (_jsx(CartDialogInner, { kind: kind, title: _jsx(Title, {}), image: image, price: price, contentTitle: name, label: label, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
21
+ return (_jsx(CartDialogInner, { customContinueURL: customContinueURL, kind: kind, title: _jsx(Title, {}), image: image, price: price, contentTitle: name, label: label, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
22
22
  };
23
23
  export default ESF;
@@ -1,5 +1,5 @@
1
1
  export default Lodging;
2
- declare function Lodging({ item, data, closeDialog, goToCart, cart, facet, paxPlan, zoneId, zonePath, hasImage, }: {
2
+ declare function Lodging({ item, data, closeDialog, goToCart, cart, facet, paxPlan, zoneId, zonePath, hasImage, customContinueURL, }: {
3
3
  item: any;
4
4
  data: any;
5
5
  closeDialog: any;
@@ -10,5 +10,6 @@ declare function Lodging({ item, data, closeDialog, goToCart, cart, facet, paxPl
10
10
  zoneId: any;
11
11
  zonePath: any;
12
12
  hasImage: any;
13
+ customContinueURL: any;
13
14
  }): import("react/jsx-runtime").JSX.Element;
14
15
  //# sourceMappingURL=lodging.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lodging.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/lodging.js"],"names":[],"mappings":";AAiCA;;;;;;;;;;;4CA0DC"}
1
+ {"version":3,"file":"lodging.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/lodging.js"],"names":[],"mappings":";AAiCA;;;;;;;;;;;;4CA4DC"}
@@ -26,7 +26,7 @@ const getPaxPlanLabel = (lang, paxPlan) => {
26
26
  }
27
27
  return "";
28
28
  };
29
- const Lodging = ({ item, data, closeDialog, goToCart, cart, facet, paxPlan, zoneId, zonePath, hasImage, }) => {
29
+ const Lodging = ({ item, data, closeDialog, goToCart, cart, facet, paxPlan, zoneId, zonePath, hasImage, customContinueURL, }) => {
30
30
  const { lang } = useUbloContext();
31
31
  const { hotel, room, total } = item.description;
32
32
  const { options = [] } = item.conciergeries || {};
@@ -43,6 +43,6 @@ const Lodging = ({ item, data, closeDialog, goToCart, cart, facet, paxPlan, zone
43
43
  const Title = () => {
44
44
  return (_jsxs(_Fragment, { children: [_jsxs("b", { children: [message(lang, "cart-dialog-lodging-title"), " "] }), message(lang, "cart-dialog-title-suffix-singular")] }));
45
45
  };
46
- return (_jsx(CartDialogInner, { kind: kind, title: _jsx(Title, {}), image: image, thumbnail: thumbnail, price: price, label: room, contentTitle: hotel, paxPlan: formattedPaxPlan, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
46
+ return (_jsx(CartDialogInner, { customContinueURL: customContinueURL, kind: kind, title: _jsx(Title, {}), image: image, thumbnail: thumbnail, price: price, label: room, contentTitle: hotel, paxPlan: formattedPaxPlan, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
47
47
  };
48
48
  export default Lodging;
@@ -1,5 +1,5 @@
1
1
  export default SkiPasses;
2
- declare function SkiPasses({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath, hasImage, hideSkiPassesStay, }: {
2
+ declare function SkiPasses({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath, hasImage, hideSkiPassesStay, customContinueURL, }: {
3
3
  item: any;
4
4
  facet: any;
5
5
  closeDialog: any;
@@ -9,5 +9,6 @@ declare function SkiPasses({ item, facet, closeDialog, goToCart, cart, zoneId, z
9
9
  zonePath: any;
10
10
  hasImage: any;
11
11
  hideSkiPassesStay: any;
12
+ customContinueURL: any;
12
13
  }): import("react/jsx-runtime").JSX.Element;
13
14
  //# sourceMappingURL=ski-passes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ski-passes.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/ski-passes.js"],"names":[],"mappings":";AAUA;;;;;;;;;;4CAiDC"}
1
+ {"version":3,"file":"ski-passes.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/ski-passes.js"],"names":[],"mappings":";AAUA;;;;;;;;;;;4CAmDC"}
@@ -8,7 +8,7 @@ const getGroupLabel = (lang, tickets) => {
8
8
  return `1 ${message(lang, "person")}`;
9
9
  return `${tickets.length} ${message(lang, "persons")}`;
10
10
  };
11
- const SkiPasses = ({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath, hasImage, hideSkiPassesStay, }) => {
11
+ const SkiPasses = ({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath, hasImage, hideSkiPassesStay, customContinueURL, }) => {
12
12
  const { lang } = useUbloContext();
13
13
  const { label, price, tickets } = item;
14
14
  const kind = "ski-passes";
@@ -20,6 +20,6 @@ const SkiPasses = ({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath,
20
20
  const Title = () => {
21
21
  return (_jsxs(_Fragment, { children: [_jsxs("b", { children: [message(lang, "cart-dialog-ski-passes-title"), " "] }), message(lang, "cart-dialog-title-suffix-plural")] }));
22
22
  };
23
- return (_jsx(CartDialogInner, { kind: kind, title: _jsx(Title, {}), image: image, price: price, contentTitle: label, paxPlan: formattedPaxPlan, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath, hideSkiPassesStay: hideSkiPassesStay }));
23
+ return (_jsx(CartDialogInner, { customContinueURL: customContinueURL, kind: kind, title: _jsx(Title, {}), image: image, price: price, contentTitle: label, paxPlan: formattedPaxPlan, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath, hideSkiPassesStay: hideSkiPassesStay }));
24
24
  };
25
25
  export default SkiPasses;
@@ -1,5 +1,5 @@
1
1
  export default SkiRental;
2
- declare function SkiRental({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath, hasImage, }: {
2
+ declare function SkiRental({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath, hasImage, customContinueURL, }: {
3
3
  item: any;
4
4
  facet: any;
5
5
  closeDialog: any;
@@ -8,5 +8,6 @@ declare function SkiRental({ item, facet, closeDialog, goToCart, cart, zoneId, z
8
8
  zoneId: any;
9
9
  zonePath: any;
10
10
  hasImage: any;
11
+ customContinueURL: any;
11
12
  }): import("react/jsx-runtime").JSX.Element;
12
13
  //# sourceMappingURL=ski-rental.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ski-rental.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/ski-rental.js"],"names":[],"mappings":";AAKA;;;;;;;;;4CAgDC"}
1
+ {"version":3,"file":"ski-rental.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/ski-rental.js"],"names":[],"mappings":";AAKA;;;;;;;;;;4CAkDC"}
@@ -3,7 +3,7 @@ import { useUbloContext } from "ublo/with-ublo";
3
3
  import CartDialogInner from "./cart-dialog-inner";
4
4
  import { message } from "./message";
5
5
  import imagePaths from "./image-paths.json";
6
- const SkiRental = ({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath, hasImage, }) => {
6
+ const SkiRental = ({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath, hasImage, customContinueURL, }) => {
7
7
  const { lang } = useUbloContext();
8
8
  const { rentDuration, price, products } = item;
9
9
  const kind = "ski-rental";
@@ -15,6 +15,6 @@ const SkiRental = ({ item, facet, closeDialog, goToCart, cart, zoneId, zonePath,
15
15
  const Title = () => {
16
16
  return (_jsxs(_Fragment, { children: [_jsxs("b", { children: [message(lang, "cart-dialog-ski-rental-title"), " "] }), message(lang, "cart-dialog-title-suffix-singular")] }));
17
17
  };
18
- return (_jsx(CartDialogInner, { kind: "ski-rental", title: _jsx(Title, {}), image: image, price: price, contentTitle: rentDuration, label: product?.label, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
18
+ return (_jsx(CartDialogInner, { customContinueURL: customContinueURL, kind: "ski-rental", title: _jsx(Title, {}), image: image, price: price, contentTitle: rentDuration, label: product?.label, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
19
19
  };
20
20
  export default SkiRental;
@@ -1,5 +1,5 @@
1
1
  export default Vakario;
2
- declare function Vakario({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, }: {
2
+ declare function Vakario({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, customContinueURL, }: {
3
3
  item: any;
4
4
  closeDialog: any;
5
5
  goToCart: any;
@@ -8,5 +8,6 @@ declare function Vakario({ item, closeDialog, goToCart, cart, facet, zoneId, zon
8
8
  zoneId: any;
9
9
  zonePath: any;
10
10
  hasImage: any;
11
+ customContinueURL: any;
11
12
  }): import("react/jsx-runtime").JSX.Element;
12
13
  //# sourceMappingURL=vakario.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vakario.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/vakario.js"],"names":[],"mappings":";AAKA;;;;;;;;;4CA4CC"}
1
+ {"version":3,"file":"vakario.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-dialog/vakario.js"],"names":[],"mappings":";AAKA;;;;;;;;;;4CA8CC"}
@@ -3,7 +3,7 @@ import { useUbloContext } from "ublo/with-ublo";
3
3
  import CartDialogInner from "./cart-dialog-inner";
4
4
  import { message } from "./message";
5
5
  import imagePaths from "./image-paths.json";
6
- const Vakario = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, }) => {
6
+ const Vakario = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, hasImage, customContinueURL, }) => {
7
7
  const { lang } = useUbloContext();
8
8
  const { title, price } = item;
9
9
  const kind = "vakario";
@@ -14,6 +14,6 @@ const Vakario = ({ item, closeDialog, goToCart, cart, facet, zoneId, zonePath, h
14
14
  const Title = () => {
15
15
  return (_jsxs(_Fragment, { children: [_jsxs("b", { children: [message(lang, "cart-dialog-product-title"), " "] }), message(lang, "cart-dialog-title-suffix-singular")] }));
16
16
  };
17
- return (_jsx(CartDialogInner, { kind: kind, title: _jsx(Title, {}), image: image, price: price, contentTitle: title, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
17
+ return (_jsx(CartDialogInner, { customContinueURL: customContinueURL, kind: kind, title: _jsx(Title, {}), image: image, price: price, contentTitle: title, closeDialog: closeDialog, goToCart: goToCart, cart: cart, facet: facet, zoneId: zoneId, zonePath: zonePath }));
18
18
  };
19
19
  export default Vakario;
@@ -1 +1 @@
1
- {"version":3,"file":"cart-preview.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-preview/cart-preview.js"],"names":[],"mappings":";AAYA;;;;;;4CA6FC"}
1
+ {"version":3,"file":"cart-preview.d.ts","sourceRoot":"","sources":["../../../../src/common/components/cart-preview/cart-preview.js"],"names":[],"mappings":";AAYA;;;;;;4CA0GC"}
@@ -14,6 +14,16 @@ const CartPreview = ({ lang, visible, className, pillClassName, forcePillVisibil
14
14
  const { resort } = publicRuntimeConfig;
15
15
  const [count, setCount] = React.useState(0);
16
16
  const [cart, setCart] = React.useState();
17
+ const [cartChanges, setCartChanges] = React.useState(0);
18
+ const addCartChange = React.useCallback(() => {
19
+ setCartChanges((prev) => prev + 1);
20
+ }, []);
21
+ React.useEffect(() => {
22
+ window.addEventListener("msem-cart-changed", addCartChange);
23
+ return () => {
24
+ window.removeEventListener("msem-cart-changed", addCartChange);
25
+ };
26
+ }, []);
17
27
  React.useEffect(() => {
18
28
  const cartId = window.sessionStorage.cartId;
19
29
  const getCart = async () => {
@@ -27,7 +37,7 @@ const CartPreview = ({ lang, visible, className, pillClassName, forcePillVisibil
27
37
  if (resort && cartId) {
28
38
  getCart();
29
39
  }
30
- }, [ubloLang, resort]);
40
+ }, [ubloLang, resort, cartChanges]);
31
41
  if (!cart && !forcePillVisibility)
32
42
  return null;
33
43
  if (!cart) {
@@ -17,7 +17,7 @@ type Options = GlobalOptions & {
17
17
  skiSchoolUrl?: string;
18
18
  customOffers?: string;
19
19
  cartExpanded?: boolean;
20
- cartChanged?: (cart: any) => void;
20
+ cartChanged?: (cart?: any, kind?: string, eventType?: string) => void;
21
21
  show?: Show[];
22
22
  };
23
23
  type Presets = GlobalPresets & {};
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel.d.ts","sourceRoot":"","sources":["../../../../src/future/components/msem/tunnel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE5D,KAAK,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvC,KAAK,OAAO,GAAG,aAAa,GAAG;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;CACf,CAAC;AAEF,KAAK,OAAO,GAAG,aAAa,GAAG,EAAE,CAAC;AAElC,KAAK,KAAK,GAAG;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;;AAEF,wBAAkC;AAElC,iBAAS,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,mBAkBpD"}
1
+ {"version":3,"file":"tunnel.d.ts","sourceRoot":"","sources":["../../../../src/future/components/msem/tunnel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE5D,KAAK,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvC,KAAK,OAAO,GAAG,aAAa,GAAG;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtE,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;CACf,CAAC;AAEF,KAAK,OAAO,GAAG,aAAa,GAAG,EAAE,CAAC;AAElC,KAAK,KAAK,GAAG;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;;AAEF,wBAAkC;AAElC,iBAAS,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,mBAiCpD"}
@@ -5,9 +5,21 @@ export default React.memo(Tunnel);
5
5
  function Tunnel({ options, presets, children }) {
6
6
  React.useEffect(() => {
7
7
  const categoryCode = window.sessionStorage.getItem("categoryCode") || undefined;
8
+ const handleCartChange = (cart, kind, eventType) => {
9
+ options?.cartChanged?.(cart, kind, eventType);
10
+ const event = new CustomEvent("msem-cart-changed", {
11
+ detail: {
12
+ cart,
13
+ kind,
14
+ eventType,
15
+ },
16
+ });
17
+ window.dispatchEvent(event);
18
+ };
8
19
  const patchedOptions = {
9
20
  categoryCode,
10
21
  ...options,
22
+ cartChanged: handleCartChange,
11
23
  analytics: (...args) => {
12
24
  options?.analytics?.apply(null, args);
13
25
  Plausible.callback.apply(null, args);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ublo-lib",
3
- "version": "1.47.54",
3
+ "version": "1.47.56",
4
4
  "peerDependencies": {
5
5
  "classnames": "^2.5.1",
6
6
  "dt-design-system": "^3.12.0",