@sunrise-upc/mobile-prod-card 1.0.3

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 (89) hide show
  1. package/README.md +42 -0
  2. package/dist/cjs/components/CardComp/Card.d.ts +14 -0
  3. package/dist/cjs/components/CardComp/index.d.ts +1 -0
  4. package/dist/cjs/components/CardEntitlement/CardEntitlement.d.ts +13 -0
  5. package/dist/cjs/components/CardEntitlement/index.d.ts +1 -0
  6. package/dist/cjs/components/CarouselComp/CarouselComp.d.ts +3 -0
  7. package/dist/cjs/components/CarouselComp/index.d.ts +1 -0
  8. package/dist/cjs/components/CountryOverlays/CountryOverlays.d.ts +10 -0
  9. package/dist/cjs/components/CountryOverlays/OverlayModal.d.ts +12 -0
  10. package/dist/cjs/components/Dotloader/Dotloader.d.ts +7 -0
  11. package/dist/cjs/components/FalconAccordionList/FalconAccordion.d.ts +13 -0
  12. package/dist/cjs/components/FalconAccordionList/FalconAccordionList.d.ts +13 -0
  13. package/dist/cjs/components/FalconAccordionList/index.d.ts +1 -0
  14. package/dist/cjs/components/FalconDescription/FalconDescription.d.ts +11 -0
  15. package/dist/cjs/components/FalconTitle/FalconTitle.d.ts +11 -0
  16. package/dist/cjs/components/ProductDetailsComp/ProductDetails.d.ts +10 -0
  17. package/dist/cjs/components/ProductDetailsComp/index.d.ts +1 -0
  18. package/dist/cjs/components/ProductDetailsModal/ProductDetailsModal.d.ts +15 -0
  19. package/dist/cjs/components/ProductDetailsModal/index.d.ts +1 -0
  20. package/dist/cjs/components/ResponsiveRow/index.d.ts +1 -0
  21. package/dist/cjs/components/ResponsiveRow/row.d.ts +7 -0
  22. package/dist/cjs/components/StaticPriceComp/StaticPriceComp.d.ts +4 -0
  23. package/dist/cjs/components/button/Button.d.ts +5 -0
  24. package/dist/cjs/components/button/Button.types.d.ts +11 -0
  25. package/dist/cjs/components/button/index.d.ts +1 -0
  26. package/dist/cjs/components/index.d.ts +5 -0
  27. package/dist/cjs/components/login/Login.types.d.ts +12 -0
  28. package/dist/cjs/components/login/LoginModal.d.ts +5 -0
  29. package/dist/cjs/components/login/index.d.ts +1 -0
  30. package/dist/cjs/components/richtext.d.ts +8 -0
  31. package/dist/cjs/components/spacer/spacer.d.ts +11 -0
  32. package/dist/cjs/components/types/Component.types.d.ts +12 -0
  33. package/dist/cjs/components/types.d.ts +60 -0
  34. package/dist/cjs/index.d.ts +2 -0
  35. package/dist/cjs/index.js +2 -0
  36. package/dist/cjs/index.js.map +1 -0
  37. package/dist/cjs/services/ButtonService.d.ts +6 -0
  38. package/dist/cjs/services/LineTableBasicPropConfig.d.ts +12 -0
  39. package/dist/cjs/services/LineTableService.d.ts +1 -0
  40. package/dist/cjs/services/api-constants.d.ts +1 -0
  41. package/dist/cjs/services/index.d.ts +1 -0
  42. package/dist/cjs/utils/constants.d.ts +10 -0
  43. package/dist/cjs/utils/store/card-context.d.ts +10 -0
  44. package/dist/cjs/utils/utils.d.ts +8 -0
  45. package/dist/esm/components/CardComp/Card.d.ts +14 -0
  46. package/dist/esm/components/CardComp/index.d.ts +1 -0
  47. package/dist/esm/components/CardEntitlement/CardEntitlement.d.ts +13 -0
  48. package/dist/esm/components/CardEntitlement/index.d.ts +1 -0
  49. package/dist/esm/components/CarouselComp/CarouselComp.d.ts +3 -0
  50. package/dist/esm/components/CarouselComp/index.d.ts +1 -0
  51. package/dist/esm/components/CountryOverlays/CountryOverlays.d.ts +10 -0
  52. package/dist/esm/components/CountryOverlays/OverlayModal.d.ts +12 -0
  53. package/dist/esm/components/Dotloader/Dotloader.d.ts +7 -0
  54. package/dist/esm/components/FalconAccordionList/FalconAccordion.d.ts +13 -0
  55. package/dist/esm/components/FalconAccordionList/FalconAccordionList.d.ts +13 -0
  56. package/dist/esm/components/FalconAccordionList/index.d.ts +1 -0
  57. package/dist/esm/components/FalconDescription/FalconDescription.d.ts +11 -0
  58. package/dist/esm/components/FalconTitle/FalconTitle.d.ts +11 -0
  59. package/dist/esm/components/ProductDetailsComp/ProductDetails.d.ts +10 -0
  60. package/dist/esm/components/ProductDetailsComp/index.d.ts +1 -0
  61. package/dist/esm/components/ProductDetailsModal/ProductDetailsModal.d.ts +15 -0
  62. package/dist/esm/components/ProductDetailsModal/index.d.ts +1 -0
  63. package/dist/esm/components/ResponsiveRow/index.d.ts +1 -0
  64. package/dist/esm/components/ResponsiveRow/row.d.ts +7 -0
  65. package/dist/esm/components/StaticPriceComp/StaticPriceComp.d.ts +4 -0
  66. package/dist/esm/components/button/Button.d.ts +5 -0
  67. package/dist/esm/components/button/Button.types.d.ts +11 -0
  68. package/dist/esm/components/button/index.d.ts +1 -0
  69. package/dist/esm/components/index.d.ts +5 -0
  70. package/dist/esm/components/login/Login.types.d.ts +12 -0
  71. package/dist/esm/components/login/LoginModal.d.ts +5 -0
  72. package/dist/esm/components/login/index.d.ts +1 -0
  73. package/dist/esm/components/richtext.d.ts +8 -0
  74. package/dist/esm/components/spacer/spacer.d.ts +11 -0
  75. package/dist/esm/components/types/Component.types.d.ts +12 -0
  76. package/dist/esm/components/types.d.ts +60 -0
  77. package/dist/esm/index.d.ts +2 -0
  78. package/dist/esm/index.js +2 -0
  79. package/dist/esm/index.js.map +1 -0
  80. package/dist/esm/services/ButtonService.d.ts +6 -0
  81. package/dist/esm/services/LineTableBasicPropConfig.d.ts +12 -0
  82. package/dist/esm/services/LineTableService.d.ts +1 -0
  83. package/dist/esm/services/api-constants.d.ts +1 -0
  84. package/dist/esm/services/index.d.ts +1 -0
  85. package/dist/esm/utils/constants.d.ts +10 -0
  86. package/dist/esm/utils/store/card-context.d.ts +10 -0
  87. package/dist/esm/utils/utils.d.ts +8 -0
  88. package/dist/index.d.ts +91 -0
  89. package/package.json +64 -0
@@ -0,0 +1,7 @@
1
+ import { FC } from "react";
2
+ import "./Dotloader.css";
3
+ interface DotLoaderSchema {
4
+ keyParams: string;
5
+ }
6
+ declare const Dotloader: FC<DotLoaderSchema>;
7
+ export default Dotloader;
@@ -0,0 +1,13 @@
1
+ import { FC } from "react";
2
+ import { RichTextSchema } from "../richtext";
3
+ import "./FalconAccordion.css";
4
+ import { ComponentWithContentProps, GenericSBProps } from "../types";
5
+ export interface FalconAccordionSchema extends GenericSBProps {
6
+ title: string;
7
+ bodyText: RichTextSchema;
8
+ alwaysOpen: boolean;
9
+ disabled: boolean;
10
+ index: number;
11
+ }
12
+ declare const FalconAccordion: FC<ComponentWithContentProps<FalconAccordionSchema | any>>;
13
+ export default FalconAccordion;
@@ -0,0 +1,13 @@
1
+ import { FC } from "react";
2
+ import { FalconAccordionSchema } from "./FalconAccordion";
3
+ import { FalconTitleInterface } from "../FalconTitle/FalconTitle";
4
+ import { FalconDescriptionInterface } from "../FalconDescription/FalconDescription";
5
+ import "./FalconAccordion.css";
6
+ import { ComponentWithContentProps, GenericSBProps } from "../types";
7
+ export interface FalconAccordionListSchema extends GenericSBProps {
8
+ title: FalconTitleInterface[];
9
+ description: FalconDescriptionInterface[];
10
+ accordions: (FalconAccordionSchema | any)[];
11
+ }
12
+ declare const FalconAccordionList: FC<ComponentWithContentProps<FalconAccordionListSchema | any>>;
13
+ export default FalconAccordionList;
@@ -0,0 +1 @@
1
+ export { default } from './FalconAccordionList';
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ import { GenericSBProps, Alignment, Asset, FalconColorsTypes, NativeColorPicker, ComponentWithContentProps } from "../../components/types";
3
+ export interface FalconDescriptionInterface extends GenericSBProps {
4
+ text: Array<Object>;
5
+ textColor: FalconColorsTypes;
6
+ textColorPicker: NativeColorPicker;
7
+ icon: Asset;
8
+ textElementPosition: Alignment;
9
+ }
10
+ declare const FalconDescription: React.FC<ComponentWithContentProps<FalconDescriptionInterface>>;
11
+ export default FalconDescription;
@@ -0,0 +1,11 @@
1
+ import { FC } from "react";
2
+ import "./FalconTitle.css";
3
+ import { GenericSBProps, HeadingVariants, FalconColorsTypes, NativeColorPicker, ComponentWithContentProps } from "./../types";
4
+ export interface FalconTitleInterface extends GenericSBProps {
5
+ text: string;
6
+ headingStyle: HeadingVariants;
7
+ textColor: FalconColorsTypes;
8
+ textColorPicker: NativeColorPicker;
9
+ }
10
+ declare const FalconTitle: FC<ComponentWithContentProps<FalconTitleInterface>>;
11
+ export default FalconTitle;
@@ -0,0 +1,10 @@
1
+ import { FC } from "react";
2
+ import "./ProductDetails.css";
3
+ interface ProductDetailsSchema {
4
+ content: any;
5
+ updatedContent: any;
6
+ modalTriggered?: () => void;
7
+ addToCart?: (e: string) => void;
8
+ }
9
+ declare const ProductDetails: FC<ProductDetailsSchema>;
10
+ export default ProductDetails;
@@ -0,0 +1 @@
1
+ export { default } from './ProductDetails';
@@ -0,0 +1,15 @@
1
+ import React, { FC } from "react";
2
+ interface GenericModalSchema {
3
+ modalState: boolean;
4
+ handler: () => void;
5
+ children: React.ReactNode;
6
+ showFooter: boolean;
7
+ footerNode?: React.ReactNode;
8
+ height?: string;
9
+ width?: string;
10
+ noCloseButton?: boolean;
11
+ backDrop?: boolean;
12
+ backButton?: string;
13
+ }
14
+ declare const ProductDetailsModal: FC<GenericModalSchema>;
15
+ export default ProductDetailsModal;
@@ -0,0 +1 @@
1
+ export { default } from './ProductDetailsModal';
@@ -0,0 +1 @@
1
+ export { default } from './row';
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ import './row.css';
3
+ interface RowInterface {
4
+ children: JSX.Element;
5
+ }
6
+ declare const Row: FC<RowInterface>;
7
+ export default Row;
@@ -0,0 +1,4 @@
1
+ import { FC } from "react";
2
+ import "./StaticPriceComp.css";
3
+ declare const StaticPriceComp: FC<any>;
4
+ export default StaticPriceComp;
@@ -0,0 +1,5 @@
1
+ import { FC } from "react";
2
+ import { ButtonProps } from "./Button.types";
3
+ import './Button.css';
4
+ declare const Button: FC<ButtonProps>;
5
+ export default Button;
@@ -0,0 +1,11 @@
1
+ import { MouseEventHandler } from "react";
2
+ export interface ButtonProps {
3
+ type: 'primary' | 'secondary' | 'error';
4
+ text: string;
5
+ onClick: MouseEventHandler<HTMLButtonElement>;
6
+ content: ButtonContent | null;
7
+ }
8
+ export interface ButtonContent {
9
+ text: string;
10
+ type: string;
11
+ }
@@ -0,0 +1 @@
1
+ export { default } from './Button';
@@ -0,0 +1,5 @@
1
+ export { default as Button } from './button';
2
+ export { default as LoginModal } from './login';
3
+ export { default as Card } from './CardComp';
4
+ export { default as CardEntitlement } from './CardEntitlement';
5
+ export { default as CarouselComp } from './CarouselComp';
@@ -0,0 +1,12 @@
1
+ import { MouseEventHandler } from "react";
2
+ export interface LoginModelProps {
3
+ toggleFun: MouseEventHandler<HTMLButtonElement>;
4
+ }
5
+ export type LinkTarget = "_self" | "_blank" | null;
6
+ export type LinkType = "url" | "story" | "asset" | "email";
7
+ export declare interface LinkAttributes {
8
+ href: string;
9
+ uuid: string | null;
10
+ target: LinkTarget;
11
+ linktype: LinkType;
12
+ }
@@ -0,0 +1,5 @@
1
+ import { FC } from "react";
2
+ import './Login.css';
3
+ import { LoginModelProps } from "./Login.types";
4
+ declare const LoginModal: FC<LoginModelProps>;
5
+ export default LoginModal;
@@ -0,0 +1 @@
1
+ export { default } from './LoginModal';
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ export interface RichTextSchema {
3
+ content: Array<Object>;
4
+ isIFrame?: boolean;
5
+ trackngLabel?: string;
6
+ }
7
+ declare const RichText: React.FunctionComponent<RichTextSchema>;
8
+ export default RichText;
@@ -0,0 +1,11 @@
1
+ import { FC } from "react";
2
+ import { ComponentWithContentProps, FalconBackgroundColor, FalconGradientTypes, GenericSBProps } from "../types";
3
+ export interface SpacerSchema extends GenericSBProps {
4
+ height: number;
5
+ mobHeight: number;
6
+ backgroundColor: FalconBackgroundColor;
7
+ gradientBackground: FalconGradientTypes;
8
+ desktopHeight: number;
9
+ }
10
+ declare const Spacer: FC<ComponentWithContentProps<SpacerSchema | any>>;
11
+ export default Spacer;
@@ -0,0 +1,12 @@
1
+ import { MouseEventHandler } from "react";
2
+ export interface LoginModelProps {
3
+ toggleFun: MouseEventHandler<HTMLButtonElement>;
4
+ }
5
+ export type LinkTarget = "_self" | "_blank" | null;
6
+ export type LinkType = "url" | "story" | "asset" | "email";
7
+ export declare interface LinkAttributes {
8
+ href: string;
9
+ uuid: string | null;
10
+ target: LinkTarget;
11
+ linktype: LinkType;
12
+ }
@@ -0,0 +1,60 @@
1
+ export interface Link {
2
+ id: number;
3
+ slug: string;
4
+ name: string;
5
+ is_folder: boolean;
6
+ parent_id: number;
7
+ published: boolean;
8
+ path?: string;
9
+ position: number;
10
+ uuid: string;
11
+ is_startpage: boolean;
12
+ real_path: string;
13
+ alternates: LinkAlternate[];
14
+ }
15
+ export interface LinkAlternate {
16
+ path: string;
17
+ name?: string;
18
+ lang: string;
19
+ }
20
+ export type Links = {
21
+ [key: string]: Link;
22
+ };
23
+ export type HeadingVariants = "h1" | "h2" | "h3" | "h4";
24
+ export type FalconColorsTypes = "grey-600" | "grey-500" | "ice-white" | "grey-100" | "grey-400" | "none";
25
+ export type Alignment = "left" | "center" | "right";
26
+ export interface Asset {
27
+ id: number;
28
+ alt?: string;
29
+ name: string;
30
+ focus?: string;
31
+ title?: string;
32
+ filename: string;
33
+ copyright?: string;
34
+ fieldtype: "asset";
35
+ }
36
+ export interface NativeColorPicker {
37
+ color: string;
38
+ plugin: string;
39
+ _uid: string;
40
+ }
41
+ export interface GenericSBProps {
42
+ _uid: string;
43
+ component: string;
44
+ }
45
+ export interface ComponentMetadata {
46
+ lang: string;
47
+ title: string;
48
+ activePath: string;
49
+ links: Links;
50
+ locale: string;
51
+ storyId: string;
52
+ appId?: string;
53
+ integrationId?: string;
54
+ }
55
+ export type FalconBackgroundColor = 'grey-100' | 'ice-white' | 'transparent';
56
+ export type FalconGradientTypes = 'rubyglow-diagonal' | 'rubyglow-vertical' | 'pinksky-diagonal' | 'pinksky-vertical' | 'bluehaze-diagonal' | 'bluehaze-vertical' | 'greencloud-diagonal' | 'greencloud-vertical' | 'peachfog-diagonal' | 'peachfog-vertical' | 'darkblue-haze' | 'none';
57
+ export interface ComponentWithContentProps<T extends GenericSBProps = GenericSBProps> {
58
+ content: T;
59
+ metadata?: ComponentMetadata | undefined;
60
+ }
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ export * from './services';
@@ -0,0 +1,2 @@
1
+ import e,{useState as n,useEffect as t,useRef as l,useContext as r,useMemo as i}from"react";import{CMSStoryblokServiceV2 as a}from"@sunrise-upc/ajax-lib";import o from"react-bootstrap/Modal";import c from"react-bootstrap/CloseButton";import{render as d}from"storyblok-rich-text-react-renderer-ts";import s from"react-bootstrap/Container";import m from"react-bootstrap/Row";import u from"react-bootstrap/Col";import{Modal as p,CloseButton as v,Accordion as b}from"react-bootstrap";import g from"react-multi-carousel";function h(e,n){void 0===n&&(n={});var t=n.insertAt;if(e&&"undefined"!=typeof document){var l=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css","top"===t&&l.firstChild?l.insertBefore(r,l.firstChild):l.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}}h(".Button {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 4px;\r\n cursor: pointer;\r\n min-width: 32px;\r\n min-height: 32px;\r\n background-color: aliceblue;\r\n}\r\n\r\n.Button-primary {\r\n background-color: aqua; \r\n}\r\n.Button-secondary{\r\n background-color: burlywood;\r\n}\r\n.Button-error {\r\n background-color: red;\r\n}");class f{constructor(e){this.config={baseURL:""},this.getConfig=()=>this.config,this.getBaseUrl=()=>{var e,n;return null!==(n=null===(e=this.config)||void 0===e?void 0:e.baseURL)&&void 0!==n?n:""},this.config=e}}f.getInstance=()=>f.instance,f.create=e=>{f.instance=new f(e)};const x=({type:n,text:t,onClick:l,content:r})=>e.createElement("button",{type:"button",className:`button Button-${null==r?void 0:r.type}`,onClick:l},null==r?void 0:r.text);h(".loginModal {\r\n\talign-items: center;\r\n\tbackground-color: rgba(87, 84, 82, 0.4);\r\n\tcolor: #333333;\r\n\tdisplay: flex;\r\n\theight: 100%;\r\n\tjustify-content: center;\r\n\tleft: 0;\r\n\tpadding: 16px;\r\n\tposition: fixed;\r\n\ttop: 0;\r\n\ttransition: opacity 3s;\r\n\twidth: 100%;\r\n\tz-index: 11;\r\n}\r\n.loginContainer {\r\n position: absolute;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n padding: 32px 32px 34px;\r\n background-color: #ffff;\r\n max-width: 500px;\r\n width: 100%;\r\n box-shadow: -1px 18px 25px 5px rgba(87, 84, 82, 0.4);\r\n }\r\n");const y=({toggleFun:t})=>(n(!1),e.createElement("div",{className:"loginModal"},e.createElement("div",{className:"w-100 h-100 d-flex position-relative justify-content-center align-items-center"},e.createElement("div",{className:"loginContainer"},"Hi Angles Kathirvel",e.createElement("button",{onClick:t},"Close")))));h('@import "bootstrap/dist/css/bootstrap.linetable-countryOverlay-css";\r\n\r\n.linetable-countryOverlay-linkTextNew {\r\n color: #da291c;\r\n margin-left: 32px;\r\n margin-bottom: 4px;\r\n text-decoration: underline;\r\n cursor: pointer;\r\n font-size: 16px;\r\n line-height: 24px;\r\n}\r\n\r\n.linetable-countryOverlay-utils-noWrap {\r\n white-space: nowrap;\r\n}\r\n\r\n.linetable-countryOverlay-utils-colWidth {\r\n max-width: 210px;\r\n}\r\n\r\n.linetable-countryOverlay-contain {\r\n display: flex;\r\n align-items: first baseline;\r\n padding-top: 10px;\r\n}\r\n\r\n.linetable-countryOverlay-image {\r\n width: 24px;\r\n height: 16px;\r\n}\r\n\r\n.linetable-countryOverlay-name {\r\n color: #000000;\r\n align-items: center;\r\n padding-left: 16px;\r\n font-style: normal;\r\n font-weight: 400;\r\n font-size: 14px;\r\n line-height: 32px;\r\n}\r\n.linetable-countryOverlay-blackthemecolor {\r\n color: #ffffff !important;\r\n}\r\n\r\n.linetable-countryOverlay-desktopView {\r\n display: block;\r\n}\r\n.linetable-countryOverlay-mobView {\r\n display: none;\r\n}\r\n@media (max-width: 767px) {\r\n .linetable-countryOverlay-linkTextNew {\r\n font-size: 14px;\r\n line-height: 24px;\r\n }\r\n}\r\n\r\n@media (min-width: 1440px) {\r\n .linetable-countryOverlay-desktopView {\r\n display: block;\r\n }\r\n .linetable-countryOverlay-mobView {\r\n display: none;\r\n }\r\n}\r\n@media (max-width: 1023px) {\r\n .linetable-countryOverlay-desktopView {\r\n display: none;\r\n }\r\n .linetable-countryOverlay-mobView {\r\n display: block;\r\n width: 100%;\r\n }\r\n}\r\n');const E=e=>{switch(e){case"grey-600":return"falcon-grey-600";case"grey-500":return"falcon-grey-500";case"grey-100":return"falcon-grey-100";case"grey-400":return"falcon-grey-400";case"ice-white":return"falcon-ice-white";default:return""}},w=(e,n)=>{const t=[];let l,r,i=0;[...Array(n)].forEach((()=>{r=document.getElementById(`${e}${i}`),null!=r&&(r.style.height="unset",t.push(null==r?void 0:r.clientHeight),i++)})),l=Math.max(...t),i=0,[...Array(n)].forEach((()=>{r=document.getElementById(`${e}${i}`),null!=r&&(r.style.height=`${l}px`),i++}))},k=e=>{const n=localStorage.getItem(e),t=new Date;if(!n)return null;let l={};try{if(l=JSON.parse(n),l.expiry&&t.getTime()>l.expiry)return C(e),null}catch(e){return n}return null==l?void 0:l.value},C=e=>{localStorage.removeItem(e)},N="none";h(".dbold {\r\n font-weight: 500;\r\n font-size: 40px;\r\n line-height: 60px;\r\n}\r\n");const T=({content:n})=>{var t;const l=E((null==n?void 0:n.textColor)&&n.textColor),r=(null==n?void 0:n.textColor)&&n.textColor!=N?l:"",i=(null==n?void 0:n.textColor)&&n.textColor===N?{color:null===(t=n.textColorPicker)||void 0===t?void 0:t.color}:{};return e.createElement(e.Fragment,null,n.headingStyle&&n.text&&"h1"===n.headingStyle?e.createElement("h1",{className:r,style:Object.assign({},i)},n.text," "):"h2"===n.headingStyle?e.createElement("h2",{className:`${r}`,style:Object.assign({},i)},n.text):"h3"===n.headingStyle?e.createElement("h3",{className:r,style:Object.assign({},i)},n.text):"h4"===n.headingStyle?e.createElement("h4",{className:r,style:Object.assign({},i)},n.text):e.createElement("div",{className:"dbold",style:Object.assign({},i)},n.text))},P=n=>e.createElement("div",null,d(n.content,{markResolvers:{link:(t,l)=>{const{href:r,target:i,linktype:a}=l;return"email"===a?e.createElement("a",{href:`mailto:${r}`,target:null===i||"_self"===i?"_top":"_blank"},t):n.isIFrame?e.createElement("a",{href:r,target:null===i||"_self"===i?"_top":"_blank"},t):e.createElement("a",{href:r,target:null===i?"":i},t)}}})),O=({content:n})=>{var t;const l=E(n.textColor);return e.createElement(e.Fragment,null,e.createElement("div",{className:`d-inline-flex align-${n.textElementPosition}`},n.icon&&n.icon.filename&&e.createElement("img",{src:n.icon&&n.icon.filename,alt:n.icon&&n.icon.alt,title:n.icon&&n.icon.title,height:24,width:24}),n.text&&e.createElement("div",{className:`${n.icon&&n.icon.filename} ${n.textColor&&n.textColor!=N?l:""}`,style:Object.assign({},n.textColor&&n.textColor===N?{color:null===(t=n.textColorPicker)||void 0===t?void 0:t.color}:{})},e.createElement(P,{content:n.text}))))};h(".linetable-country-overlayModal {\r\n max-width: 900px;\r\n padding: 1rem 2rem;\r\n}\r\n");const D=({children:l,modalState:r,handler:i,noCloseButton:a,showBackBtn:d,overlay:s})=>{const[m,u]=n(),[p,v]=n();return t((()=>{s.map((e=>{var n;null===(n=null==e?void 0:e.content)||void 0===n||n.body.map((e=>{"falconTitle"==(null==e?void 0:e.component)&&u(e),"falconDescription"==(null==e?void 0:e.component)&&v(e)}))}))}),[s]),e.createElement(e.Fragment,null,e.createElement(o,{centered:!0,show:r,onHide:i,keyboard:!1,dialogClassName:"linetable-country-overlayModal"},e.createElement(o.Header,null,e.createElement("div",{style:{display:a?"none":""}},e.createElement("div",{className:"d-flex align-items-center"},d&&e.createElement("div",{className:"me-sm-4 me-3 d-flex align-items-center",onClick:i},e.createElement("img",{src:"../../icons/left_arrow.svg"})),m&&e.createElement(T,{content:m}))),e.createElement("div",{style:{display:a?"none":""}},e.createElement(c,{className:"sr-modal-close",onClick:i}))),e.createElement(o.Body,null,l),e.createElement(o.Footer,null,p&&e.createElement(O,{content:p}))))};h(".linetable-dotLoader-loaderParent {\r\n width: 100%;\r\n position: fixed;\r\n z-index: 3;\r\n top: 0;\r\n left: 0;\r\n bottom: 0;\r\n right: 0;\r\n background-color: rgba(255, 255, 255, 0.8);\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n.linetable-dotLoader-dotClass {\r\n justify-content: center;\r\n display: flex;\r\n z-index: 1;\r\n}\r\n.linetable-dotLoader-dotContent {\r\n display: flex;\r\n justify-content: center;\r\n animation: contentplay 2s linear 0s infinite;\r\n}\r\n@keyframes dotplay {\r\n 0%,\r\n 20% {\r\n transform: translateY(0);\r\n }\r\n 10% {\r\n transform: translateY(-20px);\r\n }\r\n}\r\n.linetable-dotLoader-dots:nth-child(1) {\r\n animation-delay: 0.4s;\r\n}\r\n.linetable-dotLoader-dots:nth-child(2) {\r\n animation-delay: 0.8s;\r\n}\r\n.linetable-dotLoader-dots:nth-child(3) {\r\n animation-delay: 1.2s;\r\n}\r\n.linetable-dotLoader-dots:nth-child(4) {\r\n animation-delay: 1.6s;\r\n}\r\n.linetable-dotLoader-dots {\r\n margin: 5px 2px;\r\n width: 12px;\r\n height: 12px;\r\n border-radius: 50%;\r\n background: linear-gradient(180deg, #e2271e 0%, #ef7c3c 100%);\r\n animation: dotplay 2s linear 0s infinite;\r\n}\r\n@keyframes contentplay {\r\n 0% {\r\n opacity: 0.2;\r\n }\r\n 30% {\r\n opacity: 1;\r\n }\r\n}\r\n");const F=({keyParams:l})=>{const[r,i]=n(0),[a,o]=n({}),c={checkout:[null==a?void 0:a.uspFreeShipping,null==a?void 0:a.uspBestService,null==a?void 0:a.uspCheckout],loading:[null==a?void 0:a.loading]},d=l?c[`${l}`]:c.checkout;return t((()=>{o(k("sbstaticcontent"))}),[]),t((()=>{let e=d.length-1;i(e);const n=setInterval((()=>{i(e--),e<0&&(e=d.length-1)}),2e3);return()=>{clearTimeout(n)}}),[]),e.createElement("div",{className:"d-flex align-items-center justify-content-center linetable-dotLoader-loaderParent"},e.createElement("div",{className:"linetable-dotLoader-dotClass"},e.createElement("div",{className:"linetable-dotLoader-dots"}),e.createElement("div",{className:"linetable-dotLoader-dots"}),e.createElement("div",{className:"linetable-dotLoader-dots"}),e.createElement("div",{className:"linetable-dotLoader-dots"})),e.createElement("div",null,e.createElement("h4",{className:"linetable-dotLoader-dotContent"},d[r]," ")))};function A(e,n,t,l){return new(t||(t=Promise))((function(r,i){function a(e){try{c(l.next(e))}catch(e){i(e)}}function o(e){try{c(l.throw(e))}catch(e){i(e)}}function c(e){var n;e.done?r(e.value):(n=e.value,n instanceof t?n:new t((function(e){e(n)}))).then(a,o)}c((l=l.apply(e,n||[])).next())}))}const S=(e,n,t,l)=>A(void 0,void 0,void 0,(function*(){var r;const i=k(`${e}_${n}_countryData`);if(i)return i;try{const i={language:n,type:"B2C"},o=null===(r=(yield a.get(t,i)).data)||void 0===r?void 0:r.stories;return o&&o.length>0&&((e,n,t)=>{let l=null;const r=new Date;l={value:n,expiry:t?r.getTime()+t:null},localStorage.setItem(e,JSON.stringify(l))})(`${e}_${n}_countryData`,o,l),o}catch(e){return console.error(e),e}})),$=({linkText:l,product:r,metadata:i,modalTriggered:a})=>{var o,c,d;const[p,v]=n(!1),[b,g]=n([]),[h,x]=n(!0),[y,E]=n(),[w,k]=n([]),C=null!==(d=null===(c=null===(o=null==r?void 0:r.testProductReference)||void 0===o?void 0:o[0])||void 0===c?void 0:c.reference)&&void 0!==d?d:null==r?void 0:r.reference;let N;t((()=>{b&&b.length>0&&b.map((e=>{var n;null===(n=null==e?void 0:e.content)||void 0===n||n.body.map((e=>{"countryListComponent"==(null==e?void 0:e.component)&&k(null==e?void 0:e.countryValues)}))}))}),[b]),t((()=>{(null==w?void 0:w.length)>0&&(N=w.length,E(Math.ceil(N/3)))}),[w]);return e.createElement(e.Fragment,null,e.createElement(D,{modalState:p,handler:()=>{v(!1),"function"==typeof a&&a()},overlay:b},h&&e.createElement(F,{keyParams:"loading"}),!h&&e.createElement(e.Fragment,null,e.createElement(s,{className:"linetable-countryOverlay-desktopView"},e.createElement("div",null,e.createElement(m,{className:"linetable-countryOverlay-utils-noWrap"},e.createElement(u,{className:"linetable-countryOverlay-utils-colWidth"},e.createElement(m,null,w.slice(0,y).map(((n,t)=>e.createElement("div",{className:"linetable-countryOverlay-contain",key:n.name?n.name:t},e.createElement("div",null,e.createElement("img",{src:n.icon.filename,alt:"",className:"linetable-countryOverlay-image"})),e.createElement("div",{className:"linetable-countryOverlay-name"},n.name)))))),e.createElement(u,{className:"linetable-countryOverlay-utils-colWidth"},e.createElement(m,null,w.slice(y,2*y).map(((n,t)=>e.createElement("div",{className:"linetable-countryOverlay-contain",key:n.name?n.name:t},e.createElement("div",null,e.createElement("img",{src:n.icon.filename,alt:"",className:"linetable-countryOverlay-image"})),e.createElement("div",{className:"linetable-countryOverlay-name"},n.name)))))),e.createElement(u,{className:"linetable-countryOverlay-utils-colWidth"},e.createElement(m,null,w.slice(2*y,3*y).map(((n,t)=>e.createElement("div",{className:"linetable-countryOverlay-contain",key:n.name?n.name:t},e.createElement("div",null,e.createElement("img",{src:n.icon.filename,alt:"",className:"linetable-countryOverlay-image"})),e.createElement("div",{className:"linetable-countryOverlay-name"},n.name))))))))),e.createElement(s,{className:"linetable-countryOverlay-mobView"},e.createElement(m,null,e.createElement(u,null,e.createElement(m,null,w.map(((n,t)=>e.createElement("div",{className:"linetable-countryOverlay-contain",key:n.name?n.name:t},e.createElement("div",null,e.createElement("img",{src:n.icon.filename,alt:"",className:"linetable-countryOverlay-image"})),e.createElement("div",{className:"linetable-countryOverlay-name"},n.name)))))))))),e.createElement("span",{onClick:()=>{var e,n,t,l,r,o;v(!p),"function"==typeof a&&a();const c=null===(r=null===(l=null===(t=null===(n=null===(e=null==C?void 0:C.content)||void 0===e?void 0:e.body)||void 0===n?void 0:n[0])||void 0===t?void 0:t.countryList)||void 0===l?void 0:l.cached_url)||void 0===r?void 0:r.replace(null==i?void 0:i.lang,""),d=null==c?void 0:c.replace("//",""),s=`${null===(o=null==f?void 0:f.getInstance())||void 0===o?void 0:o.getBaseUrl()}rest/cms/stories/?by_slugs=${d}`,m=null==C?void 0:C.name;S(m,null==i?void 0:i.lang,s,864e5).then((e=>{e&&e.length>0&&g(e),x(!1)}))},className:"linetable-countryOverlay-linkTextNew display-5"},l))};h(".linetable-CardEntitlement-mobileProductEntitlement {\r\n margin: 0;\r\n padding: 0 16px 0 16px;\r\n}\r\n.linetable-CardEntitlement-entitlementValue {\r\n display: flex;\r\n margin-bottom: 4px;\r\n align-items: center;\r\n font-size: 16px;\r\n}\r\n.linetable-CardEntitlement-entitlementIcon {\r\n align-self: flex-start;\r\n margin-right: 8px;\r\n}\r\n\r\n.linetable-CardEntitlement-entitlementIcon img {\r\n vertical-align: sub;\r\n}\r\n.linetable-CardEntitlement-animationTitle {\r\n font-size: 16px;\r\n line-height: 24px;\r\n color: #3d3935;\r\n font-weight: 700;\r\n margin-bottom: auto;\r\n}\r\n.linetable-CardEntitlement-entitlementContent {\r\n display: inline-flex;\r\n margin-bottom: 16px;\r\n}\r\n.linetable-CardEntitlement-entitlementDescription {\r\n color: #3d3935;\r\n margin-left: 32px;\r\n margin-bottom: 4px;\r\n font-size: 16px;\r\n font-weight: 500;\r\n width: calc(100% - 32px);\r\n}\r\n");const z=e.createContext({indexKey:0,listLength:0,arrowUpIcon:"",arrowDownIcon:"",arrowLeftRed:""}),L=({content:n,product:i,indexKey:a,showEntitleValue:o,metadata:c,modalTriggered:d})=>{var s,m,u,p;const v=l(null),b=r(z),g=()=>{w(`linetable-CardEntitlement-entitlementSection${b.indexKey}`,b.listLength)};return t((()=>{setTimeout((()=>{(null==v?void 0:v.current)&&g()}),200),window.addEventListener("resize",g)}),[n]),e.createElement("div",{className:"linetable-CardEntitlement-mobileProductEntitlement",id:`linetable-CardEntitlement-entitlementSection${b.indexKey}${a}`,ref:v},e.createElement("div",{className:"row linetable-CardEntitlement-entitlementContent"},e.createElement("div",{className:"linetable-CardEntitlement-entitlementValue "},e.createElement(e.Fragment,null,(null==n?void 0:n.isblacktheme)?e.createElement(e.Fragment,null,(null===(s=null==n?void 0:n.blackFridayentitlementIcon)||void 0===s?void 0:s.filename)&&e.createElement("div",{className:"linetable-CardEntitlement-entitlementIcon"},e.createElement("img",{src:null===(m=null==n?void 0:n.blackFridayentitlementIcon)||void 0===m?void 0:m.filename,width:20,height:20}))):e.createElement(e.Fragment,null,(null===(u=null==n?void 0:n.entitlementIcon)||void 0===u?void 0:u.filename)&&e.createElement("div",{className:"linetable-CardEntitlement-entitlementIcon"},e.createElement("img",{src:null===(p=null==n?void 0:n.entitlementIcon)||void 0===p?void 0:p.filename,width:20,height:20}))),e.createElement("span",{className:"linetable-CardEntitlement-animationTitle entitlementDisplay"},null==n?void 0:n.entitlementName))),e.createElement("div",{className:"d-block"},n.entitlementDescription&&o&&e.createElement("div",{className:"linetable-CardEntitlement-entitlementDescription"},null==n?void 0:n.entitlementDescription),(null==n?void 0:n.linkText)&&e.createElement($,{product:i,linkText:null==n?void 0:n.linkText,metadata:c,modalTriggered:d}))))};h(".linetable-card-linetable-card-flexGrid {\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n.linetable-card-productContainer {\r\n background-color: #fff;\r\n padding: 24px 0 16px;\r\n text-align: left;\r\n height: 100%;\r\n border-radius: 8px;\r\n}\r\n.linetable-card-productContainer hr {\r\n margin: 16px;\r\n}\r\n.linetable-card-introText {\r\n padding-left: 16px;\r\n padding-right: 16px;\r\n font-size: 16px;\r\n line-height: 24px;\r\n font-weight: 500;\r\n color: #587467;\r\n}\r\n.linetable-card-productTeaser {\r\n background-color: #fff;\r\n border-radius: 8px;\r\n height: 100%;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n box-shadow: 0px 4px 12px 0px #57545233;\r\n}\r\n.linetable-card-prodHeading {\r\n font-size: 14px;\r\n line-height: 20px;\r\n color: #606060;\r\n font-weight: bold;\r\n margin-bottom: 4px;\r\n}\r\n.linetable-card-titleContainer {\r\n padding-left: 16px;\r\n padding-right: 16px;\r\n}\r\n.linetable-card-productTitle {\r\n color: #1e1e1e;\r\n font-weight: bold;\r\n margin-bottom: 4px;\r\n display: flex;\r\n align-items: baseline;\r\n justify-content: space-between;\r\n}\r\n.linetable-card-productTitle > h1,\r\n.linetable-card-productTitle > h2,\r\n.linetable-card-productTitle > h3,\r\n.linetable-card-productTitle > h4,\r\n.linetable-card-productTitle > h5,\r\n.linetable-card-productTitle > h6 {\r\n color: #1e1e1e !important;\r\n}\r\n.linetable-card-productTitle > h3 {\r\n font-size: 24px;\r\n line-height: 32px;\r\n}\r\n.linetable-card-productTitle > h2 {\r\n margin-right: 8px;\r\n}\r\n.linetable-card-prodDescription {\r\n font-size: 16px;\r\n line-height: 24px;\r\n color: #333333;\r\n display: flex;\r\n font-weight: 400;\r\n}\r\n\r\n@media (max-width: 767px) {\r\n .linetable-card-productTitle {\r\n height: auto;\r\n }\r\n}\r\n\r\n.linetable-card-productDetailSection{\r\n margin: 0 16px;\r\n}\r\n.linetable-card-productDetailSection img {\r\n vertical-align: bottom;\r\n margin-right: 8px;\r\n}");const B=({modalState:n,handler:l,showFooter:i,footerNode:a,children:o,width:c,height:d,noCloseButton:s,backButton:m})=>{const u=r(z);return t((()=>{const e=document.querySelector(".linetable-product-modal .footer-main");e&&(e.style.zIndex="10");const n=document&&document.querySelector(".modal-dialog.linetable-product-modal");n&&(n.style.maxWidth=c,n.style.padding="0",n.style.transform="none");const t=document.querySelector(".linetable-product-modal .modal-content");t&&(t.style.height=d,t.style.backgroundColor="#F7F6F5");const l=document.querySelector(".linetable-product-modal .modal-header");l&&(l.style.position="absolute",l.style.top="0",l.style.zIndex="1",l.style.maxWidth="100%",l.style.background="#f8f8f8",l.style.width="100%");const r=document.querySelector(".linetable-product-modal .modal-body");r&&(r.style.background="#f8f8f8",r.style.paddingTop="70px")}),[d]),e.createElement(p,{scrollable:!1,show:n,onHide:l,keyboard:!1,dialogClassName:"linetable-product-modal"},e.createElement(p.Header,null,m&&e.createElement("div",{style:{justifyContent:"start",cursor:"pointer"},onClick:l},e.createElement(e.Fragment,null,(null==u?void 0:u.arrowLeftRed)&&e.createElement("img",{src:null==u?void 0:u.arrowLeftRed,width:24,height:24}),e.createElement("span",{style:{color:"#DA291C"}}," ",m))),e.createElement("div",{style:{display:s?"none":"",justifyContent:"end"}},e.createElement(v,{className:"sr-modal-close",onClick:l}))),e.createElement(p.Body,null,o),i&&e.createElement(p.Footer,null,a))};h(".linetable-sr-def-row {\r\n margin-left: auto;\r\n margin-right: auto;\r\n padding-left: 16px;\r\n padding-right: 16px;\r\n max-width: 1308px;\r\n width: 100%;\r\n}\r\n\r\n@media (min-width: 1024px) and (max-width: 1439px) {\r\n .linetable-sr-def-row {\r\n max-width: 972px;\r\n }\r\n}\r\n\r\n@media (min-width: 768px) and (max-width: 1023px) {\r\n .linetable-sr-def-row {\r\n max-width: 720px;\r\n }\r\n}\r\n\r\n@media (max-width: 767px) {\r\n .linetable-sr-def-row {\r\n max-width: 972px;\r\n }\r\n}\r\n\r\n.linetable-sr-def-row .linetable-sr-def-row {\r\n padding: 0px;\r\n max-width: 100%;\r\n}");const I=({children:n})=>e.createElement("div",{className:"linetable-sr-def-row linetable-sr-responsive-row"},n);h(".linetable-falconAccordion-section {\r\n text-align: center;\r\n}\r\n\r\n.linetable-falconAccordion-description {\r\n color: #3d3935;\r\n padding-bottom: 32px;\r\n text-align: center;\r\n}\r\n\r\n.linetable-falconAccordion-description p a {\r\n color: #da291c;\r\n}\r\n\r\n.linetable-falconAccordion-container {\r\n box-shadow: 0 2px 4px rgba(87, 84, 82, 0.2);\r\n border-radius: 8px;\r\n overflow: hidden;\r\n padding: 0;\r\n}\r\n\r\n.linetable-falconAccordion-current-item {\r\n overflow: hidden;\r\n}\r\n\r\n.linetable-falconAccordion-current-item:first-child {\r\n border-radius: 8px 8px 0 0;\r\n overflow: hidden;\r\n}\r\n\r\n.linetable-falconAccordion-current-item:last-child {\r\n border-bottom: none;\r\n border-radius: 0 0 8px 8px;\r\n overflow: hidden;\r\n}\r\n\r\n.linetable-falconAccordion-item:hover {\r\n background-color: #f7f6f5;\r\n}\r\n\r\n.linetable-falconAccordion-wrapper {\r\n margin-left: 32px;\r\n margin-right: 32px;\r\n border-bottom: 1px solid #e6e3df;\r\n}\r\n\r\n.linetable-falconAccordion-title {\r\n color: #3d3935;\r\n font-style: normal;\r\n font-weight: bold;\r\n font-size: 16px;\r\n line-height: 24px;\r\n margin-right: 28px;\r\n min-height: 24px;\r\n}\r\n\r\n.accordion-flush .linetable-falconAccordion-item .accordion-button {\r\n padding: 24px 0;\r\n}\r\n\r\n.accordion-body {\r\n padding: 8px 0 32px 0;\r\n color: #3d3935;\r\n text-align: left;\r\n font-size: 16px;\r\n line-height: 24px;\r\n}\r\n\r\n.accordion-button::after {\r\n position: absolute;\r\n top: 24px;\r\n right: 0;\r\n background-image: url('../../icons/falcon-arrow-down.svg') !important;\r\n background-size: 24px 24px !important;\r\n background-size: unset;\r\n}\r\n\r\n.accordion-button:not(.collapsed)::after {\r\n background-image: url('../../icons/falcon-arrow-up.svg') !important;\r\n}\r\n\r\n.linetable-falconAccordion-disabled {\r\n opacity: 0.8;\r\n pointer-events: none;\r\n background-color: #e6e3df;\r\n}\r\n\r\n/* for mobile view */\r\n@media (max-width: 767px) {\r\n .description {\r\n padding-bottom: 24px;\r\n }\r\n\r\n .linetable-falconAccordion-item:hover {\r\n background-color: none;\r\n }\r\n\r\n .linetable-falconAccordion-wrapper {\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n }\r\n\r\n .accordion-flush .linetable-falconAccordion-item .accordion-button {\r\n padding: 16px 0;\r\n }\r\n\r\n .accordion-body {\r\n padding-bottom: 24px;\r\n }\r\n\r\n .accordion-button::after {\r\n top: 16px;\r\n }\r\n}\r\n\r\n/* For tablet view */\r\n@media (max-width: 1023px) {\r\n .linetable-falconAccordion-wrapper {\r\n margin-left: 24px;\r\n margin-right: 24px;\r\n }\r\n}");const j=({content:n})=>{const t=null==n?void 0:n._uid;return e.createElement("div",null,e.createElement(b,{flush:!0,defaultActiveKey:(null==n?void 0:n.alwaysOpen)?t:""},e.createElement(b.Item,{eventKey:t,className:`${(null==n?void 0:n.disabled)&&"linetable-falconAccordion-disabled"} linetable-falconAccordion-item`},e.createElement("div",{className:"linetable-falconAccordion-wrapper"},e.createElement(b.Header,null,e.createElement("span",{className:"linetable-falconAccordion-title"},null==n?void 0:n.title)),e.createElement(b.Body,null,(null==n?void 0:n.bodyText)&&e.createElement(P,{content:null==n?void 0:n.bodyText}))))))},V=({content:n})=>{var t,l,r,i,a,o,c;return e.createElement("section",{className:"linetable-falconAccordion-section"},e.createElement(I,null,e.createElement(e.Fragment,null,(null==n?void 0:n.title)&&(null===(t=null==n?void 0:n.title)||void 0===t?void 0:t.length)>0&&e.createElement(T,{content:null===(l=null==n?void 0:n.title)||void 0===l?void 0:l[0]}),(null==n?void 0:n.description)&&(null===(r=null==n?void 0:n.description)||void 0===r?void 0:r.length)>0&&e.createElement("div",{className:"linetable-falconAccordion-description"},e.createElement(O,{content:null===(i=null==n?void 0:n.description)||void 0===i?void 0:i[0]})),(null==n?void 0:n.accordions)&&(null===(a=null==n?void 0:n.accordions)||void 0===a?void 0:a.length)>0&&(null===(o=null==n?void 0:n.accordions[0])||void 0===o?void 0:o.title)&&e.createElement("div",{className:"linetable-falconAccordion-container"},null===(c=null==n?void 0:n.accordions)||void 0===c?void 0:c.map((n=>e.createElement("div",{tabIndex:0,key:null==n?void 0:n._uid,className:"linetable-falconAccordion-current-item"},e.createElement(j,{content:Object.assign({},n)}))))))))},_=({content:n})=>{const t=(e=>{switch(e){case"grey-100":return"falcon-background-grey-100";case"ice-white":return"falcon-background-ice-white";case"transparent":return"falcon-background-transparent";default:return""}})(null==n?void 0:n.backgroundColor),l=(e=>{switch(e){case"rubyglow-diagonal":return"falcon-gradient-rubyglow-diagonal";case"rubyglow-vertical":return"falcon-gradient-rubyglow-vertical";case"pinksky-diagonal":return"falcon-gradient-pinksky-diagonal";case"pinksky-vertical":return"falcon-gradient-pinksky-vertical";case"bluehaze-diagonal":return"falcon-gradient-bluehaze-diagonal";case"bluehaze-vertical":return"falcon-gradient-bluehaze-vertical";case"greencloud-diagonal":return"falcon-gradient-greencloud-diagonal";case"greencloud-vertical":return"falcon-gradient-greencloud-vertical";case"peachfog-diagonal":return"falcon-gradient-peachfog-diagonal";case"peachfog-vertical":return"falcon-gradient-peachfog-vertical";case"darkblue-haze":return"falcon-gradient-dark-blue-haze";default:return""}})(null==n?void 0:n.gradientBackground),r=(null==n?void 0:n.gradientBackground)===N?t:l;return e.createElement("div",null,n.height?e.createElement("div",{className:`d-none d-sm-block ${r}`,style:{height:`${n.height}px`}}):e.createElement("div",{className:`d-none d-sm-block ${r}`,style:{height:`${n.desktopHeight}px`}}),e.createElement("div",{className:`d-block d-sm-none ${r} `,style:{height:`${n.mobHeight}px`}}))};h(".linetable-productDetailsText {\r\n color: #da291c;\r\n text-decoration: underline;\r\n cursor: pointer;\r\n}");h('.linetable-staticPrice-priceWrapper {\r\n\tborder-radius: 8px;\r\n\tborder: 1px solid #E6E3DF;\r\n\tmargin: 16px 16px 0 16px;\r\n\tpadding: 8px 16px;\r\n\tfont-size: 14px;\r\n\tfont-weight: 400;\r\n\tline-height: 20px;\r\n}\r\n\r\n.linetable-staticPrice-discountPriceSection {\r\n\tcolor: #2E6199;\r\n\tmargin-right: 8px;\r\n}\r\n\r\n.linetable-staticPrice-discountedPrice {\r\n\tfont-size: 32px;\r\n\tfont-weight: 700;\r\n\tline-height: 40px;\r\n}\r\n\r\n.linetable-staticPrice-basePrice {\r\n\tfont-size: 20px;\r\n\tfont-weight: 700;\r\n\tline-height: 28px;\r\n\tposition: relative;\r\n\tdisplay: inline-block;\r\n}\r\n\r\n.linetable-staticPrice-priceStrikeout::after {\r\n\tcontent: "";\r\n\tposition: absolute;\r\n\tright: -1px;\r\n\tleft: -2px;\r\n\ttop: 50%;\r\n\twidth: 100%;\r\n\tborder-bottom: 2px solid #da291c;\r\n\ttransform: rotate(-18.22deg);\r\n}\r\n\r\n.linetable-staticPrice-noDiscountPrice {\r\n\tfont-size: 32px;\r\n\tfont-weight: 700;\r\n\tline-height: 40px;\r\n}\r\n\r\n.linetable-staticPrice-contractDescription {\r\n\tmargin-top: 6px;\r\n}\r\n\r\n.linetable-staticPrice-addToCart {\r\n\tmargin-top: 8px;\r\n\twidth: 100%;\r\n\tpadding: 10px 24px;\r\n\tborder-radius: 25px;\r\n\tbackground: #DA291C;\r\n\tcolor: #FFFFFF;\r\n\tfont-size: 16px;\r\n\tfont-weight: 700;\r\n\tline-height: 24px;\r\n\tborder: 0px;\r\n}\r\n\r\n.linetable-staticPrice-productDetails-priceWrapper {\r\n\tdisplay: flex;\r\n\tjustify-content: space-between;\r\n}\r\n\r\n@media (min-width: 425px) {\r\n\t.linetable-staticPrice-productDetails-addToCart {\r\n\t\tmin-width: 120px;\r\n\t}\r\n}');const R=({content:n,addToCart:t,variant:l})=>e.createElement("div",{className:`linetable-staticPrice-priceWrapper ${"productDetails"===l&&"linetable-staticPrice-productDetails-priceWrapper"}`},e.createElement("div",null,e.createElement("div",{className:"linetable-staticPrice-priceSection"},(null==n?void 0:n.isEnableDiscountPrice)&&e.createElement("span",{className:"linetable-staticPrice-discountPriceSection"},e.createElement("span",{className:"linetable-staticPrice-discountedPrice"},null==n?void 0:n.discountPriceValue),null==n?void 0:n.priceDuration),e.createElement("span",null,e.createElement("span",{className:"linetable-staticPrice-basePrice "+((null==n?void 0:n.isEnableDiscountPrice)?"linetable-staticPrice-priceStrikeout":"linetable-staticPrice-noDiscountPrice")},(e=>{e=Number(e);let n=0;return n=new RegExp("^[0-9][^.]*$").test(e.toString())?e+".-":e.toFixed(2).replace(/\.00$/,""),n})(null==n?void 0:n.priceValue)),!(null==n?void 0:n.isEnableDiscountPrice)&&e.createElement(e.Fragment,null,null==n?void 0:n.priceDuration))),e.createElement("div",{className:"linetable-staticPrice-contractDescription"},null==n?void 0:n.contractDescription)),e.createElement("div",null,e.createElement("button",{className:`linetable-staticPrice-addToCart ${"productDetails"===l&&"linetable-staticPrice-productDetails-addToCart"}`,onClick:()=>t(null==n?void 0:n.productId)},null==n?void 0:n.addButton))),W=({content:t,updatedContent:l,modalTriggered:r,addToCart:i})=>{var a;const[o,c]=n(!1),d=null==t?void 0:t.subscriptionDetailModal;let s=[],m="";d&&(null==d?void 0:d.length)>0&&(null==d||d.map((e=>{s=null==e?void 0:e.modalBody,null==e||e.productPriceVariant,m=null==e?void 0:e.backButton,null==e||e.priceChangeContent})));const u=()=>{c(!o),"function"==typeof r&&r()};return e.createElement(e.Fragment,null,o&&e.createElement(B,{modalState:o,handler:u,showFooter:!1,height:"100%",width:"883px",backButton:m},e.createElement(e.Fragment,null,null==s?void 0:s.map(((n,t)=>e.createElement(I,null,e.createElement(e.Fragment,null,"falconDescription"===(null==n?void 0:n.component)&&e.createElement(O,{content:n,key:t}),"spacer"===(null==n?void 0:n.component)&&e.createElement(_,{content:n}),"falconAccordionList"===(null==n?void 0:n.component)&&e.createElement(V,{content:n}))))),(null==t?void 0:t.isEnablePrice)&&e.createElement(R,{content:t,addToCart:i,variant:"productDetails"}))),e.createElement("span",{onClick:u,className:"linetable-productDetailsText"},null!==(a=null==l?void 0:l.subscription)&&void 0!==a?a:null==l?void 0:l.subscriptionText))},H=({content:n,updatedContent:r,indexKey:a,listLength:o,addToCart:c,metadata:d,modalTriggered:s})=>{var m,u,p,v,b,g,h,f,x,y,E,k,C,N,T,O,D,F,A,S,$,B,I,j,V,_,H,K,M,U,q,G,J,Y,Q,X,Z,ee,ne,te,le,re,ie,ae,oe,ce,de,se,me,ue;const pe=Object.assign({},null!==(p=null===(u=null===(m=null==n?void 0:n.testProductReference)||void 0===m?void 0:m[0])||void 0===u?void 0:u.reference)&&void 0!==p?p:null==n?void 0:n.reference),ve={listLength:o,indexKey:a,arrowUpIcon:null===(h=null===(g=null===(b=null===(v=null==pe?void 0:pe.content)||void 0===v?void 0:v.body)||void 0===b?void 0:b[0])||void 0===g?void 0:g.arrowUp)||void 0===h?void 0:h.filename,arrowDownIcon:null===(E=null===(y=null===(x=null===(f=null==pe?void 0:pe.content)||void 0===f?void 0:f.body)||void 0===x?void 0:x[0])||void 0===y?void 0:y.arrowDown)||void 0===E?void 0:E.filename,arrowLeftRed:null===(T=null===(N=null===(C=null===(k=null==pe?void 0:pe.content)||void 0===k?void 0:k.body)||void 0===C?void 0:C[0])||void 0===N?void 0:N.arrowLeftRed)||void 0===T?void 0:T.filename},be=null!==(O=null==r?void 0:r.enableNewAddToCart)&&void 0!==O&&O,ge=l(null),he=l(null),fe=i((()=>ve),[ve]),xe=()=>{w("linetable-card-title",o),w("linetable-card-tooltiptxt",o)};return t((()=>{setTimeout((()=>{xe()}),100),null===window||void 0===window||window.addEventListener("resize",xe)}),[n]),e.createElement(z.Provider,{value:fe},e.createElement("div",{className:"linetable-card-productTeaser"},e.createElement("div",{className:"linetable-card-productContainer "},pe.content&&e.createElement(e.Fragment,null,e.createElement("div",{className:"linetable-card-titleContainer",id:`linetable-card-title${a}`,ref:ge},e.createElement("div",{className:"linetable-card-prodHeading"},null===(F=null===(D=null==pe?void 0:pe.content)||void 0===D?void 0:D.body[0])||void 0===F?void 0:F.name),e.createElement("div",{className:"linetable-card-productTitle"},e.createElement("h3",null,null===(S=null===(A=null==pe?void 0:pe.content)||void 0===A?void 0:A.body[0])||void 0===S?void 0:S.displayName),(null===(I=null===(B=null===($=null==pe?void 0:pe.content)||void 0===$?void 0:$.body[0])||void 0===B?void 0:B.prodImage)||void 0===I?void 0:I.filename)&&e.createElement("img",{src:null===(_=null===(V=null===(j=null==pe?void 0:pe.content)||void 0===j?void 0:j.body[0])||void 0===V?void 0:V.prodImage)||void 0===_?void 0:_.filename,height:15,width:20})),e.createElement("div",{className:"linetable-card-prodDescription"},e.createElement(P,{content:null===(K=null===(H=null==pe?void 0:pe.content)||void 0===H?void 0:H.body[0])||void 0===K?void 0:K.description}))),!(null==r?void 0:r.isPrepaidFlow)&&e.createElement("hr",null)),(null==pe?void 0:pe.content)&&(null===(U=null===(M=null==pe?void 0:pe.content)||void 0===M?void 0:M.body[0])||void 0===U?void 0:U.introText)&&e.createElement(e.Fragment,null,e.createElement("div",{className:""+(be?"d-block":"d-none d-sm-block")},e.createElement("div",{className:"linetable-card-introText",id:`linetable-card-tooltiptxt${a}`,ref:he},e.createElement(P,{content:null===(G=null===(q=null==pe?void 0:pe.content)||void 0===q?void 0:q.body[0])||void 0===G?void 0:G.introText})),e.createElement("hr",null))),null===(Q=(null===(Y=null===(J=null==pe?void 0:pe.content)||void 0===J?void 0:J.body[0])||void 0===Y?void 0:Y.entitlementConfig)||[])||void 0===Q?void 0:Q.map(((t,l)=>e.createElement(L,{content:t,product:n,key:l,indexKey:l,showEntitleValue:be,metadata:d,modalTriggered:s}))),e.createElement("hr",null),e.createElement("div",{className:"linetable-card-productDetailSection"},(null===(ne=null===(ee=null===(Z=null===(X=null==pe?void 0:pe.content)||void 0===X?void 0:X.body)||void 0===Z?void 0:Z[0])||void 0===ee?void 0:ee.productDetailIcon)||void 0===ne?void 0:ne.filename)&&e.createElement("img",{src:null===(ie=null===(re=null===(le=null===(te=null==pe?void 0:pe.content)||void 0===te?void 0:te.body)||void 0===le?void 0:le[0])||void 0===re?void 0:re.productDetailIcon)||void 0===ie?void 0:ie.filename,width:24,height:24}),e.createElement(W,{content:null===(oe=null===(ae=null==pe?void 0:pe.content)||void 0===ae?void 0:ae.body)||void 0===oe?void 0:oe[0],updatedContent:r,modalTriggered:s,addToCart:c})),e.createElement("div",null,(null===(se=null===(de=null===(ce=null==pe?void 0:pe.content)||void 0===ce?void 0:ce.body)||void 0===de?void 0:de[0])||void 0===se?void 0:se.isEnablePrice)&&e.createElement(R,{content:null===(ue=null===(me=null==pe?void 0:pe.content)||void 0===me?void 0:me.body)||void 0===ue?void 0:ue[0],addToCart:c,variant:"productCard"})))))},K=n=>e.createElement(e.Fragment,null,e.createElement(g,{responsive:{desktop:{breakpoint:{max:7e3,min:1440},items:4},tabletLarge:{breakpoint:{max:1439,min:1024},items:3},tabletMedium:{breakpoint:{max:1023,min:768},items:2},mobile:{breakpoint:{max:767,min:0},items:1}},deviceType:"desktop",ssr:!0,renderButtonGroupOutside:!0,partialVisible:!0,swipeable:!0,autoPlay:!1,shouldResetAutoplay:!1,arrows:!0},n.children),e.createElement("p",null,"compo"));export{x as Button,H as Card,L as CardEntitlement,K as CarouselComp,f as LineTableBasicPropConfig,y as LoginModal};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { LineTableBasicPropConfig } from "./LineTableBasicPropConfig";
2
+ export default class ButtonService {
3
+ funCompIntance: LineTableBasicPropConfig | undefined;
4
+ constructor();
5
+ displayBaseUrl: () => void;
6
+ }
@@ -0,0 +1,12 @@
1
+ export interface LineTableBasicPropConfigSchema {
2
+ baseURL: string | '';
3
+ }
4
+ export declare class LineTableBasicPropConfig {
5
+ private static instance;
6
+ config: LineTableBasicPropConfigSchema;
7
+ private constructor();
8
+ getConfig: () => LineTableBasicPropConfigSchema;
9
+ getBaseUrl: () => string;
10
+ static getInstance: () => LineTableBasicPropConfig;
11
+ static create: (p_config: LineTableBasicPropConfigSchema) => void;
12
+ }
@@ -0,0 +1 @@
1
+ export declare const fetchCountryList: (name: string, lang: string, url: string, TTL: number) => Promise<any>;
@@ -0,0 +1 @@
1
+ export declare const API_BASE_BASEPOINT: any;
@@ -0,0 +1 @@
1
+ export * from './LineTableBasicPropConfig';
@@ -0,0 +1,10 @@
1
+ export declare const H1 = "h1";
2
+ export declare const H2 = "h2";
3
+ export declare const H3 = "h3";
4
+ export declare const H4 = "h4";
5
+ export declare const NONE = "none";
6
+ export declare const FALCONDESCRIPTION = "falconDescription";
7
+ export declare const FALCONDESCRIPTIONLIST = "falconAccordionList";
8
+ export declare const SPACER = "spacer";
9
+ export declare const COUNTRYLISTCOMPONENT = "countryListComponent";
10
+ export declare const SBCONSTANT = "sbstaticcontent";
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ type ContextType = {
3
+ indexKey: number;
4
+ listLength: number;
5
+ arrowDownIcon: string;
6
+ arrowUpIcon: string;
7
+ arrowLeftRed: string;
8
+ };
9
+ declare const CardContext: React.Context<ContextType>;
10
+ export default CardContext;
@@ -0,0 +1,8 @@
1
+ export declare const getFalconColorsClass: (type: string) => string;
2
+ export declare const getElementMaximumHeight: (idPrefix: string, totalCards: number) => void;
3
+ export declare const getFalconBackgroundColorClass: (type: string) => string;
4
+ export declare const getFalconGradientClass: (type: string) => string;
5
+ export declare const countZero: (value: any) => any;
6
+ export declare const setLocalStoreWithExpiry: (key: string, value: any, ttl?: any) => void;
7
+ export declare const getLocalStorageWithExpiry: (key: string) => any;
8
+ export declare const removeLocalStorage: (key: string) => void;
@@ -0,0 +1,91 @@
1
+ import { MouseEventHandler, FC } from 'react';
2
+
3
+ interface ButtonProps {
4
+ type: 'primary' | 'secondary' | 'error';
5
+ text: string;
6
+ onClick: MouseEventHandler<HTMLButtonElement>;
7
+ content: ButtonContent | null;
8
+ }
9
+ interface ButtonContent {
10
+ text: string;
11
+ type: string;
12
+ }
13
+
14
+ declare const Button: FC<ButtonProps>;
15
+
16
+ interface LoginModelProps {
17
+ toggleFun: MouseEventHandler<HTMLButtonElement>;
18
+ }
19
+
20
+ declare const LoginModal: FC<LoginModelProps>;
21
+
22
+ interface Link {
23
+ id: number;
24
+ slug: string;
25
+ name: string;
26
+ is_folder: boolean;
27
+ parent_id: number;
28
+ published: boolean;
29
+ path?: string;
30
+ position: number;
31
+ uuid: string;
32
+ is_startpage: boolean;
33
+ real_path: string;
34
+ alternates: LinkAlternate[];
35
+ }
36
+ interface LinkAlternate {
37
+ path: string;
38
+ name?: string;
39
+ lang: string;
40
+ }
41
+ type Links = {
42
+ [key: string]: Link;
43
+ };
44
+ interface ComponentMetadata {
45
+ lang: string;
46
+ title: string;
47
+ activePath: string;
48
+ links: Links;
49
+ locale: string;
50
+ storyId: string;
51
+ appId?: string;
52
+ integrationId?: string;
53
+ }
54
+
55
+ interface CardSchema {
56
+ content: any;
57
+ updatedContent: any;
58
+ indexKey: number;
59
+ listLength: number;
60
+ addToCart?: (e: string) => void;
61
+ metadata?: ComponentMetadata | undefined;
62
+ modalTriggered?: () => void;
63
+ }
64
+ declare const Card: FC<CardSchema>;
65
+
66
+ interface CardEntitlementSchema {
67
+ content: any;
68
+ product: any;
69
+ indexKey: number;
70
+ showEntitleValue: boolean;
71
+ metadata: ComponentMetadata | undefined;
72
+ modalTriggered?: () => void;
73
+ }
74
+ declare const CardEntitlement: FC<CardEntitlementSchema>;
75
+
76
+ declare const CarouselComp: FC<any>;
77
+
78
+ interface LineTableBasicPropConfigSchema {
79
+ baseURL: string | '';
80
+ }
81
+ declare class LineTableBasicPropConfig {
82
+ private static instance;
83
+ config: LineTableBasicPropConfigSchema;
84
+ private constructor();
85
+ getConfig: () => LineTableBasicPropConfigSchema;
86
+ getBaseUrl: () => string;
87
+ static getInstance: () => LineTableBasicPropConfig;
88
+ static create: (p_config: LineTableBasicPropConfigSchema) => void;
89
+ }
90
+
91
+ export { Button, Card, CardEntitlement, CarouselComp, LineTableBasicPropConfig, LineTableBasicPropConfigSchema, LoginModal };
package/package.json ADDED
@@ -0,0 +1,64 @@
1
+ {
2
+ "name": "@sunrise-upc/mobile-prod-card",
3
+ "version": "1.0.3",
4
+ "description": "Starter project to create reusable functional component",
5
+ "main": "dist/cjs/index.js",
6
+ "module": "dist/esm/index.js",
7
+ "files": [
8
+ "dist",
9
+ "package.json"
10
+ ],
11
+ "typings": "dist/index.d.ts",
12
+ "scripts": {
13
+ "test": "echo \"Error: no test specified\" && exit 1",
14
+ "clean": "rimraf dist",
15
+ "build": "npm run clean && rollup -c",
16
+ "dev": "npm run clean && rollup -c -w",
17
+ "prepare": "npm run build",
18
+ "prepatch": "npm --no-git-tag-version version prepatch",
19
+ "release:major": "npm version major && npm publish --access public --tag latest",
20
+ "release:minor": "npm version minor && npm publish --access public --tag latest",
21
+ "release:patch": "npm version patch && npm publish --access public --tag latest"
22
+ },
23
+ "repository": {
24
+ "type": "git",
25
+ "url": "git+https://Angles_Kathirvel@bitbucket.org/sunrisedigitalbusiness/sunrise-b2c-mobile-prod-card.git"
26
+ },
27
+ "author": "Angles Kathirvel",
28
+ "license": "ISC",
29
+ "bugs": {
30
+ "url": "https://bitbucket.org/sunrisedigitalbusiness/fun-components-starter/issues"
31
+ },
32
+ "homepage": "https://bitbucket.org/sunrisedigitalbusiness/fun-components-starter#readme",
33
+ "devDependencies": {
34
+ "@rollup/plugin-commonjs": "^24.0.0",
35
+ "@rollup/plugin-json": "^6.0.0",
36
+ "@rollup/plugin-node-resolve": "^15.0.1",
37
+ "@rollup/plugin-terser": "^0.2.1",
38
+ "@rollup/plugin-typescript": "^10.0.1",
39
+ "@types/node": "^16.18.11",
40
+ "@types/react": "^18.0.26",
41
+ "@types/react-dom": "^18.0.10",
42
+ "axios": "^0.21.4",
43
+ "postcss": "8.4.21",
44
+ "rimraf": "^3.0.2",
45
+ "rollup": "^3.9.1",
46
+ "rollup-plugin-dts": "^5.1.0",
47
+ "rollup-plugin-peer-deps-external": "^2.2.4",
48
+ "rollup-plugin-postcss": "^4.0.2",
49
+ "rollup-plugin-scss": "^3.0.0",
50
+ "sass": "^1.57.1",
51
+ "semver": "^7.3.8",
52
+ "tslib": "^2.4.1",
53
+ "typescript": "^4.9.4",
54
+ "uuid": "^8.3.2"
55
+ },
56
+ "peerDependencies": {
57
+ "@sunrise-upc/ajax-lib": "^1.1.5",
58
+ "react": "^17.0.2",
59
+ "react-bootstrap": "^2.0.0-beta.4",
60
+ "react-dom": "^17.0.2",
61
+ "react-multi-carousel": "^2.8.4",
62
+ "storyblok-rich-text-react-renderer-ts": "^3.2.0"
63
+ }
64
+ }