@sunrise-upc/mobile-prod-card 12.1.4 → 12.1.6

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.
@@ -0,0 +1 @@
1
+ .content_cJLvv{display:flex;flex-direction:column;gap:16px}.heading_ezKpZ{font-weight:700;font-size:20px;line-height:1.3}.buttons_W8ElH{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:16px;margin-top:8px}
@@ -0,0 +1,2 @@
1
+ import e from"react";import t from"./GenericPopup.module.scss.js";import n from"../NewLineCheck/GenericModal.js";import o from"../FalconButtonV2/FalconButtonV2.js";import l from"../FalconDescription/FalconDescription.js";const i=({modalState:i,onCloseHandler:a,content:r,onPrimaryClick:d,onSecondaryClick:c,wafIdentifier:m=""})=>{var u,s,v,p,h;return e.createElement(n,{modalState:i,handler:a,showFooter:!1,width:"624px",height:"auto",backDrop:!0},e.createElement("div",{className:t.content},(null==r?void 0:r.heading)&&e.createElement("div",{className:t.heading},r.heading),null===(u=null==r?void 0:r.body)||void 0===u?void 0:u.map(t=>e.createElement(l,{content:t,key:t._uid})),(null===(s=null==r?void 0:r.secondaryButton)||void 0===s?void 0:s.length)||(null===(v=null==r?void 0:r.primaryButton)||void 0===v?void 0:v.length)?e.createElement("div",{className:t.buttons},(null===(p=null==r?void 0:r.secondaryButton)||void 0===p?void 0:p.length)?e.createElement(o,{content:r.secondaryButton[0],onClick:()=>c?c():a(),metadata:void 0,wafIdentifier:m}):null,(null===(h=null==r?void 0:r.primaryButton)||void 0===h?void 0:h.length)?e.createElement(o,{content:r.primaryButton[0],onClick:()=>d?d():a(),metadata:void 0,wafIdentifier:m}):null):null))};export{i as default};
2
+ //# sourceMappingURL=GenericPopup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericPopup.js","sources":["../../../../src/components/GenericPopup/GenericPopup.tsx"],"sourcesContent":["import React, { JSX } from 'react';\nimport Styles from './GenericPopup.module.scss';\nimport GenericModal from '../NewLineCheck/GenericModal';\nimport FalconButtonV2 from '../FalconButtonV2/FalconButtonV2';\nimport FalconDescription, {\n FalconDescriptionInterface\n} from '../FalconDescription/FalconDescription';\nimport { FalconButtonSchema, GenericSBProps } from '../types';\n\nexport interface TeleSalesErrorModalSchema extends GenericSBProps {\n heading: string;\n body: FalconDescriptionInterface[];\n primaryButton: FalconButtonSchema[];\n secondaryButton: FalconButtonSchema[];\n primaryButtonType?: string;\n secondaryButtonType?: string;\n}\n\ninterface GenericPopuProps {\n modalState: boolean;\n onCloseHandler: () => void;\n content?: TeleSalesErrorModalSchema;\n onPrimaryClick?: () => void;\n onSecondaryClick?: () => void;\n wafIdentifier?: string;\n}\n\nconst GenericPopu = ({\n modalState,\n onCloseHandler,\n content,\n onPrimaryClick,\n onSecondaryClick,\n wafIdentifier = ''\n}: GenericPopuProps): JSX.Element => {\n return (\n <GenericModal\n modalState={modalState}\n handler={onCloseHandler}\n showFooter={false}\n width='624px'\n height='auto'\n backDrop={true}\n >\n <div className={Styles.content}>\n {content?.heading && <div className={Styles.heading}>{content.heading}</div>}\n {content?.body?.map((item) => (\n <FalconDescription content={item} key={item._uid} />\n ))}\n {(content?.secondaryButton?.length || content?.primaryButton?.length) ? (\n <div className={Styles.buttons}>\n {content?.secondaryButton?.length ? (\n <FalconButtonV2\n content={content.secondaryButton[0]}\n onClick={() => (onSecondaryClick ? onSecondaryClick() : onCloseHandler())}\n metadata={undefined}\n wafIdentifier={wafIdentifier}\n />\n ) : null}\n {content?.primaryButton?.length ? (\n <FalconButtonV2\n content={content.primaryButton[0]}\n onClick={() => (onPrimaryClick ? onPrimaryClick() : onCloseHandler())}\n metadata={undefined}\n wafIdentifier={wafIdentifier}\n />\n ) : null}\n </div>\n ) : null}\n </div>\n </GenericModal>\n );\n};\n\nexport default GenericPopu;\n"],"names":["GenericPopu","modalState","onCloseHandler","content","onPrimaryClick","onSecondaryClick","wafIdentifier","React","createElement","GenericModal","handler","showFooter","width","height","backDrop","className","Styles","heading","_a","body","map","item","FalconDescription","key","_uid","_b","secondaryButton","length","_c","primaryButton","buttons","_d","FalconButtonV2","onClick","metadata","undefined","_e"],"mappings":"6NA2BA,MAAMA,EAAc,EAClBC,aACAC,iBACAC,UACAC,iBACAC,mBACAC,gBAAgB,qBAEhB,OACEC,EAAAC,cAACC,EAAY,CACXR,WAAYA,EACZS,QAASR,EACTS,YAAY,EACZC,MAAM,QACNC,OAAO,OACPC,UAAU,GAEVP,EAAAC,cAAA,MAAA,CAAKO,UAAWC,EAAOb,UACpBA,aAAO,EAAPA,EAASc,UAAWV,EAAAC,cAAA,MAAA,CAAKO,UAAWC,EAAOC,SAAUd,EAAQc,SAChD,QAAbC,EAAAf,aAAO,EAAPA,EAASgB,YAAI,IAAAD,OAAA,IAAEE,IAAKC,GACnBd,gBAACe,EAAiB,CAACnB,QAASkB,EAAME,IAAKF,EAAKG,SAEpB,QAAxBC,EAAAtB,aAAO,EAAPA,EAASuB,uBAAe,IAAAD,OAAA,EAAAA,EAAEE,UAAgC,QAAtBC,EAAAzB,aAAO,EAAPA,EAAS0B,qBAAa,IAAAD,OAAA,EAAAA,EAAED,QAC5DpB,EAAAC,cAAA,MAAA,CAAKO,UAAWC,EAAOc,UACI,QAAxBC,EAAA5B,aAAO,EAAPA,EAASuB,uBAAe,IAAAK,OAAA,EAAAA,EAAEJ,QACzBpB,EAAAC,cAACwB,EAAc,CACb7B,QAASA,EAAQuB,gBAAgB,GACjCO,QAAS,IAAO5B,EAAmBA,IAAqBH,IACxDgC,cAAUC,EACV7B,cAAeA,IAEf,MACmB,QAAtB8B,EAAAjC,aAAO,EAAPA,EAAS0B,qBAAa,IAAAO,OAAA,EAAAA,EAAET,QACvBpB,EAAAC,cAACwB,EAAc,CACb7B,QAASA,EAAQ0B,cAAc,GAC/BI,QAAS,IAAO7B,EAAiBA,IAAmBF,IACpDgC,cAAUC,EACV7B,cAAeA,IAEf,MAEJ"}
@@ -0,0 +1,3 @@
1
+ import './GenericPopup.css';
2
+ var t={content:"content_cJLvv",heading:"heading_ezKpZ",buttons:"buttons_W8ElH"};export{t as default};
3
+ //# sourceMappingURL=GenericPopup.module.scss.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericPopup.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{__awaiter as e}from"../../_virtual/_tslib.js";import o,{useState as l,useRef as t,useContext as n,useEffect as i}from"react";import d from"../Dotloader/Dotloader.js";import{createPortal as a}from"react-dom";import r from"../SkeletonLoader/SkeletonLoader.js";import s from"./StaticLineTable.module.scss.js";import c from"../richtext.js";import v from"./StaticProductEntitlement.js";import u from"./StaticBenefit.js";import m from"./DynamicPriceSection.js";import p from"./CheckoutButton.js";import g from"./StaticProductDetails.js";import{LineTableBasicPropConfig as f,AssetPathPropConfig as h}from"../../services/LineTableBasicPropConfig.js";import b from"js-cookie";import{LoginBasicPropConfig as E}from"../../services/LoginBasicPropConfig.js";import w from"../login/LoginModalV2.js";import{isTimerActive as C,fetchServiceOptions as P,fetchPrice as S,findHeight as y,checkGiftOrCashback as k,getTimeUntilNextTimerEvent as T,staticCreateCart as x,combineWithVasOptions as $,combineWithSmartPhone as D}from"./Product.utils.js";import L from"../ProductDetailsV3/GiftConfigV2.js";import N from"../ProductDetailsV3/ChooseGiftV2.js";import{viewport as I,replacePlaceholder as B,getUtcTimestamp as O}from"../../utils/utils.js";import j from"./StaticProductCashback.js";import{trackNewDatalayerEvent as A}from"../../utils/AnalyticsUtils.js";import{CTABUTTONCLICK as U,GAEVENT as V,EXISTINGCUSTOMER as F,LINETABLE as M,DOWNLOADPRODUCT as R}from"../../Analytics/AnalyticsConstants.js";import G from"./TVChannelModal.js";import _ from"../LineCheckV3/LinecheckModal.js";import J from"../BenefitWrapper/BenefitsValidateWrapper.js";import q from"../PretoPost/PreToPostSubsPopup.js";import W from"../LineCheckV3/GenericModal.js";import{fetchSubscriptionData as H,trackPegaEvents as z,validateP2P as K}from"../../services/LineTableService.js";import Q from"./ExsistingSubscriptionModal.js";import{getEcomCartInfo as X}from"../../models/Analytics/items.js";import Y from"../NewLineCheck/CoverageCheckModal.js";import{API_BASE_BASEPOINT as Z}from"../../services/api-constants.js";import{AppContext as ee}from"./StaticLineTableStore/StaticLineTableProvider.js";import oe from"./OttServiceOptions/OttServiceOptionsSmallPopup.js";import le from"./StaticExclusiveBenefit.js";import te from"../UserLoggedPricesToggle/UserLoggedPricesToggle.js";import ne from"../FalconButtonV2/FalconButtonV2.js";import{ONE_ECOMMERCE_INTERNET_SUMMARY as ie}from"../../utils/constants.js";import de from"./StaticLineTabelTimer/StaticLineTabelTimer.js";import{BadgeContainer as ae}from"@sunrise-upc/sales-static-components";const re=({content:re,offeringData:se,uniqueId:ce,storyContent:ve,metadata:ue,tabIndex:me,cardsLength:pe,indexKey:ge,constants:fe,mainContent:he,address:be,eligibleBundle:Ee,linecheckSuccessCallBack:we,selectedOption:Ce,fetchOfferData:Pe,basicConfigUrl:Se,selectedExistingOption:ye,setLoginSuccess:ke,enableP2P:Te,lineCheckCallBack:xe,loginSuccess:$e,setToggleState:De,toggleState:Le,noTabs:Ne,deviceFlow:Ie,deviceFlowCallBack:Be,selectedRP:Oe,continueCart:je,lineCheckOnClear:Ae,pegaIntegration:Ue,isProdEnv:Ve,deviceUltimateBundle:Fe,toggleContent:Me,pricesToggleState:Re,isShogunFlow:Ge,shogunToken:_e})=>{var Je,qe,We,He,ze,Ke,Qe,Xe,Ye,Ze,eo,oo,lo,to,no,io,ao,ro,so,co,vo,uo,mo,po,go,fo,ho,bo,Eo,wo,Co,Po,So,yo,ko,To,xo,$o,Do,Lo,No,Io,Bo,Oo,jo,Ao,Uo,Vo,Fo,Mo,Ro,Go,_o,Jo,qo,Wo,Ho,zo,Ko,Qo,Xo,Yo,Zo,el,ol,ll,tl,nl,il,dl,al,rl,sl,cl,vl,ul,ml,pl,gl,fl,hl,bl,El,wl,Cl,Pl;const[Sl,yl]=l(!1),[kl,Tl]=l(!1),[xl,$l]=l({showGift:!1,cashbackAvailable:!1}),[Dl,Ll]=l(!0),[Nl,Il]=l(!1),[Bl,Ol]=l([]),[jl,Al]=l(!1),[Ul,Vl]=l(!1),[Fl,Ml]=l(!1),[Rl,Gl]=l(!1),[_l,Jl]=l(!1),[ql,Wl]=l(!1),Hl=`${Se}inf/customer-management/subscriptions`,zl=`${Se}inf/resource-management/msisdns/pretopost/validation`,[Kl,Ql]=l([]),[Xl,Yl]=l(!1),[Zl,et]=l(!1),[ot,lt]=l(!1),[tt,nt]=l([]),[it,dt]=l(!1),[at,rt]=l(!1),[st,ct]=l(!1),[vt,ut]=l(!1),[mt,pt]=l([]),[gt,ft]=l(0),ht=t(null),bt=`${Se}inf/${Z.CUSTOMER}`,Et=void 0!==typeof window&&document.getElementById("static-linetable"),wt=0===(null===(Je=Object.keys(re))||void 0===Je?void 0:Je.length),Ct=null===(Ke=null===(ze=null===(He=null===(We=null===(qe=null==re?void 0:re.products)||void 0===qe?void 0:qe[0])||void 0===We?void 0:We.reference)||void 0===He?void 0:He.content)||void 0===ze?void 0:ze.product)||void 0===Ke?void 0:Ke[0],Pt=null===(eo=null===(Ze=null===(Ye=null===(Xe=null===(Qe=null==re?void 0:re.promotion)||void 0===Qe?void 0:Qe[0])||void 0===Xe?void 0:Xe.reference)||void 0===Ye?void 0:Ye.content)||void 0===Ze?void 0:Ze.promoDescription)||void 0===eo?void 0:eo[0],St=null===(oo=null==re?void 0:re.timer)||void 0===oo?void 0:oo[0],yt=null==St?void 0:St.enableCounter,[kt,Tt]=l(!!(yt&&(null==St?void 0:St.startTime)&&(null==St?void 0:St.endTime))&&C(St.startTime,St.endTime)),xt=Boolean((null==re?void 0:re.highlightText)&&!0!==Re&&!kt&&!(null==re?void 0:re.badgesContainer)),$t=Boolean((null==Pt?void 0:Pt.displayText)&&!(null==re?void 0:re.notShowPromotionLabel)&&!0!==Re&&!kt),Dt=Boolean((null==re?void 0:re.badgesContainer)&&!0!==Re&&!kt&&!$t),Lt=null==Ct?void 0:Ct.productId,Nt=null===(lo=null==f?void 0:f.getInstance())||void 0===lo?void 0:lo.getCartUrl(),It=null===(to=null==h?void 0:h.getInstance())||void 0===to?void 0:to.getAssetPath(),Bt="MOBILE"===(null==ve?void 0:ve.pageType),Ot=I(),jt=n(ee);let At;At=be&&(null===(no=null==Ee?void 0:Ee.eligibleBundle)||void 0===no?void 0:no.includes(Lt));const Ut=null==re?void 0:re.enableTVStreamingOptionsPopUp,Vt=null==re?void 0:re.enableTVStreamingOptionsStepper,Ft=null==re?void 0:re.disableDiscountedPriceToggle,Mt=null==re?void 0:re.skipAccessoriesPage;E.create({baseURL:null!=Se?Se:""});let Rt=void 0!==typeof window&&b.get("sunriseAuth");Rt=Rt&&JSON.parse(Rt);const Gt=((null==se?void 0:se[ce])||[]).filter(e=>(null==e?void 0:e.id)===Lt),_t=e=>{nt(e)},Jt=()=>{Al(!0),Gl(!Rl),et(!Zl)},qt=()=>{var e,o,l;if(Tl(!1),Te&&null==Rt)Gl(!Rl),et(!Zl);else if(Te&&(null==Rt?void 0:Rt.siteId))Xt();else if(Ce===F&&(null==ye?void 0:ye.length)>0)Jl(!0);else{!!((null==he?void 0:he.enableExistingCustomer)&&null==Rt||!Rt&&!0===Re&&(null==Me?void 0:Me.enableLoggedInPrice))?Al(!0):nn()}if(Ue){const t=localStorage.getItem("prospectId"),n=null!==(l=null===(o=null===(e=null===window||void 0===window?void 0:window.location)||void 0===e?void 0:e.pathname)||void 0===o?void 0:o.split("/"))&&void 0!==l?l:[],i=n[n.length-1],d={eventTimestamp:O(),eventType:"PageView",pageType:"CartCreated",pageLocation:i,targetProduct:Lt};t&&z(bt,d,t)}},Wt=e=>{const o=Bl.findIndex(o=>(null==e?void 0:e.giftGroupId)===(null==o?void 0:o.giftGroupId)),l=Bl;-1===o?l.push(e):l[o]=e,Ol([...l])},Ht=new URLSearchParams(null===(io=null===window||void 0===window?void 0:window.location)||void 0===io?void 0:io.search),zt=null==Ht?void 0:Ht.get("selectedMsisdn"),Kt=e=>{var o;1===(null==e?void 0:e.length)?(Nl?D(dn,ve,Gt,null==e?void 0:e[0],re,Ue):nn(null===(o=null==e?void 0:e[0])||void 0===o?void 0:o.msisdn),Wl(!1)):(null==e?void 0:e.length)>1?(Ql(e),lt(!ot),Wl(!1)):(et(!Zl),Wl(!0),Ll(!0),yl(!1))},Qt=(o,l)=>e(void 0,void 0,void 0,function*(){yield K(null==o?void 0:o.msisdn,zl).then(e=>{e&&l.push(o)}).catch(e=>{console.log("error",e)})}),Xt=()=>{var o;yl(!0);try{null===(o=H("PREPAID",Hl))||void 0===o||o.then(o=>e(void 0,void 0,void 0,function*(){if(204==(null==o?void 0:o.subscriptionData))et(!Zl),Wl(!0),Ll(!0),yl(!1);else{const l=null==o?void 0:o.subscriptionData,t=l.find(e=>e.msisdn===zt);if(l){const o=[];zt?(yield Qt(t,o),Kt(o)):yield Promise.all(null==l?void 0:l.map(l=>e(void 0,void 0,void 0,function*(){yield Qt(l,o)}))).then(e=>{Kt(o)})}}})).catch(e=>{console.log("error---\x3e",e),yl(!1)})}catch(e){console.log("error---\x3e",e),yl(!1)}Yl(!0)},Yt=()=>{et(!Dl),Gl(!1)},Zt=e=>{dt(!1),e&&A(V,U,{headline:"VAS POPUP CLOSE"})},en=()=>{let e="undefined"!=typeof window&&localStorage.getItem("lineCheckResponse");Ee=e&&(null===JSON||void 0===JSON?void 0:JSON.parse(e)),be="undefined"!=typeof window&&b.get("chAddressJson"),Ml(!Fl),"function"==typeof we&&we(),nn()},on=P(null==Ct?void 0:Ct.bloks,Bt),ln=null===(ao=null==on?void 0:on[0])||void 0===ao?void 0:ao.tvProductId,tn=e=>{var o,l,t,n,i,d,a,r,s,c;const v=Ue&&(null===(t=null===(l=null===(o=null==Gt?void 0:Gt[0])||void 0===o?void 0:o.promotionInfo)||void 0===l?void 0:l[0])||void 0===t?void 0:t.id),u=Ue&&(null===(d=null===(i=null===(n=null==Gt?void 0:Gt[0])||void 0===n?void 0:n.promotionInfo)||void 0===i?void 0:i[0])||void 0===d?void 0:d.version),m=Ge?{pointsBurnt:null===(r=null===(a=null==Gt?void 0:Gt[0])||void 0===a?void 0:a.rewards)||void 0===r?void 0:r.points,rewardOfferId:null===(c=null===(s=null==Gt?void 0:Gt[0])||void 0===s?void 0:s.rewards)||void 0===c?void 0:c.offerId,gloxTokenId:_e}:void 0;Gt&&Gt[0]&&(Gt[0].fromPopup=vt),sn("false"),sessionStorage.removeItem("vasPopUp"),rt(!1),x(yl,Nt,Bl,Gt,he,dn,Bt,ln,Ee,be,Ml,Fl,xe,Te,null!=zt?zt:e,re,tt,v,u,m)},nn=e=>{var o,l,t,n,i,d,a,r,s;ut(!1),Tl(!1);let c=void 0!==typeof window&&b.get("sunriseAuth");const v=c&&JSON.parse(c),u=!(!(null==he?void 0:he.enableExistingCustomer)||null!=v);if(sessionStorage.removeItem(ie),(null===(o=null==he?void 0:he.linecheckData)||void 0===o?void 0:o.length)>0&&!Bt&&!At){return void(document.getElementById("linecheck")&&xe())}if(At&&!Bt&&(null===(l=null==he?void 0:he.loginData)||void 0===l?void 0:l.length)>0&&u)Al(!0);else if(Vt&&(null===(t=Gt[0])||void 0===t?void 0:t.isBundle)){let o=!1;Mt||((null===(n=Gt[0])||void 0===n?void 0:n.isBundle)?null===(d=null===(i=Gt[0])||void 0===i?void 0:i.bundledOffers)||void 0===d||d.map(e=>{var l,t,n;"internet"!==(null===(l=null==e?void 0:e.productType)||void 0===l?void 0:l.toLowerCase())&&"tv"!=(null===(t=null==e?void 0:e.productType)||void 0===t?void 0:t.toLowerCase())||(null==e?void 0:e.recommendAccessory)&&(o=null==e?void 0:e.recommendAccessory),"mobile"!==(null===(n=null==e?void 0:e.productType)||void 0===n?void 0:n.toLowerCase())||(o=!1)}):(null===(a=null==Gt?void 0:Gt[0])||void 0===a?void 0:a.recommendAccessory)&&(o=null===(r=null==Gt?void 0:Gt[0])||void 0===r?void 0:r.recommendAccessory)),$(dn,Gt,re,Ue,null==Ct?void 0:Ct.productName,o),tn(e)}else Ut&&(null===(s=Gt[0])||void 0===s?void 0:s.isBundle)&&!at?(dt(!0),rt(!0),sn("true"),window.addEventListener("beforeunload",function(e){sn("false"),sessionStorage.removeItem("vasPopUp"),rt(!1)})):(Te&&yl(!0),tn(e))},dn=S(Gt,Bt,null==he?void 0:he.pageType,!1,tt,Ue);i(()=>{var e,o;setTimeout(()=>{y(me,pe)},100);const l=k(Bt?Gt:null!==(o=null===(e=null==Gt?void 0:Gt[0])||void 0===e?void 0:e.bundledOffers)&&void 0!==o?o:Gt);$l(Object.assign({},l))},[se,Le,tt,gt,((null==Le?void 0:Le.TV)||(null==Le?void 0:Le.gigaSpeed)||(null==Le?void 0:Le.Netflix))&&Array.isArray(Gt)&&3===(null===(so=null===(ro=null==Gt?void 0:Gt[0])||void 0===ro?void 0:ro.bundledOffers)||void 0===so?void 0:so.length)]);const an=()=>{((null==on?void 0:on.length)>0||Ut)&&Vl(!0)},rn=null===(co=null==he?void 0:he.productContainer)||void 0===co?void 0:co[0];i(()=>{Nl&&(Te&&null==Rt?(Gl(!Rl),et(!Zl)):Te&&(null==Rt?void 0:Rt.siteId)&&Xt())},[Nl]),i(()=>{var e;if(jt){const{store:o}=jt;(null===(e=null==o?void 0:o.ottOptionsApi)||void 0===e?void 0:e.length)>0&&0===(null==mt?void 0:mt.length)&&pt(null==o?void 0:o.ottOptionsApi)}},[jt]),i(()=>{if(!yt||!(null==St?void 0:St.startTime)||!(null==St?void 0:St.endTime))return void Tt(!1);Tt(C(St.startTime,St.endTime));const e=T(St.startTime,St.endTime);if(e<=0)return;const o=setTimeout(()=>{Tt(C(St.startTime,St.endTime))},e);return()=>clearTimeout(o)},[yt,null==St?void 0:St.startTime,null==St?void 0:St.endTime]),i(()=>{var e;const o=ht.current;if(!o||!(null===(e=null==re?void 0:re.timer)||void 0===e?void 0:e.length)||!yt)return void ft(0);const l=()=>{ft(o.clientHeight)};if(l(),"undefined"==typeof ResizeObserver)return;const t=new ResizeObserver(l);return t.observe(o),()=>{t.disconnect()}},[null===(vo=null==re?void 0:re.timer)||void 0===vo?void 0:vo.length,yt]),i(()=>{st&&(Zt(),ct(!0),sn("false"),sessionStorage.removeItem("vasPopUp"),rt(!1),tn())},[st]),i(()=>{const e=()=>{const e=sessionStorage.getItem("vasPopUp");rt("true"===e)};e();const o=o=>{o.storageArea===sessionStorage&&"vasPopUp"===o.key&&e(),o.storageArea===sessionStorage&&"vasPopUp"===o.key&&null===o.newValue&&rt(!1)},l=()=>{e()};return window.addEventListener("storage",o),window.addEventListener("vasPopUpChange",l),()=>{window.removeEventListener("storage",o),window.removeEventListener("vasPopUpChange",l)}},[]);const sn=e=>{sessionStorage.setItem("vasPopUp",e);const o=new Event("vasPopUpChange");window.dispatchEvent(o)};return o.createElement("div",null,Sl&&Et&&a(o.createElement(d,{keyParams:"loading"}),Et),wt&&o.createElement("div",{className:"w-75 pb-2"},o.createElement(r,null)),!wt&&Ee&&re&&be&&!Bt&&o.createElement("div",{className:s.selected},o.createElement("span",{style:{paddingBottom:"10px"}},At?o.createElement("span",{className:s.activeicon},o.createElement("img",{src:`${It}/icons/lineCheck-success.svg`,alt:"",width:24,height:24,className:s.activeicon}),o.createElement("span",null,null==fe?void 0:fe.subscriptionAvalTxt)):o.createElement("span",{className:s.inactiveicon},o.createElement("img",{src:`${It}/icons/cross_disabled.svg`,alt:"",width:24,height:24,className:s.inactiveicon}),o.createElement("span",null,null==fe?void 0:fe.notSubscriptionTxt)))),o.createElement("div",{className:`${!Bt&&!1===At&&(null===(uo=null==he?void 0:he.linecheckData)||void 0===uo?void 0:uo.length)>0&&"global/coverage-check"!==(null===(go=null===(po=null===(mo=null==he?void 0:he.linecheckData)||void 0===mo?void 0:mo[0])||void 0===po?void 0:po.reference)||void 0===go?void 0:go.default_full_slug)?s.overlay:""}\n ${Fe&&!(null===(ho=null===(fo=null==Gt?void 0:Gt[0])||void 0===fo?void 0:fo.eligibility)||void 0===ho?void 0:ho.fpb)?s.disabled:""}\n `,style:{flexDirection:"column"}},o.createElement("div",{className:s.bundleproductcard},o.createElement("div",{id:`timer-section${me}${ge}`,"data-timer-active":gt>0?"true":"false"},(null===(bo=null==re?void 0:re.timer)||void 0===bo?void 0:bo.length)&&yt?o.createElement("div",{style:{height:`${gt}px`,transition:"height 0.3s ease"}}):null),o.createElement("div",{className:`${s.productcontainer}`,style:(()=>{const e=$t?Pt:re,o=null==e?void 0:e.showBorder,l=null==e?void 0:e.borderGradient,t=null==e?void 0:e.borderColor;return{borderColor:o&&!l?t||"":"transparent",borderWidth:o?"4px":"0px",borderStyle:o?"solid":"none",borderRadius:o?"8px":"",background:o&&l?`linear-gradient(white, white) padding-box, ${l} border-box`:void 0}})()},Dt&&o.createElement(ae,{badges:re.badgesContainer}),xt&&o.createElement("div",{className:`${s.highlightText}`},null==re?void 0:re.highlightText),$t&&((null==Pt?void 0:Pt.badgeContainer)?o.createElement(ae,{badges:null==Pt?void 0:Pt.badgeContainer}):o.createElement("div",{className:`${s.promocontainer}`,style:{background:null==Pt?void 0:Pt.bestSellerColor}},null==Pt?void 0:Pt.displayText)),o.createElement("div",{ref:ht,className:s.timerContainer},(null===(Eo=null==re?void 0:re.timer)||void 0===Eo?void 0:Eo.length)&&yt?o.createElement(de,{content:null===(wo=null==re?void 0:re.timer)||void 0===wo?void 0:wo[0],hasHighlightText:Dt||$t,onTimerChange:e=>{Tt(e)}}):null),o.createElement("div",{className:`${s.detailsection} ${s.imageFullWidthSection}`,id:`detailsectionv3${me}${ge}`},o.createElement("div",{className:`${s.headersection}`},o.createElement("div",{className:`${s.titlesection}`},o.createElement("div",{className:`${s.productheader}`,id:`titleV3${me}${ge}`},null==Ct?void 0:Ct.productName),o.createElement("div",null,(null===(Co=null==Ct?void 0:Ct.icon)||void 0===Co?void 0:Co.filename)&&o.createElement("img",{className:`${s.imagecontainer}`,src:null===(Po=null==Ct?void 0:Ct.icon)||void 0===Po?void 0:Po.filename,height:15,width:20,alt:"productIcon"}))),o.createElement("div",{className:`${s.productdescription}`,id:`descriptionV3${me}${ge}`},o.createElement(c,{content:null==Ct?void 0:Ct.description})),o.createElement("div",{className:`${s.images}`},(null===(So=null==Ct?void 0:Ct.img)||void 0===So?void 0:So.filename)&&o.createElement("img",{className:`${s.imagespace} ${(null==re?void 0:re.highlightText)&&s.borderimage}`,alt:"cardimg",src:`${null===(yo=null==Ct?void 0:Ct.img)||void 0===yo?void 0:yo.filename}/m/`}))),o.createElement("div",{className:`${s.productconfig}`,id:`product-configv3${me}${ge}`},wt?o.createElement(o.Fragment,null,o.createElement("div",{className:s.space}),o.createElement(r,{stylename:s.skeletontittle,count:1}),o.createElement(r,{stylename:s.skeletonline,count:5}),o.createElement("div",{className:s.space}),o.createElement(r,{stylename:s.skeletontittle,count:1}),o.createElement(r,{stylename:s.skeletonline,count:5})):o.createElement("div",null,(null==Ct?void 0:Ct.bloks)&&(null===(ko=null==Ct?void 0:Ct.bloks)||void 0===ko?void 0:ko.map((e,l)=>o.createElement(v,{content:e,indexKey:l,constants:fe,key:l,showModalPopup:an,setToggleState:De,toggleState:Le,noTabs:Ne,mainContent:he,enableTVStreamingOptions:null==re?void 0:re.enableTVStreamingOptions,metadata:ue,setTvOptionsData:_t})))))),o.createElement("div",{className:`${s.detailsection}`,id:`benefits-price-section${me}${ge}`},o.createElement("div",{id:`exclusive-benefits-section${me}${ge}`},(null===(To=null==Ct?void 0:Ct.extraBenefits)||void 0===To?void 0:To.length)>0&&o.createElement(le,{content:null===(xo=null==Ct?void 0:Ct.extraBenefits)||void 0===xo?void 0:xo[0]})),o.createElement("div",{className:`${s.benefitssection}`,id:`benefits-section${me}${ge}`},(null===($o=null==Ct?void 0:Ct.benefits)||void 0===$o?void 0:$o.length)>0&&o.createElement(u,{content:null==Ct?void 0:Ct.benefits,benefitData:dn,constants:fe,pricesToggleState:Re,togglePriceLabel:null==Me?void 0:Me.togglePriceLabel})),o.createElement("br",null),o.createElement("div",{className:`${s.giftsection}`,id:`gift-section${me}${ge}`},(null==xl?void 0:xl.showGift)&&(null===(Do=null==Pt?void 0:Pt.singleGift)||void 0===Do?void 0:Do.map((e,l)=>o.createElement(L,{content:e,key:l}))),(null==xl?void 0:xl.showGift)&&(null===(Lo=null==Pt?void 0:Pt.giftConfig)||void 0===Lo?void 0:Lo.map((e,l)=>o.createElement(N,{content:e,key:l,selectedGiftItem:Wt,parentPoType:Bt?"MOBILE":"HOME"}))),o.createElement("div",{className:`${s.giftsection}`,id:`cashback-section${me}${ge}`},o.createElement(j,{uniqueProductData:Gt,mainContent:he}))),o.createElement("div",{className:`${s.ordersection}`,id:`order-section${me}${ge}`},""===(null==dn?void 0:dn.base)?o.createElement("div",null,o.createElement(r,{stylename:s.skeletontittle})):o.createElement("div",{id:`price-section${me}${ge}`},o.createElement(m,{priceCollection:dn,constants:fe,promoText:null==Ct?void 0:Ct.promoText,deviceFlow:Ie,content:re,offeringData:se,uniqueId:ce})),!Ge&&o.createElement("div",{className:`${s.discountedpricetoggleSection}`,id:`discountedpricetoggle-section${me}${ge}`},Ft||"INLINE"!==(null==Me?void 0:Me.togglePosition)?null:o.createElement(te,{content:Ct,index:ge,lineTable:!0,toggleContent:Me})),Te&&(null==fe?void 0:fe.P2PDiscountLabel)&&o.createElement("div",{className:s.longterm},null==fe?void 0:fe.P2PDiscountLabel),wt?o.createElement(o.Fragment,null,o.createElement(r,{stylename:s.skeletontittle,count:1}),o.createElement(r,{stylename:s.skeletonline,count:2})):o.createElement("div",{className:`${(null==ve?void 0:ve.swapButton)&&s.swapButton}`},o.createElement("div",{style:{padding:"16px 0 0 0"}},o.createElement(p,{isMobileFlow:Bt,createCartCall:(null==Ie?void 0:Ie.isDeviceFlow)?e=>{Tl(!1);Be({setShowLoader:yl,cartEndPoint:Nt,giftItem:Bl,uniqueProductData:Gt,mainContent:he,showPrice:dn,isMobileFlow:Bt,eligibleBundle:Ee,address:be,setShowLinecheck:Ml,showLinecheck:Fl,lineCheckCallBack:xe,enableP2P:Te,msisdnn:null!=zt?zt:e,content:re,selectedRP:Oe,continueCart:je})}:Bt?qt:nn,constants:fe,storyContent:ve,showPrice:dn,isAvailable:At,address:be,uniqueProductBenefits:null==Gt?void 0:Gt[0],alwaysActive:!At&&(null===(No=null==he?void 0:he.linecheckData)||void 0===No?void 0:No.length)>0&&"global/coverage-check"===(null===(Oo=null===(Bo=null===(Io=null==he?void 0:he.linecheckData)||void 0===Io?void 0:Io[0])||void 0===Bo?void 0:Bo.reference)||void 0===Oo?void 0:Oo.default_full_slug),flexUpgradeFreePopup:null===(Ao=null===(jo=null==he?void 0:he.flexUpgradeFreePopup)||void 0===jo?void 0:jo.reference)||void 0===Ao?void 0:Ao.content,content:re,deviceUltimateBundle:Fe,forceDisabled:Boolean(null===(Vo=null===(Uo=null==Gt?void 0:Gt[0])||void 0===Uo?void 0:Uo.rewards)||void 0===Vo?void 0:Vo.notEligibleReason),notEligibileReason:null===(Mo=null===(Fo=null==Gt?void 0:Gt[0])||void 0===Fo?void 0:Fo.rewards)||void 0===Mo?void 0:Mo.notEligibleReason})),!Ge&&(null===(Ro=null==ve?void 0:ve.addSmartPhone)||void 0===Ro?void 0:Ro.length)>0&&!(null==Ie?void 0:Ie.isDeviceFlow)&&o.createElement("div",{style:{textAlign:"center"}},(null==ve?void 0:ve.swapButton)?(null==ve?void 0:ve.ctaLabel)&&o.createElement("div",{style:{padding:"16px 0"}},o.createElement("button",{className:"primarybutton",onClick:()=>D(dn,ve,Gt,"",re,Ue)},o.createElement("span",{className:s.buttontext},null==ve?void 0:ve.ctaLabel))):!(null==re?void 0:re.redirectOnly)&&o.createElement("div",{style:{padding:"12px 0 0 0"}},o.createElement(ne,{content:{buttonType:"Secondary-V1",buttonLabel:(null==re?void 0:re.ultimateBundlePromotion)?null==fe?void 0:fe.ultimateBundleLbl:null===(_o=null===(Go=null==ve?void 0:ve.addSmartPhone)||void 0===Go?void 0:Go[0])||void 0===_o?void 0:_o.buttonLabel,buttonIcon:null===(qo=null===(Jo=null==ve?void 0:ve.addSmartPhone)||void 0===Jo?void 0:Jo[0])||void 0===qo?void 0:qo.buttonIcon,buttonAlignment:"left"},wafIdentifier:Se,style:{width:"100%"},onClick:()=>Te?void Il(!0):D(dn,ve,Gt,"",re,Ue)}))),o.createElement("div",{className:s.productcontractduration,id:`contract-section${me}${ge}`,style:{paddingTop:(null===(Wo=null==ve?void 0:ve.addSmartPhone)||void 0===Wo?void 0:Wo.length)>0&&!(null==Ie?void 0:Ie.isDeviceFlow)&&!(null==ve?void 0:ve.swapButton)&&!(null==re?void 0:re.redirectOnly)?"8px":void 0}},(null==dn?void 0:dn.contractDuration)>"1"?B(null===(Ho=null==fe?void 0:fe.minContractDuration)||void 0===Ho?void 0:Ho.substring(1),[null==dn?void 0:dn.contractDuration]):null==fe?void 0:fe.noContractDuration)),o.createElement("div",{style:{textAlign:"center",padding:"4px"}},(null===(zo=null==Ct?void 0:Ct.productDetails)||void 0===zo?void 0:zo.length)>0&&o.createElement("span",{className:s.productdetailslink,onClick:()=>{var e,o,l;Tl(!kl),A(V,R,X(Gt,"",M));const t=localStorage.getItem("prospectId"),n=null!==(l=null===(o=null===(e=null===window||void 0===window?void 0:window.location)||void 0===e?void 0:e.pathname)||void 0===o?void 0:o.split("/"))&&void 0!==l?l:[],i=n[n.length-1],d={eventTimestamp:O(),eventType:"PageView",pageType:"ProductDetails",pageLocation:i,targetProduct:Lt};t&&z(bt,d,t)}},null==fe?void 0:fe.productDetailsLink)),kl&&o.createElement(g,{content:null==Ct?void 0:Ct.productDetails,showProductDetail:kl,setShowProductDetail:Tl,constants:fe,showPrice:dn,isMobileFlow:Bt,createCartCall:Bt?qt:nn,storyContent:ve,isAvailable:At,address:be,flexUpgradeFreePopup:null===(Qo=null===(Ko=null==he?void 0:he.flexUpgradeFreePopup)||void 0===Ko?void 0:Ko.reference)||void 0===Qo?void 0:Qo.content,notEligibileReason:null===(Yo=null===(Xo=null==Gt?void 0:Gt[0])||void 0===Xo?void 0:Xo.rewards)||void 0===Yo?void 0:Yo.notEligibleReason})))))),Fe&&Gt&&!(null===(el=null===(Zo=null==Gt?void 0:Gt[0])||void 0===Zo?void 0:Zo.eligibility)||void 0===el?void 0:el.fpb)&&o.createElement("div",{className:s.disabledInfo},o.createElement(c,{content:null==fe?void 0:fe.fpbNotCompatibleText})),Ul&&(wt?o.createElement(r,null):o.createElement(G,{content:null==on?void 0:on[0],setShowModal:Vl,showModal:Ul,constants:fe})),jl&&(null===(ol=null==he?void 0:he.loginData)||void 0===ol?void 0:ol.length)>0&&Et&&a(o.createElement(w,{content:null===(ll=null==he?void 0:he.loginData)||void 0===ll?void 0:ll[0],closeLogin:()=>{Al(!1)},metadata:ue,onSuccess:()=>{Al(!1),ke(),sessionStorage.removeItem("vasPopUp"),rt(!1),Te?Xt():nn()},isProdEnv:Ve}),Et),Rl&&Te&&!jl&&Zl&&o.createElement(W,{modalState:Dl,handler:Yt,showFooter:!1,width:"628px",height:"280px",backgroundColor:"#f7f6f5",noCloseButton:!1,backDrop:!0,bodyPadding:"16px"},o.createElement(q,{onClose:Jt,content:null===(il=null===(nl=null===(tl=null==he?void 0:he.productContainer)||void 0===tl?void 0:tl[0])||void 0===nl?void 0:nl.p2pBloks)||void 0===il?void 0:il[0],prepaid:!1})),Te&&Xl&&ql&&Zl&&o.createElement(W,{modalState:Dl,handler:Yt,showFooter:!1,width:"628px",height:"280px",backgroundColor:"#f7f6f5",noCloseButton:!1,backDrop:!0,bodyPadding:"16px",id:"table-product"},o.createElement(q,{onClose:Jt,content:null===(rl=null===(al=null===(dl=null==he?void 0:he.productContainer)||void 0===dl?void 0:dl[0])||void 0===al?void 0:al.p2pBloks)||void 0===rl?void 0:rl[1],prepaid:!0})),(null==Kl?void 0:Kl.length)>1&&Te&&Xl&&!ql&&ot&&o.createElement(W,{modalState:ot,handler:()=>{yl(!1),lt(!ot)},showFooter:!1,width:"628px",height:"280px",backgroundColor:"#f7f6f5",noCloseButton:!1,backDrop:!0,bodyPadding:"16px"},o.createElement(Q,{onSubmit:e=>{lt(!ot),Nl?D(dn,ve,Gt,e,re,Ue):nn(null==e?void 0:e.msisdn)},exsistingSubscriptionData:Kl,updatedContent:rn})),Fl&&(null==he?void 0:he.enableLinecheckOverlay)&&!Bt&&(null===(sl=null==he?void 0:he.linecheckData)||void 0===sl?void 0:sl.length)>0&&!Te&&"global/new-linecheck-test"===(null===(ul=null===(vl=null===(cl=null==he?void 0:he.linecheckData)||void 0===cl?void 0:cl[0])||void 0===vl?void 0:vl.reference)||void 0===ul?void 0:ul.default_full_slug)?o.createElement(_,{content:null===(ml=null==he?void 0:he.linecheckData)||void 0===ml?void 0:ml[0],onSuccess:en,showModal:Fl,setShowModal:Ml,productName:null==Ct?void 0:Ct.productName,productId:null==Ct?void 0:Ct.productId}):Fl&&(null==he?void 0:he.enableLinecheckOverlay)&&!Bt&&(null===(pl=null==he?void 0:he.linecheckData)||void 0===pl?void 0:pl.length)>0&&!Te&&"global/coverage-check"===(null===(hl=null===(fl=null===(gl=null==he?void 0:he.linecheckData)||void 0===gl?void 0:gl[0])||void 0===fl?void 0:fl.reference)||void 0===hl?void 0:hl.default_full_slug)?o.createElement(Y,{content:null===(bl=null==he?void 0:he.linecheckData)||void 0===bl?void 0:bl[0].reference.content.body[0],overlayIsOpen:!0,externalHandleModal:Ml,productName:null==Ct?void 0:Ct.productName,showModal:Fl,setShowModal:Ml,onSuccess:()=>{let e="undefined"!=typeof window&&localStorage.getItem("lineCheckResponse");Ee=e&&(null===JSON||void 0===JSON?void 0:JSON.parse(e)),be="undefined"!=typeof window&&b.get("chAddressJson"),"function"==typeof we&&we()},onCreateCart:en,lineCheckOnClear:Ae,productId:null==Ct?void 0:Ct.productId}):null,_l&&Bt&&(null===(El=null==ve?void 0:ve.benefitsValidate)||void 0===El?void 0:El.length)>0&&o.createElement(J,{content:null===(wl=null==ve?void 0:ve.benefitsValidate)||void 0===wl?void 0:wl[0],loginContent:null===(Cl=null==he?void 0:he.loginData)||void 0===Cl?void 0:Cl[0],metadata:ue,createCartCall:nn,fetchOfferData:Pe,basicConfigUrl:Se,selectedExistingOption:ye,setShowBenefit:Jl,setLoginSuccess:ke,isProdEnv:Ve}),it&&o.createElement(W,{modalState:it,handler:Zt,showFooter:!1,width:"mobile"===Ot?"":"tablet"===Ot?"700px":"990px",fixedWidth:"mobile"===Ot?"":"tablet"===Ot?"700px":"990px",height:"845px",backgroundColor:"#f7f6f5",noCloseButton:!1,backDrop:!0,bodyPadding:"24px"},o.createElement(oe,{content:null===(Pl=null==he?void 0:he.optionsPopup)||void 0===Pl?void 0:Pl[0],addOptionsCallBack:e=>{ut(!0),ct(!0),_t(e)},metadata:ue,constants:fe,mainContent:he,preSelectedOptions:[],optionsResponse:mt,updateResponseList:pt,showPrice:dn,productData:Ct,offeringData:se,uniqueId:ce,deviceFlow:Ie})))};export{re as default};
1
+ import{__awaiter as e}from"../../_virtual/_tslib.js";import o,{useState as l,useRef as n,useContext as t,useEffect as i}from"react";import d from"../Dotloader/Dotloader.js";import{createPortal as a}from"react-dom";import r from"../SkeletonLoader/SkeletonLoader.js";import s from"./StaticLineTable.module.scss.js";import c from"../richtext.js";import v from"./StaticProductEntitlement.js";import u from"./StaticBenefit.js";import m from"./DynamicPriceSection.js";import p from"./CheckoutButton.js";import g from"./StaticProductDetails.js";import{LineTableBasicPropConfig as f,AssetPathPropConfig as h}from"../../services/LineTableBasicPropConfig.js";import b from"js-cookie";import{LoginBasicPropConfig as E}from"../../services/LoginBasicPropConfig.js";import w from"../login/LoginModalV2.js";import{isTimerActive as C,fetchServiceOptions as P,fetchPrice as S,findHeight as y,checkGiftOrCashback as k,getTimeUntilNextTimerEvent as T,staticCreateCart as x,combineWithVasOptions as $,combineWithSmartPhone as D}from"./Product.utils.js";import I from"../ProductDetailsV3/GiftConfigV2.js";import L from"../ProductDetailsV3/ChooseGiftV2.js";import{viewport as N,replacePlaceholder as B,getUtcTimestamp as O}from"../../utils/utils.js";import j from"./StaticProductCashback.js";import{trackNewDatalayerEvent as A}from"../../utils/AnalyticsUtils.js";import{CTABUTTONCLICK as U,GAEVENT as V,EXISTINGCUSTOMER as F,LINETABLE as M,DOWNLOADPRODUCT as R}from"../../Analytics/AnalyticsConstants.js";import G from"./TVChannelModal.js";import _ from"../LineCheckV3/LinecheckModal.js";import J from"../BenefitWrapper/BenefitsValidateWrapper.js";import W from"../PretoPost/PreToPostSubsPopup.js";import q from"../LineCheckV3/GenericModal.js";import{fetchSubscriptionData as H,trackPegaEvents as z,validateP2P as K}from"../../services/LineTableService.js";import Q from"./ExsistingSubscriptionModal.js";import{getEcomCartInfo as X}from"../../models/Analytics/items.js";import Y from"../NewLineCheck/CoverageCheckModal.js";import{API_BASE_BASEPOINT as Z}from"../../services/api-constants.js";import{AppContext as ee}from"./StaticLineTableStore/StaticLineTableProvider.js";import oe from"./OttServiceOptions/OttServiceOptionsSmallPopup.js";import le from"./StaticExclusiveBenefit.js";import ne from"../UserLoggedPricesToggle/UserLoggedPricesToggle.js";import te from"../FalconButtonV2/FalconButtonV2.js";import{ONE_ECOMMERCE_INTERNET_SUMMARY as ie}from"../../utils/constants.js";import de from"./StaticLineTabelTimer/StaticLineTabelTimer.js";import{BadgeContainer as ae}from"@sunrise-upc/sales-static-components";import re from"../GenericPopup/GenericPopup.js";const se=({content:se,offeringData:ce,uniqueId:ve,storyContent:ue,metadata:me,tabIndex:pe,cardsLength:ge,indexKey:fe,constants:he,mainContent:be,address:Ee,eligibleBundle:we,linecheckSuccessCallBack:Ce,selectedOption:Pe,fetchOfferData:Se,basicConfigUrl:ye,selectedExistingOption:ke,setLoginSuccess:Te,enableP2P:xe,lineCheckCallBack:$e,loginSuccess:De,setToggleState:Ie,toggleState:Le,noTabs:Ne,deviceFlow:Be,deviceFlowCallBack:Oe,selectedRP:je,continueCart:Ae,lineCheckOnClear:Ue,pegaIntegration:Ve,isProdEnv:Fe,deviceUltimateBundle:Me,toggleContent:Re,pricesToggleState:Ge,isShogunFlow:_e,shogunToken:Je})=>{var We,qe,He,ze,Ke,Qe,Xe,Ye,Ze,eo,oo,lo,no,to,io,ao,ro,so,co,vo,uo,mo,po,go,fo,ho,bo,Eo,wo,Co,Po,So,yo,ko,To,xo,$o,Do,Io,Lo,No,Bo,Oo,jo,Ao,Uo,Vo,Fo,Mo,Ro,Go,_o,Jo,Wo,qo,Ho,zo,Ko,Qo,Xo,Yo,Zo,el,ol,ll,nl,tl,il,dl,al,rl,sl,cl,vl,ul,ml,pl,gl,fl,hl,bl,El,wl,Cl,Pl,Sl;const[yl,kl]=l(!1),[Tl,xl]=l(!1),[$l,Dl]=l({showGift:!1,cashbackAvailable:!1}),[Il,Ll]=l(!0),[Nl,Bl]=l(!1),[Ol,jl]=l([]),[Al,Ul]=l(!1),[Vl,Fl]=l(!1),[Ml,Rl]=l(!1),[Gl,_l]=l(!1),[Jl,Wl]=l(!1),[ql,Hl]=l(!1),zl=`${ye}inf/customer-management/subscriptions`,Kl=`${ye}inf/resource-management/msisdns/pretopost/validation`,[Ql,Xl]=l([]),[Yl,Zl]=l(!1),[en,on]=l(!1),[ln,nn]=l(!1),[tn,dn]=l([]),[an,rn]=l(!1),[sn,cn]=l(!1),[vn,un]=l(!1),[mn,pn]=l(!1),[gn,fn]=l([]),[hn,bn]=l(0),[En,wn]=l(!1),Cn=n(null),[Pn,Sn]=l(null),yn=n(!1),kn=n(null),Tn=`${ye}inf/${Z.CUSTOMER}`,xn=void 0!==typeof window&&document.getElementById("static-linetable"),$n=0===(null===(We=Object.keys(se))||void 0===We?void 0:We.length),Dn=null===(Qe=null===(Ke=null===(ze=null===(He=null===(qe=null==se?void 0:se.products)||void 0===qe?void 0:qe[0])||void 0===He?void 0:He.reference)||void 0===ze?void 0:ze.content)||void 0===Ke?void 0:Ke.product)||void 0===Qe?void 0:Qe[0],In=null===(oo=null===(eo=null===(Ze=null===(Ye=null===(Xe=null==se?void 0:se.promotion)||void 0===Xe?void 0:Xe[0])||void 0===Ye?void 0:Ye.reference)||void 0===Ze?void 0:Ze.content)||void 0===eo?void 0:eo.promoDescription)||void 0===oo?void 0:oo[0],Ln=null===(lo=null==se?void 0:se.timer)||void 0===lo?void 0:lo[0],Nn=null==Ln?void 0:Ln.enableCounter,[Bn,On]=l(!!(Nn&&(null==Ln?void 0:Ln.startTime)&&(null==Ln?void 0:Ln.endTime))&&C(Ln.startTime,Ln.endTime)),jn=Boolean((null==se?void 0:se.highlightText)&&!0!==Ge&&!Bn&&!(null==se?void 0:se.badgesContainer)),An=Boolean((null==In?void 0:In.displayText)&&!(null==se?void 0:se.notShowPromotionLabel)&&!0!==Ge&&!Bn),Un=Boolean((null==se?void 0:se.badgesContainer)&&!0!==Ge&&!Bn&&!An),Vn=null==Dn?void 0:Dn.productId,Fn=null===(no=null==f?void 0:f.getInstance())||void 0===no?void 0:no.getCartUrl(),Mn=null===(to=null==h?void 0:h.getInstance())||void 0===to?void 0:to.getAssetPath(),Rn="MOBILE"===(null==ue?void 0:ue.pageType),Gn=N(),_n=t(ee);let Jn;Jn=Ee&&(null===(io=null==we?void 0:we.eligibleBundle)||void 0===io?void 0:io.includes(Vn));const Wn=null==se?void 0:se.enableTVStreamingOptionsPopUp,qn=null==se?void 0:se.enableTVStreamingOptionsStepper,Hn=null==se?void 0:se.disableDiscountedPriceToggle,zn=null==se?void 0:se.skipAccessoriesPage;E.create({baseURL:null!=ye?ye:""});let Kn=void 0!==typeof window&&b.get("sunriseAuth");Kn=Kn&&JSON.parse(Kn);const Qn=((null==ce?void 0:ce[ve])||[]).filter(e=>(null==e?void 0:e.id)===Vn),Xn=e=>{dn(e)},Yn=()=>{Ul(!0),_l(!Gl),on(!en)},Zn=()=>{var e,o,l;if(xl(!1),xe&&null==Kn)_l(!Gl),on(!en);else if(xe&&(null==Kn?void 0:Kn.siteId))it();else if(Pe===F&&(null==ke?void 0:ke.length)>0)Wl(!0);else{!!((null==be?void 0:be.enableExistingCustomer)&&null==Kn||!Kn&&!0===Ge&&(null==Re?void 0:Re.enableLoggedInPrice))?Ul(!0):ut()}if(Ve){const n=localStorage.getItem("prospectId"),t=null!==(l=null===(o=null===(e=null===window||void 0===window?void 0:window.location)||void 0===e?void 0:e.pathname)||void 0===o?void 0:o.split("/"))&&void 0!==l?l:[],i=t[t.length-1],d={eventTimestamp:O(),eventType:"PageView",pageType:"CartCreated",pageLocation:i,targetProduct:Vn};n&&z(Tn,d,n)}},et=e=>{const o=Ol.findIndex(o=>(null==e?void 0:e.giftGroupId)===(null==o?void 0:o.giftGroupId)),l=Ol;-1===o?l.push(e):l[o]=e,jl([...l])},ot=new URLSearchParams(null===(ao=null===window||void 0===window?void 0:window.location)||void 0===ao?void 0:ao.search),lt=null==ot?void 0:ot.get("selectedMsisdn"),nt=e=>{var o;1===(null==e?void 0:e.length)?(Nl?D(pt,ue,Qn,null==e?void 0:e[0],se,Ve):ut(null===(o=null==e?void 0:e[0])||void 0===o?void 0:o.msisdn),Hl(!1)):(null==e?void 0:e.length)>1?(Xl(e),nn(!ln),Hl(!1)):(on(!en),Hl(!0),Ll(!0),kl(!1))},tt=(o,l)=>e(void 0,void 0,void 0,function*(){yield K(null==o?void 0:o.msisdn,Kl).then(e=>{e&&l.push(o)}).catch(e=>{console.log("error",e)})}),it=()=>{var o;kl(!0);try{null===(o=H("PREPAID",zl))||void 0===o||o.then(o=>e(void 0,void 0,void 0,function*(){if(204==(null==o?void 0:o.subscriptionData))on(!en),Hl(!0),Ll(!0),kl(!1);else{const l=null==o?void 0:o.subscriptionData,n=l.find(e=>e.msisdn===lt);if(l){const o=[];lt?(yield tt(n,o),nt(o)):yield Promise.all(null==l?void 0:l.map(l=>e(void 0,void 0,void 0,function*(){yield tt(l,o)}))).then(e=>{nt(o)})}}})).catch(e=>{console.log("error---\x3e",e),kl(!1)})}catch(e){console.log("error---\x3e",e),kl(!1)}Zl(!0)},dt=()=>{on(!Il),_l(!1)},at=e=>{rn(!1),e&&A(V,U,{headline:"VAS POPUP CLOSE"})},rt=()=>{let e="undefined"!=typeof window&&localStorage.getItem("lineCheckResponse");we=e&&(null===JSON||void 0===JSON?void 0:JSON.parse(e)),Ee="undefined"!=typeof window&&b.get("chAddressJson"),Rl(!Ml),"function"==typeof Ce&&Ce(),ut()},st=P(null==Dn?void 0:Dn.bloks,Rn),ct=null===(ro=null==st?void 0:st[0])||void 0===ro?void 0:ro.tvProductId,vt=e=>{var o,l,n,t,i,d,a,r,s,c;const v=Ve&&(null===(n=null===(l=null===(o=null==Qn?void 0:Qn[0])||void 0===o?void 0:o.promotionInfo)||void 0===l?void 0:l[0])||void 0===n?void 0:n.id),u=Ve&&(null===(d=null===(i=null===(t=null==Qn?void 0:Qn[0])||void 0===t?void 0:t.promotionInfo)||void 0===i?void 0:i[0])||void 0===d?void 0:d.version),m=_e?{pointsBurnt:null===(r=null===(a=null==Qn?void 0:Qn[0])||void 0===a?void 0:a.rewards)||void 0===r?void 0:r.points,rewardOfferId:null===(c=null===(s=null==Qn?void 0:Qn[0])||void 0===s?void 0:s.rewards)||void 0===c?void 0:c.offerId,gloxTokenId:Je}:void 0;Qn&&Qn[0]&&(Qn[0].fromPopup=mn),ht("false"),sessionStorage.removeItem("vasPopUp"),cn(!1),x(kl,Fn,Ol,Qn,be,pt,Rn,ct,we,Ee,Rl,Ml,$e,xe,null!=lt?lt:e,se,tn,v,u,m)},ut=e=>{var o,l,n,t,i,d,a,r,s;pn(!1),xl(!1);let c=void 0!==typeof window&&b.get("sunriseAuth");const v=c&&JSON.parse(c),u=!(!(null==be?void 0:be.enableExistingCustomer)||null!=v);if(sessionStorage.removeItem(ie),(null===(o=null==be?void 0:be.linecheckData)||void 0===o?void 0:o.length)>0&&!Rn&&!Jn){return void(document.getElementById("linecheck")&&$e())}if(Jn&&!Rn&&(null===(l=null==be?void 0:be.loginData)||void 0===l?void 0:l.length)>0&&u)Ul(!0);else if(qn&&(null===(n=Qn[0])||void 0===n?void 0:n.isBundle)){let o=!1;zn||((null===(t=Qn[0])||void 0===t?void 0:t.isBundle)?null===(d=null===(i=Qn[0])||void 0===i?void 0:i.bundledOffers)||void 0===d||d.map(e=>{var l,n,t;"internet"!==(null===(l=null==e?void 0:e.productType)||void 0===l?void 0:l.toLowerCase())&&"tv"!=(null===(n=null==e?void 0:e.productType)||void 0===n?void 0:n.toLowerCase())||(null==e?void 0:e.recommendAccessory)&&(o=null==e?void 0:e.recommendAccessory),"mobile"!==(null===(t=null==e?void 0:e.productType)||void 0===t?void 0:t.toLowerCase())||(o=!1)}):(null===(a=null==Qn?void 0:Qn[0])||void 0===a?void 0:a.recommendAccessory)&&(o=null===(r=null==Qn?void 0:Qn[0])||void 0===r?void 0:r.recommendAccessory)),$(pt,Qn,se,Ve,null==Dn?void 0:Dn.productName,o),vt(e)}else Wn&&(null===(s=Qn[0])||void 0===s?void 0:s.isBundle)&&!sn?(rn(!0),cn(!0),ht("true"),window.addEventListener("beforeunload",function(e){ht("false"),sessionStorage.removeItem("vasPopUp"),cn(!1)})):(xe&&kl(!0),vt(e))},mt=(e,o)=>l=>{var n;const t=void 0!==typeof window&&b.get("one-commerce-cartId");(null==be?void 0:be.enableReplacePopup)&&t?(Cn.current=()=>e(l),yn.current=Boolean(o),Sn(null!=o?o:null===(n=null==be?void 0:be.generalReplacePopup)||void 0===n?void 0:n[0]),wn(!0)):e(l)},pt=S(Qn,Rn,null==be?void 0:be.pageType,!1,tn,Ve);i(()=>{var e,o;setTimeout(()=>{y(pe,ge)},100);const l=k(Rn?Qn:null!==(o=null===(e=null==Qn?void 0:Qn[0])||void 0===e?void 0:e.bundledOffers)&&void 0!==o?o:Qn);Dl(Object.assign({},l))},[ce,Le,tn,hn,((null==Le?void 0:Le.TV)||(null==Le?void 0:Le.gigaSpeed)||(null==Le?void 0:Le.Netflix))&&Array.isArray(Qn)&&3===(null===(co=null===(so=null==Qn?void 0:Qn[0])||void 0===so?void 0:so.bundledOffers)||void 0===co?void 0:co.length)]);const gt=()=>{((null==st?void 0:st.length)>0||Wn)&&Fl(!0)},ft=null===(vo=null==be?void 0:be.productContainer)||void 0===vo?void 0:vo[0];i(()=>{Nl&&(xe&&null==Kn?(_l(!Gl),on(!en)):xe&&(null==Kn?void 0:Kn.siteId)&&it())},[Nl]),i(()=>{var e;if(_n){const{store:o}=_n;(null===(e=null==o?void 0:o.ottOptionsApi)||void 0===e?void 0:e.length)>0&&0===(null==gn?void 0:gn.length)&&fn(null==o?void 0:o.ottOptionsApi)}},[_n]),i(()=>{if(!Nn||!(null==Ln?void 0:Ln.startTime)||!(null==Ln?void 0:Ln.endTime))return void On(!1);On(C(Ln.startTime,Ln.endTime));const e=T(Ln.startTime,Ln.endTime);if(e<=0)return;const o=setTimeout(()=>{On(C(Ln.startTime,Ln.endTime))},e);return()=>clearTimeout(o)},[Nn,null==Ln?void 0:Ln.startTime,null==Ln?void 0:Ln.endTime]),i(()=>{var e;const o=kn.current;if(!o||!(null===(e=null==se?void 0:se.timer)||void 0===e?void 0:e.length)||!Nn)return void bn(0);const l=()=>{bn(o.clientHeight)};if(l(),"undefined"==typeof ResizeObserver)return;const n=new ResizeObserver(l);return n.observe(o),()=>{n.disconnect()}},[null===(uo=null==se?void 0:se.timer)||void 0===uo?void 0:uo.length,Nn]),i(()=>{vn&&(at(),un(!0),ht("false"),sessionStorage.removeItem("vasPopUp"),cn(!1),vt())},[vn]),i(()=>{const e=()=>{const e=sessionStorage.getItem("vasPopUp");cn("true"===e)};e();const o=o=>{o.storageArea===sessionStorage&&"vasPopUp"===o.key&&e(),o.storageArea===sessionStorage&&"vasPopUp"===o.key&&null===o.newValue&&cn(!1)},l=()=>{e()};return window.addEventListener("storage",o),window.addEventListener("vasPopUpChange",l),()=>{window.removeEventListener("storage",o),window.removeEventListener("vasPopUpChange",l)}},[]);const ht=e=>{sessionStorage.setItem("vasPopUp",e);const o=new Event("vasPopUpChange");window.dispatchEvent(o)};return o.createElement("div",null,yl&&xn&&a(o.createElement(d,{keyParams:"loading"}),xn),$n&&o.createElement("div",{className:"w-75 pb-2"},o.createElement(r,null)),!$n&&we&&se&&Ee&&!Rn&&o.createElement("div",{className:s.selected},o.createElement("span",{style:{paddingBottom:"10px"}},Jn?o.createElement("span",{className:s.activeicon},o.createElement("img",{src:`${Mn}/icons/lineCheck-success.svg`,alt:"",width:24,height:24,className:s.activeicon}),o.createElement("span",null,null==he?void 0:he.subscriptionAvalTxt)):o.createElement("span",{className:s.inactiveicon},o.createElement("img",{src:`${Mn}/icons/cross_disabled.svg`,alt:"",width:24,height:24,className:s.inactiveicon}),o.createElement("span",null,null==he?void 0:he.notSubscriptionTxt)))),o.createElement("div",{className:`${!Rn&&!1===Jn&&(null===(mo=null==be?void 0:be.linecheckData)||void 0===mo?void 0:mo.length)>0&&"global/coverage-check"!==(null===(fo=null===(go=null===(po=null==be?void 0:be.linecheckData)||void 0===po?void 0:po[0])||void 0===go?void 0:go.reference)||void 0===fo?void 0:fo.default_full_slug)?s.overlay:""}\n ${Me&&!(null===(bo=null===(ho=null==Qn?void 0:Qn[0])||void 0===ho?void 0:ho.eligibility)||void 0===bo?void 0:bo.fpb)?s.disabled:""}\n `,style:{flexDirection:"column"}},o.createElement("div",{className:s.bundleproductcard},o.createElement("div",{id:`timer-section${pe}${fe}`,"data-timer-active":hn>0?"true":"false"},(null===(Eo=null==se?void 0:se.timer)||void 0===Eo?void 0:Eo.length)&&Nn?o.createElement("div",{style:{height:`${hn}px`,transition:"height 0.3s ease"}}):null),o.createElement("div",{className:`${s.productcontainer}`,style:(()=>{const e=An?In:se,o=null==e?void 0:e.showBorder,l=null==e?void 0:e.borderGradient,n=null==e?void 0:e.borderColor;return{borderColor:o&&!l?n||"":"transparent",borderWidth:o?"4px":"0px",borderStyle:o?"solid":"none",borderRadius:o?"8px":"",background:o&&l?`linear-gradient(white, white) padding-box, ${l} border-box`:void 0}})()},Un&&o.createElement(ae,{badges:se.badgesContainer}),jn&&o.createElement("div",{className:`${s.highlightText}`},null==se?void 0:se.highlightText),An&&((null==In?void 0:In.badgeContainer)?o.createElement(ae,{badges:null==In?void 0:In.badgeContainer}):o.createElement("div",{className:`${s.promocontainer}`,style:{background:null==In?void 0:In.bestSellerColor}},null==In?void 0:In.displayText)),o.createElement("div",{ref:kn,className:s.timerContainer},(null===(wo=null==se?void 0:se.timer)||void 0===wo?void 0:wo.length)&&Nn?o.createElement(de,{content:null===(Co=null==se?void 0:se.timer)||void 0===Co?void 0:Co[0],hasHighlightText:Un||An,onTimerChange:e=>{On(e)}}):null),o.createElement("div",{className:`${s.detailsection} ${s.imageFullWidthSection}`,id:`detailsectionv3${pe}${fe}`},o.createElement("div",{className:`${s.headersection}`},o.createElement("div",{className:`${s.titlesection}`},o.createElement("div",{className:`${s.productheader}`,id:`titleV3${pe}${fe}`},null==Dn?void 0:Dn.productName),o.createElement("div",null,(null===(Po=null==Dn?void 0:Dn.icon)||void 0===Po?void 0:Po.filename)&&o.createElement("img",{className:`${s.imagecontainer}`,src:null===(So=null==Dn?void 0:Dn.icon)||void 0===So?void 0:So.filename,height:15,width:20,alt:"productIcon"}))),o.createElement("div",{className:`${s.productdescription}`,id:`descriptionV3${pe}${fe}`},o.createElement(c,{content:null==Dn?void 0:Dn.description})),o.createElement("div",{className:`${s.images}`},(null===(yo=null==Dn?void 0:Dn.img)||void 0===yo?void 0:yo.filename)&&o.createElement("img",{className:`${s.imagespace} ${(null==se?void 0:se.highlightText)&&s.borderimage}`,alt:"cardimg",src:`${null===(ko=null==Dn?void 0:Dn.img)||void 0===ko?void 0:ko.filename}/m/`}))),o.createElement("div",{className:`${s.productconfig}`,id:`product-configv3${pe}${fe}`},$n?o.createElement(o.Fragment,null,o.createElement("div",{className:s.space}),o.createElement(r,{stylename:s.skeletontittle,count:1}),o.createElement(r,{stylename:s.skeletonline,count:5}),o.createElement("div",{className:s.space}),o.createElement(r,{stylename:s.skeletontittle,count:1}),o.createElement(r,{stylename:s.skeletonline,count:5})):o.createElement("div",null,(null==Dn?void 0:Dn.bloks)&&(null===(To=null==Dn?void 0:Dn.bloks)||void 0===To?void 0:To.map((e,l)=>o.createElement(v,{content:e,indexKey:l,constants:he,key:l,showModalPopup:gt,setToggleState:Ie,toggleState:Le,noTabs:Ne,mainContent:be,enableTVStreamingOptions:null==se?void 0:se.enableTVStreamingOptions,metadata:me,setTvOptionsData:Xn})))))),o.createElement("div",{className:`${s.detailsection}`,id:`benefits-price-section${pe}${fe}`},o.createElement("div",{id:`exclusive-benefits-section${pe}${fe}`},(null===(xo=null==Dn?void 0:Dn.extraBenefits)||void 0===xo?void 0:xo.length)>0&&o.createElement(le,{content:null===($o=null==Dn?void 0:Dn.extraBenefits)||void 0===$o?void 0:$o[0]})),o.createElement("div",{className:`${s.benefitssection}`,id:`benefits-section${pe}${fe}`},(null===(Do=null==Dn?void 0:Dn.benefits)||void 0===Do?void 0:Do.length)>0&&o.createElement(u,{content:null==Dn?void 0:Dn.benefits,benefitData:pt,constants:he,pricesToggleState:Ge,togglePriceLabel:null==Re?void 0:Re.togglePriceLabel})),o.createElement("br",null),o.createElement("div",{className:`${s.giftsection}`,id:`gift-section${pe}${fe}`},(null==$l?void 0:$l.showGift)&&(null===(Io=null==In?void 0:In.singleGift)||void 0===Io?void 0:Io.map((e,l)=>o.createElement(I,{content:e,key:l}))),(null==$l?void 0:$l.showGift)&&(null===(Lo=null==In?void 0:In.giftConfig)||void 0===Lo?void 0:Lo.map((e,l)=>o.createElement(L,{content:e,key:l,selectedGiftItem:et,parentPoType:Rn?"MOBILE":"HOME"}))),o.createElement("div",{className:`${s.giftsection}`,id:`cashback-section${pe}${fe}`},o.createElement(j,{uniqueProductData:Qn,mainContent:be}))),o.createElement("div",{className:`${s.ordersection}`,id:`order-section${pe}${fe}`},""===(null==pt?void 0:pt.base)?o.createElement("div",null,o.createElement(r,{stylename:s.skeletontittle})):o.createElement("div",{id:`price-section${pe}${fe}`},o.createElement(m,{priceCollection:pt,constants:he,promoText:null==Dn?void 0:Dn.promoText,deviceFlow:Be,content:se,offeringData:ce,uniqueId:ve})),!_e&&o.createElement("div",{className:`${s.discountedpricetoggleSection}`,id:`discountedpricetoggle-section${pe}${fe}`},Hn||"INLINE"!==(null==Re?void 0:Re.togglePosition)?null:o.createElement(ne,{content:Dn,index:fe,lineTable:!0,toggleContent:Re})),xe&&(null==he?void 0:he.P2PDiscountLabel)&&o.createElement("div",{className:s.longterm},null==he?void 0:he.P2PDiscountLabel),$n?o.createElement(o.Fragment,null,o.createElement(r,{stylename:s.skeletontittle,count:1}),o.createElement(r,{stylename:s.skeletonline,count:2})):o.createElement("div",{className:`${(null==ue?void 0:ue.swapButton)&&s.swapButton}`},o.createElement("div",{style:{padding:"16px 0 0 0"}},o.createElement(p,{isMobileFlow:Rn,createCartCall:(null==Be?void 0:Be.isDeviceFlow)?mt(e=>{xl(!1);Oe({setShowLoader:kl,cartEndPoint:Fn,giftItem:Ol,uniqueProductData:Qn,mainContent:be,showPrice:pt,isMobileFlow:Rn,eligibleBundle:we,address:Ee,setShowLinecheck:Rl,showLinecheck:Ml,lineCheckCallBack:$e,enableP2P:xe,msisdnn:null!=lt?lt:e,content:se,selectedRP:je,continueCart:Ae})}):mt(Rn?Zn:ut),constants:he,storyContent:ue,showPrice:pt,isAvailable:Jn,address:Ee,uniqueProductBenefits:null==Qn?void 0:Qn[0],alwaysActive:!Jn&&(null===(No=null==be?void 0:be.linecheckData)||void 0===No?void 0:No.length)>0&&"global/coverage-check"===(null===(jo=null===(Oo=null===(Bo=null==be?void 0:be.linecheckData)||void 0===Bo?void 0:Bo[0])||void 0===Oo?void 0:Oo.reference)||void 0===jo?void 0:jo.default_full_slug),flexUpgradeFreePopup:null===(Uo=null===(Ao=null==be?void 0:be.flexUpgradeFreePopup)||void 0===Ao?void 0:Ao.reference)||void 0===Uo?void 0:Uo.content,content:se,deviceUltimateBundle:Me,forceDisabled:Boolean(null===(Fo=null===(Vo=null==Qn?void 0:Qn[0])||void 0===Vo?void 0:Vo.rewards)||void 0===Fo?void 0:Fo.notEligibleReason),notEligibileReason:null===(Ro=null===(Mo=null==Qn?void 0:Qn[0])||void 0===Mo?void 0:Mo.rewards)||void 0===Ro?void 0:Ro.notEligibleReason})),!_e&&(null===(Go=null==ue?void 0:ue.addSmartPhone)||void 0===Go?void 0:Go.length)>0&&!(null==Be?void 0:Be.isDeviceFlow)&&o.createElement("div",{style:{textAlign:"center"}},(null==ue?void 0:ue.swapButton)?(null==ue?void 0:ue.ctaLabel)&&o.createElement("div",{style:{padding:"16px 0"}},o.createElement("button",{className:"primarybutton",onClick:()=>{var e;return mt(()=>D(pt,ue,Qn,"",se,Ve),null===(e=null==be?void 0:be.replacePopupWithSmartphone)||void 0===e?void 0:e[0])()}},o.createElement("span",{className:s.buttontext},null==ue?void 0:ue.ctaLabel))):!(null==se?void 0:se.redirectOnly)&&o.createElement("div",{style:{padding:"12px 0 0 0"}},o.createElement(te,{content:{buttonType:"Secondary-V1",buttonLabel:(null==se?void 0:se.ultimateBundlePromotion)?null==he?void 0:he.ultimateBundleLbl:null===(Jo=null===(_o=null==ue?void 0:ue.addSmartPhone)||void 0===_o?void 0:_o[0])||void 0===Jo?void 0:Jo.buttonLabel,buttonIcon:null===(qo=null===(Wo=null==ue?void 0:ue.addSmartPhone)||void 0===Wo?void 0:Wo[0])||void 0===qo?void 0:qo.buttonIcon,buttonAlignment:"left"},wafIdentifier:ye,style:{width:"100%"},onClick:()=>{var e;return mt(()=>xe?void Bl(!0):D(pt,ue,Qn,"",se,Ve),null===(e=null==be?void 0:be.replacePopupWithSmartphone)||void 0===e?void 0:e[0])()}}))),o.createElement("div",{className:s.productcontractduration,id:`contract-section${pe}${fe}`,style:{paddingTop:(null===(Ho=null==ue?void 0:ue.addSmartPhone)||void 0===Ho?void 0:Ho.length)>0&&!(null==Be?void 0:Be.isDeviceFlow)&&!(null==ue?void 0:ue.swapButton)&&!(null==se?void 0:se.redirectOnly)?"8px":void 0}},(null==pt?void 0:pt.contractDuration)>"1"?B(null===(zo=null==he?void 0:he.minContractDuration)||void 0===zo?void 0:zo.substring(1),[null==pt?void 0:pt.contractDuration]):null==he?void 0:he.noContractDuration)),o.createElement("div",{style:{textAlign:"center",padding:"4px"}},(null===(Ko=null==Dn?void 0:Dn.productDetails)||void 0===Ko?void 0:Ko.length)>0&&o.createElement("span",{className:s.productdetailslink,onClick:()=>{var e,o,l;xl(!Tl),A(V,R,X(Qn,"",M));const n=localStorage.getItem("prospectId"),t=null!==(l=null===(o=null===(e=null===window||void 0===window?void 0:window.location)||void 0===e?void 0:e.pathname)||void 0===o?void 0:o.split("/"))&&void 0!==l?l:[],i=t[t.length-1],d={eventTimestamp:O(),eventType:"PageView",pageType:"ProductDetails",pageLocation:i,targetProduct:Vn};n&&z(Tn,d,n)}},null==he?void 0:he.productDetailsLink)),Tl&&o.createElement(g,{content:null==Dn?void 0:Dn.productDetails,showProductDetail:Tl,setShowProductDetail:xl,constants:he,showPrice:pt,isMobileFlow:Rn,createCartCall:Rn?Zn:ut,storyContent:ue,isAvailable:Jn,address:Ee,flexUpgradeFreePopup:null===(Xo=null===(Qo=null==be?void 0:be.flexUpgradeFreePopup)||void 0===Qo?void 0:Qo.reference)||void 0===Xo?void 0:Xo.content,notEligibileReason:null===(Zo=null===(Yo=null==Qn?void 0:Qn[0])||void 0===Yo?void 0:Yo.rewards)||void 0===Zo?void 0:Zo.notEligibleReason})))))),Me&&Qn&&!(null===(ol=null===(el=null==Qn?void 0:Qn[0])||void 0===el?void 0:el.eligibility)||void 0===ol?void 0:ol.fpb)&&o.createElement("div",{className:s.disabledInfo},o.createElement(c,{content:null==he?void 0:he.fpbNotCompatibleText})),Vl&&($n?o.createElement(r,null):o.createElement(G,{content:null==st?void 0:st[0],setShowModal:Fl,showModal:Vl,constants:he})),Al&&(null===(ll=null==be?void 0:be.loginData)||void 0===ll?void 0:ll.length)>0&&xn&&a(o.createElement(w,{content:null===(nl=null==be?void 0:be.loginData)||void 0===nl?void 0:nl[0],closeLogin:()=>{Ul(!1)},metadata:me,onSuccess:()=>{Ul(!1),Te(),sessionStorage.removeItem("vasPopUp"),cn(!1),xe?it():ut()},isProdEnv:Fe}),xn),Gl&&xe&&!Al&&en&&o.createElement(q,{modalState:Il,handler:dt,showFooter:!1,width:"628px",height:"280px",backgroundColor:"#f7f6f5",noCloseButton:!1,backDrop:!0,bodyPadding:"16px"},o.createElement(W,{onClose:Yn,content:null===(dl=null===(il=null===(tl=null==be?void 0:be.productContainer)||void 0===tl?void 0:tl[0])||void 0===il?void 0:il.p2pBloks)||void 0===dl?void 0:dl[0],prepaid:!1})),xe&&Yl&&ql&&en&&o.createElement(q,{modalState:Il,handler:dt,showFooter:!1,width:"628px",height:"280px",backgroundColor:"#f7f6f5",noCloseButton:!1,backDrop:!0,bodyPadding:"16px",id:"table-product"},o.createElement(W,{onClose:Yn,content:null===(sl=null===(rl=null===(al=null==be?void 0:be.productContainer)||void 0===al?void 0:al[0])||void 0===rl?void 0:rl.p2pBloks)||void 0===sl?void 0:sl[1],prepaid:!0})),(null==Ql?void 0:Ql.length)>1&&xe&&Yl&&!ql&&ln&&o.createElement(q,{modalState:ln,handler:()=>{kl(!1),nn(!ln)},showFooter:!1,width:"628px",height:"280px",backgroundColor:"#f7f6f5",noCloseButton:!1,backDrop:!0,bodyPadding:"16px"},o.createElement(Q,{onSubmit:e=>{nn(!ln),Nl?D(pt,ue,Qn,e,se,Ve):ut(null==e?void 0:e.msisdn)},exsistingSubscriptionData:Ql,updatedContent:ft})),Ml&&(null==be?void 0:be.enableLinecheckOverlay)&&!Rn&&(null===(cl=null==be?void 0:be.linecheckData)||void 0===cl?void 0:cl.length)>0&&!xe&&"global/new-linecheck-test"===(null===(ml=null===(ul=null===(vl=null==be?void 0:be.linecheckData)||void 0===vl?void 0:vl[0])||void 0===ul?void 0:ul.reference)||void 0===ml?void 0:ml.default_full_slug)?o.createElement(_,{content:null===(pl=null==be?void 0:be.linecheckData)||void 0===pl?void 0:pl[0],onSuccess:rt,showModal:Ml,setShowModal:Rl,productName:null==Dn?void 0:Dn.productName,productId:null==Dn?void 0:Dn.productId}):Ml&&(null==be?void 0:be.enableLinecheckOverlay)&&!Rn&&(null===(gl=null==be?void 0:be.linecheckData)||void 0===gl?void 0:gl.length)>0&&!xe&&"global/coverage-check"===(null===(bl=null===(hl=null===(fl=null==be?void 0:be.linecheckData)||void 0===fl?void 0:fl[0])||void 0===hl?void 0:hl.reference)||void 0===bl?void 0:bl.default_full_slug)?o.createElement(Y,{content:null===(El=null==be?void 0:be.linecheckData)||void 0===El?void 0:El[0].reference.content.body[0],overlayIsOpen:!0,externalHandleModal:Rl,productName:null==Dn?void 0:Dn.productName,showModal:Ml,setShowModal:Rl,onSuccess:()=>{let e="undefined"!=typeof window&&localStorage.getItem("lineCheckResponse");we=e&&(null===JSON||void 0===JSON?void 0:JSON.parse(e)),Ee="undefined"!=typeof window&&b.get("chAddressJson"),"function"==typeof Ce&&Ce()},onCreateCart:rt,lineCheckOnClear:Ue,productId:null==Dn?void 0:Dn.productId}):null,Jl&&Rn&&(null===(wl=null==ue?void 0:ue.benefitsValidate)||void 0===wl?void 0:wl.length)>0&&o.createElement(J,{content:null===(Cl=null==ue?void 0:ue.benefitsValidate)||void 0===Cl?void 0:Cl[0],loginContent:null===(Pl=null==be?void 0:be.loginData)||void 0===Pl?void 0:Pl[0],metadata:me,createCartCall:ut,fetchOfferData:Se,basicConfigUrl:ye,selectedExistingOption:ke,setShowBenefit:Wl,setLoginSuccess:Te,isProdEnv:Fe}),an&&o.createElement(q,{modalState:an,handler:at,showFooter:!1,width:"mobile"===Gn?"":"tablet"===Gn?"700px":"990px",fixedWidth:"mobile"===Gn?"":"tablet"===Gn?"700px":"990px",height:"845px",backgroundColor:"#f7f6f5",noCloseButton:!1,backDrop:!0,bodyPadding:"24px"},o.createElement(oe,{content:null===(Sl=null==be?void 0:be.optionsPopup)||void 0===Sl?void 0:Sl[0],addOptionsCallBack:e=>{pn(!0),un(!0),Xn(e)},metadata:me,constants:he,mainContent:be,preSelectedOptions:[],optionsResponse:gn,updateResponseList:fn,showPrice:pt,productData:Dn,offeringData:ce,uniqueId:ve,deviceFlow:Be})),En&&Pn&&o.createElement(re,{modalState:En,onCloseHandler:()=>{Cn.current=null,wn(!1)},content:Pn,wafIdentifier:ye,onPrimaryClick:()=>{const e=Cn.current;Cn.current=null,yn.current&&b.remove("one-commerce-cartId"),yn.current=!1,wn(!1),null==e||e()},onSecondaryClick:()=>{Cn.current=null,wn(!1)}}))};export{se as default};
2
2
  //# sourceMappingURL=StaticProduct.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StaticProduct.js","sources":["../../../../src/components/StaticLineTable/StaticProduct.tsx"],"sourcesContent":["import React, { FC, useContext, useEffect, useRef, useState } from 'react';\nimport Dotloader from '../Dotloader/Dotloader';\nimport { createPortal } from 'react-dom';\nimport SkeletonLoader from '../SkeletonLoader/SkeletonLoader';\nimport Styles from './StaticLineTable.module.scss';\nimport RichText from '../richtext';\nimport StaticProductEntitlement from './StaticProductEntitlement';\nimport StaticBenefit from './StaticBenefit';\nimport DynamicPriceSection from './DynamicPriceSection';\nimport CheckoutButton from './CheckoutButton';\nimport StaticProductDetails from './StaticProductDetails';\nimport { StaticProductSchema } from './StaticProductDatatypes';\nimport {\n AssetPathPropConfig,\n LineTableBasicPropConfig\n} from '../../services/LineTableBasicPropConfig';\nimport Cookies from 'js-cookie';\nimport { LoginBasicPropConfig } from '../../services/LoginBasicPropConfig';\nimport LoginModalV2 from '../login/LoginModalV2';\nimport {\n checkGiftOrCashback,\n combineWithSmartPhone,\n combineWithVasOptions,\n fetchPrice,\n fetchServiceOptions,\n findHeight,\n isTimerActive,\n getTimeUntilNextTimerEvent,\n staticCreateCart\n} from './Product.utils';\nimport GiftConfigV2 from '../ProductDetailsV3/GiftConfigV2';\nimport ChooseGiftV2 from '../ProductDetailsV3/ChooseGiftV2';\nimport { replacePlaceholder, viewport, getUtcTimestamp } from '../../utils/utils';\nimport StaticProductCashback from './StaticProductCashback';\nimport { trackNewDatalayerEvent } from '../../utils/AnalyticsUtils';\nimport {\n CTABUTTONCLICK,\n DOWNLOADPRODUCT,\n EXISTINGCUSTOMER,\n GAEVENT,\n LINETABLE\n} from '../../Analytics/AnalyticsConstants';\nimport TVChannelModal from './TVChannelModal';\nimport LinecheckModal from '../LineCheckV3/LinecheckModal';\nimport BenefitsValidateWrapper from '../BenefitWrapper/BenefitsValidateWrapper';\nimport PreToPostSubsPopup from '../PretoPost/PreToPostSubsPopup';\nimport GenericModal from '../LineCheckV3/GenericModal';\nimport {\n fetchSubscriptionData,\n trackPegaEvents,\n validateP2P\n} from '../../services/LineTableService';\nimport ExsistingSubscriptionModal from './ExsistingSubscriptionModal';\nimport { getEcomCartInfo } from '../../models/Analytics/items';\nimport CoverageCheckModal from '../NewLineCheck/CoverageCheckModal';\n\nimport { API_BASE_BASEPOINT } from '../../services/api-constants';\nimport { AppContext } from './StaticLineTableStore/StaticLineTableProvider';\nimport OttServiceOptionsSmallPopup from './OttServiceOptions/OttServiceOptionsSmallPopup';\nimport StaticExclusiveBenefit from './StaticExclusiveBenefit';\n// US_312953\nimport UserLoggedPricesToggle from '../UserLoggedPricesToggle/UserLoggedPricesToggle';\nimport FalconButtonV2 from '../FalconButtonV2/FalconButtonV2';\nimport { ONE_ECOMMERCE_INTERNET_SUMMARY } from '../../utils/constants';\nimport StaticLineTabelTimer from './StaticLineTabelTimer/StaticLineTabelTimer';\nimport { BadgeContainer } from '@sunrise-upc/sales-static-components';\n\nconst StaticProduct: FC<StaticProductSchema> = ({\n content,\n offeringData,\n uniqueId,\n storyContent,\n metadata,\n tabIndex,\n cardsLength,\n indexKey,\n constants,\n mainContent,\n address,\n eligibleBundle,\n linecheckSuccessCallBack,\n selectedOption,\n fetchOfferData,\n basicConfigUrl,\n selectedExistingOption,\n setLoginSuccess,\n enableP2P,\n lineCheckCallBack,\n loginSuccess,\n setToggleState,\n toggleState,\n noTabs,\n deviceFlow,\n deviceFlowCallBack,\n selectedRP,\n continueCart,\n lineCheckOnClear,\n pegaIntegration,\n isProdEnv,\n deviceUltimateBundle,\n //US_31295\n toggleContent,\n pricesToggleState,\n isShogunFlow,\n shogunToken\n}) => {\n const [showLoader, setShowLoader] = useState<boolean>(false);\n const [showProductDetail, setShowProductDetail] = useState(false);\n const [showGiftOrCashback, setShowGiftOrCashback] = useState({\n showGift: false,\n cashbackAvailable: false\n });\n const [modalClick, updateModalClick] = useState(true);\n const [combine, setCombine] = useState(false);\n const [giftItem, setGiftItem] = useState<any>([]);\n const [showLogin, setShowLogin] = useState<boolean>(false);\n const [showOptions, setShowOptions] = useState<boolean>(false);\n const [showLinecheck, setShowLinecheck] = useState<boolean>(false);\n const [showP2P, setShowP2P] = useState<boolean>(false);\n const [showBenefit, setShowBenefit] = useState<boolean>(false);\n const [subscriptionFailure, setSubscriptionFailure] = useState(false);\n const endpoint = `${basicConfigUrl}inf/customer-management/subscriptions`;\n const validateEndpoint = `${basicConfigUrl}inf/resource-management/msisdns/pretopost/validation`;\n const [userSubscriptionData, setUserSubscriptionData] = useState<any>([]);\n const [afterLogin, setAfterLogin] = useState<boolean>(false);\n const [popUPClick, setModalClick] = useState<boolean>(false);\n const [p2pModal, setP2pModal] = useState<boolean>(false);\n const [tvOptions, setTvOptions] = useState<any[] | undefined>([]);\n const [displayTvOptionsPopUp, setDisplayTvOptionsPopUp] = useState<boolean>(false);\n const [alreadyShowedTvOptionsPopUp, setAlreadyShowedTvOptionsPopUp] = useState<boolean>(false);\n const [tvOptionsPopUpChanged, setTvOptionsPopUpChanged] = useState<boolean>(false);\n const [tvOptionsPopUpAddToCart, setTvOptionsPopUpAddToCart] = useState<boolean>(false);\n const [responseList, setResponseList] = useState([]);\n const [timerSpaceHeight, setTimerSpaceHeight] = useState(0);\n const timerContainerRef = useRef<HTMLDivElement | null>(null);\n const pegaEndpoint = `${basicConfigUrl}inf/${API_BASE_BASEPOINT.CUSTOMER}`;\n\n /*the portal position for the the dotloader*/\n const portalPosition: any =\n typeof window !== undefined && document.getElementById('static-linetable');\n const isSkeletonLoading = Object.keys(content)?.length === 0;\n const productData = content?.products?.[0]?.reference?.content?.product?.[0];\n const promotionData = content?.promotion?.[0]?.reference?.content?.promoDescription?.[0];\n const timerContent = content?.timer?.[0];\n const isCounterEnabled = timerContent?.enableCounter;\n const [timerIsActive, setTimerIsActive] = useState(\n isCounterEnabled && timerContent?.startTime && timerContent?.endTime\n ? isTimerActive(timerContent.startTime, timerContent.endTime)\n : false\n );\n const showHighlightText = Boolean(\n content?.highlightText && pricesToggleState !== true && !timerIsActive && !content?.badgesContainer\n );\n const showPromoContainer = Boolean(\n promotionData?.displayText &&\n !content?.notShowPromotionLabel &&\n pricesToggleState !== true &&\n !timerIsActive\n );\n\n const showBadges = Boolean(\n content?.badgesContainer && pricesToggleState !== true && !timerIsActive && !showPromoContainer\n );\n\n const id = productData?.productId;\n const cartEndPoint = LineTableBasicPropConfig?.getInstance()?.getCartUrl();\n const assetPath = AssetPathPropConfig?.getInstance()?.getAssetPath();\n const isMobileFlow = storyContent?.pageType === 'MOBILE';\n const viewPortType = viewport();\n const context = useContext(AppContext);\n let isAvailable: boolean | undefined = undefined;\n isAvailable = address && eligibleBundle?.eligibleBundle?.includes(id);\n const enableTVStreamingOptionsPopUp = content?.enableTVStreamingOptionsPopUp;\n const enableTVStreamingOptionsStepper = content?.enableTVStreamingOptionsStepper;\n const disableDiscountedPriceToggle = content?.disableDiscountedPriceToggle;\n const skipAccessoriesPage = content?.skipAccessoriesPage;\n\n LoginBasicPropConfig.create({ baseURL: basicConfigUrl ?? '' });\n\n //sunrise auth data\n let AuthData: any = typeof window !== undefined && Cookies.get('sunriseAuth');\n AuthData = AuthData && JSON.parse(AuthData);\n //offer data wrt to tab\n const uniqueProductData: any = (offeringData?.[uniqueId] || []).filter(\n (product: any) => product?.id === id\n );\n\n const setTvOptionsData = (options: any) => {\n setTvOptions(options);\n };\n\n const handleP2PClick = () => {\n setShowLogin(true);\n setShowP2P(!showP2P);\n setModalClick(!popUPClick);\n };\n\n //creacart function or login pop up\n const createCart = () => {\n setShowProductDetail(false);\n if (enableP2P && AuthData == undefined) {\n setShowP2P(!showP2P);\n setModalClick(!popUPClick);\n } else if (enableP2P && AuthData?.siteId) {\n fetchPrepaidData();\n } else if (selectedOption === EXISTINGCUSTOMER && selectedExistingOption?.length > 0) {\n setShowBenefit(true);\n } else {\n //US_31295\n const setLoginCookie =\n (mainContent?.enableExistingCustomer && AuthData == undefined) ||\n (!AuthData && pricesToggleState === true && toggleContent?.enableLoggedInPrice)\n ? true\n : false;\n setLoginCookie ? setShowLogin(true) : createCartCall();\n }\n if (pegaIntegration) {\n const prospectId = localStorage.getItem('prospectId');\n const url = window?.location?.pathname?.split('/') ?? [];\n const pathname = url[url.length - 1];\n const payload = {\n eventTimestamp: getUtcTimestamp(),\n eventType: 'PageView',\n pageType: 'CartCreated',\n pageLocation: pathname,\n // deviceType: viewPortType,#TODO - fix this values, isn't working for tablet\n targetProduct: id\n };\n prospectId && trackPegaEvents(pegaEndpoint, payload, prospectId);\n }\n };\n\n //setting the selected gift from choose gift section\n const selectedGiftItem = (item: any) => {\n const itemValue = giftItem.findIndex((gift: any) => item?.giftGroupId === gift?.giftGroupId);\n const temp = giftItem;\n if (itemValue === -1) temp.push(item);\n else temp[itemValue] = item;\n setGiftItem([...temp]);\n };\n\n // Helper method to get border styles\n const getBorderStyles = () => {\n const borderConfig = showPromoContainer ? promotionData : content;\n const showBorder = borderConfig?.showBorder;\n const borderGradient = borderConfig?.borderGradient;\n const borderColor = borderConfig?.borderColor;\n\n return {\n borderColor: showBorder && !borderGradient ? borderColor || '' : 'transparent',\n borderWidth: showBorder ? '4px' : '0px',\n borderStyle: showBorder ? 'solid' : 'none',\n borderRadius: showBorder ? '8px' : '',\n background: showBorder && borderGradient\n ? `linear-gradient(white, white) padding-box, ${borderGradient} border-box`\n : undefined,\n };\n };\n\n //queryParam for MySunrise P2P flow\n const params = new URLSearchParams(window?.location?.search);\n const queryParams = params?.get('selectedMsisdn');\n const validateNumberFcn = (value: any) => {\n // once all the prepaid numbers are validated\n if (value?.length === 1) {\n combine\n ? combineWithSmartPhone(\n showPrice,\n storyContent,\n uniqueProductData,\n value?.[0],\n content,\n pegaIntegration\n )\n : createCartCall(value?.[0]?.msisdn);\n setSubscriptionFailure(false);\n } else if (value?.length > 1) {\n setUserSubscriptionData(value);\n setP2pModal(!p2pModal);\n setSubscriptionFailure(false);\n } else {\n setModalClick(!popUPClick);\n setSubscriptionFailure(true);\n updateModalClick(true);\n setShowLoader(false);\n }\n };\n const validateFcn = async (value: any, validPrepaidNumbers: any) => {\n await validateP2P(value?.msisdn, validateEndpoint)\n .then((res) => {\n if (res) {\n validPrepaidNumbers.push(value);\n }\n })\n .catch((e: any) => {\n // eslint-disable-next-line no-console\n console.log('error', e);\n });\n };\n //prepaid subscription api and validating those for conversion\n const fetchPrepaidData = () => {\n setShowLoader(true);\n try {\n fetchSubscriptionData('PREPAID', endpoint)\n ?.then(async (resp: any) => {\n if (resp?.subscriptionData == 204) {\n setModalClick(!popUPClick);\n setSubscriptionFailure(true);\n updateModalClick(true);\n setShowLoader(false);\n } else {\n const responseData = resp?.subscriptionData;\n const queryData = responseData.find((entry: any) => entry.msisdn === queryParams);\n if (responseData) {\n const validPrepaidNumbers: any = [];\n if (queryParams) {\n await validateFcn(queryData, validPrepaidNumbers);\n validateNumberFcn(validPrepaidNumbers);\n } else {\n await Promise.all(\n responseData?.map(async (data: any) => {\n await validateFcn(data, validPrepaidNumbers);\n })\n ).then((succ) => {\n validateNumberFcn(validPrepaidNumbers);\n });\n }\n }\n }\n })\n .catch((error: any) => {\n // eslint-disable-next-line no-console\n console.log('error--->', error);\n setShowLoader(false);\n });\n } catch (err: any) {\n // eslint-disable-next-line no-console\n console.log('error--->', err);\n setShowLoader(false);\n }\n setAfterLogin(true);\n };\n\n // on login success\n const onLoginSuccess = () => {\n setShowLogin(false);\n setLoginSuccess();\n sessionStorage.removeItem('vasPopUp');\n setAlreadyShowedTvOptionsPopUp(false);\n if (enableP2P) {\n fetchPrepaidData();\n } else {\n createCartCall();\n }\n };\n\n // to close the pop up of P2P\n const handleClick = () => {\n setModalClick(!modalClick);\n setShowP2P(false);\n };\n\n // to close the pop up of P2P for success prepiad\n const handlePrepaidClick = () => {\n setShowLoader(false);\n setP2pModal(!p2pModal);\n };\n\n const closeTVOptionsModal = (event?: any) => {\n setDisplayTvOptionsPopUp(false);\n\n if (event) {\n trackNewDatalayerEvent(GAEVENT, CTABUTTONCLICK, {\n headline: 'VAS POPUP CLOSE'\n });\n }\n };\n\n //once linecheck success set linecheck pop up false and proceed to checkout section\n const linecheckSuccess = () => {\n let bundle = typeof window !== 'undefined' && localStorage.getItem('lineCheckResponse');\n eligibleBundle = bundle && JSON?.parse(bundle);\n address = typeof window !== 'undefined' && Cookies.get('chAddressJson');\n typeof linecheckSuccessCallBack == 'function' && linecheckSuccessCallBack();\n };\n\n //once linecheck success set linecheck pop up false and proceed to checkout section\n const linecheckSuccessAndCart = () => {\n let bundle = typeof window !== 'undefined' && localStorage.getItem('lineCheckResponse');\n eligibleBundle = bundle && JSON?.parse(bundle);\n address = typeof window !== 'undefined' && Cookies.get('chAddressJson');\n setShowLinecheck(!showLinecheck);\n typeof linecheckSuccessCallBack == 'function' && linecheckSuccessCallBack();\n createCartCall();\n };\n\n //service Option set for TV\n\n const serviceOption = fetchServiceOptions(productData?.bloks, isMobileFlow);\n\n const radioValue = serviceOption?.[0]?.tvProductId;\n\n const createCartCallAction = (msisdn?: string) => {\n const discountRef = pegaIntegration && uniqueProductData?.[0]?.promotionInfo?.[0]?.id;\n const discountVersion = pegaIntegration && uniqueProductData?.[0]?.promotionInfo?.[0]?.version;\n\n // Shogun / rewards (loyalty) flow: attach the pointsBurnt note so the\n // backend can settle the loyalty burn during cart creation. The value\n // comes from the offer response under `rewards.points`.\n const rewardsInfo = isShogunFlow\n ? { pointsBurnt: uniqueProductData?.[0]?.rewards?.points, rewardOfferId: uniqueProductData?.[0]?.rewards?.offerId, gloxTokenId: shogunToken }\n : undefined;\n\n // US 317400- vas options pop tracking\n if (uniqueProductData && uniqueProductData[0]) {\n uniqueProductData[0].fromPopup = tvOptionsPopUpAddToCart;\n }\n updateVasPopUp('false');\n sessionStorage.removeItem('vasPopUp');\n setAlreadyShowedTvOptionsPopUp(false);\n\n staticCreateCart(\n setShowLoader,\n cartEndPoint,\n giftItem,\n uniqueProductData,\n mainContent,\n showPrice,\n isMobileFlow,\n radioValue,\n eligibleBundle,\n address,\n setShowLinecheck,\n showLinecheck,\n lineCheckCallBack,\n enableP2P,\n queryParams ?? msisdn,\n content,\n tvOptions,\n discountRef,\n discountVersion,\n rewardsInfo\n );\n };\n //cart creation\n const createCartCall = (msisdn?: string) => {\n setTvOptionsPopUpAddToCart(false);\n setShowProductDetail(false);\n let AuthData: any = typeof window !== undefined && Cookies.get('sunriseAuth');\n const AuthDataNew = AuthData && JSON.parse(AuthData);\n const setLoginCookie =\n mainContent?.enableExistingCustomer && AuthDataNew == undefined ? true : false;\n sessionStorage.removeItem(ONE_ECOMMERCE_INTERNET_SUMMARY);\n if (mainContent?.linecheckData?.length > 0 && !isMobileFlow && !isAvailable) {\n // setShowLinecheck(true);\n const lineCheckElement = document.getElementById('linecheck');\n if (lineCheckElement) {\n lineCheckCallBack();\n }\n return;\n } else if (\n isAvailable &&\n !isMobileFlow &&\n mainContent?.loginData?.length > 0 &&\n setLoginCookie\n ) {\n setShowLogin(true);\n } else if (enableTVStreamingOptionsStepper && uniqueProductData[0]?.isBundle) {\n let recommendAccessory = false;\n\n if (!skipAccessoriesPage) {\n /**Check if bundle or Internet and add it to cart request*/\n if (uniqueProductData[0]?.isBundle) {\n uniqueProductData[0]?.bundledOffers?.map((item: any) => {\n if (\n item?.productType?.toLowerCase() === 'internet' ||\n item?.productType?.toLowerCase() == 'tv'\n ) {\n if (item?.recommendAccessory) {\n recommendAccessory = item?.recommendAccessory;\n }\n }\n // setting to false incase of Mobile product Type as it is currently out of scope\n if (item?.productType?.toLowerCase() === 'mobile') {\n recommendAccessory = false;\n return;\n }\n });\n } else {\n /**Add standlone product such as internet to cart request*/\n if (uniqueProductData?.[0]?.recommendAccessory) {\n recommendAccessory = uniqueProductData?.[0]?.recommendAccessory;\n }\n }\n }\n\n combineWithVasOptions(\n showPrice,\n uniqueProductData,\n content,\n pegaIntegration,\n productData?.productName,\n recommendAccessory\n );\n createCartCallAction(msisdn);\n } else if (\n enableTVStreamingOptionsPopUp &&\n uniqueProductData[0]?.isBundle &&\n !alreadyShowedTvOptionsPopUp\n ) {\n setDisplayTvOptionsPopUp(true);\n setAlreadyShowedTvOptionsPopUp(true);\n updateVasPopUp('true');\n\n window.addEventListener('beforeunload', function (event) {\n updateVasPopUp('false');\n sessionStorage.removeItem('vasPopUp');\n setAlreadyShowedTvOptionsPopUp(false);\n });\n } else {\n //for mobile p2p\n if (enableP2P) {\n setShowLoader(true);\n }\n createCartCallAction(msisdn);\n }\n };\n\n //cart creation callback For device first flow\n const deviceFirstFlowCreateCartCallback = (msisdn?: string) => {\n setShowProductDetail(false);\n const msisdnn = queryParams ?? msisdn;\n const deviceFirstFlowCartObj = {\n setShowLoader,\n cartEndPoint,\n giftItem,\n uniqueProductData,\n mainContent,\n showPrice,\n isMobileFlow,\n eligibleBundle,\n address,\n setShowLinecheck,\n showLinecheck,\n lineCheckCallBack,\n enableP2P,\n msisdnn,\n content,\n selectedRP,\n continueCart\n };\n deviceFlowCallBack(deviceFirstFlowCartObj);\n };\n\n // after 1 prepaid numbers selection from existingp2pmodal\n const onSelectSubscriptionPreToPost = (value: any) => {\n setP2pModal(!p2pModal);\n combine\n ? combineWithSmartPhone(\n showPrice,\n storyContent,\n uniqueProductData,\n value,\n content,\n pegaIntegration\n )\n : createCartCall(value?.msisdn);\n };\n //show price calculation\n const showPrice = fetchPrice(\n uniqueProductData,\n isMobileFlow,\n mainContent?.pageType,\n false,\n tvOptions,\n pegaIntegration\n );\n\n //card height calculation and gift & cashback check on change of offer data\n //to calculate the height when the tvOptions is added and removed\n useEffect(() => {\n setTimeout(() => {\n findHeight(tabIndex, cardsLength);\n }, 100);\n const result = checkGiftOrCashback(\n isMobileFlow\n ? uniqueProductData\n : (uniqueProductData?.[0]?.bundledOffers ?? uniqueProductData)\n );\n setShowGiftOrCashback({ ...result });\n }, [\n offeringData,\n toggleState,\n tvOptions,\n timerSpaceHeight,\n (toggleState?.TV || toggleState?.gigaSpeed || toggleState?.Netflix) &&\n Array.isArray(uniqueProductData) &&\n uniqueProductData?.[0]?.bundledOffers?.length === 3\n ]);\n\n //product details pop up\n const showDetailsModal = () => {\n setShowProductDetail(!showProductDetail);\n //Analytics Product Details tracking\n let offerData = uniqueProductData;\n trackNewDatalayerEvent(GAEVENT, DOWNLOADPRODUCT, getEcomCartInfo(offerData, '', LINETABLE));\n const prospectId = localStorage.getItem('prospectId');\n const url = window?.location?.pathname?.split('/') ?? [];\n const pathname = url[url.length - 1];\n const payload = {\n eventTimestamp: getUtcTimestamp(),\n eventType: 'PageView',\n pageType: 'ProductDetails',\n pageLocation: pathname,\n // deviceType: viewPortType, #TODO - fix this values, isn't working for tablet\n targetProduct: id\n };\n prospectId && trackPegaEvents(pegaEndpoint, payload, prospectId);\n };\n\n //TV service option\n const showModalPopup = () => {\n if (serviceOption?.length > 0 || enableTVStreamingOptionsPopUp) {\n setShowOptions(true);\n }\n };\n const updatedContent = mainContent?.productContainer?.[0];\n\n // set the combine to true for p2p\n const combineP2P = () => {\n setCombine(true);\n };\n\n // to trigger on click of combinewith smartphone\n useEffect(() => {\n if (combine) {\n if (enableP2P && AuthData == undefined) {\n setShowP2P(!showP2P);\n setModalClick(!popUPClick);\n } else if (enableP2P && AuthData?.siteId) {\n fetchPrepaidData();\n }\n }\n }, [combine]);\n\n useEffect(() => {\n if (context) {\n const { store } = context;\n if (store?.ottOptionsApi?.length > 0 && responseList?.length === 0) {\n setResponseList(store?.ottOptionsApi);\n }\n }\n }, [context]);\n\n useEffect(() => {\n if (!isCounterEnabled || !timerContent?.startTime || !timerContent?.endTime) {\n setTimerIsActive(false);\n return;\n }\n\n setTimerIsActive(isTimerActive(timerContent.startTime, timerContent.endTime));\n\n const delay = getTimeUntilNextTimerEvent(timerContent.startTime, timerContent.endTime);\n if (delay <= 0) return;\n\n const timeout = setTimeout(() => {\n setTimerIsActive(isTimerActive(timerContent.startTime, timerContent.endTime));\n }, delay);\n\n return () => clearTimeout(timeout);\n }, [isCounterEnabled, timerContent?.startTime, timerContent?.endTime]);\n\n useEffect(() => {\n const timerElement = timerContainerRef.current;\n if (!timerElement || !content?.timer?.length || !isCounterEnabled) {\n setTimerSpaceHeight(0);\n return;\n }\n\n const updateTimerSpaceHeight = () => {\n setTimerSpaceHeight(timerElement.clientHeight);\n };\n\n updateTimerSpaceHeight();\n\n if (typeof ResizeObserver === 'undefined') {\n return;\n }\n\n const resizeObserver = new ResizeObserver(updateTimerSpaceHeight);\n resizeObserver.observe(timerElement);\n\n return () => {\n resizeObserver.disconnect();\n };\n }, [content?.timer?.length, isCounterEnabled]);\n\n // to trigger on click tv option pop up closed\n useEffect(() => {\n if (tvOptionsPopUpChanged) {\n closeTVOptionsModal();\n setTvOptionsPopUpChanged(true);\n updateVasPopUp('false');\n sessionStorage.removeItem('vasPopUp');\n setAlreadyShowedTvOptionsPopUp(false);\n createCartCallAction();\n }\n }, [tvOptionsPopUpChanged]);\n\n //US 314008 - only show vas pop up for first time user clicked order now\n useEffect(() => {\n const checkVasPopUp = () => {\n const vasPopUp = sessionStorage.getItem('vasPopUp');\n\n setAlreadyShowedTvOptionsPopUp(vasPopUp === 'true');\n };\n\n checkVasPopUp();\n\n const handleStorageChange = (event: StorageEvent) => {\n if (event.storageArea === sessionStorage && event.key === 'vasPopUp') {\n checkVasPopUp();\n }\n // If vasPopUp is removed (deleted)\n if (\n event.storageArea === sessionStorage &&\n event.key === 'vasPopUp' &&\n event.newValue === null\n ) {\n setAlreadyShowedTvOptionsPopUp(false);\n }\n };\n\n const handleCustomEvent = () => {\n checkVasPopUp();\n };\n window.addEventListener('storage', handleStorageChange);\n window.addEventListener('vasPopUpChange', handleCustomEvent);\n \n return () => {\n window.removeEventListener('storage', handleStorageChange);\n window.removeEventListener('vasPopUpChange', handleCustomEvent);\n };\n \n }, []);\n\n const updateVasPopUp = (value: string) => {\n sessionStorage.setItem('vasPopUp', value);\n const event = new Event('vasPopUpChange');\n window.dispatchEvent(event);\n };\n\n return (\n <div>\n {showLoader &&\n portalPosition &&\n createPortal(<Dotloader keyParams='loading' />, portalPosition)}\n {isSkeletonLoading && (\n <div className='w-75 pb-2'>\n <SkeletonLoader />\n </div>\n )}\n {!isSkeletonLoading && eligibleBundle && content && address && !isMobileFlow && (\n <div className={Styles.selected}>\n <span style={{ paddingBottom: '10px' }}>\n {!isAvailable ? (\n <span className={Styles.inactiveicon}>\n <img\n src={`${assetPath}/icons/cross_disabled.svg`}\n alt=''\n width={24}\n height={24}\n className={Styles.inactiveicon}\n />\n <span>{constants?.notSubscriptionTxt}</span>\n </span>\n ) : (\n <span className={Styles.activeicon}>\n <img\n src={`${assetPath}/icons/lineCheck-success.svg`}\n alt=''\n width={24}\n height={24}\n className={Styles.activeicon}\n />\n <span>{constants?.subscriptionAvalTxt}</span>\n </span>\n )}\n </span>\n </div>\n )}\n\n <div\n className={`${\n !isMobileFlow &&\n isAvailable === false &&\n mainContent?.linecheckData?.length > 0 &&\n mainContent?.linecheckData?.[0]?.reference?.default_full_slug !== 'global/coverage-check'\n ? Styles.overlay\n : ''\n }\n ${deviceUltimateBundle && !uniqueProductData?.[0]?.eligibility?.fpb ? Styles.disabled : ''}\n `}\n style={{ flexDirection: 'column' }}\n >\n <div className={Styles.bundleproductcard}>\n <div\n id={`timer-section${tabIndex}${indexKey}`}\n data-timer-active={timerSpaceHeight > 0 ? 'true' : 'false'}\n >\n {content?.timer?.length && isCounterEnabled ? (\n <div style={{ height: `${timerSpaceHeight}px`, transition: 'height 0.3s ease' }} />\n ) : null}\n </div>\n <div\n className={`${Styles.productcontainer}`}\n style={getBorderStyles()}\n > \n {showBadges &&(\n <BadgeContainer badges={content.badgesContainer}/>\n )}\n {showHighlightText && (\n <div className={`${Styles.highlightText}`}>{content?.highlightText}</div>\n )}\n \n {showPromoContainer && (\n promotionData?.badgeContainer ? (\n <BadgeContainer badges={promotionData?.badgeContainer}/>\n ) : (\n <div\n className={`${Styles.promocontainer}`}\n style={{\n background: promotionData?.bestSellerColor\n }}\n >\n {promotionData?.displayText}\n </div>\n )\n )}\n <div ref={timerContainerRef} className={Styles.timerContainer}>\n {content?.timer?.length && isCounterEnabled ? (\n <StaticLineTabelTimer\n content={content?.timer?.[0]}\n hasHighlightText={ showBadges || showPromoContainer}\n onTimerChange={(active) => {\n setTimerIsActive(active);\n }}\n />\n ) : null}\n </div>\n <div\n className={`${Styles.detailsection} ${Styles.imageFullWidthSection}`}\n id={`detailsectionv3${tabIndex}${indexKey}`}\n >\n <div className={`${Styles.headersection}`}>\n <div className={`${Styles.titlesection}`}>\n <div className={`${Styles.productheader}`} id={`titleV3${tabIndex}${indexKey}`}>\n {productData?.productName}\n </div>\n <div>\n {productData?.icon?.filename && (\n <img\n className={`${Styles.imagecontainer}`}\n src={productData?.icon?.filename}\n height={15}\n width={20}\n alt='productIcon'\n />\n )}\n </div>\n </div>\n <div\n className={`${Styles.productdescription}`}\n id={`descriptionV3${tabIndex}${indexKey}`}\n >\n <RichText content={productData?.description} />\n </div>\n {/* Image(map) */}\n <div className={`${Styles.images}`}>\n {productData?.img?.filename && (\n <img\n className={`${Styles.imagespace} ${\n content?.highlightText && Styles.borderimage\n }`}\n alt='cardimg'\n src={`${productData?.img?.filename}/m/`}\n />\n )}\n </div>\n </div>\n {/* product entitlement section */}\n <div\n className={`${Styles.productconfig}`}\n id={`product-configv3${tabIndex}${indexKey}`}\n >\n {isSkeletonLoading ? (\n <>\n <div className={Styles.space}></div>\n <SkeletonLoader stylename={Styles.skeletontittle} count={1} />\n <SkeletonLoader stylename={Styles.skeletonline} count={5} />\n <div className={Styles.space}></div>\n <SkeletonLoader stylename={Styles.skeletontittle} count={1} />\n <SkeletonLoader stylename={Styles.skeletonline} count={5} />\n </>\n ) : (\n <div>\n {productData?.bloks &&\n productData?.bloks?.map((entitle: any, index: number) => {\n return (\n <StaticProductEntitlement\n content={entitle}\n indexKey={index}\n constants={constants}\n key={index}\n showModalPopup={showModalPopup}\n setToggleState={setToggleState}\n toggleState={toggleState}\n noTabs={noTabs}\n mainContent={mainContent}\n enableTVStreamingOptions={content?.enableTVStreamingOptions}\n metadata={metadata}\n setTvOptionsData={setTvOptionsData}\n />\n );\n })}\n </div>\n )}\n </div>\n </div>\n {/* benefits section */}\n <div\n className={`${Styles.detailsection}`}\n id={`benefits-price-section${tabIndex}${indexKey}`}\n >\n <div id={`exclusive-benefits-section${tabIndex}${indexKey}`}>\n {productData?.extraBenefits?.length > 0 && (\n <StaticExclusiveBenefit content={productData?.extraBenefits?.[0]} />\n )}\n </div>\n <div\n className={`${Styles.benefitssection}`}\n id={`benefits-section${tabIndex}${indexKey}`}\n >\n {productData?.benefits?.length > 0 && (\n <StaticBenefit\n content={productData?.benefits}\n benefitData={showPrice}\n constants={constants}\n //US_31295\n pricesToggleState={pricesToggleState}\n togglePriceLabel={toggleContent?.togglePriceLabel}\n />\n )}\n </div>\n <br />\n\n {/* gift or cashback section */}\n <div className={`${Styles.giftsection}`} id={`gift-section${tabIndex}${indexKey}`}>\n {showGiftOrCashback?.showGift &&\n promotionData?.singleGift?.map((item: any, index: number) => {\n return <GiftConfigV2 content={item} key={index} />;\n })}\n {showGiftOrCashback?.showGift &&\n promotionData?.giftConfig?.map((item: any, index: number) => {\n return (\n <ChooseGiftV2\n content={item}\n key={index}\n selectedGiftItem={selectedGiftItem}\n parentPoType={isMobileFlow ? 'MOBILE' : 'HOME'}\n />\n );\n })}\n <div\n className={`${Styles.giftsection}`}\n id={`cashback-section${tabIndex}${indexKey}`}\n >\n <StaticProductCashback\n uniqueProductData={uniqueProductData}\n mainContent={mainContent}\n />\n </div>\n </div>\n {/* price section */}\n <div className={`${Styles.ordersection}`} id={`order-section${tabIndex}${indexKey}`}>\n {showPrice?.base === '' ? (\n <div>\n <SkeletonLoader stylename={Styles.skeletontittle} />\n </div>\n ) : (\n <div id={`price-section${tabIndex}${indexKey}`}>\n <DynamicPriceSection\n priceCollection={showPrice}\n constants={constants}\n promoText={productData?.promoText}\n deviceFlow={deviceFlow}\n content={content}\n offeringData={offeringData}\n uniqueId={uniqueId}\n />\n </div>\n )}\n\n {/* US_312953 */}\n {!isShogunFlow && (\n <div\n className={`${Styles.discountedpricetoggleSection}`}\n id={`discountedpricetoggle-section${tabIndex}${indexKey}`}\n >\n {!disableDiscountedPriceToggle && toggleContent?.togglePosition === 'INLINE' ? (\n <UserLoggedPricesToggle\n content={productData}\n index={indexKey}\n lineTable={true}\n toggleContent={toggleContent}\n />\n ) : null}\n </div>\n )}\n {/*END US_312953 */}\n\n {/* Longterm text */}\n {enableP2P && constants?.P2PDiscountLabel && (\n <div className={Styles.longterm}>{constants?.P2PDiscountLabel}</div>\n )}\n {/* proceed to checkout section */}\n {isSkeletonLoading ? (\n <>\n <SkeletonLoader stylename={Styles.skeletontittle} count={1} />\n <SkeletonLoader stylename={Styles.skeletonline} count={2} />\n </>\n ) : (\n <div className={`${storyContent?.swapButton && Styles.swapButton}`}>\n <div style={{ padding: '16px 0 0 0' }}>\n <CheckoutButton\n isMobileFlow={isMobileFlow}\n createCartCall={\n deviceFlow?.isDeviceFlow\n ? deviceFirstFlowCreateCartCallback\n : isMobileFlow\n ? createCart\n : createCartCall\n }\n constants={constants}\n storyContent={storyContent}\n showPrice={showPrice}\n isAvailable={isAvailable}\n address={address}\n uniqueProductBenefits={uniqueProductData?.[0]}\n alwaysActive={\n !isAvailable &&\n mainContent?.linecheckData?.length > 0 &&\n mainContent?.linecheckData?.[0]?.reference?.default_full_slug ===\n 'global/coverage-check'\n }\n flexUpgradeFreePopup={mainContent?.flexUpgradeFreePopup?.reference?.content}\n content={content}\n deviceUltimateBundle={deviceUltimateBundle}\n forceDisabled={Boolean(uniqueProductData?.[0]?.rewards?.notEligibleReason)}\n notEligibileReason={uniqueProductData?.[0]?.rewards?.notEligibleReason}\n />\n </div>\n {/* combined with smartphone section */}\n {!isShogunFlow && storyContent?.addSmartPhone?.length > 0 && !deviceFlow?.isDeviceFlow && (\n <div style={{ textAlign: 'center' }}>\n {storyContent?.swapButton\n ? storyContent?.ctaLabel && (\n <div style={{ padding: '16px 0' }}>\n <button\n className={`primarybutton`}\n onClick={() =>\n combineWithSmartPhone(\n showPrice,\n storyContent,\n uniqueProductData,\n '',\n content,\n pegaIntegration\n )\n }\n >\n <span className={Styles.buttontext}>\n {storyContent?.ctaLabel}\n </span>\n </button>\n </div>\n )\n : !content?.redirectOnly && (\n <div style={{ padding: '12px 0 0 0' }}>\n <FalconButtonV2\n content={{\n buttonType: 'Secondary-V1',\n buttonLabel: content?.ultimateBundlePromotion\n ? constants?.ultimateBundleLbl\n : storyContent?.addSmartPhone?.[0]?.buttonLabel,\n buttonIcon: storyContent?.addSmartPhone?.[0]?.buttonIcon,\n buttonAlignment: 'left'\n }}\n wafIdentifier={basicConfigUrl}\n style={{ width: '100%' }}\n onClick={() =>\n enableP2P\n ? combineP2P()\n : combineWithSmartPhone(\n showPrice,\n storyContent,\n uniqueProductData,\n '',\n content,\n pegaIntegration\n )\n }\n />\n </div>\n )}\n </div>\n )}\n <div\n className={Styles.productcontractduration}\n id={`contract-section${tabIndex}${indexKey}`}\n style={{\n paddingTop:\n storyContent?.addSmartPhone?.length > 0 &&\n !deviceFlow?.isDeviceFlow &&\n !storyContent?.swapButton &&\n !content?.redirectOnly\n ? '8px'\n : undefined\n }}\n >\n {showPrice?.contractDuration > '1'\n ? replacePlaceholder(constants?.minContractDuration?.substring(1), [\n showPrice?.contractDuration\n ])\n : constants?.noContractDuration}\n </div>\n </div>\n )}\n {/* product details section */}\n <div style={{ textAlign: 'center', padding: '4px' }}>\n {productData?.productDetails?.length > 0 && (\n <span className={Styles.productdetailslink} onClick={showDetailsModal}>\n {constants?.productDetailsLink}\n </span>\n )}\n </div>\n {showProductDetail && (\n <StaticProductDetails\n content={productData?.productDetails}\n showProductDetail={showProductDetail}\n setShowProductDetail={setShowProductDetail}\n constants={constants}\n showPrice={showPrice}\n isMobileFlow={isMobileFlow}\n createCartCall={isMobileFlow ? createCart : createCartCall}\n storyContent={storyContent}\n isAvailable={isAvailable}\n address={address}\n flexUpgradeFreePopup={mainContent?.flexUpgradeFreePopup?.reference?.content}\n notEligibileReason={uniqueProductData?.[0]?.rewards?.notEligibleReason}\n />\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {deviceUltimateBundle && uniqueProductData && !uniqueProductData?.[0]?.eligibility?.fpb && (\n <div className={Styles.disabledInfo}>\n <RichText content={constants?.fpbNotCompatibleText} />\n </div>\n )}\n\n {showOptions &&\n (isSkeletonLoading ? (\n <SkeletonLoader />\n ) : (\n <TVChannelModal\n content={serviceOption?.[0]}\n setShowModal={setShowOptions}\n showModal={showOptions}\n constants={constants}\n />\n ))}\n\n {/* login pop up existing customer benefit without login on click of proceed to checkout */}\n {showLogin &&\n mainContent?.loginData?.length > 0 &&\n portalPosition &&\n createPortal(\n <LoginModalV2\n content={mainContent?.loginData?.[0]}\n closeLogin={() => {\n setShowLogin(false);\n }}\n metadata={metadata}\n onSuccess={onLoginSuccess}\n isProdEnv={isProdEnv}\n />,\n portalPosition\n )}\n\n {/* P2P flow first screen to select login */}\n {showP2P && enableP2P && !showLogin && popUPClick && (\n <GenericModal\n modalState={modalClick}\n handler={handleClick}\n showFooter={false}\n width={'628px'}\n height='280px'\n backgroundColor='#f7f6f5'\n noCloseButton={false}\n backDrop={true}\n bodyPadding='16px'\n >\n <PreToPostSubsPopup\n onClose={handleP2PClick}\n content={mainContent?.productContainer?.[0]?.p2pBloks?.[0]}\n prepaid={false}\n />\n </GenericModal>\n )}\n\n {/* P2P flow error screen if the customer is not prepaid customer */}\n {enableP2P && afterLogin && subscriptionFailure && popUPClick && (\n <GenericModal\n modalState={modalClick}\n handler={handleClick}\n showFooter={false}\n width={'628px'}\n height='280px'\n backgroundColor='#f7f6f5'\n noCloseButton={false}\n backDrop={true}\n bodyPadding='16px'\n id='table-product'\n >\n <PreToPostSubsPopup\n onClose={handleP2PClick}\n content={mainContent?.productContainer?.[0]?.p2pBloks?.[1]}\n prepaid={true}\n />\n </GenericModal>\n )}\n\n {/* p2p flow after successfully logged in prepaid customer to select a number for P2P*/}\n {userSubscriptionData?.length > 1 &&\n enableP2P &&\n afterLogin &&\n !subscriptionFailure &&\n p2pModal && (\n <GenericModal\n modalState={p2pModal}\n handler={handlePrepaidClick}\n showFooter={false}\n width={'628px'}\n height='280px'\n backgroundColor='#f7f6f5'\n noCloseButton={false}\n backDrop={true}\n bodyPadding='16px'\n >\n <ExsistingSubscriptionModal\n onSubmit={onSelectSubscriptionPreToPost}\n exsistingSubscriptionData={userSubscriptionData}\n updatedContent={updatedContent}\n />\n </GenericModal>\n )}\n\n {/* lincheck modal */}\n {showLinecheck &&\n mainContent?.enableLinecheckOverlay &&\n !isMobileFlow &&\n mainContent?.linecheckData?.length > 0 &&\n !enableP2P &&\n mainContent?.linecheckData?.[0]?.reference?.default_full_slug ===\n 'global/new-linecheck-test' ? (\n <LinecheckModal\n content={mainContent?.linecheckData?.[0]}\n onSuccess={linecheckSuccessAndCart}\n showModal={showLinecheck}\n setShowModal={setShowLinecheck}\n productName={productData?.productName}\n productId={productData?.productId}\n />\n ) : showLinecheck &&\n mainContent?.enableLinecheckOverlay &&\n !isMobileFlow &&\n mainContent?.linecheckData?.length > 0 &&\n !enableP2P &&\n mainContent?.linecheckData?.[0]?.reference?.default_full_slug ===\n 'global/coverage-check' ? (\n <CoverageCheckModal\n content={mainContent?.linecheckData?.[0].reference.content.body[0]}\n overlayIsOpen={true}\n externalHandleModal={setShowLinecheck}\n productName={productData?.productName}\n showModal={showLinecheck}\n setShowModal={setShowLinecheck}\n onSuccess={linecheckSuccess}\n onCreateCart={linecheckSuccessAndCart}\n lineCheckOnClear={lineCheckOnClear}\n productId={productData?.productId}\n />\n ) : null}\n {/* benefit validate */}\n {showBenefit && isMobileFlow && storyContent?.benefitsValidate?.length > 0 && (\n <BenefitsValidateWrapper\n content={storyContent?.benefitsValidate?.[0]}\n loginContent={mainContent?.loginData?.[0]}\n metadata={metadata}\n createCartCall={createCartCall}\n fetchOfferData={fetchOfferData}\n basicConfigUrl={basicConfigUrl}\n selectedExistingOption={selectedExistingOption}\n setShowBenefit={setShowBenefit}\n setLoginSuccess={setLoginSuccess}\n isProdEnv={isProdEnv}\n />\n )}\n\n {/* Display tv options on pop up after clicking order now button*/}\n {displayTvOptionsPopUp && (\n <GenericModal\n modalState={displayTvOptionsPopUp}\n handler={closeTVOptionsModal}\n showFooter={false}\n width={viewPortType === 'mobile' ? '' : viewPortType === 'tablet' ? '700px' : '990px'}\n fixedWidth={\n viewPortType === 'mobile' ? '' : viewPortType === 'tablet' ? '700px' : '990px'\n }\n height='845px'\n backgroundColor='#f7f6f5'\n noCloseButton={false}\n backDrop={true}\n bodyPadding='24px'\n >\n <OttServiceOptionsSmallPopup\n content={mainContent?.optionsPopup?.[0]}\n addOptionsCallBack={(val: any) => {\n setTvOptionsPopUpAddToCart(true);\n setTvOptionsPopUpChanged(true);\n setTvOptionsData(val);\n }}\n metadata={metadata}\n constants={constants}\n mainContent={mainContent}\n preSelectedOptions={[]}\n optionsResponse={responseList}\n updateResponseList={setResponseList}\n showPrice={showPrice}\n productData={productData}\n offeringData={offeringData}\n uniqueId={uniqueId}\n deviceFlow={deviceFlow}\n />\n </GenericModal>\n )}\n </div>\n );\n};\n\nexport default StaticProduct;\n"],"names":["StaticProduct","content","offeringData","uniqueId","storyContent","metadata","tabIndex","cardsLength","indexKey","constants","mainContent","address","eligibleBundle","linecheckSuccessCallBack","selectedOption","fetchOfferData","basicConfigUrl","selectedExistingOption","setLoginSuccess","enableP2P","lineCheckCallBack","loginSuccess","setToggleState","toggleState","noTabs","deviceFlow","deviceFlowCallBack","selectedRP","continueCart","lineCheckOnClear","pegaIntegration","isProdEnv","deviceUltimateBundle","toggleContent","pricesToggleState","isShogunFlow","shogunToken","showLoader","setShowLoader","useState","showProductDetail","setShowProductDetail","showGiftOrCashback","setShowGiftOrCashback","showGift","cashbackAvailable","modalClick","updateModalClick","combine","setCombine","giftItem","setGiftItem","showLogin","setShowLogin","showOptions","setShowOptions","showLinecheck","setShowLinecheck","showP2P","setShowP2P","showBenefit","setShowBenefit","subscriptionFailure","setSubscriptionFailure","endpoint","validateEndpoint","userSubscriptionData","setUserSubscriptionData","afterLogin","setAfterLogin","popUPClick","setModalClick","p2pModal","setP2pModal","tvOptions","setTvOptions","displayTvOptionsPopUp","setDisplayTvOptionsPopUp","alreadyShowedTvOptionsPopUp","setAlreadyShowedTvOptionsPopUp","tvOptionsPopUpChanged","setTvOptionsPopUpChanged","tvOptionsPopUpAddToCart","setTvOptionsPopUpAddToCart","responseList","setResponseList","timerSpaceHeight","setTimerSpaceHeight","timerContainerRef","useRef","pegaEndpoint","API_BASE_BASEPOINT","CUSTOMER","portalPosition","undefined","window","document","getElementById","isSkeletonLoading","_a","Object","keys","length","productData","_f","_e","_d","_c","_b","products","reference","product","promotionData","_l","_k","_j","_h","_g","promotion","promoDescription","timerContent","_m","timer","isCounterEnabled","enableCounter","timerIsActive","setTimerIsActive","startTime","endTime","isTimerActive","showHighlightText","Boolean","highlightText","badgesContainer","showPromoContainer","displayText","notShowPromotionLabel","showBadges","id","productId","cartEndPoint","_o","LineTableBasicPropConfig","getInstance","getCartUrl","assetPath","_p","AssetPathPropConfig","getAssetPath","isMobileFlow","pageType","viewPortType","viewport","context","useContext","AppContext","isAvailable","_q","includes","enableTVStreamingOptionsPopUp","enableTVStreamingOptionsStepper","disableDiscountedPriceToggle","skipAccessoriesPage","LoginBasicPropConfig","create","baseURL","AuthData","Cookies","get","JSON","parse","uniqueProductData","filter","setTvOptionsData","options","handleP2PClick","createCart","siteId","fetchPrepaidData","EXISTINGCUSTOMER","enableExistingCustomer","enableLoggedInPrice","createCartCall","prospectId","localStorage","getItem","url","location","pathname","split","payload","eventTimestamp","getUtcTimestamp","eventType","pageLocation","targetProduct","trackPegaEvents","selectedGiftItem","item","itemValue","findIndex","gift","giftGroupId","temp","push","params","URLSearchParams","_r","search","queryParams","validateNumberFcn","value","combineWithSmartPhone","showPrice","msisdn","validateFcn","validPrepaidNumbers","__awaiter","validateP2P","then","res","catch","e","console","log","fetchSubscriptionData","resp","subscriptionData","responseData","queryData","find","entry","Promise","all","map","data","succ","error","err","handleClick","closeTVOptionsModal","event","trackNewDatalayerEvent","GAEVENT","CTABUTTONCLICK","headline","linecheckSuccessAndCart","bundle","serviceOption","fetchServiceOptions","bloks","radioValue","_s","tvProductId","createCartCallAction","discountRef","promotionInfo","discountVersion","version","rewardsInfo","pointsBurnt","rewards","points","rewardOfferId","offerId","gloxTokenId","fromPopup","updateVasPopUp","sessionStorage","removeItem","staticCreateCart","AuthDataNew","setLoginCookie","ONE_ECOMMERCE_INTERNET_SUMMARY","linecheckData","loginData","isBundle","recommendAccessory","bundledOffers","productType","toLowerCase","combineWithVasOptions","productName","addEventListener","fetchPrice","useEffect","setTimeout","findHeight","result","checkGiftOrCashback","assign","TV","gigaSpeed","Netflix","Array","isArray","_u","_t","showModalPopup","updatedContent","_v","productContainer","store","ottOptionsApi","delay","getTimeUntilNextTimerEvent","timeout","clearTimeout","timerElement","current","updateTimerSpaceHeight","clientHeight","ResizeObserver","resizeObserver","observe","disconnect","_w","checkVasPopUp","vasPopUp","handleStorageChange","storageArea","key","newValue","handleCustomEvent","removeEventListener","setItem","Event","dispatchEvent","React","createElement","createPortal","Dotloader","keyParams","className","SkeletonLoader","Styles","selected","style","paddingBottom","activeicon","src","alt","width","height","subscriptionAvalTxt","inactiveicon","notSubscriptionTxt","_x","_z","_y","_0","default_full_slug","overlay","_2","_1","eligibility","fpb","disabled","flexDirection","bundleproductcard","_3","transition","productcontainer","borderConfig","showBorder","borderGradient","borderColor","borderWidth","borderStyle","borderRadius","background","getBorderStyles","BadgeContainer","badges","badgeContainer","promocontainer","bestSellerColor","ref","timerContainer","_4","StaticLineTabelTimer","_5","hasHighlightText","onTimerChange","active","detailsection","imageFullWidthSection","headersection","titlesection","productheader","icon","_6","filename","imagecontainer","_7","productdescription","RichText","description","images","_8","img","imagespace","borderimage","_9","productconfig","Fragment","space","stylename","skeletontittle","count","skeletonline","_10","entitle","index","StaticProductEntitlement","enableTVStreamingOptions","_11","extraBenefits","StaticExclusiveBenefit","_12","benefitssection","_13","benefits","StaticBenefit","benefitData","togglePriceLabel","giftsection","_14","singleGift","GiftConfigV2","_15","giftConfig","ChooseGiftV2","parentPoType","StaticProductCashback","ordersection","base","DynamicPriceSection","priceCollection","promoText","discountedpricetoggleSection","togglePosition","UserLoggedPricesToggle","lineTable","P2PDiscountLabel","longterm","swapButton","padding","CheckoutButton","isDeviceFlow","msisdnn","uniqueProductBenefits","alwaysActive","_16","_18","_17","flexUpgradeFreePopup","_21","_20","forceDisabled","_23","_22","notEligibleReason","notEligibileReason","_25","_24","_26","addSmartPhone","textAlign","ctaLabel","onClick","buttontext","redirectOnly","FalconButtonV2","buttonType","buttonLabel","ultimateBundlePromotion","ultimateBundleLbl","_28","_27","buttonIcon","_30","_29","buttonAlignment","wafIdentifier","productcontractduration","paddingTop","_31","contractDuration","replacePlaceholder","_32","minContractDuration","substring","noContractDuration","productDetails","_33","productdetailslink","DOWNLOADPRODUCT","getEcomCartInfo","LINETABLE","productDetailsLink","StaticProductDetails","_35","_34","_37","_36","_39","_38","disabledInfo","fpbNotCompatibleText","TVChannelModal","setShowModal","showModal","_40","LoginModalV2","_41","closeLogin","onSuccess","GenericModal","modalState","handler","showFooter","backgroundColor","noCloseButton","backDrop","bodyPadding","PreToPostSubsPopup","onClose","_44","_43","_42","p2pBloks","prepaid","_47","_46","_45","ExsistingSubscriptionModal","onSubmit","exsistingSubscriptionData","enableLinecheckOverlay","_48","_50","_49","LinecheckModal","_52","_53","_55","_54","CoverageCheckModal","_57","body","overlayIsOpen","externalHandleModal","onCreateCart","_58","benefitsValidate","BenefitsValidateWrapper","_59","loginContent","_60","fixedWidth","OttServiceOptionsSmallPopup","optionsPopup","_61","addOptionsCallBack","val","preSelectedOptions","optionsResponse","updateResponseList"],"mappings":"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"}
1
+ {"version":3,"file":"StaticProduct.js","sources":["../../../../src/components/StaticLineTable/StaticProduct.tsx"],"sourcesContent":["import React, { FC, useContext, useEffect, useRef, useState } from 'react';\nimport Dotloader from '../Dotloader/Dotloader';\nimport { createPortal } from 'react-dom';\nimport SkeletonLoader from '../SkeletonLoader/SkeletonLoader';\nimport Styles from './StaticLineTable.module.scss';\nimport RichText from '../richtext';\nimport StaticProductEntitlement from './StaticProductEntitlement';\nimport StaticBenefit from './StaticBenefit';\nimport DynamicPriceSection from './DynamicPriceSection';\nimport CheckoutButton from './CheckoutButton';\nimport StaticProductDetails from './StaticProductDetails';\nimport { StaticProductSchema } from './StaticProductDatatypes';\nimport {\n AssetPathPropConfig,\n LineTableBasicPropConfig\n} from '../../services/LineTableBasicPropConfig';\nimport Cookies from 'js-cookie';\nimport { LoginBasicPropConfig } from '../../services/LoginBasicPropConfig';\nimport LoginModalV2 from '../login/LoginModalV2';\nimport {\n checkGiftOrCashback,\n combineWithSmartPhone,\n combineWithVasOptions,\n fetchPrice,\n fetchServiceOptions,\n findHeight,\n isTimerActive,\n getTimeUntilNextTimerEvent,\n staticCreateCart\n} from './Product.utils';\nimport GiftConfigV2 from '../ProductDetailsV3/GiftConfigV2';\nimport ChooseGiftV2 from '../ProductDetailsV3/ChooseGiftV2';\nimport { replacePlaceholder, viewport, getUtcTimestamp } from '../../utils/utils';\nimport StaticProductCashback from './StaticProductCashback';\nimport { trackNewDatalayerEvent } from '../../utils/AnalyticsUtils';\nimport {\n CTABUTTONCLICK,\n DOWNLOADPRODUCT,\n EXISTINGCUSTOMER,\n GAEVENT,\n LINETABLE\n} from '../../Analytics/AnalyticsConstants';\nimport TVChannelModal from './TVChannelModal';\nimport LinecheckModal from '../LineCheckV3/LinecheckModal';\nimport BenefitsValidateWrapper from '../BenefitWrapper/BenefitsValidateWrapper';\nimport PreToPostSubsPopup from '../PretoPost/PreToPostSubsPopup';\nimport GenericModal from '../LineCheckV3/GenericModal';\nimport {\n fetchSubscriptionData,\n trackPegaEvents,\n validateP2P\n} from '../../services/LineTableService';\nimport ExsistingSubscriptionModal from './ExsistingSubscriptionModal';\nimport { getEcomCartInfo } from '../../models/Analytics/items';\nimport CoverageCheckModal from '../NewLineCheck/CoverageCheckModal';\n\nimport { API_BASE_BASEPOINT } from '../../services/api-constants';\nimport { AppContext } from './StaticLineTableStore/StaticLineTableProvider';\nimport OttServiceOptionsSmallPopup from './OttServiceOptions/OttServiceOptionsSmallPopup';\nimport StaticExclusiveBenefit from './StaticExclusiveBenefit';\n// US_312953\nimport UserLoggedPricesToggle from '../UserLoggedPricesToggle/UserLoggedPricesToggle';\nimport FalconButtonV2 from '../FalconButtonV2/FalconButtonV2';\nimport { ONE_ECOMMERCE_INTERNET_SUMMARY } from '../../utils/constants';\nimport StaticLineTabelTimer from './StaticLineTabelTimer/StaticLineTabelTimer';\nimport { BadgeContainer } from '@sunrise-upc/sales-static-components';\nimport GenericPopup from '../GenericPopup/GenericPopup';\n\nconst StaticProduct: FC<StaticProductSchema> = ({\n content,\n offeringData,\n uniqueId,\n storyContent,\n metadata,\n tabIndex,\n cardsLength,\n indexKey,\n constants,\n mainContent,\n address,\n eligibleBundle,\n linecheckSuccessCallBack,\n selectedOption,\n fetchOfferData,\n basicConfigUrl,\n selectedExistingOption,\n setLoginSuccess,\n enableP2P,\n lineCheckCallBack,\n loginSuccess,\n setToggleState,\n toggleState,\n noTabs,\n deviceFlow,\n deviceFlowCallBack,\n selectedRP,\n continueCart,\n lineCheckOnClear,\n pegaIntegration,\n isProdEnv,\n deviceUltimateBundle,\n //US_31295\n toggleContent,\n pricesToggleState,\n isShogunFlow,\n shogunToken\n}) => {\n const [showLoader, setShowLoader] = useState<boolean>(false);\n const [showProductDetail, setShowProductDetail] = useState(false);\n const [showGiftOrCashback, setShowGiftOrCashback] = useState({\n showGift: false,\n cashbackAvailable: false\n });\n const [modalClick, updateModalClick] = useState(true);\n const [combine, setCombine] = useState(false);\n const [giftItem, setGiftItem] = useState<any>([]);\n const [showLogin, setShowLogin] = useState<boolean>(false);\n const [showOptions, setShowOptions] = useState<boolean>(false);\n const [showLinecheck, setShowLinecheck] = useState<boolean>(false);\n const [showP2P, setShowP2P] = useState<boolean>(false);\n const [showBenefit, setShowBenefit] = useState<boolean>(false);\n const [subscriptionFailure, setSubscriptionFailure] = useState(false);\n const endpoint = `${basicConfigUrl}inf/customer-management/subscriptions`;\n const validateEndpoint = `${basicConfigUrl}inf/resource-management/msisdns/pretopost/validation`;\n const [userSubscriptionData, setUserSubscriptionData] = useState<any>([]);\n const [afterLogin, setAfterLogin] = useState<boolean>(false);\n const [popUPClick, setModalClick] = useState<boolean>(false);\n const [p2pModal, setP2pModal] = useState<boolean>(false);\n const [tvOptions, setTvOptions] = useState<any[] | undefined>([]);\n const [displayTvOptionsPopUp, setDisplayTvOptionsPopUp] = useState<boolean>(false);\n const [alreadyShowedTvOptionsPopUp, setAlreadyShowedTvOptionsPopUp] = useState<boolean>(false);\n const [tvOptionsPopUpChanged, setTvOptionsPopUpChanged] = useState<boolean>(false);\n const [tvOptionsPopUpAddToCart, setTvOptionsPopUpAddToCart] = useState<boolean>(false);\n const [responseList, setResponseList] = useState([]);\n const [timerSpaceHeight, setTimerSpaceHeight] = useState(0);\n const [showReplaceCartModal, setShowReplaceCartModal] = useState<boolean>(false);\n const pendingCartActionRef = useRef<(() => void) | null>(null);\n const [replacePopupContent, setReplacePopupContent] = useState<any>(null);\n const shouldDeleteCartCookieRef = useRef<boolean>(false);\n const timerContainerRef = useRef<HTMLDivElement | null>(null);\n const pegaEndpoint = `${basicConfigUrl}inf/${API_BASE_BASEPOINT.CUSTOMER}`;\n\n /*the portal position for the the dotloader*/\n const portalPosition: any =\n typeof window !== undefined && document.getElementById('static-linetable');\n const isSkeletonLoading = Object.keys(content)?.length === 0;\n const productData = content?.products?.[0]?.reference?.content?.product?.[0];\n const promotionData = content?.promotion?.[0]?.reference?.content?.promoDescription?.[0];\n const timerContent = content?.timer?.[0];\n const isCounterEnabled = timerContent?.enableCounter;\n const [timerIsActive, setTimerIsActive] = useState(\n isCounterEnabled && timerContent?.startTime && timerContent?.endTime\n ? isTimerActive(timerContent.startTime, timerContent.endTime)\n : false\n );\n const showHighlightText = Boolean(\n content?.highlightText && pricesToggleState !== true && !timerIsActive && !content?.badgesContainer\n );\n const showPromoContainer = Boolean(\n promotionData?.displayText &&\n !content?.notShowPromotionLabel &&\n pricesToggleState !== true &&\n !timerIsActive\n );\n\n const showBadges = Boolean(\n content?.badgesContainer && pricesToggleState !== true && !timerIsActive && !showPromoContainer\n );\n\n const id = productData?.productId;\n const cartEndPoint = LineTableBasicPropConfig?.getInstance()?.getCartUrl();\n const assetPath = AssetPathPropConfig?.getInstance()?.getAssetPath();\n const isMobileFlow = storyContent?.pageType === 'MOBILE';\n const viewPortType = viewport();\n const context = useContext(AppContext);\n let isAvailable: boolean | undefined = undefined;\n isAvailable = address && eligibleBundle?.eligibleBundle?.includes(id);\n const enableTVStreamingOptionsPopUp = content?.enableTVStreamingOptionsPopUp;\n const enableTVStreamingOptionsStepper = content?.enableTVStreamingOptionsStepper;\n const disableDiscountedPriceToggle = content?.disableDiscountedPriceToggle;\n const skipAccessoriesPage = content?.skipAccessoriesPage;\n\n LoginBasicPropConfig.create({ baseURL: basicConfigUrl ?? '' });\n\n //sunrise auth data\n let AuthData: any = typeof window !== undefined && Cookies.get('sunriseAuth');\n AuthData = AuthData && JSON.parse(AuthData);\n //offer data wrt to tab\n const uniqueProductData: any = (offeringData?.[uniqueId] || []).filter(\n (product: any) => product?.id === id\n );\n\n const setTvOptionsData = (options: any) => {\n setTvOptions(options);\n };\n\n const handleP2PClick = () => {\n setShowLogin(true);\n setShowP2P(!showP2P);\n setModalClick(!popUPClick);\n };\n\n //creacart function or login pop up\n const createCart = () => {\n setShowProductDetail(false);\n if (enableP2P && AuthData == undefined) {\n setShowP2P(!showP2P);\n setModalClick(!popUPClick);\n } else if (enableP2P && AuthData?.siteId) {\n fetchPrepaidData();\n } else if (selectedOption === EXISTINGCUSTOMER && selectedExistingOption?.length > 0) {\n setShowBenefit(true);\n } else {\n //US_31295\n const setLoginCookie =\n (mainContent?.enableExistingCustomer && AuthData == undefined) ||\n (!AuthData && pricesToggleState === true && toggleContent?.enableLoggedInPrice)\n ? true\n : false;\n setLoginCookie ? setShowLogin(true) : createCartCall();\n }\n if (pegaIntegration) {\n const prospectId = localStorage.getItem('prospectId');\n const url = window?.location?.pathname?.split('/') ?? [];\n const pathname = url[url.length - 1];\n const payload = {\n eventTimestamp: getUtcTimestamp(),\n eventType: 'PageView',\n pageType: 'CartCreated',\n pageLocation: pathname,\n // deviceType: viewPortType,#TODO - fix this values, isn't working for tablet\n targetProduct: id\n };\n prospectId && trackPegaEvents(pegaEndpoint, payload, prospectId);\n }\n };\n\n //setting the selected gift from choose gift section\n const selectedGiftItem = (item: any) => {\n const itemValue = giftItem.findIndex((gift: any) => item?.giftGroupId === gift?.giftGroupId);\n const temp = giftItem;\n if (itemValue === -1) temp.push(item);\n else temp[itemValue] = item;\n setGiftItem([...temp]);\n };\n\n // Helper method to get border styles\n const getBorderStyles = () => {\n const borderConfig = showPromoContainer ? promotionData : content;\n const showBorder = borderConfig?.showBorder;\n const borderGradient = borderConfig?.borderGradient;\n const borderColor = borderConfig?.borderColor;\n\n return {\n borderColor: showBorder && !borderGradient ? borderColor || '' : 'transparent',\n borderWidth: showBorder ? '4px' : '0px',\n borderStyle: showBorder ? 'solid' : 'none',\n borderRadius: showBorder ? '8px' : '',\n background: showBorder && borderGradient\n ? `linear-gradient(white, white) padding-box, ${borderGradient} border-box`\n : undefined,\n };\n };\n\n //queryParam for MySunrise P2P flow\n const params = new URLSearchParams(window?.location?.search);\n const queryParams = params?.get('selectedMsisdn');\n const validateNumberFcn = (value: any) => {\n // once all the prepaid numbers are validated\n if (value?.length === 1) {\n combine\n ? combineWithSmartPhone(\n showPrice,\n storyContent,\n uniqueProductData,\n value?.[0],\n content,\n pegaIntegration\n )\n : createCartCall(value?.[0]?.msisdn);\n setSubscriptionFailure(false);\n } else if (value?.length > 1) {\n setUserSubscriptionData(value);\n setP2pModal(!p2pModal);\n setSubscriptionFailure(false);\n } else {\n setModalClick(!popUPClick);\n setSubscriptionFailure(true);\n updateModalClick(true);\n setShowLoader(false);\n }\n };\n const validateFcn = async (value: any, validPrepaidNumbers: any) => {\n await validateP2P(value?.msisdn, validateEndpoint)\n .then((res) => {\n if (res) {\n validPrepaidNumbers.push(value);\n }\n })\n .catch((e: any) => {\n // eslint-disable-next-line no-console\n console.log('error', e);\n });\n };\n //prepaid subscription api and validating those for conversion\n const fetchPrepaidData = () => {\n setShowLoader(true);\n try {\n fetchSubscriptionData('PREPAID', endpoint)\n ?.then(async (resp: any) => {\n if (resp?.subscriptionData == 204) {\n setModalClick(!popUPClick);\n setSubscriptionFailure(true);\n updateModalClick(true);\n setShowLoader(false);\n } else {\n const responseData = resp?.subscriptionData;\n const queryData = responseData.find((entry: any) => entry.msisdn === queryParams);\n if (responseData) {\n const validPrepaidNumbers: any = [];\n if (queryParams) {\n await validateFcn(queryData, validPrepaidNumbers);\n validateNumberFcn(validPrepaidNumbers);\n } else {\n await Promise.all(\n responseData?.map(async (data: any) => {\n await validateFcn(data, validPrepaidNumbers);\n })\n ).then((succ) => {\n validateNumberFcn(validPrepaidNumbers);\n });\n }\n }\n }\n })\n .catch((error: any) => {\n // eslint-disable-next-line no-console\n console.log('error--->', error);\n setShowLoader(false);\n });\n } catch (err: any) {\n // eslint-disable-next-line no-console\n console.log('error--->', err);\n setShowLoader(false);\n }\n setAfterLogin(true);\n };\n\n // on login success\n const onLoginSuccess = () => {\n setShowLogin(false);\n setLoginSuccess();\n sessionStorage.removeItem('vasPopUp');\n setAlreadyShowedTvOptionsPopUp(false);\n if (enableP2P) {\n fetchPrepaidData();\n } else {\n createCartCall();\n }\n };\n\n // to close the pop up of P2P\n const handleClick = () => {\n setModalClick(!modalClick);\n setShowP2P(false);\n };\n\n // to close the pop up of P2P for success prepiad\n const handlePrepaidClick = () => {\n setShowLoader(false);\n setP2pModal(!p2pModal);\n };\n\n const closeTVOptionsModal = (event?: any) => {\n setDisplayTvOptionsPopUp(false);\n\n if (event) {\n trackNewDatalayerEvent(GAEVENT, CTABUTTONCLICK, {\n headline: 'VAS POPUP CLOSE'\n });\n }\n };\n\n //once linecheck success set linecheck pop up false and proceed to checkout section\n const linecheckSuccess = () => {\n let bundle = typeof window !== 'undefined' && localStorage.getItem('lineCheckResponse');\n eligibleBundle = bundle && JSON?.parse(bundle);\n address = typeof window !== 'undefined' && Cookies.get('chAddressJson');\n typeof linecheckSuccessCallBack == 'function' && linecheckSuccessCallBack();\n };\n\n //once linecheck success set linecheck pop up false and proceed to checkout section\n const linecheckSuccessAndCart = () => {\n let bundle = typeof window !== 'undefined' && localStorage.getItem('lineCheckResponse');\n eligibleBundle = bundle && JSON?.parse(bundle);\n address = typeof window !== 'undefined' && Cookies.get('chAddressJson');\n setShowLinecheck(!showLinecheck);\n typeof linecheckSuccessCallBack == 'function' && linecheckSuccessCallBack();\n createCartCall();\n };\n\n //service Option set for TV\n\n const serviceOption = fetchServiceOptions(productData?.bloks, isMobileFlow);\n\n const radioValue = serviceOption?.[0]?.tvProductId;\n\n const createCartCallAction = (msisdn?: string) => {\n const discountRef = pegaIntegration && uniqueProductData?.[0]?.promotionInfo?.[0]?.id;\n const discountVersion = pegaIntegration && uniqueProductData?.[0]?.promotionInfo?.[0]?.version;\n\n // Shogun / rewards (loyalty) flow: attach the pointsBurnt note so the\n // backend can settle the loyalty burn during cart creation. The value\n // comes from the offer response under `rewards.points`.\n const rewardsInfo = isShogunFlow\n ? { pointsBurnt: uniqueProductData?.[0]?.rewards?.points, rewardOfferId: uniqueProductData?.[0]?.rewards?.offerId, gloxTokenId: shogunToken }\n : undefined;\n\n // US 317400- vas options pop tracking\n if (uniqueProductData && uniqueProductData[0]) {\n uniqueProductData[0].fromPopup = tvOptionsPopUpAddToCart;\n }\n updateVasPopUp('false');\n sessionStorage.removeItem('vasPopUp');\n setAlreadyShowedTvOptionsPopUp(false);\n\n staticCreateCart(\n setShowLoader,\n cartEndPoint,\n giftItem,\n uniqueProductData,\n mainContent,\n showPrice,\n isMobileFlow,\n radioValue,\n eligibleBundle,\n address,\n setShowLinecheck,\n showLinecheck,\n lineCheckCallBack,\n enableP2P,\n queryParams ?? msisdn,\n content,\n tvOptions,\n discountRef,\n discountVersion,\n rewardsInfo\n );\n };\n //cart creation\n const createCartCall = (msisdn?: string) => {\n setTvOptionsPopUpAddToCart(false);\n setShowProductDetail(false);\n let AuthData: any = typeof window !== undefined && Cookies.get('sunriseAuth');\n const AuthDataNew = AuthData && JSON.parse(AuthData);\n const setLoginCookie =\n mainContent?.enableExistingCustomer && AuthDataNew == undefined ? true : false;\n sessionStorage.removeItem(ONE_ECOMMERCE_INTERNET_SUMMARY);\n if (mainContent?.linecheckData?.length > 0 && !isMobileFlow && !isAvailable) {\n // setShowLinecheck(true);\n const lineCheckElement = document.getElementById('linecheck');\n if (lineCheckElement) {\n lineCheckCallBack();\n }\n return;\n } else if (\n isAvailable &&\n !isMobileFlow &&\n mainContent?.loginData?.length > 0 &&\n setLoginCookie\n ) {\n setShowLogin(true);\n } else if (enableTVStreamingOptionsStepper && uniqueProductData[0]?.isBundle) {\n let recommendAccessory = false;\n\n if (!skipAccessoriesPage) {\n /**Check if bundle or Internet and add it to cart request*/\n if (uniqueProductData[0]?.isBundle) {\n uniqueProductData[0]?.bundledOffers?.map((item: any) => {\n if (\n item?.productType?.toLowerCase() === 'internet' ||\n item?.productType?.toLowerCase() == 'tv'\n ) {\n if (item?.recommendAccessory) {\n recommendAccessory = item?.recommendAccessory;\n }\n }\n // setting to false incase of Mobile product Type as it is currently out of scope\n if (item?.productType?.toLowerCase() === 'mobile') {\n recommendAccessory = false;\n return;\n }\n });\n } else {\n /**Add standlone product such as internet to cart request*/\n if (uniqueProductData?.[0]?.recommendAccessory) {\n recommendAccessory = uniqueProductData?.[0]?.recommendAccessory;\n }\n }\n }\n\n combineWithVasOptions(\n showPrice,\n uniqueProductData,\n content,\n pegaIntegration,\n productData?.productName,\n recommendAccessory\n );\n createCartCallAction(msisdn);\n } else if (\n enableTVStreamingOptionsPopUp &&\n uniqueProductData[0]?.isBundle &&\n !alreadyShowedTvOptionsPopUp\n ) {\n setDisplayTvOptionsPopUp(true);\n setAlreadyShowedTvOptionsPopUp(true);\n updateVasPopUp('true');\n\n window.addEventListener('beforeunload', function (event) {\n updateVasPopUp('false');\n sessionStorage.removeItem('vasPopUp');\n setAlreadyShowedTvOptionsPopUp(false);\n });\n } else {\n //for mobile p2p\n if (enableP2P) {\n setShowLoader(true);\n }\n createCartCallAction(msisdn);\n }\n };\n\n //cart creation callback For device first flow\n const deviceFirstFlowCreateCartCallback = (msisdn?: string) => {\n setShowProductDetail(false);\n const msisdnn = queryParams ?? msisdn;\n const deviceFirstFlowCartObj = {\n setShowLoader,\n cartEndPoint,\n giftItem,\n uniqueProductData,\n mainContent,\n showPrice,\n isMobileFlow,\n eligibleBundle,\n address,\n setShowLinecheck,\n showLinecheck,\n lineCheckCallBack,\n enableP2P,\n msisdnn,\n content,\n selectedRP,\n continueCart\n };\n deviceFlowCallBack(deviceFirstFlowCartObj);\n };\n\n // Guards a cart-creation action: if a persistent cart already exists\n // (one-commerce-cartId cookie), show the replace-cart popup and defer the\n // action until the user confirms via the primary button.\n const withReplaceCartCheck =\n (action: (callFunctionArg?: string) => void, popupContent?: any) =>\n (callFunctionArg?: string) => {\n const existingCartId =\n typeof window !== undefined && Cookies.get('one-commerce-cartId');\n if (mainContent?.enableReplacePopup && existingCartId) {\n pendingCartActionRef.current = () => action(callFunctionArg);\n shouldDeleteCartCookieRef.current = Boolean(popupContent);\n setReplacePopupContent(popupContent ?? mainContent?.generalReplacePopup?.[0]);\n setShowReplaceCartModal(true);\n } else {\n action(callFunctionArg);\n }\n };\n\n // after 1 prepaid numbers selection from existingp2pmodal\n const onSelectSubscriptionPreToPost = (value: any) => {\n setP2pModal(!p2pModal);\n combine\n ? combineWithSmartPhone(\n showPrice,\n storyContent,\n uniqueProductData,\n value,\n content,\n pegaIntegration\n )\n : createCartCall(value?.msisdn);\n };\n //show price calculation\n const showPrice = fetchPrice(\n uniqueProductData,\n isMobileFlow,\n mainContent?.pageType,\n false,\n tvOptions,\n pegaIntegration\n );\n\n //card height calculation and gift & cashback check on change of offer data\n //to calculate the height when the tvOptions is added and removed\n useEffect(() => {\n setTimeout(() => {\n findHeight(tabIndex, cardsLength);\n }, 100);\n const result = checkGiftOrCashback(\n isMobileFlow\n ? uniqueProductData\n : (uniqueProductData?.[0]?.bundledOffers ?? uniqueProductData)\n );\n setShowGiftOrCashback({ ...result });\n }, [\n offeringData,\n toggleState,\n tvOptions,\n timerSpaceHeight,\n (toggleState?.TV || toggleState?.gigaSpeed || toggleState?.Netflix) &&\n Array.isArray(uniqueProductData) &&\n uniqueProductData?.[0]?.bundledOffers?.length === 3\n ]);\n\n //product details pop up\n const showDetailsModal = () => {\n setShowProductDetail(!showProductDetail);\n //Analytics Product Details tracking\n let offerData = uniqueProductData;\n trackNewDatalayerEvent(GAEVENT, DOWNLOADPRODUCT, getEcomCartInfo(offerData, '', LINETABLE));\n const prospectId = localStorage.getItem('prospectId');\n const url = window?.location?.pathname?.split('/') ?? [];\n const pathname = url[url.length - 1];\n const payload = {\n eventTimestamp: getUtcTimestamp(),\n eventType: 'PageView',\n pageType: 'ProductDetails',\n pageLocation: pathname,\n // deviceType: viewPortType, #TODO - fix this values, isn't working for tablet\n targetProduct: id\n };\n prospectId && trackPegaEvents(pegaEndpoint, payload, prospectId);\n };\n\n //TV service option\n const showModalPopup = () => {\n if (serviceOption?.length > 0 || enableTVStreamingOptionsPopUp) {\n setShowOptions(true);\n }\n };\n const updatedContent = mainContent?.productContainer?.[0];\n\n // set the combine to true for p2p\n const combineP2P = () => {\n setCombine(true);\n };\n\n // to trigger on click of combinewith smartphone\n useEffect(() => {\n if (combine) {\n if (enableP2P && AuthData == undefined) {\n setShowP2P(!showP2P);\n setModalClick(!popUPClick);\n } else if (enableP2P && AuthData?.siteId) {\n fetchPrepaidData();\n }\n }\n }, [combine]);\n\n useEffect(() => {\n if (context) {\n const { store } = context;\n if (store?.ottOptionsApi?.length > 0 && responseList?.length === 0) {\n setResponseList(store?.ottOptionsApi);\n }\n }\n }, [context]);\n\n useEffect(() => {\n if (!isCounterEnabled || !timerContent?.startTime || !timerContent?.endTime) {\n setTimerIsActive(false);\n return;\n }\n\n setTimerIsActive(isTimerActive(timerContent.startTime, timerContent.endTime));\n\n const delay = getTimeUntilNextTimerEvent(timerContent.startTime, timerContent.endTime);\n if (delay <= 0) return;\n\n const timeout = setTimeout(() => {\n setTimerIsActive(isTimerActive(timerContent.startTime, timerContent.endTime));\n }, delay);\n\n return () => clearTimeout(timeout);\n }, [isCounterEnabled, timerContent?.startTime, timerContent?.endTime]);\n\n useEffect(() => {\n const timerElement = timerContainerRef.current;\n if (!timerElement || !content?.timer?.length || !isCounterEnabled) {\n setTimerSpaceHeight(0);\n return;\n }\n\n const updateTimerSpaceHeight = () => {\n setTimerSpaceHeight(timerElement.clientHeight);\n };\n\n updateTimerSpaceHeight();\n\n if (typeof ResizeObserver === 'undefined') {\n return;\n }\n\n const resizeObserver = new ResizeObserver(updateTimerSpaceHeight);\n resizeObserver.observe(timerElement);\n\n return () => {\n resizeObserver.disconnect();\n };\n }, [content?.timer?.length, isCounterEnabled]);\n\n // to trigger on click tv option pop up closed\n useEffect(() => {\n if (tvOptionsPopUpChanged) {\n closeTVOptionsModal();\n setTvOptionsPopUpChanged(true);\n updateVasPopUp('false');\n sessionStorage.removeItem('vasPopUp');\n setAlreadyShowedTvOptionsPopUp(false);\n createCartCallAction();\n }\n }, [tvOptionsPopUpChanged]);\n\n //US 314008 - only show vas pop up for first time user clicked order now\n useEffect(() => {\n const checkVasPopUp = () => {\n const vasPopUp = sessionStorage.getItem('vasPopUp');\n\n setAlreadyShowedTvOptionsPopUp(vasPopUp === 'true');\n };\n\n checkVasPopUp();\n\n const handleStorageChange = (event: StorageEvent) => {\n if (event.storageArea === sessionStorage && event.key === 'vasPopUp') {\n checkVasPopUp();\n }\n // If vasPopUp is removed (deleted)\n if (\n event.storageArea === sessionStorage &&\n event.key === 'vasPopUp' &&\n event.newValue === null\n ) {\n setAlreadyShowedTvOptionsPopUp(false);\n }\n };\n\n const handleCustomEvent = () => {\n checkVasPopUp();\n };\n window.addEventListener('storage', handleStorageChange);\n window.addEventListener('vasPopUpChange', handleCustomEvent);\n \n return () => {\n window.removeEventListener('storage', handleStorageChange);\n window.removeEventListener('vasPopUpChange', handleCustomEvent);\n };\n \n }, []);\n\n const updateVasPopUp = (value: string) => {\n sessionStorage.setItem('vasPopUp', value);\n const event = new Event('vasPopUpChange');\n window.dispatchEvent(event);\n };\n\n return (\n <div>\n {showLoader &&\n portalPosition &&\n createPortal(<Dotloader keyParams='loading' />, portalPosition)}\n {isSkeletonLoading && (\n <div className='w-75 pb-2'>\n <SkeletonLoader />\n </div>\n )}\n {!isSkeletonLoading && eligibleBundle && content && address && !isMobileFlow && (\n <div className={Styles.selected}>\n <span style={{ paddingBottom: '10px' }}>\n {!isAvailable ? (\n <span className={Styles.inactiveicon}>\n <img\n src={`${assetPath}/icons/cross_disabled.svg`}\n alt=''\n width={24}\n height={24}\n className={Styles.inactiveicon}\n />\n <span>{constants?.notSubscriptionTxt}</span>\n </span>\n ) : (\n <span className={Styles.activeicon}>\n <img\n src={`${assetPath}/icons/lineCheck-success.svg`}\n alt=''\n width={24}\n height={24}\n className={Styles.activeicon}\n />\n <span>{constants?.subscriptionAvalTxt}</span>\n </span>\n )}\n </span>\n </div>\n )}\n\n <div\n className={`${\n !isMobileFlow &&\n isAvailable === false &&\n mainContent?.linecheckData?.length > 0 &&\n mainContent?.linecheckData?.[0]?.reference?.default_full_slug !== 'global/coverage-check'\n ? Styles.overlay\n : ''\n }\n ${deviceUltimateBundle && !uniqueProductData?.[0]?.eligibility?.fpb ? Styles.disabled : ''}\n `}\n style={{ flexDirection: 'column' }}\n >\n <div className={Styles.bundleproductcard}>\n <div\n id={`timer-section${tabIndex}${indexKey}`}\n data-timer-active={timerSpaceHeight > 0 ? 'true' : 'false'}\n >\n {content?.timer?.length && isCounterEnabled ? (\n <div style={{ height: `${timerSpaceHeight}px`, transition: 'height 0.3s ease' }} />\n ) : null}\n </div>\n <div\n className={`${Styles.productcontainer}`}\n style={getBorderStyles()}\n > \n {showBadges &&(\n <BadgeContainer badges={content.badgesContainer}/>\n )}\n {showHighlightText && (\n <div className={`${Styles.highlightText}`}>{content?.highlightText}</div>\n )}\n \n {showPromoContainer && (\n promotionData?.badgeContainer ? (\n <BadgeContainer badges={promotionData?.badgeContainer}/>\n ) : (\n <div\n className={`${Styles.promocontainer}`}\n style={{\n background: promotionData?.bestSellerColor\n }}\n >\n {promotionData?.displayText}\n </div>\n )\n )}\n <div ref={timerContainerRef} className={Styles.timerContainer}>\n {content?.timer?.length && isCounterEnabled ? (\n <StaticLineTabelTimer\n content={content?.timer?.[0]}\n hasHighlightText={ showBadges || showPromoContainer}\n onTimerChange={(active) => {\n setTimerIsActive(active);\n }}\n />\n ) : null}\n </div>\n <div\n className={`${Styles.detailsection} ${Styles.imageFullWidthSection}`}\n id={`detailsectionv3${tabIndex}${indexKey}`}\n >\n <div className={`${Styles.headersection}`}>\n <div className={`${Styles.titlesection}`}>\n <div className={`${Styles.productheader}`} id={`titleV3${tabIndex}${indexKey}`}>\n {productData?.productName}\n </div>\n <div>\n {productData?.icon?.filename && (\n <img\n className={`${Styles.imagecontainer}`}\n src={productData?.icon?.filename}\n height={15}\n width={20}\n alt='productIcon'\n />\n )}\n </div>\n </div>\n <div\n className={`${Styles.productdescription}`}\n id={`descriptionV3${tabIndex}${indexKey}`}\n >\n <RichText content={productData?.description} />\n </div>\n {/* Image(map) */}\n <div className={`${Styles.images}`}>\n {productData?.img?.filename && (\n <img\n className={`${Styles.imagespace} ${\n content?.highlightText && Styles.borderimage\n }`}\n alt='cardimg'\n src={`${productData?.img?.filename}/m/`}\n />\n )}\n </div>\n </div>\n {/* product entitlement section */}\n <div\n className={`${Styles.productconfig}`}\n id={`product-configv3${tabIndex}${indexKey}`}\n >\n {isSkeletonLoading ? (\n <>\n <div className={Styles.space}></div>\n <SkeletonLoader stylename={Styles.skeletontittle} count={1} />\n <SkeletonLoader stylename={Styles.skeletonline} count={5} />\n <div className={Styles.space}></div>\n <SkeletonLoader stylename={Styles.skeletontittle} count={1} />\n <SkeletonLoader stylename={Styles.skeletonline} count={5} />\n </>\n ) : (\n <div>\n {productData?.bloks &&\n productData?.bloks?.map((entitle: any, index: number) => {\n return (\n <StaticProductEntitlement\n content={entitle}\n indexKey={index}\n constants={constants}\n key={index}\n showModalPopup={showModalPopup}\n setToggleState={setToggleState}\n toggleState={toggleState}\n noTabs={noTabs}\n mainContent={mainContent}\n enableTVStreamingOptions={content?.enableTVStreamingOptions}\n metadata={metadata}\n setTvOptionsData={setTvOptionsData}\n />\n );\n })}\n </div>\n )}\n </div>\n </div>\n {/* benefits section */}\n <div\n className={`${Styles.detailsection}`}\n id={`benefits-price-section${tabIndex}${indexKey}`}\n >\n <div id={`exclusive-benefits-section${tabIndex}${indexKey}`}>\n {productData?.extraBenefits?.length > 0 && (\n <StaticExclusiveBenefit content={productData?.extraBenefits?.[0]} />\n )}\n </div>\n <div\n className={`${Styles.benefitssection}`}\n id={`benefits-section${tabIndex}${indexKey}`}\n >\n {productData?.benefits?.length > 0 && (\n <StaticBenefit\n content={productData?.benefits}\n benefitData={showPrice}\n constants={constants}\n //US_31295\n pricesToggleState={pricesToggleState}\n togglePriceLabel={toggleContent?.togglePriceLabel}\n />\n )}\n </div>\n <br />\n\n {/* gift or cashback section */}\n <div className={`${Styles.giftsection}`} id={`gift-section${tabIndex}${indexKey}`}>\n {showGiftOrCashback?.showGift &&\n promotionData?.singleGift?.map((item: any, index: number) => {\n return <GiftConfigV2 content={item} key={index} />;\n })}\n {showGiftOrCashback?.showGift &&\n promotionData?.giftConfig?.map((item: any, index: number) => {\n return (\n <ChooseGiftV2\n content={item}\n key={index}\n selectedGiftItem={selectedGiftItem}\n parentPoType={isMobileFlow ? 'MOBILE' : 'HOME'}\n />\n );\n })}\n <div\n className={`${Styles.giftsection}`}\n id={`cashback-section${tabIndex}${indexKey}`}\n >\n <StaticProductCashback\n uniqueProductData={uniqueProductData}\n mainContent={mainContent}\n />\n </div>\n </div>\n {/* price section */}\n <div className={`${Styles.ordersection}`} id={`order-section${tabIndex}${indexKey}`}>\n {showPrice?.base === '' ? (\n <div>\n <SkeletonLoader stylename={Styles.skeletontittle} />\n </div>\n ) : (\n <div id={`price-section${tabIndex}${indexKey}`}>\n <DynamicPriceSection\n priceCollection={showPrice}\n constants={constants}\n promoText={productData?.promoText}\n deviceFlow={deviceFlow}\n content={content}\n offeringData={offeringData}\n uniqueId={uniqueId}\n />\n </div>\n )}\n\n {/* US_312953 */}\n {!isShogunFlow && (\n <div\n className={`${Styles.discountedpricetoggleSection}`}\n id={`discountedpricetoggle-section${tabIndex}${indexKey}`}\n >\n {!disableDiscountedPriceToggle && toggleContent?.togglePosition === 'INLINE' ? (\n <UserLoggedPricesToggle\n content={productData}\n index={indexKey}\n lineTable={true}\n toggleContent={toggleContent}\n />\n ) : null}\n </div>\n )}\n {/*END US_312953 */}\n\n {/* Longterm text */}\n {enableP2P && constants?.P2PDiscountLabel && (\n <div className={Styles.longterm}>{constants?.P2PDiscountLabel}</div>\n )}\n {/* proceed to checkout section */}\n {isSkeletonLoading ? (\n <>\n <SkeletonLoader stylename={Styles.skeletontittle} count={1} />\n <SkeletonLoader stylename={Styles.skeletonline} count={2} />\n </>\n ) : (\n <div className={`${storyContent?.swapButton && Styles.swapButton}`}>\n <div style={{ padding: '16px 0 0 0' }}>\n <CheckoutButton\n isMobileFlow={isMobileFlow}\n createCartCall={\n deviceFlow?.isDeviceFlow\n ? withReplaceCartCheck(deviceFirstFlowCreateCartCallback)\n : isMobileFlow\n ? withReplaceCartCheck(createCart)\n : withReplaceCartCheck(createCartCall)\n }\n constants={constants}\n storyContent={storyContent}\n showPrice={showPrice}\n isAvailable={isAvailable}\n address={address}\n uniqueProductBenefits={uniqueProductData?.[0]}\n alwaysActive={\n !isAvailable &&\n mainContent?.linecheckData?.length > 0 &&\n mainContent?.linecheckData?.[0]?.reference?.default_full_slug ===\n 'global/coverage-check'\n }\n flexUpgradeFreePopup={mainContent?.flexUpgradeFreePopup?.reference?.content}\n content={content}\n deviceUltimateBundle={deviceUltimateBundle}\n forceDisabled={Boolean(uniqueProductData?.[0]?.rewards?.notEligibleReason)}\n notEligibileReason={uniqueProductData?.[0]?.rewards?.notEligibleReason}\n />\n </div>\n {/* combined with smartphone section */}\n {!isShogunFlow && storyContent?.addSmartPhone?.length > 0 && !deviceFlow?.isDeviceFlow && (\n <div style={{ textAlign: 'center' }}>\n {storyContent?.swapButton\n ? storyContent?.ctaLabel && (\n <div style={{ padding: '16px 0' }}>\n <button\n className={`primarybutton`}\n onClick={() =>\n withReplaceCartCheck(() =>\n combineWithSmartPhone(\n showPrice,\n storyContent,\n uniqueProductData,\n '',\n content,\n pegaIntegration\n ),\n mainContent?.replacePopupWithSmartphone?.[0]\n )()\n }\n >\n <span className={Styles.buttontext}>\n {storyContent?.ctaLabel}\n </span>\n </button>\n </div>\n )\n : !content?.redirectOnly && (\n <div style={{ padding: '12px 0 0 0' }}>\n <FalconButtonV2\n content={{\n buttonType: 'Secondary-V1',\n buttonLabel: content?.ultimateBundlePromotion\n ? constants?.ultimateBundleLbl\n : storyContent?.addSmartPhone?.[0]?.buttonLabel,\n buttonIcon: storyContent?.addSmartPhone?.[0]?.buttonIcon,\n buttonAlignment: 'left'\n }}\n wafIdentifier={basicConfigUrl}\n style={{ width: '100%' }}\n onClick={() =>\n withReplaceCartCheck(\n () =>\n enableP2P\n ? combineP2P()\n : combineWithSmartPhone(\n showPrice,\n storyContent,\n uniqueProductData,\n '',\n content,\n pegaIntegration\n ),\n mainContent?.replacePopupWithSmartphone?.[0]\n )()\n }\n />\n </div>\n )}\n </div>\n )}\n <div\n className={Styles.productcontractduration}\n id={`contract-section${tabIndex}${indexKey}`}\n style={{\n paddingTop:\n storyContent?.addSmartPhone?.length > 0 &&\n !deviceFlow?.isDeviceFlow &&\n !storyContent?.swapButton &&\n !content?.redirectOnly\n ? '8px'\n : undefined\n }}\n >\n {showPrice?.contractDuration > '1'\n ? replacePlaceholder(constants?.minContractDuration?.substring(1), [\n showPrice?.contractDuration\n ])\n : constants?.noContractDuration}\n </div>\n </div>\n )}\n {/* product details section */}\n <div style={{ textAlign: 'center', padding: '4px' }}>\n {productData?.productDetails?.length > 0 && (\n <span className={Styles.productdetailslink} onClick={showDetailsModal}>\n {constants?.productDetailsLink}\n </span>\n )}\n </div>\n {showProductDetail && (\n <StaticProductDetails\n content={productData?.productDetails}\n showProductDetail={showProductDetail}\n setShowProductDetail={setShowProductDetail}\n constants={constants}\n showPrice={showPrice}\n isMobileFlow={isMobileFlow}\n createCartCall={isMobileFlow ? createCart : createCartCall}\n storyContent={storyContent}\n isAvailable={isAvailable}\n address={address}\n flexUpgradeFreePopup={mainContent?.flexUpgradeFreePopup?.reference?.content}\n notEligibileReason={uniqueProductData?.[0]?.rewards?.notEligibleReason}\n />\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {deviceUltimateBundle && uniqueProductData && !uniqueProductData?.[0]?.eligibility?.fpb && (\n <div className={Styles.disabledInfo}>\n <RichText content={constants?.fpbNotCompatibleText} />\n </div>\n )}\n\n {showOptions &&\n (isSkeletonLoading ? (\n <SkeletonLoader />\n ) : (\n <TVChannelModal\n content={serviceOption?.[0]}\n setShowModal={setShowOptions}\n showModal={showOptions}\n constants={constants}\n />\n ))}\n\n {/* login pop up existing customer benefit without login on click of proceed to checkout */}\n {showLogin &&\n mainContent?.loginData?.length > 0 &&\n portalPosition &&\n createPortal(\n <LoginModalV2\n content={mainContent?.loginData?.[0]}\n closeLogin={() => {\n setShowLogin(false);\n }}\n metadata={metadata}\n onSuccess={onLoginSuccess}\n isProdEnv={isProdEnv}\n />,\n portalPosition\n )}\n\n {/* P2P flow first screen to select login */}\n {showP2P && enableP2P && !showLogin && popUPClick && (\n <GenericModal\n modalState={modalClick}\n handler={handleClick}\n showFooter={false}\n width={'628px'}\n height='280px'\n backgroundColor='#f7f6f5'\n noCloseButton={false}\n backDrop={true}\n bodyPadding='16px'\n >\n <PreToPostSubsPopup\n onClose={handleP2PClick}\n content={mainContent?.productContainer?.[0]?.p2pBloks?.[0]}\n prepaid={false}\n />\n </GenericModal>\n )}\n\n {/* P2P flow error screen if the customer is not prepaid customer */}\n {enableP2P && afterLogin && subscriptionFailure && popUPClick && (\n <GenericModal\n modalState={modalClick}\n handler={handleClick}\n showFooter={false}\n width={'628px'}\n height='280px'\n backgroundColor='#f7f6f5'\n noCloseButton={false}\n backDrop={true}\n bodyPadding='16px'\n id='table-product'\n >\n <PreToPostSubsPopup\n onClose={handleP2PClick}\n content={mainContent?.productContainer?.[0]?.p2pBloks?.[1]}\n prepaid={true}\n />\n </GenericModal>\n )}\n\n {/* p2p flow after successfully logged in prepaid customer to select a number for P2P*/}\n {userSubscriptionData?.length > 1 &&\n enableP2P &&\n afterLogin &&\n !subscriptionFailure &&\n p2pModal && (\n <GenericModal\n modalState={p2pModal}\n handler={handlePrepaidClick}\n showFooter={false}\n width={'628px'}\n height='280px'\n backgroundColor='#f7f6f5'\n noCloseButton={false}\n backDrop={true}\n bodyPadding='16px'\n >\n <ExsistingSubscriptionModal\n onSubmit={onSelectSubscriptionPreToPost}\n exsistingSubscriptionData={userSubscriptionData}\n updatedContent={updatedContent}\n />\n </GenericModal>\n )}\n\n {/* lincheck modal */}\n {showLinecheck &&\n mainContent?.enableLinecheckOverlay &&\n !isMobileFlow &&\n mainContent?.linecheckData?.length > 0 &&\n !enableP2P &&\n mainContent?.linecheckData?.[0]?.reference?.default_full_slug ===\n 'global/new-linecheck-test' ? (\n <LinecheckModal\n content={mainContent?.linecheckData?.[0]}\n onSuccess={linecheckSuccessAndCart}\n showModal={showLinecheck}\n setShowModal={setShowLinecheck}\n productName={productData?.productName}\n productId={productData?.productId}\n />\n ) : showLinecheck &&\n mainContent?.enableLinecheckOverlay &&\n !isMobileFlow &&\n mainContent?.linecheckData?.length > 0 &&\n !enableP2P &&\n mainContent?.linecheckData?.[0]?.reference?.default_full_slug ===\n 'global/coverage-check' ? (\n <CoverageCheckModal\n content={mainContent?.linecheckData?.[0].reference.content.body[0]}\n overlayIsOpen={true}\n externalHandleModal={setShowLinecheck}\n productName={productData?.productName}\n showModal={showLinecheck}\n setShowModal={setShowLinecheck}\n onSuccess={linecheckSuccess}\n onCreateCart={linecheckSuccessAndCart}\n lineCheckOnClear={lineCheckOnClear}\n productId={productData?.productId}\n />\n ) : null}\n {/* benefit validate */}\n {showBenefit && isMobileFlow && storyContent?.benefitsValidate?.length > 0 && (\n <BenefitsValidateWrapper\n content={storyContent?.benefitsValidate?.[0]}\n loginContent={mainContent?.loginData?.[0]}\n metadata={metadata}\n createCartCall={createCartCall}\n fetchOfferData={fetchOfferData}\n basicConfigUrl={basicConfigUrl}\n selectedExistingOption={selectedExistingOption}\n setShowBenefit={setShowBenefit}\n setLoginSuccess={setLoginSuccess}\n isProdEnv={isProdEnv}\n />\n )}\n\n {/* Display tv options on pop up after clicking order now button*/}\n {displayTvOptionsPopUp && (\n <GenericModal\n modalState={displayTvOptionsPopUp}\n handler={closeTVOptionsModal}\n showFooter={false}\n width={viewPortType === 'mobile' ? '' : viewPortType === 'tablet' ? '700px' : '990px'}\n fixedWidth={\n viewPortType === 'mobile' ? '' : viewPortType === 'tablet' ? '700px' : '990px'\n }\n height='845px'\n backgroundColor='#f7f6f5'\n noCloseButton={false}\n backDrop={true}\n bodyPadding='24px'\n >\n <OttServiceOptionsSmallPopup\n content={mainContent?.optionsPopup?.[0]}\n addOptionsCallBack={(val: any) => {\n setTvOptionsPopUpAddToCart(true);\n setTvOptionsPopUpChanged(true);\n setTvOptionsData(val);\n }}\n metadata={metadata}\n constants={constants}\n mainContent={mainContent}\n preSelectedOptions={[]}\n optionsResponse={responseList}\n updateResponseList={setResponseList}\n showPrice={showPrice}\n productData={productData}\n offeringData={offeringData}\n uniqueId={uniqueId}\n deviceFlow={deviceFlow}\n />\n </GenericModal>\n )}\n\n {/* Replace persistent cart confirmation modal */}\n {showReplaceCartModal && replacePopupContent && (\n <GenericPopup\n modalState={showReplaceCartModal}\n onCloseHandler={() => {\n pendingCartActionRef.current = null;\n setShowReplaceCartModal(false);\n }}\n content={replacePopupContent}\n wafIdentifier={basicConfigUrl}\n onPrimaryClick={() => {\n const pendingAction = pendingCartActionRef.current;\n pendingCartActionRef.current = null;\n if (shouldDeleteCartCookieRef.current) {\n Cookies.remove('one-commerce-cartId');\n }\n shouldDeleteCartCookieRef.current = false;\n setShowReplaceCartModal(false);\n pendingAction?.();\n }}\n onSecondaryClick={() => {\n pendingCartActionRef.current = null;\n setShowReplaceCartModal(false);\n }}\n />\n )}\n </div>\n );\n};\n\nexport default StaticProduct;\n"],"names":["StaticProduct","content","offeringData","uniqueId","storyContent","metadata","tabIndex","cardsLength","indexKey","constants","mainContent","address","eligibleBundle","linecheckSuccessCallBack","selectedOption","fetchOfferData","basicConfigUrl","selectedExistingOption","setLoginSuccess","enableP2P","lineCheckCallBack","loginSuccess","setToggleState","toggleState","noTabs","deviceFlow","deviceFlowCallBack","selectedRP","continueCart","lineCheckOnClear","pegaIntegration","isProdEnv","deviceUltimateBundle","toggleContent","pricesToggleState","isShogunFlow","shogunToken","showLoader","setShowLoader","useState","showProductDetail","setShowProductDetail","showGiftOrCashback","setShowGiftOrCashback","showGift","cashbackAvailable","modalClick","updateModalClick","combine","setCombine","giftItem","setGiftItem","showLogin","setShowLogin","showOptions","setShowOptions","showLinecheck","setShowLinecheck","showP2P","setShowP2P","showBenefit","setShowBenefit","subscriptionFailure","setSubscriptionFailure","endpoint","validateEndpoint","userSubscriptionData","setUserSubscriptionData","afterLogin","setAfterLogin","popUPClick","setModalClick","p2pModal","setP2pModal","tvOptions","setTvOptions","displayTvOptionsPopUp","setDisplayTvOptionsPopUp","alreadyShowedTvOptionsPopUp","setAlreadyShowedTvOptionsPopUp","tvOptionsPopUpChanged","setTvOptionsPopUpChanged","tvOptionsPopUpAddToCart","setTvOptionsPopUpAddToCart","responseList","setResponseList","timerSpaceHeight","setTimerSpaceHeight","showReplaceCartModal","setShowReplaceCartModal","pendingCartActionRef","useRef","replacePopupContent","setReplacePopupContent","shouldDeleteCartCookieRef","timerContainerRef","pegaEndpoint","API_BASE_BASEPOINT","CUSTOMER","portalPosition","undefined","window","document","getElementById","isSkeletonLoading","_a","Object","keys","length","productData","_f","_e","_d","_c","_b","products","reference","product","promotionData","_l","_k","_j","_h","_g","promotion","promoDescription","timerContent","_m","timer","isCounterEnabled","enableCounter","timerIsActive","setTimerIsActive","startTime","endTime","isTimerActive","showHighlightText","Boolean","highlightText","badgesContainer","showPromoContainer","displayText","notShowPromotionLabel","showBadges","id","productId","cartEndPoint","_o","LineTableBasicPropConfig","getInstance","getCartUrl","assetPath","_p","AssetPathPropConfig","getAssetPath","isMobileFlow","pageType","viewPortType","viewport","context","useContext","AppContext","isAvailable","_q","includes","enableTVStreamingOptionsPopUp","enableTVStreamingOptionsStepper","disableDiscountedPriceToggle","skipAccessoriesPage","LoginBasicPropConfig","create","baseURL","AuthData","Cookies","get","JSON","parse","uniqueProductData","filter","setTvOptionsData","options","handleP2PClick","createCart","siteId","fetchPrepaidData","EXISTINGCUSTOMER","enableExistingCustomer","enableLoggedInPrice","createCartCall","prospectId","localStorage","getItem","url","location","pathname","split","payload","eventTimestamp","getUtcTimestamp","eventType","pageLocation","targetProduct","trackPegaEvents","selectedGiftItem","item","itemValue","findIndex","gift","giftGroupId","temp","push","params","URLSearchParams","_r","search","queryParams","validateNumberFcn","value","combineWithSmartPhone","showPrice","msisdn","validateFcn","validPrepaidNumbers","__awaiter","validateP2P","then","res","catch","e","console","log","fetchSubscriptionData","resp","subscriptionData","responseData","queryData","find","entry","Promise","all","map","data","succ","error","err","handleClick","closeTVOptionsModal","event","trackNewDatalayerEvent","GAEVENT","CTABUTTONCLICK","headline","linecheckSuccessAndCart","bundle","serviceOption","fetchServiceOptions","bloks","radioValue","_s","tvProductId","createCartCallAction","discountRef","promotionInfo","discountVersion","version","rewardsInfo","pointsBurnt","rewards","points","rewardOfferId","offerId","gloxTokenId","fromPopup","updateVasPopUp","sessionStorage","removeItem","staticCreateCart","AuthDataNew","setLoginCookie","ONE_ECOMMERCE_INTERNET_SUMMARY","linecheckData","loginData","isBundle","recommendAccessory","bundledOffers","productType","toLowerCase","combineWithVasOptions","productName","addEventListener","withReplaceCartCheck","action","popupContent","callFunctionArg","existingCartId","enableReplacePopup","current","generalReplacePopup","fetchPrice","useEffect","setTimeout","findHeight","result","checkGiftOrCashback","assign","TV","gigaSpeed","Netflix","Array","isArray","_u","_t","showModalPopup","updatedContent","_v","productContainer","store","ottOptionsApi","delay","getTimeUntilNextTimerEvent","timeout","clearTimeout","timerElement","updateTimerSpaceHeight","clientHeight","ResizeObserver","resizeObserver","observe","disconnect","_w","checkVasPopUp","vasPopUp","handleStorageChange","storageArea","key","newValue","handleCustomEvent","removeEventListener","setItem","Event","dispatchEvent","React","createElement","createPortal","Dotloader","keyParams","className","SkeletonLoader","Styles","selected","style","paddingBottom","activeicon","src","alt","width","height","subscriptionAvalTxt","inactiveicon","notSubscriptionTxt","_x","_z","_y","_0","default_full_slug","overlay","_2","_1","eligibility","fpb","disabled","flexDirection","bundleproductcard","_3","transition","productcontainer","borderConfig","showBorder","borderGradient","borderColor","borderWidth","borderStyle","borderRadius","background","getBorderStyles","BadgeContainer","badges","badgeContainer","promocontainer","bestSellerColor","ref","timerContainer","_4","StaticLineTabelTimer","_5","hasHighlightText","onTimerChange","active","detailsection","imageFullWidthSection","headersection","titlesection","productheader","icon","_6","filename","imagecontainer","_7","productdescription","RichText","description","images","_8","img","imagespace","borderimage","_9","productconfig","Fragment","space","stylename","skeletontittle","count","skeletonline","_10","entitle","index","StaticProductEntitlement","enableTVStreamingOptions","_11","extraBenefits","StaticExclusiveBenefit","_12","benefitssection","_13","benefits","StaticBenefit","benefitData","togglePriceLabel","giftsection","_14","singleGift","GiftConfigV2","_15","giftConfig","ChooseGiftV2","parentPoType","StaticProductCashback","ordersection","base","DynamicPriceSection","priceCollection","promoText","discountedpricetoggleSection","togglePosition","UserLoggedPricesToggle","lineTable","P2PDiscountLabel","longterm","swapButton","padding","CheckoutButton","isDeviceFlow","msisdnn","uniqueProductBenefits","alwaysActive","_16","_18","_17","flexUpgradeFreePopup","_21","_20","forceDisabled","_23","_22","notEligibleReason","notEligibileReason","_25","_24","_26","addSmartPhone","textAlign","ctaLabel","onClick","replacePopupWithSmartphone","buttontext","redirectOnly","FalconButtonV2","buttonType","buttonLabel","ultimateBundlePromotion","ultimateBundleLbl","_28","_27","buttonIcon","_30","_29","buttonAlignment","wafIdentifier","productcontractduration","paddingTop","_31","contractDuration","replacePlaceholder","_32","minContractDuration","substring","noContractDuration","productDetails","_33","productdetailslink","DOWNLOADPRODUCT","getEcomCartInfo","LINETABLE","productDetailsLink","StaticProductDetails","_35","_34","_37","_36","_39","_38","disabledInfo","fpbNotCompatibleText","TVChannelModal","setShowModal","showModal","_40","LoginModalV2","_41","closeLogin","onSuccess","GenericModal","modalState","handler","showFooter","backgroundColor","noCloseButton","backDrop","bodyPadding","PreToPostSubsPopup","onClose","_44","_43","_42","p2pBloks","prepaid","_47","_46","_45","ExsistingSubscriptionModal","onSubmit","exsistingSubscriptionData","enableLinecheckOverlay","_48","_50","_49","LinecheckModal","_52","_53","_55","_54","CoverageCheckModal","_57","body","overlayIsOpen","externalHandleModal","onCreateCart","_58","benefitsValidate","BenefitsValidateWrapper","_59","loginContent","_60","fixedWidth","OttServiceOptionsSmallPopup","optionsPopup","_61","addOptionsCallBack","val","preSelectedOptions","optionsResponse","updateResponseList","GenericPopup","onCloseHandler","onPrimaryClick","pendingAction","remove","onSecondaryClick"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{__awaiter as o}from"../_virtual/_tslib.js";import{ApiServiceV2 as i,CMSStoryblokServiceV2 as l}from"@sunrise-upc/ajax-lib";import{getCookies as e,getSessionStorage as n,removeLocalStorage as d,getLocalStorageWithExpiry as t,setLocalStoreWithExpiry as v}from"../utils/utils.js";import{APIResourceConstants as r,API_BASE_BASEPOINT as u}from"./api-constants.js";import s from"js-cookie";import{v4 as a}from"uuid";import{ONE_ECOMMERCE_OTT as c,FIXNET as p,TV_SERVICE_OPTION as m,MOBILE as h,PRE_TO_POST as I,P2PSUBSCRIBEDPLAN as f,QOQA as y,VOUCHERTYPE as T,VOUCHERCODE as g,HARDWARE as A,DEVICE_INSURANCE as E}from"../utils/constants.js";import{getAccessDataFromLineCheck as S}from"../components/lineTable/LineTableV3.utils.js";import{LineTableBasicPropConfig as C}from"./LineTableBasicPropConfig.js";import{errorTrackingDataLayer as _}from"../utils/AnalyticsUtils.js";import{apiResConstants as L}from"../components/LineCheckV3/APIResourceConstants.js";import{getDeviceNotes as x}from"../components/UltimateBundleLinetable/DpTableUtils.js";import{fetchOttItems as N}from"../components/StaticLineTable/Product.utils.js";let P=void 0!==typeof window&&s.get("sunriseAuth");P=P&&JSON.parse(P);const O=(i,e,n,d)=>o(void 0,void 0,void 0,function*(){var o;const r=t(`${i}_${e}_countryData`);if(r)return r;try{const t={language:e,type:"B2C"},r=null===(o=(yield l.get(n,t)).data)||void 0===o?void 0:o.stories;return r&&r.length>0&&v(`${i}_${e}_countryData`,r,d),r}catch(o){return console.error(o),o}}),w=(l,e,n)=>o(void 0,void 0,void 0,function*(){var o,d,t;try{localStorage.removeItem("entertainment");const o={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL},params:{}};n&&(o.params={returnPromo:!0});const d=e+r.LINE_TABLEV2,t=yield i.getApiServiceInstance().post(d,l,o).then(o=>{if(200==o.status)return null==o?void 0:o.data});if(t.error)return t.error;{const o=[];return null==t||t.forEach(i=>{o[i.id]=i}),o}}catch(i){((null===(d=null===(o=null==i?void 0:i.response)||void 0===o?void 0:o.data)||void 0===d?void 0:d.code)||504===(null===(t=null==i?void 0:i.response)||void 0===t?void 0:t.status))&&_(null==i?void 0:i.response),console.log("error---\x3e",i)}}),b=(l,t,v,u,C,L,P,O,w,...b)=>o(void 0,[l,t,v,u,C,L,P,O,w,...b],void 0,function*(o,l,t,v,u,C,L,P,O,w="",b,R,U,B,H){var $,j,V,k,D,G,M,F,X,J,W,K,q,z,Q,Y,Z,oo,io,lo,eo,no,to,vo,ro,uo,so,ao,co,po,mo,ho,Io,fo,yo,To,go,Ao,Eo,So,Co,_o,Lo,xo,No,Po,Oo,wo,bo,Ro,Uo,Bo,Ho,$o,jo,Vo,ko,Do;let Go={};const Mo=n(c);if(u===p){let i="",n="";const d=null!==($=s.get("one-commerce-linecheckcorrelationid"))&&void 0!==$?$:"",v=S(null===(j=null==o?void 0:o[0])||void 0===j?void 0:j.id);Go={relatedParty:[{id:"anonymous",segment:"RESIDENTIAL"}],cartItem:[{itemType:"HOME",promotionId:t,items:[],note:[{author:"linecheckCorrelationId",text:d}]}]};const r={itemType:"MOBILE",promotionId:t,items:[]};if(null===(V=o[0])||void 0===V?void 0:V.isBundle)null===(D=null===(k=o[0])||void 0===k?void 0:k.bundledOffers)||void 0===D||D.map(o=>{var e,d,t,v,u,s,a,c,p,m,h,I,f,y,T,g,A,E,S;if(null===(d=null===(e=null==o?void 0:o.promotionInfo)||void 0===e?void 0:e[0])||void 0===d?void 0:d.id){const l=1==(null===(a=null===(s=null===(u=null===(v=null===(t=null==o?void 0:o.promotionInfo)||void 0===t?void 0:t[0])||void 0===v?void 0:v.hardwareGift)||void 0===u?void 0:u[0])||void 0===s?void 0:s.ids)||void 0===a?void 0:a.length)?null===(I=null===(h=null===(m=null===(p=null===(c=null==o?void 0:o.promotionInfo)||void 0===c?void 0:c[0])||void 0===p?void 0:p.hardwareGift)||void 0===m?void 0:m[0])||void 0===h?void 0:h.ids)||void 0===I?void 0:I[0]:"";"mobile"===(null===(f=null==o?void 0:o.productType)||void 0===f?void 0:f.toLowerCase())?(r.promotionId=null===(T=null===(y=null==o?void 0:o.promotionInfo)||void 0===y?void 0:y[0])||void 0===T?void 0:T.id,i=l):(Go.cartItem[0].promotionId=null===(A=null===(g=null==o?void 0:o.promotionInfo)||void 0===g?void 0:g[0])||void 0===A?void 0:A.id,n=l)}"tv"==(null===(E=null==o?void 0:o.productType)||void 0===E?void 0:E.toLowerCase())&&l?Go.cartItem[0].items.push({itemType:null==o?void 0:o.productType,id:l}):"mobile"===(null===(S=null==o?void 0:o.productType)||void 0===S?void 0:S.toLowerCase())?r.items.push({itemType:"RATEPLAN",id:null==o?void 0:o.id}):Go.cartItem[0].items.push({itemType:null==o?void 0:o.productType,id:null==o?void 0:o.id})}),n&&(null===(G=Go.cartItem[0].items)||void 0===G||G.push({itemType:"GIFT",id:n})),i&&r.items.push({itemType:"GIFT",id:i}),(null===(M=null==r?void 0:r.items)||void 0===M?void 0:M.length)>0&&(null===(F=null==Go?void 0:Go.cartItem)||void 0===F||F.push(r)),(null==R?void 0:R.length)>0&&(null==R||R.forEach(o=>{Go.cartItem[0].items.push({itemType:m,id:null==o?void 0:o.id})}));else{const i=1==(null===(z=null===(q=null===(K=null===(W=null===(J=null===(X=null==o?void 0:o[0])||void 0===X?void 0:X.promotionInfo)||void 0===J?void 0:J[0])||void 0===W?void 0:W.hardwareGift)||void 0===K?void 0:K[0])||void 0===q?void 0:q.ids)||void 0===z?void 0:z.length)?null===(lo=null===(io=null===(oo=null===(Z=null===(Y=null===(Q=null==o?void 0:o[0])||void 0===Q?void 0:Q.promotionInfo)||void 0===Y?void 0:Y[0])||void 0===Z?void 0:Z.hardwareGift)||void 0===oo?void 0:oo[0])||void 0===io?void 0:io.ids)||void 0===lo?void 0:lo[0]:"";Go.cartItem[0].items.push({itemType:null===(eo=null==o?void 0:o[0])||void 0===eo?void 0:eo.productType,id:null===(no=null==o?void 0:o[0])||void 0===no?void 0:no.id}),i&&(null===(to=Go.cartItem[0].items)||void 0===to||to.push({itemType:"GIFT",id:i}))}C&&(null==C?void 0:C.length)>0&&(null==C||C.map(o=>{var i,l,e,n;"HOME"===(null==o?void 0:o.parentPoType)?null===(e=null===(l=null===(i=null==Go?void 0:Go.cartItem)||void 0===i?void 0:i[0])||void 0===l?void 0:l.items)||void 0===e||e.push({itemType:"GIFT",id:null==o?void 0:o.tuaProdId}):null===(n=r.items)||void 0===n||n.push({itemType:"GIFT",id:null==o?void 0:o.tuaProdId})})),(null==v?void 0:v.accessType)&&(null===(uo=null===(ro=null===(vo=null==Go?void 0:Go.cartItem)||void 0===vo?void 0:vo[0])||void 0===ro?void 0:ro.note)||void 0===uo||uo.push({author:"lineCheckaccessType",text:null==v?void 0:v.accessType})),(null==v?void 0:v.timeSlot)&&(null===(co=null===(ao=null===(so=null==Go?void 0:Go.cartItem)||void 0===so?void 0:so[0])||void 0===ao?void 0:ao.note)||void 0===co||co.push({author:"lineCheckEarliestActivationDate",text:null===(po=null==v?void 0:v.timeSlot)||void 0===po?void 0:po.start}));try{const o=e("chAddressJson"),i=[{characteristic:{installationAddress:!0,country:"CH",city:null===(mo=null==o?void 0:o.selectedAdd)||void 0===mo?void 0:mo.city,street1:null===(ho=null==o?void 0:o.selectedAdd)||void 0===ho?void 0:ho.street,postCode:null===(Io=null==o?void 0:o.selectedAdd)||void 0===Io?void 0:Io.postCode,street2:null===(fo=null==o?void 0:o.selectedAdd)||void 0===fo?void 0:fo.houseNumber}}];Go.contactMedium=i}catch(o){console.log("issue at line check address addition in create cart ==>",o)}}else if(u===h){Go=L?{relatedParty:[{segment:"RESIDENTIAL"}],cartItem:[{itemType:"MOBILE",promotionId:t,items:[{itemType:"RATEPLAN",id:(null===(yo=null==o?void 0:o[0])||void 0===yo?void 0:yo.id)?null===(To=null==o?void 0:o[0])||void 0===To?void 0:To.id:o,subscribedInfo:{installedPlan:f,id:P}}],processType:{id:I}}]}:{relatedParty:[{segment:"RESIDENTIAL"}],cartItem:[{itemType:"MOBILE",promotionId:t,items:[{itemType:"RATEPLAN",id:(null===(go=null==o?void 0:o[0])||void 0===go?void 0:go.id)?null===(Ao=null==o?void 0:o[0])||void 0===Ao?void 0:Ao.id:o,clientDiscountInfo:U?[{discountRef:U,discountType:"DISCOUNT"}]:void 0}]}]};const i=1==(null===(xo=null===(Lo=null===(_o=null===(Co=null===(So=null===(Eo=null==o?void 0:o[0])||void 0===Eo?void 0:Eo.promotionInfo)||void 0===So?void 0:So[0])||void 0===Co?void 0:Co.hardwareGift)||void 0===_o?void 0:_o[0])||void 0===Lo?void 0:Lo.ids)||void 0===xo?void 0:xo.length)?null===(Ro=null===(bo=null===(wo=null===(Oo=null===(Po=null===(No=null==o?void 0:o[0])||void 0===No?void 0:No.promotionInfo)||void 0===Po?void 0:Po[0])||void 0===Oo?void 0:Oo.hardwareGift)||void 0===wo?void 0:wo[0])||void 0===bo?void 0:bo.ids)||void 0===Ro?void 0:Ro[0]:"";i&&(null===(Uo=Go.cartItem[0].items)||void 0===Uo||Uo.push({itemType:"GIFT",id:i})),C&&(null==C?void 0:C.length)>0&&(null==C||C.map(o=>{var i,l,e;"HOME"!==(null==o?void 0:o.parentPoType)&&(null===(e=null===(l=null===(i=null==Go?void 0:Go.cartItem)||void 0===i?void 0:i[0])||void 0===l?void 0:l.items)||void 0===e||e.push({itemType:"GIFT",id:null==o?void 0:o.tuaProdId}))}))}if(O){const o=[];o.push({author:T,text:y}),""!==w&&(o.push({author:g,text:w}),d("vctype")),Go.cartItem[0].note=o}else if(U&&B){const o=[];null==o||o.push({author:"offerType",text:"ATL"}),null==o||o.push({author:"externalPromotionName",text:U}),null==o||o.push({author:"offerVersion",text:B}),Go.cartItem[0].note=o}if(H&&(null===(Bo=null==Go?void 0:Go.cartItem)||void 0===Bo?void 0:Bo[0])){const{pointsBurnt:o,rewardOfferId:i,gloxTokenId:l}=H;l&&(Go.guid=l);const e=[null!=o&&""!=`${o}`&&{author:"pointsBurnt",text:`${o}`},null!=i&&""!=`${i}`&&{author:"rewardOfferId",text:`${i}`}].filter(Boolean);e.length>0&&(null===(Ho=null==Go?void 0:Go.cartItem)||void 0===Ho||Ho.forEach(o=>{Array.isArray(null==o?void 0:o.items)&&o.items.forEach(o=>{const i=`${(null==o?void 0:o.itemType)||""}`.toUpperCase();"RATEPLAN"!==i&&"INTERNET"!==i||(o.note=[...o.note||[],...e])})}))}if(b){const o=(o=>{var i,l,e,n,d,t,v,r,u,s,a,c,p,m,h,I;let f=[];const y=null!==(n=null===(e=null===(l=null===(i=null==o?void 0:o.selectedVarientDetails)||void 0===i?void 0:i.hardwarePrices)||void 0===l?void 0:l.smartUpgradeInstallments)||void 0===e?void 0:e.duration)&&void 0!==n?n:0,T=null!==(u=null===(r=null===(v=null===(t=null===(d=null==o?void 0:o.selectedVarientDetails)||void 0===d?void 0:d.hardwarePrices)||void 0===t?void 0:t.smartUpgradeInstallments)||void 0===v?void 0:v.upFrontPayment)||void 0===r?void 0:r.value)&&void 0!==u?u:0,g=null!==(m=null===(p=null===(c=null===(a=null===(s=null==o?void 0:o.selectedVarientDetails)||void 0===s?void 0:s.hardwarePrices)||void 0===a?void 0:a.smartUpgradeInstallments)||void 0===c?void 0:c.insurance)||void 0===p?void 0:p.value)&&void 0!==m?m:0,S={itemType:A,id:null!==(I=null===(h=null==o?void 0:o.selectedVarientDetails)||void 0===h?void 0:h.id)&&void 0!==I?I:"",contractTerm:y,note:x(o,T)};if(S&&(null==f||f.push(S)),g){const i={itemType:E,id:null==o?void 0:o.insuranceName};null==f||f.push(i)}return(null==f?void 0:f.length)>0?f:null})(b);o&&(null===(Vo=null===(jo=null===($o=null==Go?void 0:Go.cartItem)||void 0===$o?void 0:$o[0])||void 0===jo?void 0:jo.items)||void 0===Vo||Vo.push(...o))}let Fo=null;if("undefined"!=typeof window){Fo=new URLSearchParams(window.location.search).get("flow")}if(Mo&&"ott"===Fo){const o=N(Mo);if((null==o?void 0:o.length)>0){const i={},l=null===(ko=null==Go?void 0:Go.cartItem)||void 0===ko?void 0:ko.find(o=>"HOME"===(null==o?void 0:o.itemType));o.forEach(o=>{var e;const n=null==o?void 0:o.itemType;if("OTT"===n){const l=(null===(e=null==o?void 0:o.promotionId)||void 0===e?void 0:e.trim())||"defaultOttBundle",d=`OTT_${l}`;i[d]||(i[d]={itemType:n,promotionId:l,items:[]}),i[d].items.push(...(null==o?void 0:o.items)||[])}else l&&l.items&&(null==o?void 0:o.items)&&l.items.push(...o.items)}),Object.keys(i).forEach(o=>{const l=i[o];null==Go||Go.cartItem.push({itemType:l.itemType,promotionId:l.promotionId,items:l.items})})}}const Xo={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},Jo=v+r.CREATE_CARTV3;if((null===(Do=Object.keys(Go))||void 0===Do?void 0:Do.length)>0){const o=yield i.getApiServiceInstance().post(Jo,Go,Xo).then(o=>{if(d("isB2BCustomer"),200==o.status)return null==o?void 0:o.data}).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)});if(o.error)throw o.error;return o}}),R=(i,e)=>o(void 0,void 0,void 0,function*(){try{return yield l.get(i,e).then(o=>{var i,l,e,n;const d=null===(e=null===(l=null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.story)||void 0===l?void 0:l.content)||void 0===e?void 0:e.body;for(const o of d){if("productTableV2"==o.component||"productTableWithOutLC"===o.component||"prodConfigContainer"===o.component)return o;if("roamingProductTable"==o.component)return null===(n=null==o?void 0:o.productTable)||void 0===n?void 0:n[0]}}).catch(o=>{throw o})}catch(o){return o}}),U=(o="en",i)=>{try{return l.get(i,{dimension:o,per_page:1e3,type:"B2C"}).then(o=>{var i;const l={};((null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.datasource_entries)||[]).map(o=>{l[o.name]=null!=o.dimension_value?o.dimension_value:o.value});try{localStorage.removeItem("sbstaticcontent"),localStorage.setItem("sbstaticcontent",JSON.stringify(l))}catch(o){}return l}).catch(o=>o)}catch(o){throw Error("Promise failed")}},B=(l,e,n,d,t,v,u,s,c,p)=>o(void 0,void 0,void 0,function*(){let o;localStorage.removeItem("entertainment"),o={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},v&&(o.params={returnPromo:!0}),u&&(o.params={journey:"P2P"}),p&&(o.params=Object.assign(Object.assign({},o.params),{journey:"FPB"}));let m=n+r.LINE_TABLEV2;s&&localStorage.getItem("prospectId")&&(o.headers["x-sunrise-prospect-id"]=localStorage.getItem("prospectId"),m=n+r.LINE_TABLEV3);const h=t?m+r.SUBSCRIPTION+t:m,I=c?`?pageKey=${e}`:"",f=d||t?h:m,y=yield i.getApiServiceInstance().post(`${f}${I}`,l,o).then(o=>{if(200==o.status)return null==o?void 0:o.data}).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)});return y.error?y.error:{[e]:y}}),H=(l,e,n)=>o(void 0,void 0,void 0,function*(){const o={params:{gloxTokenId:l},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},d=n+r.LINE_TABLEV2,t=yield i.getApiServiceInstance().post(d,[],o).then(o=>{if(200===o.status)return null==o?void 0:o.data}).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)});if(!t||t.error)throw new Error("Shogun offer API failed");return{[e]:t}}),$=(l,e)=>o(void 0,void 0,void 0,function*(){let o;o={params:{},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},o.params={category:l};const n=e,d=yield i.getApiServiceInstance().get(n,o).then(o=>200==o.status?null==o?void 0:o.data:null==o?void 0:o.status).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)});return(null==d?void 0:d.error)?null==d?void 0:d.error:{subscriptionData:d}}),j=(l,e)=>o(void 0,void 0,void 0,function*(){var o;try{const n={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL},params:{offerIds:l,voucherCode:e}},d=(null===(o=null==C?void 0:C.getInstance())||void 0===o?void 0:o.getBaseUrl())+`${r.VOUCHER_PROMOTIONS}`;yield i.getApiServiceInstance().get(d,n).then(o=>{if(200==o.status)return null==o?void 0:o.data})}catch(o){}}),V=(l,e)=>o(void 0,void 0,void 0,function*(){let o;o={params:{},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},o.params={msisdn:l};const n=e;return yield i.getApiServiceInstance().get(n,o).then(o=>{var i;return"OK"==(null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.preToPostConversionStatus)}).catch(o=>{var i,l,e;return((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response),console.log("err",o),!1})}),k=(l,e)=>o(void 0,void 0,void 0,function*(){try{let o;o={params:{},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}};const n=e+r.HARDWARES+`baseProduct__${l}`;return yield i.getApiServiceInstance().get(n,o).then(o=>{var i;return 200===(null==o?void 0:o.status)&&(null===(i=Object.keys(null==o?void 0:o.data))||void 0===i?void 0:i.length)>0?null==o?void 0:o.data:null})}catch(o){return console.log("err",o),null}}),D=(l,e)=>o(void 0,void 0,void 0,function*(){try{let o;o={params:{},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}};const n=e+r.HARDWARE_DEVICES+`manufacturerName__${l}`;return yield i.getApiServiceInstance().get(n,o).then(o=>{var i,l;return 200===(null==o?void 0:o.status)&&(null===(l=null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.hardwares)||void 0===l?void 0:l.length)>0?null==o?void 0:o.data:null})}catch(o){return console.log("err",o),null}}),G=(l,...e)=>o(void 0,[l,...e],void 0,function*(o,l={},e){let n;n={headers:{"x-correlation-id":a(),"x-sunrise-channel":L.X_SUN_CHAL,"x-sunrise-prospect-id":e}};let d=o+(null==r?void 0:r.CUSTOMER_EVENTS);yield i.getApiServiceInstance().post(d,l,n).then(o=>{if(200==o.status)return console.log("trackPegaEvents result.data",o.data),null==o?void 0:o.data}).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)})}),M=(l,n,d,t,v)=>o(void 0,void 0,void 0,function*(){var o,t,c,p,m,h,I,f,y,T,g,A,E,_,L,x,N,P,O,w,b,R,U,B,H;let $={},j="",V="";const k=null!==(o=s.get("one-commerce-linecheckcorrelationid"))&&void 0!==o?o:"",D=S(null===(t=null==l?void 0:l[0])||void 0===t?void 0:t.id);$={relatedParty:[{id:"anonymous",segment:"RESIDENTIAL"}],cartItem:[{itemType:"HOME",promotionId:d,items:[],note:[{author:"linecheckCorrelationId",text:k}]}]};const G={itemType:"MOBILE",promotionId:d,items:[]};(null===(c=null==l?void 0:l[0])||void 0===c?void 0:c.isBundle)?(null===(m=null===(p=null==l?void 0:l[0])||void 0===p?void 0:p.bundledOffers)||void 0===m||m.map(o=>{var i,l,e,d,t,v,r,u,s,a,c,p,m,h,I,f,y,T,g;if(null===(l=null===(i=null==o?void 0:o.promotionInfo)||void 0===i?void 0:i[0])||void 0===l?void 0:l.id){const i=1==(null===(r=null===(v=null===(t=null===(d=null===(e=null==o?void 0:o.promotionInfo)||void 0===e?void 0:e[0])||void 0===d?void 0:d.hardwareGift)||void 0===t?void 0:t[0])||void 0===v?void 0:v.ids)||void 0===r?void 0:r.length)?null===(p=null===(c=null===(a=null===(s=null===(u=null==o?void 0:o.promotionInfo)||void 0===u?void 0:u[0])||void 0===s?void 0:s.hardwareGift)||void 0===a?void 0:a[0])||void 0===c?void 0:c.ids)||void 0===p?void 0:p[0]:"";"mobile"===(null===(m=null==o?void 0:o.productType)||void 0===m?void 0:m.toLowerCase())?(G.promotionId=null===(I=null===(h=null==o?void 0:o.promotionInfo)||void 0===h?void 0:h[0])||void 0===I?void 0:I.id,j=i):($.cartItem[0].promotionId=null===(y=null===(f=null==o?void 0:o.promotionInfo)||void 0===f?void 0:f[0])||void 0===y?void 0:y.id,V=i)}"tv"==(null===(T=null==o?void 0:o.productType)||void 0===T?void 0:T.toLowerCase())&&n||("mobile"===(null===(g=null==o?void 0:o.productType)||void 0===g?void 0:g.toLowerCase())?G.items.push({itemType:"RATEPLAN",id:null==o?void 0:o.id}):$.cartItem[0].items.push({itemType:null==o?void 0:o.productType,id:null==o?void 0:o.id}))}),V&&(null===(I=null===(h=null==$?void 0:$.cartItem)||void 0===h?void 0:h[0].items)||void 0===I||I.push({itemType:"GIFT",id:V})),j&&(null===(f=null==G?void 0:G.items)||void 0===f||f.push({itemType:"GIFT",id:j})),(null===(y=null==G?void 0:G.items)||void 0===y?void 0:y.length)>0&&(null===(T=null==$?void 0:$.cartItem)||void 0===T||T.push(G)),v&&(null==v?void 0:v.length)>0&&(null==v||v.map(o=>{var i,l,e;null===(e=null===(l=null===(i=null==$?void 0:$.cartItem)||void 0===i?void 0:i[0])||void 0===l?void 0:l.items)||void 0===e||e.push({itemType:"GIFT",id:null==o?void 0:o.tuaProdId})}))):$.cartItem[0].items.push({itemType:null===(g=null==l?void 0:l[0])||void 0===g?void 0:g.productType,id:null===(A=null==l?void 0:l[0])||void 0===A?void 0:A.id}),(null==D?void 0:D.accessType)&&(null===(L=null===(_=null===(E=null==$?void 0:$.cartItem)||void 0===E?void 0:E[0])||void 0===_?void 0:_.note)||void 0===L||L.push({author:"lineCheckaccessType",text:null==D?void 0:D.accessType})),(null==D?void 0:D.timeSlot)&&(null===(P=null===(N=null===(x=null==$?void 0:$.cartItem)||void 0===x?void 0:x[0])||void 0===N?void 0:N.note)||void 0===P||P.push({author:"lineCheckEarliestActivationDate",text:null===(O=null==D?void 0:D.timeSlot)||void 0===O?void 0:O.start}));try{const o=e("chAddressJson"),i=[{characteristic:{installationAddress:!0,country:"CH",city:null===(w=null==o?void 0:o.selectedAdd)||void 0===w?void 0:w.city,street1:null===(b=null==o?void 0:o.selectedAdd)||void 0===b?void 0:b.street,postCode:null===(R=null==o?void 0:o.selectedAdd)||void 0===R?void 0:R.postCode,street2:null===(U=null==o?void 0:o.selectedAdd)||void 0===U?void 0:U.houseNumber}}];$.contactMedium=i}catch(o){console.log("issue at line check address addition in create cart ==>",o)}const M={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},F=`${null===(B=null==C?void 0:C.getInstance())||void 0===B?void 0:B.getBaseUrl()}${u.CART_MGMT}/${r.CREATE_CARTV2}`;if((null===(H=Object.keys($))||void 0===H?void 0:H.length)>0){const o=yield i.getApiServiceInstance().post(F,$,M).then(o=>{if(200==o.status)return null==o?void 0:o.data});if(o.error)throw o.error;return o}}),F=()=>o(void 0,void 0,void 0,function*(){var o;const l=`${null===(o=null==C?void 0:C.getInstance())||void 0===o?void 0:o.getBaseUrl()}${r.TV_SERVICE_OPTIONS_V2}`,e={params:{},headers:{"x-sunrise-channel":r.X_SUN_CHAL,"x-correlation-id":a()}};try{const o=yield i.getApiServiceInstance().get(l,e).then(o=>{var i;return(null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.length)>0?null==o?void 0:o.data:[]});return o}catch(o){console.log(o)}});export{b as createCartV2,M as createCartWinV2,O as fetchCountryList,R as fetchLinetableContent,B as fetchOfferingDataLineTableV2,w as fetchOfferingDataV2,F as fetchOttServiceOptions,H as fetchShogunOfferData,$ as fetchSubscriptionData,k as getDeviceDetails,D as getDeviceModelsList,U as getStaticContent,j as getVocherPromotion,G as trackPegaEvents,V as validateP2P};
1
+ import{__awaiter as o}from"../_virtual/_tslib.js";import{ApiServiceV2 as i,CMSStoryblokServiceV2 as l}from"@sunrise-upc/ajax-lib";import{getCookies as e,getSessionStorage as n,removeLocalStorage as t,getLocalStorageWithExpiry as d,setLocalStoreWithExpiry as v}from"../utils/utils.js";import{APIResourceConstants as r,API_BASE_BASEPOINT as u}from"./api-constants.js";import s from"js-cookie";import{v4 as a}from"uuid";import{ONE_ECOMMERCE_OTT as c,FIXNET as p,TV_SERVICE_OPTION as m,MOBILE as h,PRE_TO_POST as I,P2PSUBSCRIBEDPLAN as f,QOQA as y,VOUCHERTYPE as T,VOUCHERCODE as g,HARDWARE as A,DEVICE_INSURANCE as E}from"../utils/constants.js";import{getAccessDataFromLineCheck as S}from"../components/lineTable/LineTableV3.utils.js";import{LineTableBasicPropConfig as C}from"./LineTableBasicPropConfig.js";import{errorTrackingDataLayer as _}from"../utils/AnalyticsUtils.js";import{apiResConstants as L}from"../components/LineCheckV3/APIResourceConstants.js";import{getDeviceNotes as x}from"../components/UltimateBundleLinetable/DpTableUtils.js";import{fetchOttItems as P}from"../components/StaticLineTable/Product.utils.js";let N=void 0!==typeof window&&s.get("sunriseAuth");N=N&&JSON.parse(N);const w=(i,e,n,t)=>o(void 0,void 0,void 0,function*(){var o;const r=d(`${i}_${e}_countryData`);if(r)return r;try{const d={language:e,type:"B2C"},r=null===(o=(yield l.get(n,d)).data)||void 0===o?void 0:o.stories;return r&&r.length>0&&v(`${i}_${e}_countryData`,r,t),r}catch(o){return console.error(o),o}}),b=(l,e,n)=>o(void 0,void 0,void 0,function*(){var o,t,d;try{localStorage.removeItem("entertainment");const o={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL},params:{}};n&&(o.params={returnPromo:!0});const t=e+r.LINE_TABLEV2,d=yield i.getApiServiceInstance().post(t,l,o).then(o=>{if(200==o.status)return null==o?void 0:o.data});if(d.error)return d.error;{const o=[];return null==d||d.forEach(i=>{o[i.id]=i}),o}}catch(i){((null===(t=null===(o=null==i?void 0:i.response)||void 0===o?void 0:o.data)||void 0===t?void 0:t.code)||504===(null===(d=null==i?void 0:i.response)||void 0===d?void 0:d.status))&&_(null==i?void 0:i.response),console.log("error---\x3e",i)}}),O=(l,d,v,u,C,L,N,w,b,...O)=>o(void 0,[l,d,v,u,C,L,N,w,b,...O],void 0,function*(o,l,d,v,u,C,L,N,w,b="",O,R,U,B,H){var $,j,V,k,D,G,M,F,X,J,W,K,q,z,Q,Y,Z,oo,io,lo,eo,no,to,vo,ro,uo,so,ao,co,po,mo,ho,Io,fo,yo,To,go,Ao,Eo,So,Co,_o,Lo,xo,Po,No,wo,bo,Oo,Ro,Uo,Bo,Ho,$o,jo,Vo,ko,Do;let Go={};const Mo=n(c);if(u===p){let i="",n="";const t=null!==($=s.get("one-commerce-linecheckcorrelationid"))&&void 0!==$?$:"",v=S(null===(j=null==o?void 0:o[0])||void 0===j?void 0:j.id);Go={relatedParty:[{id:"anonymous",segment:"RESIDENTIAL"}],cartItem:[{itemType:"HOME",promotionId:d,items:[],note:[{author:"linecheckCorrelationId",text:t}]}]};const r={itemType:"MOBILE",promotionId:d,items:[]};if(null===(V=o[0])||void 0===V?void 0:V.isBundle)null===(D=null===(k=o[0])||void 0===k?void 0:k.bundledOffers)||void 0===D||D.map(o=>{var e,t,d,v,u,s,a,c,p,m,h,I,f,y,T,g,A,E,S;if(null===(t=null===(e=null==o?void 0:o.promotionInfo)||void 0===e?void 0:e[0])||void 0===t?void 0:t.id){const l=1==(null===(a=null===(s=null===(u=null===(v=null===(d=null==o?void 0:o.promotionInfo)||void 0===d?void 0:d[0])||void 0===v?void 0:v.hardwareGift)||void 0===u?void 0:u[0])||void 0===s?void 0:s.ids)||void 0===a?void 0:a.length)?null===(I=null===(h=null===(m=null===(p=null===(c=null==o?void 0:o.promotionInfo)||void 0===c?void 0:c[0])||void 0===p?void 0:p.hardwareGift)||void 0===m?void 0:m[0])||void 0===h?void 0:h.ids)||void 0===I?void 0:I[0]:"";"mobile"===(null===(f=null==o?void 0:o.productType)||void 0===f?void 0:f.toLowerCase())?(r.promotionId=null===(T=null===(y=null==o?void 0:o.promotionInfo)||void 0===y?void 0:y[0])||void 0===T?void 0:T.id,i=l):(Go.cartItem[0].promotionId=null===(A=null===(g=null==o?void 0:o.promotionInfo)||void 0===g?void 0:g[0])||void 0===A?void 0:A.id,n=l)}"tv"==(null===(E=null==o?void 0:o.productType)||void 0===E?void 0:E.toLowerCase())&&l?Go.cartItem[0].items.push({itemType:null==o?void 0:o.productType,id:l}):"mobile"===(null===(S=null==o?void 0:o.productType)||void 0===S?void 0:S.toLowerCase())?r.items.push({itemType:"RATEPLAN",id:null==o?void 0:o.id}):Go.cartItem[0].items.push({itemType:null==o?void 0:o.productType,id:null==o?void 0:o.id})}),n&&(null===(G=Go.cartItem[0].items)||void 0===G||G.push({itemType:"GIFT",id:n})),i&&r.items.push({itemType:"GIFT",id:i}),(null===(M=null==r?void 0:r.items)||void 0===M?void 0:M.length)>0&&(null===(F=null==Go?void 0:Go.cartItem)||void 0===F||F.push(r)),(null==R?void 0:R.length)>0&&(null==R||R.forEach(o=>{Go.cartItem[0].items.push({itemType:m,id:null==o?void 0:o.id})}));else{const i=1==(null===(z=null===(q=null===(K=null===(W=null===(J=null===(X=null==o?void 0:o[0])||void 0===X?void 0:X.promotionInfo)||void 0===J?void 0:J[0])||void 0===W?void 0:W.hardwareGift)||void 0===K?void 0:K[0])||void 0===q?void 0:q.ids)||void 0===z?void 0:z.length)?null===(lo=null===(io=null===(oo=null===(Z=null===(Y=null===(Q=null==o?void 0:o[0])||void 0===Q?void 0:Q.promotionInfo)||void 0===Y?void 0:Y[0])||void 0===Z?void 0:Z.hardwareGift)||void 0===oo?void 0:oo[0])||void 0===io?void 0:io.ids)||void 0===lo?void 0:lo[0]:"";Go.cartItem[0].items.push({itemType:null===(eo=null==o?void 0:o[0])||void 0===eo?void 0:eo.productType,id:null===(no=null==o?void 0:o[0])||void 0===no?void 0:no.id}),i&&(null===(to=Go.cartItem[0].items)||void 0===to||to.push({itemType:"GIFT",id:i}))}C&&(null==C?void 0:C.length)>0&&(null==C||C.map(o=>{var i,l,e,n;"HOME"===(null==o?void 0:o.parentPoType)?null===(e=null===(l=null===(i=null==Go?void 0:Go.cartItem)||void 0===i?void 0:i[0])||void 0===l?void 0:l.items)||void 0===e||e.push({itemType:"GIFT",id:null==o?void 0:o.tuaProdId}):null===(n=r.items)||void 0===n||n.push({itemType:"GIFT",id:null==o?void 0:o.tuaProdId})})),(null==v?void 0:v.accessType)&&(null===(uo=null===(ro=null===(vo=null==Go?void 0:Go.cartItem)||void 0===vo?void 0:vo[0])||void 0===ro?void 0:ro.note)||void 0===uo||uo.push({author:"lineCheckaccessType",text:null==v?void 0:v.accessType})),(null==v?void 0:v.timeSlot)&&(null===(co=null===(ao=null===(so=null==Go?void 0:Go.cartItem)||void 0===so?void 0:so[0])||void 0===ao?void 0:ao.note)||void 0===co||co.push({author:"lineCheckEarliestActivationDate",text:null===(po=null==v?void 0:v.timeSlot)||void 0===po?void 0:po.start}));try{const o=e("chAddressJson"),i=[{characteristic:{installationAddress:!0,country:"CH",city:null===(mo=null==o?void 0:o.selectedAdd)||void 0===mo?void 0:mo.city,street1:null===(ho=null==o?void 0:o.selectedAdd)||void 0===ho?void 0:ho.street,postCode:null===(Io=null==o?void 0:o.selectedAdd)||void 0===Io?void 0:Io.postCode,street2:null===(fo=null==o?void 0:o.selectedAdd)||void 0===fo?void 0:fo.houseNumber}}];Go.contactMedium=i}catch(o){console.log("issue at line check address addition in create cart ==>",o)}}else if(u===h){Go=L?{relatedParty:[{segment:"RESIDENTIAL"}],cartItem:[{itemType:"MOBILE",promotionId:d,items:[{itemType:"RATEPLAN",id:(null===(yo=null==o?void 0:o[0])||void 0===yo?void 0:yo.id)?null===(To=null==o?void 0:o[0])||void 0===To?void 0:To.id:o,subscribedInfo:{installedPlan:f,id:N}}],processType:{id:I}}]}:{relatedParty:[{segment:"RESIDENTIAL"}],cartItem:[{itemType:"MOBILE",promotionId:d,items:[{itemType:"RATEPLAN",id:(null===(go=null==o?void 0:o[0])||void 0===go?void 0:go.id)?null===(Ao=null==o?void 0:o[0])||void 0===Ao?void 0:Ao.id:o,clientDiscountInfo:U?[{discountRef:U,discountType:"DISCOUNT"}]:void 0}]}]};const i=1==(null===(xo=null===(Lo=null===(_o=null===(Co=null===(So=null===(Eo=null==o?void 0:o[0])||void 0===Eo?void 0:Eo.promotionInfo)||void 0===So?void 0:So[0])||void 0===Co?void 0:Co.hardwareGift)||void 0===_o?void 0:_o[0])||void 0===Lo?void 0:Lo.ids)||void 0===xo?void 0:xo.length)?null===(Ro=null===(Oo=null===(bo=null===(wo=null===(No=null===(Po=null==o?void 0:o[0])||void 0===Po?void 0:Po.promotionInfo)||void 0===No?void 0:No[0])||void 0===wo?void 0:wo.hardwareGift)||void 0===bo?void 0:bo[0])||void 0===Oo?void 0:Oo.ids)||void 0===Ro?void 0:Ro[0]:"";i&&(null===(Uo=Go.cartItem[0].items)||void 0===Uo||Uo.push({itemType:"GIFT",id:i})),C&&(null==C?void 0:C.length)>0&&(null==C||C.map(o=>{var i,l,e;"HOME"!==(null==o?void 0:o.parentPoType)&&(null===(e=null===(l=null===(i=null==Go?void 0:Go.cartItem)||void 0===i?void 0:i[0])||void 0===l?void 0:l.items)||void 0===e||e.push({itemType:"GIFT",id:null==o?void 0:o.tuaProdId}))}))}if(w){const o=[];o.push({author:T,text:y}),""!==b&&(o.push({author:g,text:b}),t("vctype")),Go.cartItem[0].note=o}else if(U&&B){const o=[];null==o||o.push({author:"offerType",text:"ATL"}),null==o||o.push({author:"externalPromotionName",text:U}),null==o||o.push({author:"offerVersion",text:B}),Go.cartItem[0].note=o}if(H&&(null===(Bo=null==Go?void 0:Go.cartItem)||void 0===Bo?void 0:Bo[0])){const{pointsBurnt:o,rewardOfferId:i,gloxTokenId:l}=H;l&&(Go.guid=l);const e=[null!=o&&""!=`${o}`&&{author:"pointsBurnt",text:`${o}`},null!=i&&""!=`${i}`&&{author:"rewardOfferId",text:`${i}`}].filter(Boolean);e.length>0&&(null===(Ho=null==Go?void 0:Go.cartItem)||void 0===Ho||Ho.forEach(o=>{Array.isArray(null==o?void 0:o.items)&&o.items.forEach(o=>{const i=`${(null==o?void 0:o.itemType)||""}`.toUpperCase();"RATEPLAN"!==i&&"INTERNET"!==i||(o.note=[...o.note||[],...e])})}))}if(O){const o=(o=>{var i,l,e,n,t,d,v,r,u,s,a,c,p,m,h,I;let f=[];const y=null!==(n=null===(e=null===(l=null===(i=null==o?void 0:o.selectedVarientDetails)||void 0===i?void 0:i.hardwarePrices)||void 0===l?void 0:l.smartUpgradeInstallments)||void 0===e?void 0:e.duration)&&void 0!==n?n:0,T=null!==(u=null===(r=null===(v=null===(d=null===(t=null==o?void 0:o.selectedVarientDetails)||void 0===t?void 0:t.hardwarePrices)||void 0===d?void 0:d.smartUpgradeInstallments)||void 0===v?void 0:v.upFrontPayment)||void 0===r?void 0:r.value)&&void 0!==u?u:0,g=null!==(m=null===(p=null===(c=null===(a=null===(s=null==o?void 0:o.selectedVarientDetails)||void 0===s?void 0:s.hardwarePrices)||void 0===a?void 0:a.smartUpgradeInstallments)||void 0===c?void 0:c.insurance)||void 0===p?void 0:p.value)&&void 0!==m?m:0,S={itemType:A,id:null!==(I=null===(h=null==o?void 0:o.selectedVarientDetails)||void 0===h?void 0:h.id)&&void 0!==I?I:"",contractTerm:y,note:x(o,T)};if(S&&(null==f||f.push(S)),g){const i={itemType:E,id:null==o?void 0:o.insuranceName};null==f||f.push(i)}return(null==f?void 0:f.length)>0?f:null})(O);o&&(null===(Vo=null===(jo=null===($o=null==Go?void 0:Go.cartItem)||void 0===$o?void 0:$o[0])||void 0===jo?void 0:jo.items)||void 0===Vo||Vo.push(...o))}let Fo=null;if("undefined"!=typeof window){Fo=new URLSearchParams(window.location.search).get("flow")}if(Mo&&"ott"===Fo){const o=P(Mo);if((null==o?void 0:o.length)>0){const i={},l=null===(ko=null==Go?void 0:Go.cartItem)||void 0===ko?void 0:ko.find(o=>"HOME"===(null==o?void 0:o.itemType));o.forEach(o=>{var e;const n=null==o?void 0:o.itemType;if("OTT"===n){const l=(null===(e=null==o?void 0:o.promotionId)||void 0===e?void 0:e.trim())||"defaultOttBundle",t=`OTT_${l}`;i[t]||(i[t]={itemType:n,promotionId:l,items:[]}),i[t].items.push(...(null==o?void 0:o.items)||[])}else l&&l.items&&(null==o?void 0:o.items)&&l.items.push(...o.items)}),Object.keys(i).forEach(o=>{const l=i[o];null==Go||Go.cartItem.push({itemType:l.itemType,promotionId:l.promotionId,items:l.items})})}}const Xo={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},Jo=v+r.CREATE_CARTV3;if((null===(Do=Object.keys(Go))||void 0===Do?void 0:Do.length)>0){const o=yield i.getApiServiceInstance().post(Jo,Go,Xo).then(o=>{if(t("isB2BCustomer"),200==o.status)return null==o?void 0:o.data}).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)});if(o.error)throw o.error;return o}}),R=(i,e)=>o(void 0,void 0,void 0,function*(){try{return yield l.get(i,e).then(o=>{var i,l,e,n;const t=null===(e=null===(l=null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.story)||void 0===l?void 0:l.content)||void 0===e?void 0:e.body;for(const o of t){if("productTableV2"==o.component||"productTableWithOutLC"===o.component||"prodConfigContainer"===o.component)return o;if("roamingProductTable"==o.component)return null===(n=null==o?void 0:o.productTable)||void 0===n?void 0:n[0]}}).catch(o=>{throw o})}catch(o){return o}}),U=(o="en",i)=>{try{return l.get(i,{dimension:o,per_page:1e3,type:"B2C"}).then(o=>{var i;const l={};((null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.datasource_entries)||[]).map(o=>{l[o.name]=null!=o.dimension_value?o.dimension_value:o.value});try{localStorage.removeItem("sbstaticcontent"),localStorage.setItem("sbstaticcontent",JSON.stringify(l))}catch(o){}return l}).catch(o=>o)}catch(o){throw Error("Promise failed")}},B=(l,e,n,t,d,v,u,s,c,p)=>o(void 0,void 0,void 0,function*(){let o;localStorage.removeItem("entertainment"),o={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},v&&(o.params={returnPromo:!0}),u&&(o.params={journey:"P2P"}),p&&(o.params=Object.assign(Object.assign({},o.params),{journey:"FPB"}));let m=n+r.LINE_TABLEV2;s&&localStorage.getItem("prospectId")&&(o.headers["x-sunrise-prospect-id"]=localStorage.getItem("prospectId"),m=n+r.LINE_TABLEV3);const h=new URLSearchParams;d&&h.set("subscriptionType",d),c&&!t&&h.set("pageKey",e);const I=h.toString(),f=I?`${m}${m.includes("?")?"&":"?"}${I}`:m,y=yield i.getApiServiceInstance().post(f,l,o).then(o=>{if(200==o.status)return null==o?void 0:o.data}).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)});return y.error?y.error:{[e]:y}}),H=(l,e,n)=>o(void 0,void 0,void 0,function*(){const o={params:{gloxTokenId:l},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},t=n+r.LINE_TABLEV2,d=yield i.getApiServiceInstance().post(t,[],o).then(o=>{if(200===o.status)return null==o?void 0:o.data}).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)});if(!d||d.error)throw new Error("Shogun offer API failed");return{[e]:d}}),$=(l,e)=>o(void 0,void 0,void 0,function*(){let o;o={params:{},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},o.params={category:l};const n=e,t=yield i.getApiServiceInstance().get(n,o).then(o=>200==o.status?null==o?void 0:o.data:null==o?void 0:o.status).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)});return(null==t?void 0:t.error)?null==t?void 0:t.error:{subscriptionData:t}}),j=(l,e)=>o(void 0,void 0,void 0,function*(){var o;try{const n={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL},params:{offerIds:l,voucherCode:e}},t=(null===(o=null==C?void 0:C.getInstance())||void 0===o?void 0:o.getBaseUrl())+`${r.VOUCHER_PROMOTIONS}`;yield i.getApiServiceInstance().get(t,n).then(o=>{if(200==o.status)return null==o?void 0:o.data})}catch(o){}}),V=(l,e)=>o(void 0,void 0,void 0,function*(){let o;o={params:{},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},o.params={msisdn:l};const n=e;return yield i.getApiServiceInstance().get(n,o).then(o=>{var i;return"OK"==(null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.preToPostConversionStatus)}).catch(o=>{var i,l,e;return((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response),console.log("err",o),!1})}),k=(l,e)=>o(void 0,void 0,void 0,function*(){try{let o;o={params:{},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}};const n=e+r.HARDWARES+`baseProduct__${l}`;return yield i.getApiServiceInstance().get(n,o).then(o=>{var i;return 200===(null==o?void 0:o.status)&&(null===(i=Object.keys(null==o?void 0:o.data))||void 0===i?void 0:i.length)>0?null==o?void 0:o.data:null})}catch(o){return console.log("err",o),null}}),D=(l,e)=>o(void 0,void 0,void 0,function*(){try{let o;o={params:{},headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}};const n=e+r.HARDWARE_DEVICES+`manufacturerName__${l}`;return yield i.getApiServiceInstance().get(n,o).then(o=>{var i,l;return 200===(null==o?void 0:o.status)&&(null===(l=null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.hardwares)||void 0===l?void 0:l.length)>0?null==o?void 0:o.data:null})}catch(o){return console.log("err",o),null}}),G=(l,...e)=>o(void 0,[l,...e],void 0,function*(o,l={},e){let n;n={headers:{"x-correlation-id":a(),"x-sunrise-channel":L.X_SUN_CHAL,"x-sunrise-prospect-id":e}};let t=o+(null==r?void 0:r.CUSTOMER_EVENTS);yield i.getApiServiceInstance().post(t,l,n).then(o=>{if(200==o.status)return console.log("trackPegaEvents result.data",o.data),null==o?void 0:o.data}).catch(o=>{var i,l,e;((null===(l=null===(i=null==o?void 0:o.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.code)||504===(null===(e=null==o?void 0:o.response)||void 0===e?void 0:e.status))&&_(null==o?void 0:o.response)})}),M=(l,n,t,d,v)=>o(void 0,void 0,void 0,function*(){var o,d,c,p,m,h,I,f,y,T,g,A,E,_,L,x,P,N,w,b,O,R,U,B,H;let $={},j="",V="";const k=null!==(o=s.get("one-commerce-linecheckcorrelationid"))&&void 0!==o?o:"",D=S(null===(d=null==l?void 0:l[0])||void 0===d?void 0:d.id);$={relatedParty:[{id:"anonymous",segment:"RESIDENTIAL"}],cartItem:[{itemType:"HOME",promotionId:t,items:[],note:[{author:"linecheckCorrelationId",text:k}]}]};const G={itemType:"MOBILE",promotionId:t,items:[]};(null===(c=null==l?void 0:l[0])||void 0===c?void 0:c.isBundle)?(null===(m=null===(p=null==l?void 0:l[0])||void 0===p?void 0:p.bundledOffers)||void 0===m||m.map(o=>{var i,l,e,t,d,v,r,u,s,a,c,p,m,h,I,f,y,T,g;if(null===(l=null===(i=null==o?void 0:o.promotionInfo)||void 0===i?void 0:i[0])||void 0===l?void 0:l.id){const i=1==(null===(r=null===(v=null===(d=null===(t=null===(e=null==o?void 0:o.promotionInfo)||void 0===e?void 0:e[0])||void 0===t?void 0:t.hardwareGift)||void 0===d?void 0:d[0])||void 0===v?void 0:v.ids)||void 0===r?void 0:r.length)?null===(p=null===(c=null===(a=null===(s=null===(u=null==o?void 0:o.promotionInfo)||void 0===u?void 0:u[0])||void 0===s?void 0:s.hardwareGift)||void 0===a?void 0:a[0])||void 0===c?void 0:c.ids)||void 0===p?void 0:p[0]:"";"mobile"===(null===(m=null==o?void 0:o.productType)||void 0===m?void 0:m.toLowerCase())?(G.promotionId=null===(I=null===(h=null==o?void 0:o.promotionInfo)||void 0===h?void 0:h[0])||void 0===I?void 0:I.id,j=i):($.cartItem[0].promotionId=null===(y=null===(f=null==o?void 0:o.promotionInfo)||void 0===f?void 0:f[0])||void 0===y?void 0:y.id,V=i)}"tv"==(null===(T=null==o?void 0:o.productType)||void 0===T?void 0:T.toLowerCase())&&n||("mobile"===(null===(g=null==o?void 0:o.productType)||void 0===g?void 0:g.toLowerCase())?G.items.push({itemType:"RATEPLAN",id:null==o?void 0:o.id}):$.cartItem[0].items.push({itemType:null==o?void 0:o.productType,id:null==o?void 0:o.id}))}),V&&(null===(I=null===(h=null==$?void 0:$.cartItem)||void 0===h?void 0:h[0].items)||void 0===I||I.push({itemType:"GIFT",id:V})),j&&(null===(f=null==G?void 0:G.items)||void 0===f||f.push({itemType:"GIFT",id:j})),(null===(y=null==G?void 0:G.items)||void 0===y?void 0:y.length)>0&&(null===(T=null==$?void 0:$.cartItem)||void 0===T||T.push(G)),v&&(null==v?void 0:v.length)>0&&(null==v||v.map(o=>{var i,l,e;null===(e=null===(l=null===(i=null==$?void 0:$.cartItem)||void 0===i?void 0:i[0])||void 0===l?void 0:l.items)||void 0===e||e.push({itemType:"GIFT",id:null==o?void 0:o.tuaProdId})}))):$.cartItem[0].items.push({itemType:null===(g=null==l?void 0:l[0])||void 0===g?void 0:g.productType,id:null===(A=null==l?void 0:l[0])||void 0===A?void 0:A.id}),(null==D?void 0:D.accessType)&&(null===(L=null===(_=null===(E=null==$?void 0:$.cartItem)||void 0===E?void 0:E[0])||void 0===_?void 0:_.note)||void 0===L||L.push({author:"lineCheckaccessType",text:null==D?void 0:D.accessType})),(null==D?void 0:D.timeSlot)&&(null===(N=null===(P=null===(x=null==$?void 0:$.cartItem)||void 0===x?void 0:x[0])||void 0===P?void 0:P.note)||void 0===N||N.push({author:"lineCheckEarliestActivationDate",text:null===(w=null==D?void 0:D.timeSlot)||void 0===w?void 0:w.start}));try{const o=e("chAddressJson"),i=[{characteristic:{installationAddress:!0,country:"CH",city:null===(b=null==o?void 0:o.selectedAdd)||void 0===b?void 0:b.city,street1:null===(O=null==o?void 0:o.selectedAdd)||void 0===O?void 0:O.street,postCode:null===(R=null==o?void 0:o.selectedAdd)||void 0===R?void 0:R.postCode,street2:null===(U=null==o?void 0:o.selectedAdd)||void 0===U?void 0:U.houseNumber}}];$.contactMedium=i}catch(o){console.log("issue at line check address addition in create cart ==>",o)}const M={headers:{"x-correlation-id":a(),"x-sunrise-channel":r.X_SUN_CHAL}},F=`${null===(B=null==C?void 0:C.getInstance())||void 0===B?void 0:B.getBaseUrl()}${u.CART_MGMT}/${r.CREATE_CARTV2}`;if((null===(H=Object.keys($))||void 0===H?void 0:H.length)>0){const o=yield i.getApiServiceInstance().post(F,$,M).then(o=>{if(200==o.status)return null==o?void 0:o.data});if(o.error)throw o.error;return o}}),F=()=>o(void 0,void 0,void 0,function*(){var o;const l=`${null===(o=null==C?void 0:C.getInstance())||void 0===o?void 0:o.getBaseUrl()}${r.TV_SERVICE_OPTIONS_V2}`,e={params:{},headers:{"x-sunrise-channel":r.X_SUN_CHAL,"x-correlation-id":a()}};try{const o=yield i.getApiServiceInstance().get(l,e).then(o=>{var i;return(null===(i=null==o?void 0:o.data)||void 0===i?void 0:i.length)>0?null==o?void 0:o.data:[]});return o}catch(o){console.log(o)}});export{O as createCartV2,M as createCartWinV2,w as fetchCountryList,R as fetchLinetableContent,B as fetchOfferingDataLineTableV2,b as fetchOfferingDataV2,F as fetchOttServiceOptions,H as fetchShogunOfferData,$ as fetchSubscriptionData,k as getDeviceDetails,D as getDeviceModelsList,U as getStaticContent,j as getVocherPromotion,G as trackPegaEvents,V as validateP2P};
2
2
  //# sourceMappingURL=LineTableService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LineTableService.js","sources":["../../../src/services/LineTableService.ts"],"sourcesContent":["import { ApiServiceV2, CMSStoryblokServiceV2 } from '@sunrise-upc/ajax-lib';\nimport {\n getCookies,\n getLocalStorageWithExpiry,\n getSessionStorage,\n removeLocalStorage,\n setLocalStoreWithExpiry\n} from '../utils/utils';\nimport { API_BASE_BASEPOINT, APIResourceConstants } from './api-constants';\nimport Cookies from 'js-cookie';\nimport { v4 as generateUID } from 'uuid';\nimport {\n DEVICE_INSURANCE,\n FIXNET,\n HARDWARE,\n MOBILE,\n ONE_ECOMMERCE_OTT,\n P2PSUBSCRIBEDPLAN,\n PRE_TO_POST,\n QOQA,\n TV_SERVICE_OPTION,\n VOUCHERCODE,\n VOUCHERTYPE\n} from '../utils/constants';\nimport { getAccessDataFromLineCheck } from '../components/lineTable/LineTableV3.utils';\nimport { LineTableBasicPropConfig } from './LineTableBasicPropConfig';\nimport { errorTrackingDataLayer } from '../utils/AnalyticsUtils';\nimport { apiResConstants } from '../components/LineCheckV3/APIResourceConstants';\nimport { getDeviceNotes } from '../components/UltimateBundleLinetable/DpTableUtils';\nimport {fetchOttItems} from '../components/StaticLineTable/Product.utils'\n\n// Device cart utility functions moved here to avoid circular dependency\nconst getDeviceCartNotes = (deviceDetails: any, upFrontValue: string) => {\n let note = '';\n const smartUpgradeInstallments =\n deviceDetails?.selectedVarientDetails?.hardwarePrices?.smartUpgradeInstallments;\n const installments = deviceDetails?.selectedVarientDetails?.hardwarePrices?.installments;\n const basePrice = deviceDetails?.selectedVarientDetails?.hardwarePrices?.basePrice;\n\n if (smartUpgradeInstallments) {\n note = `${smartUpgradeInstallments?.duration} months, CHF ${upFrontValue} upfront, CHF ${smartUpgradeInstallments?.monthlyPayment?.value}/month`;\n } else if (installments) {\n note = `${installments?.duration} months, CHF ${installments?.monthlyPayment?.value}/month`;\n } else if (basePrice) {\n note = `CHF ${basePrice?.value} one-time payment`;\n }\n return note;\n};\n\nconst getDeviceCartItem = (deviceDetails: any) => {\n let items = [];\n const contractDuration =\n deviceDetails?.selectedVarientDetails?.hardwarePrices?.smartUpgradeInstallments?.duration ?? 0;\n const upFrontValue =\n deviceDetails?.selectedVarientDetails?.hardwarePrices?.smartUpgradeInstallments?.upFrontPayment\n ?.value ?? 0;\n const insuranceValue =\n deviceDetails?.selectedVarientDetails?.hardwarePrices?.smartUpgradeInstallments?.insurance\n ?.value ?? 0;\n const deviceItem = {\n itemType: HARDWARE,\n id: deviceDetails?.selectedVarientDetails?.id ?? '',\n contractTerm: contractDuration,\n note: getDeviceNotes(deviceDetails, upFrontValue)\n };\n deviceItem && items?.push(deviceItem);\n\n if (insuranceValue) {\n const flexItem = {\n itemType: DEVICE_INSURANCE,\n id: deviceDetails?.insuranceName\n };\n items?.push(flexItem);\n }\n return items?.length > 0 ? items : null;\n};\n\nlet AuthData: any = typeof window !== undefined && Cookies.get('sunriseAuth');\nAuthData = AuthData && JSON.parse(AuthData);\n\nexport const fetchCountryList = async (name: string, lang: string, url: string, TTL: number) => {\n const getCountryData = getLocalStorageWithExpiry(`${name}_${lang}_countryData`);\n if (getCountryData) {\n return getCountryData;\n } else {\n try {\n const sbParams = {\n language: lang,\n type: 'B2C'\n };\n const res = await CMSStoryblokServiceV2.get(url, sbParams);\n const stories = res.data?.stories;\n if (stories && stories.length > 0)\n setLocalStoreWithExpiry(`${name}_${lang}_countryData`, stories, TTL);\n return stories;\n } catch (e: any) {\n // eslint-disable-next-line no-console\n console.error(e);\n return e;\n }\n }\n};\n\nexport const fetchOfferingDataV2 = async (\n requestBody: any,\n url: any,\n returnPromo?: boolean\n): Promise<any> => {\n try {\n localStorage.removeItem('entertainment');\n const options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n },\n params: {}\n };\n if (returnPromo) {\n options.params = {\n returnPromo: true\n };\n }\n const URL = url + APIResourceConstants.LINE_TABLEV2;\n const productDynamicData: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, requestBody, options)\n .then((res): any => {\n if (res.status == 200) {\n return res?.data;\n }\n });\n if (productDynamicData.error) {\n return productDynamicData.error;\n } else {\n const response: any[] = [];\n productDynamicData?.forEach((data: any) => {\n response[data.id] = data;\n });\n return response;\n }\n } catch (error: any) {\n if (error?.response?.data?.code || error?.response?.status === 504) {\n errorTrackingDataLayer(error?.response);\n }\n // eslint-disable-next-line no-console\n console.log('error--->', error);\n }\n};\n\nexport const createCartV2 = async (\n productData: any,\n radioValue: string,\n defaultPromo: string,\n cartUrl: string,\n productType: string,\n chooseGift?: any,\n enabledP2P?: any,\n P2PData?: any,\n isQoqaFlow?: boolean,\n qVoucher: any = '',\n deviceDetails?: any,\n tvOptions?: any,\n discountRef?: string,\n discountVersion?: string,\n // Shogun/rewards (loyalty) flow: when the user redeems loyalty points we must\n // attach a `pointsBurnt` note at the item level — the RATEPLAN item for\n // MOBILE and the internet item for FIXNET — so the backend can apply the\n // burn. See StaticProduct.tsx (isShogunFlow branch).\n rewardsInfo?: { pointsBurnt?: string | number; rewardOfferId?: string | number; gloxTokenId?: string | null }\n): Promise<any> => {\n let cartData: any = {};\n /**WIN FLows*/\n \n // Get OTT data from session storage\n const ottCartData = getSessionStorage(ONE_ECOMMERCE_OTT);\n \n if (productType === FIXNET) {\n let mobGiftId = '';\n let mandatoryGift = '';\n const getCoorelationIdFromCookie = Cookies.get('one-commerce-linecheckcorrelationid') ?? '';\n const lineCheckData = getAccessDataFromLineCheck(productData?.[0]?.id);\n cartData = {\n relatedParty: [\n {\n id: 'anonymous',\n segment: 'RESIDENTIAL'\n }\n ],\n cartItem: [\n {\n itemType: 'HOME',\n promotionId: defaultPromo,\n items: [],\n note: [\n {\n author: 'linecheckCorrelationId',\n text: getCoorelationIdFromCookie\n }\n ]\n }\n ]\n };\n /**for 4P bundles*/\n const mobileItem: any = {\n itemType: 'MOBILE',\n promotionId: defaultPromo,\n items: []\n };\n /**Check if bundle or Internet and add it to cart request*/\n if (productData[0]?.isBundle) {\n productData[0]?.bundledOffers?.map((item: any) => {\n if (item?.promotionInfo?.[0]?.id) {\n const giftId =\n item?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.length == 1\n ? item?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.[0]\n : '';\n if (item?.productType?.toLowerCase() === 'mobile') {\n mobileItem['promotionId'] = item?.promotionInfo?.[0]?.id;\n mobGiftId = giftId;\n } else {\n cartData['cartItem'][0]['promotionId'] = item?.promotionInfo?.[0]?.id;\n mandatoryGift = giftId;\n }\n }\n if (item?.productType?.toLowerCase() == 'tv' && radioValue) {\n cartData.cartItem[0].items.push({ itemType: item?.productType, id: radioValue });\n } else if (item?.productType?.toLowerCase() === 'mobile') {\n mobileItem.items.push({ itemType: 'RATEPLAN', id: item?.id });\n } else cartData.cartItem[0].items.push({ itemType: item?.productType, id: item?.id });\n });\n mandatoryGift && cartData.cartItem[0].items?.push({ itemType: 'GIFT', id: mandatoryGift });\n mobGiftId && mobileItem.items.push({ itemType: 'GIFT', id: mobGiftId });\n if (mobileItem?.items?.length > 0) {\n cartData?.cartItem?.push(mobileItem);\n }\n\n //If product has tv options\n if (tvOptions?.length > 0) {\n tvOptions?.forEach((option: any) => {\n cartData.cartItem[0].items.push({ itemType: TV_SERVICE_OPTION, id: option?.id });\n });\n }\n } else {\n /**Add standlone product such as internet to cart request*/\n const mandatoryGift =\n productData?.[0]?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.length == 1\n ? productData?.[0]?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.[0]\n : '';\n cartData.cartItem[0].items.push({\n itemType: productData?.[0]?.productType,\n id: productData?.[0]?.id\n });\n mandatoryGift && cartData.cartItem[0].items?.push({ itemType: 'GIFT', id: mandatoryGift });\n }\n if (chooseGift && chooseGift?.length > 0) {\n chooseGift?.map((giftItem: any) => {\n giftItem?.parentPoType === 'HOME'\n ? cartData?.cartItem?.[0]?.items?.push({ itemType: 'GIFT', id: giftItem?.tuaProdId })\n : mobileItem.items?.push({ itemType: 'GIFT', id: giftItem?.tuaProdId });\n });\n }\n /**\n * changes added for new internet activation section\n */\n if (lineCheckData?.accessType) {\n cartData?.cartItem?.[0]?.note?.push({\n author: 'lineCheckaccessType',\n text: lineCheckData?.accessType\n });\n }\n if (lineCheckData?.timeSlot) {\n cartData?.cartItem?.[0]?.note?.push({\n author: 'lineCheckEarliestActivationDate',\n text: lineCheckData?.timeSlot?.start\n });\n }\n /**\n * Adding line check address while cart creation\n * As part of DEX abandon basket use case\n */\n try {\n const address: any = getCookies('chAddressJson');\n const contactMedium: any = [\n {\n characteristic: {\n installationAddress: true,\n country: 'CH',\n city: address?.selectedAdd?.city,\n street1: address?.selectedAdd?.street,\n postCode: address?.selectedAdd?.postCode,\n street2: address?.selectedAdd?.houseNumber\n }\n }\n ];\n cartData.contactMedium = contactMedium;\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.log('issue at line check address addition in create cart ==>', error);\n }\n } else if (productType === MOBILE) {\n /**Mobile*/\n if (enabledP2P) {\n cartData = {\n relatedParty: [\n {\n segment: 'RESIDENTIAL'\n }\n ],\n cartItem: [\n {\n itemType: 'MOBILE',\n promotionId: defaultPromo,\n items: [\n {\n itemType: 'RATEPLAN',\n id: productData?.[0]?.id ? productData?.[0]?.id : productData,\n subscribedInfo: {\n installedPlan: P2PSUBSCRIBEDPLAN,\n id: P2PData\n }\n }\n ],\n processType: {\n id: PRE_TO_POST\n }\n }\n ]\n };\n } else {\n cartData = {\n relatedParty: [\n {\n segment: 'RESIDENTIAL'\n }\n ],\n cartItem: [\n {\n itemType: 'MOBILE',\n promotionId: defaultPromo,\n items: [\n {\n itemType: 'RATEPLAN',\n id: productData?.[0]?.id ? productData?.[0]?.id : productData,\n clientDiscountInfo: discountRef\n ? [\n {\n discountRef: discountRef,\n discountType: 'DISCOUNT'\n }\n ]\n : undefined\n }\n ]\n }\n ]\n };\n }\n const mandatoryGift =\n productData?.[0]?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.length == 1\n ? productData?.[0]?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.[0]\n : '';\n mandatoryGift && cartData.cartItem[0].items?.push({ itemType: 'GIFT', id: mandatoryGift });\n if (chooseGift && chooseGift?.length > 0) {\n chooseGift?.map((giftItem: any) => {\n giftItem?.parentPoType !== 'HOME' &&\n cartData?.cartItem?.[0]?.items?.push({ itemType: 'GIFT', id: giftItem?.tuaProdId });\n });\n }\n }\n\n if (isQoqaFlow) {\n const note = [];\n note.push({\n author: VOUCHERTYPE,\n text: QOQA\n });\n if (qVoucher !== '') {\n note.push({\n author: VOUCHERCODE,\n text: qVoucher\n });\n removeLocalStorage('vctype');\n }\n cartData.cartItem[0]['note'] = note;\n } else if (discountRef && discountVersion) {\n const note = [];\n note?.push({\n author: 'offerType',\n text: 'ATL'\n });\n note?.push({\n author: 'externalPromotionName',\n text: discountRef\n });\n note?.push({\n author: 'offerVersion',\n text: discountVersion\n });\n cartData.cartItem[0]['note'] = note;\n }\n\n // Shogun / rewards (loyalty) flow — append a pointsBurnt note at the\n // item level (not the cartItem level). For MOBILE this attaches to the\n // RATEPLAN item; for Internet (FIXNET) it attaches to the internet item\n // inside the cartItem's items array. We only push the note when it has\n // a value so the backend does not receive an empty string.\n if (rewardsInfo && cartData?.cartItem?.[0]) {\n const { pointsBurnt, rewardOfferId, gloxTokenId } = rewardsInfo;\n if (gloxTokenId) {\n cartData.guid = gloxTokenId;\n }\n const rewardsNotes = [\n pointsBurnt != null && `${pointsBurnt}` !== '' && { author: 'pointsBurnt', text: `${pointsBurnt}` },\n rewardOfferId != null && `${rewardOfferId}` !== '' && { author: 'rewardOfferId', text: `${rewardOfferId}` }\n ].filter(Boolean);\n\n if (rewardsNotes.length > 0) {\n cartData?.cartItem?.forEach((ci: any) => {\n if (!Array.isArray(ci?.items)) return;\n ci.items.forEach((it: any) => {\n const itType = `${it?.itemType || ''}`.toUpperCase();\n if (itType === 'RATEPLAN' || itType === 'INTERNET') {\n it.note = [...(it.note || []), ...rewardsNotes];\n }\n });\n });\n }\n }\n\n //To add hardware item while creating cart\n if (deviceDetails) {\n const deviceCartItem = getDeviceCartItem(deviceDetails);\n deviceCartItem && cartData?.cartItem?.[0]?.items?.push(...deviceCartItem);\n }\n // Get flow parameter from URL query string if in browser\n let flow: string | null = null;\n if (typeof window !== 'undefined') {\n const params = new URLSearchParams(window.location.search);\n flow = params.get('flow');\n }\n \n // Add OTT items to cart if session storage exists and flow is 'ott'\n const shouldAddOttItems = ottCartData && flow === 'ott';\n if (shouldAddOttItems) {\n const ottItems = fetchOttItems(ottCartData);\n if (ottItems?.length > 0) {\n const groupedByTypeAndPromo: {\n [key: string]: { itemType: string; promotionId: string; items: any[] };\n } = {};\n const homeCartItem = cartData?.cartItem?.find((item: any) => item?.itemType === 'HOME');\n ottItems.forEach((ottItem: any) => {\n const itemType = ottItem?.itemType;\n \n // Only group OTT items, add others directly\n if (itemType === 'OTT') {\n const promoId = ottItem?.promotionId?.trim() || 'defaultOttBundle';\n const groupKey = `${'OTT'}_${promoId}`;\n\n if (!groupedByTypeAndPromo[groupKey]) {\n groupedByTypeAndPromo[groupKey] = {\n itemType: itemType,\n promotionId: promoId,\n items: []\n };\n }\n groupedByTypeAndPromo[groupKey].items.push(...(ottItem?.items || []));\n } else {\n // Add non-OTT items to HOME cartItem's items array\n \n if (homeCartItem && homeCartItem.items && ottItem?.items) {\n homeCartItem.items.push(...ottItem.items);\n }\n }\n });\n\n // Add each grouped OTT item as a separate cart item list\n Object.keys(groupedByTypeAndPromo).forEach((groupKey) => {\n const group = groupedByTypeAndPromo[groupKey];\n cartData?.cartItem.push({\n itemType: group.itemType,\n promotionId: group.promotionId,\n items: group.items\n });\n });\n }\n }\n\n const options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n\n const URL = cartUrl + APIResourceConstants.CREATE_CARTV3;\n if (Object.keys(cartData)?.length > 0) {\n const createCartV2Resp: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, cartData, options)\n .then((res: any) => {\n removeLocalStorage('isB2BCustomer');\n if (res.status == 200) {\n return res?.data;\n }\n })\n .catch((error) => {\n if (error?.response?.data?.code || error?.response?.status === 504) {\n errorTrackingDataLayer(error?.response);\n }\n });\n if (createCartV2Resp.error) {\n throw createCartV2Resp.error;\n } else {\n return createCartV2Resp;\n }\n }\n};\n\nexport const fetchLinetableContent = async (slugurl: string, params: any): Promise<any> => {\n try {\n const resp = await CMSStoryblokServiceV2.get(slugurl, params)\n .then((response: any) => {\n const contentTable = response?.data?.story?.content?.body;\n // return comp;\n for (const comp of contentTable) {\n if (\n comp.component == 'productTableV2' ||\n comp.component === 'productTableWithOutLC' ||\n comp.component === 'prodConfigContainer'\n ) {\n return comp;\n } else if (comp.component == 'roamingProductTable') {\n return comp?.productTable?.[0];\n }\n }\n })\n .catch((err: any) => {\n throw err;\n });\n return resp;\n } catch (error) {\n return error;\n }\n};\n\nexport const getStaticContent = (language: any = 'en', endPoints: any) => {\n try {\n return CMSStoryblokServiceV2.get(endPoints, {\n dimension: language,\n per_page: 1000,\n type: 'B2C'\n })\n .then((res: any) => {\n const response: any = {};\n (res?.data?.datasource_entries || []).map((entry: any) => {\n response[entry.name] =\n entry.dimension_value != null ? entry.dimension_value : entry.value;\n });\n try {\n localStorage.removeItem('sbstaticcontent');\n localStorage.setItem('sbstaticcontent', JSON.stringify(response));\n } catch {\n //\n }\n return response;\n })\n .catch((err) => {\n return err;\n });\n } catch {\n throw Error('Promise failed');\n }\n};\n\nexport const fetchOfferingDataLineTableV2 = async (\n params: any,\n uniqueId: any,\n endpoint: any,\n existingCustomer?: boolean,\n subscriptionType?: string,\n enableReturnPromo?: boolean,\n P2PEnabled?: boolean,\n pegaIntegration?: boolean,\n apiCache?: boolean,\n deviceUltimateBundle?:boolean,\n): Promise<any> => {\n localStorage.removeItem('entertainment');\n let options: any;\n options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n if (enableReturnPromo) {\n options.params = {\n returnPromo: true\n };\n }\n if (P2PEnabled) {\n options.params = {\n journey: 'P2P'\n };\n }\n if(deviceUltimateBundle){\n options.params = {\n ...options.params,\n journey: 'FPB',\n }\n }\n\n let URL = endpoint + APIResourceConstants.LINE_TABLEV2;\n if (pegaIntegration && localStorage.getItem('prospectId')) {\n options.headers['x-sunrise-prospect-id'] = localStorage.getItem('prospectId');\n URL = endpoint + APIResourceConstants.LINE_TABLEV3;\n }\n const subscriptionUrl = subscriptionType\n ? URL + APIResourceConstants.SUBSCRIPTION + subscriptionType\n : URL;\n //US_31295\n const cachePath = apiCache ? `?pageKey=${uniqueId}` : ''\n const finalUrl = existingCustomer || subscriptionType? subscriptionUrl : URL;\n const productDynamicData: any = await ApiServiceV2.getApiServiceInstance()\n .post(`${finalUrl}${cachePath}`, params, options)\n .then((res): any => {\n if (res.status == 200) {\n return res?.data;\n }\n })\n .catch((err) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n });\n if (productDynamicData.error) {\n return productDynamicData.error;\n } else {\n return { [uniqueId]: productDynamicData };\n }\n};\n\n/**\n * Shogun xSell (rewards/loyalty) flow: fetches offer data using `gloxtoken`\n * as a query parameter. The offer endpoint expects a POST request, so we\n * send an empty JSON body `{}` — the backend resolves eligible products\n * from the token only.\n */\nexport const fetchShogunOfferData = async (\n gloxTokenId: string,\n uniqueId: string,\n endpoint: string\n): Promise<any> => {\n const options: any = {\n params: { gloxTokenId: gloxTokenId },\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n const URL = endpoint + APIResourceConstants.LINE_TABLEV2;\n const productDynamicData: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, [], options)\n .then((res: any): any => {\n if (res.status === 200) {\n return res?.data;\n }\n })\n .catch((err: any) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n });\n if (!productDynamicData || productDynamicData.error) {\n throw new Error('Shogun offer API failed');\n }\n return { [uniqueId]: productDynamicData };\n};\n\nexport const fetchSubscriptionData = async (category: any, endpoint: any): Promise<any> => {\n let options: any;\n options = {\n params: {},\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n options.params = {\n category: category\n };\n const URL = endpoint;\n const subscriptionData: any = await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res): any => {\n if (res.status == 200) {\n return res?.data;\n } else {\n return res?.status;\n }\n })\n .catch((err: any) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n });\n if (subscriptionData?.error) {\n return subscriptionData?.error;\n } else {\n return { subscriptionData };\n }\n};\n\nexport const getVocherPromotion = async (productID: string, voucher: string) => {\n try {\n const options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n },\n params: {\n offerIds: productID,\n voucherCode: voucher\n }\n };\n\n const URL =\n LineTableBasicPropConfig?.getInstance()?.getBaseUrl() +\n `${APIResourceConstants.VOUCHER_PROMOTIONS}`;\n await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res): any => {\n if (res.status == 200) {\n return res?.data;\n }\n });\n } catch (error) {}\n};\n\nexport const validateP2P = async (msisdn: any, endpoint: any): Promise<any> => {\n let options: any;\n options = {\n params: {},\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n options.params = {\n msisdn: msisdn\n };\n const URL = endpoint;\n return await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res): any => {\n if (res?.data?.preToPostConversionStatus == 'OK') {\n return true;\n } else {\n return false;\n }\n })\n .catch((err) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n console.log('err', err);\n return false;\n });\n};\n\nexport const getDeviceDetails = async (deviceID: any, endpoint: any): Promise<any> => {\n try {\n let options: any;\n options = {\n params: {},\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n const URL = endpoint + APIResourceConstants.HARDWARES + `baseProduct__${deviceID}`;\n const deviceData: any = await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res: any) => {\n if (res?.status === 200 && Object.keys(res?.data)?.length > 0) {\n return res?.data;\n } else {\n return null;\n }\n });\n return deviceData;\n } catch (err) {\n // eslint-disable-next-line no-console\n console.log('err', err);\n return null;\n }\n};\n\nexport const getDeviceModelsList = async (brandId: any, endpoint: any): Promise<any> => {\n try {\n let options: any;\n options = {\n params: {},\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n const URL = endpoint + APIResourceConstants.HARDWARE_DEVICES + `manufacturerName__${brandId}`;\n const deviceData: any = await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res: any) => {\n if (res?.status === 200 && res?.data?.hardwares?.length > 0) {\n return res?.data;\n } else {\n return null;\n }\n });\n return deviceData;\n } catch (err) {\n // eslint-disable-next-line no-console\n console.log('err', err);\n return null;\n }\n};\n\nexport const trackPegaEvents = async (\n endpoint: any,\n payload = {},\n prospectId: string\n): Promise<any> => {\n let options: any;\n options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': apiResConstants.X_SUN_CHAL,\n 'x-sunrise-prospect-id': prospectId\n }\n };\n\n let URL = endpoint + APIResourceConstants?.CUSTOMER_EVENTS;\n const productDynamicData: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, payload, options)\n .then((res): any => {\n if (res.status == 200) {\n // eslint-disable-next-line no-console\n console.log('trackPegaEvents result.data', res.data);\n return res?.data;\n }\n })\n .catch((err) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n });\n};\n\nexport const createCartWinV2 = async (\n productData: any,\n radioValue: string,\n defaultPromo: string,\n cartUrl: string,\n chooseGift:any\n): Promise<any> => {\n let cartData: any = {};\n /**WIN FLows*/\n let mobGiftId = '';\n let mandatoryGift = '';\n const getCoorelationIdFromCookie = Cookies.get('one-commerce-linecheckcorrelationid') ?? '';\n const lineCheckData = getAccessDataFromLineCheck(productData?.[0]?.id);\n cartData = {\n relatedParty: [\n {\n id: 'anonymous',\n segment: 'RESIDENTIAL'\n }\n ],\n cartItem: [\n {\n itemType: 'HOME',\n promotionId: defaultPromo,\n items: [],\n note: [\n {\n author: 'linecheckCorrelationId',\n text: getCoorelationIdFromCookie\n }\n ]\n }\n ]\n };\n /**for 4P bundles*/\n const mobileItem: any = {\n itemType: 'MOBILE',\n promotionId: defaultPromo,\n items: []\n };\n /**Check if bundle or Internet and add it to cart request*/\n if (productData?.[0]?.isBundle) {\n productData?.[0]?.bundledOffers?.map((item: any) => {\n if (item?.promotionInfo?.[0]?.id) {\n const giftId =\n item?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.length == 1\n ? item?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.[0]\n : '';\n if (item?.productType?.toLowerCase() === 'mobile') {\n mobileItem['promotionId'] = item?.promotionInfo?.[0]?.id;\n mobGiftId = giftId;\n } else {\n cartData['cartItem'][0]['promotionId'] = item?.promotionInfo?.[0]?.id;\n mandatoryGift = giftId;\n }\n }\n if (item?.productType?.toLowerCase() == 'tv' && radioValue) {\n cartData.cartItem[0].items.push({ itemType: item?.productType, id: radioValue });\n } else if (item?.productType?.toLowerCase() === 'mobile') {\n mobileItem.items.push({ itemType: 'RATEPLAN', id: item?.id });\n } else cartData.cartItem[0].items.push({ itemType: item?.productType, id: item?.id });\n });\n mandatoryGift && cartData?.cartItem?.[0].items?.push({ itemType: 'GIFT', id: mandatoryGift });\n mobGiftId && mobileItem?.items?.push({ itemType: 'GIFT', id: mobGiftId });\n\n if (mobileItem?.items?.length > 0) {\n cartData?.cartItem?.push(mobileItem);\n }\n if (chooseGift && chooseGift?.length > 0) {\n chooseGift?.map((giftItem: any) => {\n cartData?.cartItem?.[0]?.items?.push({ itemType: 'GIFT', id: giftItem?.tuaProdId })\n })\n }\n } else {\n /**Add standlone product such as internet to cart request*/\n cartData.cartItem[0].items.push({\n itemType: productData?.[0]?.productType,\n id: productData?.[0]?.id\n });\n }\n /**\n * changes added for new internet activation section\n */\n if (lineCheckData?.accessType) {\n cartData?.cartItem?.[0]?.note?.push({\n author: 'lineCheckaccessType',\n text: lineCheckData?.accessType,\n });\n }\n if (lineCheckData?.timeSlot) {\n cartData?.cartItem?.[0]?.note?.push({\n author: 'lineCheckEarliestActivationDate',\n text: lineCheckData?.timeSlot?.start,\n });\n }\n /**\n * Adding line check address while cart creation\n * As part of DEX abandon basket use case\n */\n try {\n const address: any = getCookies('chAddressJson');\n const contactMedium: any = [\n {\n characteristic: {\n installationAddress: true,\n country: 'CH',\n city: address?.selectedAdd?.city,\n street1: address?.selectedAdd?.street,\n postCode: address?.selectedAdd?.postCode,\n street2: address?.selectedAdd?.houseNumber\n }\n }\n ];\n cartData.contactMedium = contactMedium;\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.log('issue at line check address addition in create cart ==>', error);\n }\n\n const options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n const endPoint = LineTableBasicPropConfig?.getInstance()?.getBaseUrl();\n\n const URL = `${endPoint}${API_BASE_BASEPOINT.CART_MGMT}/${APIResourceConstants.CREATE_CARTV2}`;\n if (Object.keys(cartData)?.length > 0) {\n const createCartV2Resp: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, cartData, options)\n .then((res: any) => {\n if (res.status == 200) {\n return res?.data;\n }\n });\n if (createCartV2Resp.error) {\n throw createCartV2Resp.error;\n } else {\n return createCartV2Resp;\n }\n }\n}\n\nexport const fetchOttServiceOptions = async (): Promise<any> => {\n const endPoint = LineTableBasicPropConfig?.getInstance()?.getBaseUrl();\n const url = `${endPoint}${APIResourceConstants.TV_SERVICE_OPTIONS_V2}`;\n const options = {\n params: {},\n headers: {\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL,\n 'x-correlation-id': generateUID()\n }\n };\n try {\n const optionsData: any = await ApiServiceV2.getApiServiceInstance()\n .get(url, options)\n .then((res) => {\n return res?.data?.length > 0 ? res?.data : [];\n });\n return optionsData;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.log(error);\n }\n};\n"],"names":["AuthData","undefined","window","Cookies","get","JSON","parse","fetchCountryList","name","lang","url","TTL","__awaiter","getCountryData","getLocalStorageWithExpiry","sbParams","language","type","stories","_a","CMSStoryblokServiceV2","data","length","setLocalStoreWithExpiry","e","console","error","fetchOfferingDataV2","requestBody","returnPromo","localStorage","removeItem","options","headers","generateUID","APIResourceConstants","X_SUN_CHAL","params","URL","LINE_TABLEV2","productDynamicData","ApiServiceV2","getApiServiceInstance","post","then","res","status","response","forEach","id","_b","code","_c","errorTrackingDataLayer","log","createCartV2","productData_1","radioValue_1","defaultPromo_1","cartUrl_1","productType_1","chooseGift_1","enabledP2P_1","P2PData_1","isQoqaFlow_1","args_1","productData","radioValue","defaultPromo","cartUrl","productType","chooseGift","enabledP2P","P2PData","isQoqaFlow","qVoucher","deviceDetails","tvOptions","discountRef","discountVersion","rewardsInfo","cartData","ottCartData","getSessionStorage","ONE_ECOMMERCE_OTT","FIXNET","mobGiftId","mandatoryGift","getCoorelationIdFromCookie","lineCheckData","getAccessDataFromLineCheck","relatedParty","segment","cartItem","itemType","promotionId","items","note","author","text","mobileItem","isBundle","_e","_d","bundledOffers","map","item","promotionInfo","giftId","_g","_f","hardwareGift","ids","_m","_l","_k","_j","_h","_o","toLowerCase","_q","_p","_s","_r","_t","push","_u","option","TV_SERVICE_OPTION","_v","_w","_x","_y","giftItem","parentPoType","tuaProdId","accessType","_1","_z","_0","timeSlot","_4","_2","_3","_5","start","address","getCookies","contactMedium","characteristic","installationAddress","country","city","_6","selectedAdd","street1","_7","street","postCode","_8","street2","_9","houseNumber","MOBILE","_10","_11","subscribedInfo","installedPlan","P2PSUBSCRIBEDPLAN","processType","PRE_TO_POST","_12","_13","clientDiscountInfo","discountType","_19","_17","_16","_15","_14","_18","_25","_24","_23","_22","_21","_20","_26","VOUCHERTYPE","QOQA","VOUCHERCODE","removeLocalStorage","_27","pointsBurnt","rewardOfferId","gloxTokenId","guid","rewardsNotes","filter","Boolean","_28","ci","Array","isArray","it","itType","toUpperCase","deviceCartItem","contractDuration","selectedVarientDetails","hardwarePrices","smartUpgradeInstallments","duration","upFrontValue","upFrontPayment","value","insuranceValue","insurance","deviceItem","HARDWARE","contractTerm","getDeviceNotes","flexItem","DEVICE_INSURANCE","insuranceName","getDeviceCartItem","_30","_29","_31","flow","URLSearchParams","location","search","ottItems","fetchOttItems","groupedByTypeAndPromo","homeCartItem","_32","find","ottItem","promoId","trim","groupKey","Object","keys","group","CREATE_CARTV3","_33","createCartV2Resp","catch","fetchLinetableContent","slugurl","contentTable","story","content","body","comp","component","productTable","err","getStaticContent","endPoints","dimension","per_page","datasource_entries","entry","dimension_value","setItem","stringify","Error","fetchOfferingDataLineTableV2","uniqueId","endpoint","existingCustomer","subscriptionType","enableReturnPromo","P2PEnabled","pegaIntegration","apiCache","deviceUltimateBundle","journey","assign","getItem","LINE_TABLEV3","subscriptionUrl","SUBSCRIPTION","cachePath","finalUrl","fetchShogunOfferData","fetchSubscriptionData","category","subscriptionData","getVocherPromotion","productID","voucher","offerIds","voucherCode","LineTableBasicPropConfig","getInstance","getBaseUrl","VOUCHER_PROMOTIONS","validateP2P","msisdn","preToPostConversionStatus","getDeviceDetails","deviceID","HARDWARES","getDeviceModelsList","brandId","HARDWARE_DEVICES","hardwares","trackPegaEvents","endpoint_1","payload","prospectId","apiResConstants","CUSTOMER_EVENTS","createCartWinV2","API_BASE_BASEPOINT","CART_MGMT","CREATE_CARTV2","fetchOttServiceOptions","TV_SERVICE_OPTIONS_V2","optionsData"],"mappings":"mmCA6EA,IAAIA,OAAkCC,WAAXC,QAAwBC,EAAQC,IAAI,eAC/DJ,EAAWA,GAAYK,KAAKC,MAAMN,GAE3B,MAAMO,EAAmB,CAAOC,EAAcC,EAAcC,EAAaC,IAAeC,OAAA,OAAA,OAAA,EAAA,kBAC7F,MAAMC,EAAiBC,EAA0B,GAAGN,KAAQC,iBAC5D,GAAII,EACF,OAAOA,EAEP,IACE,MAAME,EAAW,CACfC,SAAUP,EACVQ,KAAM,OAGFC,EAAkB,QAARC,SADEC,EAAsBhB,IAAIM,EAAKK,IAC7BM,YAAI,IAAAF,OAAA,EAAAA,EAAED,QAG1B,OAFIA,GAAWA,EAAQI,OAAS,GAC9BC,EAAwB,GAAGf,KAAQC,gBAAoBS,EAASP,GAC3DO,CACT,CAAE,MAAOM,GAGP,OADAC,QAAQC,MAAMF,GACPA,CACT,CAEJ,GAEaG,EAAsB,CACjCC,EACAlB,EACAmB,IACgBjB,OAAA,OAAA,OAAA,EAAA,sBAChB,IACEkB,aAAaC,WAAW,iBACxB,MAAMC,EAAU,CACdC,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,YAE5CC,OAAQ,CAAA,GAENR,IACFG,EAAQK,OAAS,CACfR,aAAa,IAGjB,MAAMS,EAAM5B,EAAMyB,EAAqBI,aACjCC,QAAgCC,EAAaC,wBAChDC,KAAKL,EAAKV,EAAaI,GACvBY,KAAMC,IACL,GAAkB,KAAdA,EAAIC,OACN,OAAOD,eAAAA,EAAKxB,OAGlB,GAAImB,EAAmBd,MACrB,OAAOc,EAAmBd,MACrB,CACL,MAAMqB,EAAkB,GAIxB,OAHAP,SAAAA,EAAoBQ,QAAS3B,IAC3B0B,EAAS1B,EAAK4B,IAAM5B,IAEf0B,CACT,CACF,CAAE,MAAOrB,KACkB,QAArBwB,EAAe,QAAf/B,EAAAO,aAAK,EAALA,EAAOqB,gBAAQ,IAAA5B,OAAA,EAAAA,EAAEE,YAAI,IAAA6B,OAAA,EAAAA,EAAEC,OAAoC,OAAb,QAAfC,EAAA1B,aAAK,EAALA,EAAOqB,gBAAQ,IAAAK,OAAA,EAAAA,EAAEN,UAClDO,EAAuB3B,eAAAA,EAAOqB,UAGhCtB,QAAQ6B,IAAI,eAAa5B,EAC3B,CACF,GAEa6B,EAAe,0BAoBV3C,OAAA,EAAA,CAAA4C,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,KAAAC,QAAA,EAAA,UAnBhBC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAAgB,GAChBC,EACAC,EACAC,EACAC,EAKAC,oKAEA,IAAIC,GAAgB,CAAA,EAIpB,MAAMC,GAAcC,EAAkBC,GAEtC,GAAId,IAAgBe,EAAQ,CAC1B,IAAIC,EAAY,GACZC,EAAgB,GACpB,MAAMC,EAA+E,QAAlDrE,EAAAhB,EAAQC,IAAI,8CAAsC,IAAAe,EAAAA,EAAI,GACnFsE,EAAgBC,EAA2C,QAAhBxC,EAAAgB,aAAW,EAAXA,EAAc,UAAE,IAAAhB,OAAA,EAAAA,EAAED,IACnEgC,GAAW,CACTU,aAAc,CACZ,CACE1C,GAAI,YACJ2C,QAAS,gBAGbC,SAAU,CACR,CACEC,SAAU,OACVC,YAAa3B,EACb4B,MAAO,GACPC,KAAM,CACJ,CACEC,OAAQ,yBACRC,KAAMX,OAOhB,MAAMY,EAAkB,CACtBN,SAAU,SACVC,YAAa3B,EACb4B,MAAO,IAGT,GAAkB,QAAd5C,EAAAc,EAAY,UAAE,IAAAd,OAAA,EAAAA,EAAEiD,SACW,QAA7BC,EAAc,QAAdC,EAAArC,EAAY,UAAE,IAAAqC,OAAA,EAAAA,EAAEC,qBAAa,IAAAF,GAAAA,EAAEG,IAAKC,8CAClC,GAA4B,QAAxBxD,UAAA/B,EAAAuF,aAAI,EAAJA,EAAMC,oCAAgB,UAAE,IAAAzD,OAAA,EAAAA,EAAED,GAAI,CAChC,MAAM2D,EACwD,IAAZ,QAAhDC,EAA2C,QAA3CC,EAAsC,QAAtCR,EAAwB,QAAxBC,EAAmB,QAAnBnD,EAAAsD,aAAI,EAAJA,EAAMC,qBAAa,IAAAvD,OAAA,EAAAA,EAAG,UAAE,IAAAmD,OAAA,EAAAA,EAAEQ,oBAAY,IAAAT,OAAA,EAAAA,EAAG,UAAE,IAAAQ,OAAA,EAAAA,EAAEE,WAAG,IAAAH,OAAA,EAAAA,EAAEvF,QACE,QAAhD2F,EAA2C,QAA3CC,EAAsC,QAAtCC,EAAwB,QAAxBC,EAAmB,UAAnBV,aAAI,EAAJA,EAAMC,qBAAa,IAAAU,OAAA,EAAAA,EAAG,UAAE,IAAAD,OAAA,EAAAA,EAAEL,oBAAY,IAAAI,OAAA,EAAAA,EAAG,UAAE,IAAAD,OAAA,EAAAA,EAAEF,WAAG,IAAAC,OAAA,EAAAA,EAAG,GACnD,GACmC,oBAArCK,EAAAZ,aAAI,EAAJA,EAAMpC,kCAAaiD,gBACrBnB,EAAwB,YAA4B,QAAxBoB,EAAmB,QAAnBC,EAAAf,aAAI,EAAJA,EAAMC,qBAAa,IAAAc,OAAA,EAAAA,EAAG,UAAE,IAAAD,OAAA,EAAAA,EAAEvE,GACtDqC,EAAYsB,IAEZ3B,GAAmB,SAAE,GAAgB,YAA4B,QAAxByC,UAAAC,EAAAjB,aAAI,EAAJA,EAAMC,oCAAgB,UAAE,IAAAe,OAAA,EAAAA,EAAEzE,GACnEsC,EAAgBqB,EAEpB,CACwC,OAAnB,QAAjBgB,EAAAlB,eAAAA,EAAMpC,mBAAW,IAAAsD,OAAA,EAAAA,EAAEL,gBAAyBpD,EAC9Cc,GAASY,SAAS,GAAGG,MAAM6B,KAAK,CAAE/B,SAAUY,aAAI,EAAJA,EAAMpC,YAAarB,GAAIkB,IACrB,oBAArC2D,EAAApB,aAAI,EAAJA,EAAMpC,kCAAaiD,eAC5BnB,EAAWJ,MAAM6B,KAAK,CAAE/B,SAAU,WAAY7C,GAAIyD,aAAI,EAAJA,EAAMzD,KACnDgC,GAASY,SAAS,GAAGG,MAAM6B,KAAK,CAAE/B,SAAUY,aAAI,EAAJA,EAAMpC,YAAarB,GAAIyD,aAAI,EAAJA,EAAMzD,OAElFsC,IAA2C,QAA1BuB,EAAA7B,GAASY,SAAS,GAAGG,aAAK,IAAAc,GAAAA,EAAEe,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIsC,KAC1ED,GAAac,EAAWJ,MAAM6B,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIqC,KACtC,QAAjBuB,EAAAT,aAAU,EAAVA,EAAYJ,aAAK,IAAAa,OAAA,EAAAA,EAAEvF,QAAS,IACZ,QAAlB+F,EAAApC,cAAQ,EAARA,GAAUY,gBAAQ,IAAAwB,GAAAA,EAAEQ,KAAKzB,KAIvBvB,aAAS,EAATA,EAAWvD,QAAS,IACtBuD,SAAAA,EAAW7B,QAAS+E,IAClB9C,GAASY,SAAS,GAAGG,MAAM6B,KAAK,CAAE/B,SAAUkC,EAAmB/E,GAAI8E,aAAM,EAANA,EAAQ9E,YAG1E,CAEL,MAAMsC,EACoE,IAAZ,QAA5DkC,EAAuD,UAAL,QAAlDR,UAAAC,EAA+B,QAA/BC,EAAgB,QAAhBC,EAAAlD,aAAW,EAAXA,EAAc,UAAE,IAAAkD,OAAA,EAAAA,EAAET,qBAAa,IAAAQ,OAAA,EAAAA,EAAG,yBAAIJ,oBAAY,IAAAE,OAAA,EAAAA,EAAG,UAAE,IAAAK,OAAA,EAAAA,EAAEN,WAAG,IAAAS,OAAA,EAAAA,EAAEnG,QACE,QAA5D2G,GAAuD,QAAvDH,GAAkD,QAAlDF,GAAoC,QAApCF,EAA+B,QAA/BC,EAAgB,QAAhBH,EAAAtD,aAAW,EAAXA,EAAc,UAAE,IAAAsD,OAAA,EAAAA,EAAEb,qBAAa,IAAAgB,OAAA,EAAAA,EAAG,UAAE,IAAAD,OAAA,EAAAA,EAAEX,oBAAY,IAAAa,QAAA,EAAAA,GAAG,UAAE,IAAAE,QAAA,EAAAA,GAAEd,WAAG,IAAAiB,QAAA,EAAAA,GAAG,GAC/D,GACNhD,GAASY,SAAS,GAAGG,MAAM6B,KAAK,CAC9B/B,SAA0B,QAAhBoC,GAAAhE,aAAW,EAAXA,EAAc,UAAE,IAAAgE,QAAA,EAAAA,GAAE5D,YAC5BrB,GAAoB,QAAhBkF,GAAAjE,aAAW,EAAXA,EAAc,UAAE,IAAAiE,QAAA,EAAAA,GAAElF,KAExBsC,IAA2C,QAA1B6C,GAAAnD,GAASY,SAAS,GAAGG,aAAK,IAAAoC,IAAAA,GAAEP,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIsC,IAC5E,CACIhB,IAAcA,aAAU,EAAVA,EAAYjD,QAAS,IACrCiD,SAAAA,EAAYkC,IAAK4B,gBACY,UAA3BA,aAAQ,EAARA,EAAUC,cACwB,QAA9BlF,UAAAF,EAAkB,QAAlB/B,EAAA8D,cAAQ,EAARA,GAAUY,gBAAQ,IAAA1E,OAAA,EAAAA,EAAG,yBAAI6E,aAAK,IAAA5C,GAAAA,EAAEyE,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIoF,aAAQ,EAARA,EAAUE,oBACvEhC,EAAAH,EAAWJ,sBAAO6B,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIoF,aAAQ,EAARA,EAAUE,gBAM7D9C,aAAa,EAAbA,EAAe+C,cACY,QAA7BC,GAAuB,WAAL,QAAlBC,GAAAzD,gBAAAA,GAAUY,gBAAQ,IAAA6C,QAAA,EAAAA,GAAG,UAAE,IAAAC,QAAA,EAAAA,GAAE1C,YAAI,IAAAwC,IAAAA,GAAEZ,KAAK,CAClC3B,OAAQ,sBACRC,KAAMV,aAAa,EAAbA,EAAe+C,eAGrB/C,aAAa,EAAbA,EAAemD,YACY,QAA7BC,GAAuB,WAAL,QAAlBC,GAAA7D,gBAAAA,GAAUY,gBAAQ,IAAAiD,QAAA,EAAAA,GAAG,UAAE,IAAAC,QAAA,EAAAA,GAAE9C,YAAI,IAAA4C,IAAAA,GAAEhB,KAAK,CAClC3B,OAAQ,kCACRC,KAA6B,QAAvB6C,GAAAvD,eAAAA,EAAemD,gBAAQ,IAAAI,QAAA,EAAAA,GAAEC,SAOnC,IACE,MAAMC,EAAeC,EAAW,iBAC1BC,EAAqB,CACzB,CACEC,eAAgB,CACdC,qBAAqB,EACrBC,QAAS,KACTC,KAA0B,QAApBC,GAAAP,eAAAA,EAASQ,mBAAW,IAAAD,QAAA,EAAAA,GAAED,KAC5BG,QAA6B,QAApBC,GAAAV,eAAAA,EAASQ,mBAAW,IAAAE,QAAA,EAAAA,GAAEC,OAC/BC,SAA8B,QAApBC,GAAAb,eAAAA,EAASQ,mBAAW,IAAAK,QAAA,EAAAA,GAAED,SAChCE,QAA6B,QAApBC,GAAAf,eAAAA,EAASQ,mBAAW,IAAAO,QAAA,EAAAA,GAAEC,eAIrCjF,GAASmE,cAAgBA,CAC3B,CAAE,MAAO1H,GAEPD,QAAQ6B,IAAI,0DAA2D5B,EACzE,CACF,MAAO,GAAI4C,IAAgB6F,EAAQ,CAG/BlF,GADET,EACS,CACTmB,aAAc,CACZ,CACEC,QAAS,gBAGbC,SAAU,CACR,CACEC,SAAU,SACVC,YAAa3B,EACb4B,MAAO,CACL,CACEF,SAAU,WACV7C,IAAoB,QAAhBmH,GAAAlG,aAAW,EAAXA,EAAc,UAAE,IAAAkG,QAAA,EAAAA,GAAEnH,IAAqB,QAAhBoH,GAAAnG,aAAW,EAAXA,EAAc,UAAE,IAAAmG,QAAA,EAAAA,GAAEpH,GAAKiB,EAClDoG,eAAgB,CACdC,cAAeC,EACfvH,GAAIwB,KAIVgG,YAAa,CACXxH,GAAIyH,MAMD,CACT/E,aAAc,CACZ,CACEC,QAAS,gBAGbC,SAAU,CACR,CACEC,SAAU,SACVC,YAAa3B,EACb4B,MAAO,CACL,CACEF,SAAU,WACV7C,IAAoB,QAAhB0H,GAAAzG,aAAW,EAAXA,EAAc,UAAE,IAAAyG,QAAA,EAAAA,GAAE1H,IAAqB,QAAhB2H,GAAA1G,aAAW,EAAXA,EAAc,UAAE,IAAA0G,QAAA,EAAAA,GAAE3H,GAAKiB,EAClD2G,mBAAoB/F,EAChB,CACE,CACEA,YAAaA,EACbgG,aAAc,kBAGlB7K,OAOhB,MAAMsF,EACoE,IAAZ,QAA5DwF,GAAuD,WAAL,QAAlDC,WAAAC,GAA+B,QAA/BC,GAAgB,QAAhBC,GAAAjH,aAAW,EAAXA,EAAc,UAAE,IAAAiH,QAAA,EAAAA,GAAExE,qBAAa,IAAAuE,QAAA,EAAAA,GAAG,2BAAInE,oBAAY,IAAAiE,QAAA,EAAAA,GAAG,UAAE,IAAAI,QAAA,EAAAA,GAAEpE,WAAG,IAAA+D,QAAA,EAAAA,GAAEzJ,QACE,QAA5D+J,GAAuD,QAAvDC,GAAkD,QAAlDC,GAAoC,QAApCC,GAA+B,QAA/BC,GAAgB,QAAhBC,GAAAxH,aAAW,EAAXA,EAAc,UAAE,IAAAwH,QAAA,EAAAA,GAAE/E,qBAAa,IAAA8E,QAAA,EAAAA,GAAG,UAAE,IAAAD,QAAA,EAAAA,GAAEzE,oBAAY,IAAAwE,QAAA,EAAAA,GAAG,UAAE,IAAAD,QAAA,EAAAA,GAAEtE,WAAG,IAAAqE,QAAA,EAAAA,GAAG,GAC/D,GACN9F,IAA2C,QAA1BoG,GAAA1G,GAASY,SAAS,GAAGG,aAAK,IAAA2F,IAAAA,GAAE9D,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIsC,KACtEhB,IAAcA,aAAU,EAAVA,EAAYjD,QAAS,IACrCiD,SAAAA,EAAYkC,IAAK4B,cACY,UAA3BA,aAAQ,EAARA,EAAUC,wBACRlF,EAAuB,QAAvBF,UAAA/B,EAAA8D,cAAQ,EAARA,GAAUY,+BAAW,UAAE,IAAA3C,OAAA,EAAAA,EAAE8C,sBAAO6B,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIoF,aAAQ,EAARA,EAAUE,eAG/E,CAEA,GAAI7D,EAAY,CACd,MAAMuB,EAAO,GACbA,EAAK4B,KAAK,CACR3B,OAAQ0F,EACRzF,KAAM0F,IAES,KAAblH,IACFsB,EAAK4B,KAAK,CACR3B,OAAQ4F,EACR3F,KAAMxB,IAERoH,EAAmB,WAErB9G,GAASY,SAAS,GAAS,KAAII,CACjC,MAAO,GAAInB,GAAeC,EAAiB,CACzC,MAAMkB,EAAO,GACbA,SAAAA,EAAM4B,KAAK,CACT3B,OAAQ,YACRC,KAAM,QAERF,SAAAA,EAAM4B,KAAK,CACT3B,OAAQ,wBACRC,KAAMrB,IAERmB,SAAAA,EAAM4B,KAAK,CACT3B,OAAQ,eACRC,KAAMpB,IAERE,GAASY,SAAS,GAAS,KAAII,CACjC,CAOA,GAAIjB,IAAiC,QAAlBgH,GAAA/G,cAAQ,EAARA,GAAUY,gBAAQ,IAAAmG,QAAA,EAAAA,GAAG,IAAI,CAC1C,MAAMC,YAAEA,EAAWC,cAAEA,EAAaC,YAAEA,GAAgBnH,EAChDmH,IACFlH,GAASmH,KAAOD,GAElB,MAAME,EAAe,CACJ,MAAfJ,GAA4C,IAArB,GAAGA,KAAwB,CAAE/F,OAAQ,cAAeC,KAAM,GAAG8F,KACnE,MAAjBC,GAAgD,IAAvB,GAAGA,KAA0B,CAAEhG,OAAQ,gBAAiBC,KAAM,GAAG+F,MAC1FI,OAAOC,SAELF,EAAa/K,OAAS,IACN,QAAlBkL,GAAAvH,cAAQ,EAARA,GAAUY,gBAAQ,IAAA2G,IAAAA,GAAExJ,QAASyJ,IACtBC,MAAMC,QAAQF,aAAE,EAAFA,EAAIzG,QACvByG,EAAGzG,MAAMhD,QAAS4J,IAChB,MAAMC,EAAS,IAAGD,aAAE,EAAFA,EAAI9G,WAAY,KAAKgH,cACxB,aAAXD,GAAoC,aAAXA,IAC3BD,EAAG3G,KAAO,IAAK2G,EAAG3G,MAAQ,MAAQoG,QAK5C,CAGA,GAAIzH,EAAe,CACjB,MAAMmI,EA7XgB,CAACnI,wCACzB,IAAIoB,EAAQ,GACZ,MAAMgH,EACqF,QAAzFzG,EAA+E,QAA/EnD,EAAqD,kBAArDjC,EAAAyD,aAAa,EAAbA,EAAeqI,6CAAwBC,sBAAc,IAAAhK,OAAA,EAAAA,EAAEiK,gCAAwB,IAAA/J,OAAA,EAAAA,EAAEgK,gBAAQ,IAAA7G,EAAAA,EAAI,EACzF8G,EAEK,QADTjG,EAA+F,QAA/FC,EAA+E,QAA/ER,EAAqD,UAAhB,QAArCP,EAAA1B,aAAa,EAAbA,EAAeqI,8BAAsB,IAAA3G,OAAA,EAAAA,EAAE4G,sBAAc,IAAApG,OAAA,EAAAA,EAAEqG,gCAAwB,IAAAtG,OAAA,EAAAA,EAAEyG,sBAAc,IAAAjG,OAAA,EAAAA,EAC3FkG,aAAK,IAAAnG,EAAAA,EAAI,EACToG,EAEK,QADT/F,EAA0F,QAA1FH,EAA+E,QAA/EL,EAAqD,UAAhB,QAArCE,EAAAvC,aAAa,EAAbA,EAAeqI,8BAAsB,IAAA9F,OAAA,EAAAA,EAAE+F,sBAAc,IAAAhG,OAAA,EAAAA,EAAEiG,gCAAwB,IAAAlG,OAAA,EAAAA,EAAEwG,iBAAS,IAAAnG,OAAA,EAAAA,EACtFiG,aAAK,IAAA9F,EAAAA,EAAI,EACTiG,EAAa,CACjB5H,SAAU6H,EACV1K,WAAI0E,EAAqC,QAArCH,EAAA5C,aAAa,EAAbA,EAAeqI,8BAAsB,IAAAzF,OAAA,EAAAA,EAAEvE,kBAAM,GACjD2K,aAAcZ,EACd/G,KAAM4H,EAAejJ,EAAeyI,IAItC,GAFAK,IAAc1H,SAAAA,EAAO6B,KAAK6F,IAEtBF,EAAgB,CAClB,MAAMM,EAAW,CACfhI,SAAUiI,EACV9K,GAAI2B,aAAa,EAAbA,EAAeoJ,eAErBhI,SAAAA,EAAO6B,KAAKiG,EACd,CACA,OAAO9H,aAAK,EAALA,EAAO1E,QAAS,EAAI0E,EAAQ,MAoWViI,CAAkBrJ,GACzCmI,IAAgD,WAAP,QAAvBmB,WAAAC,GAAAlJ,cAAQ,EAARA,GAAUY,iCAAW,UAAE,IAAAqI,QAAA,EAAAA,GAAElI,aAAK,IAAAoI,IAAAA,GAAEvG,QAAQkF,GAC5D,CAEA,IAAIsB,GAAsB,KAC1B,GAAsB,oBAAXnO,OAAwB,CAEjCmO,GADe,IAAIC,gBAAgBpO,OAAOqO,SAASC,QACrCpO,IAAI,OACpB,CAIA,GAD0B8E,IAAwB,QAATmJ,GAClB,CACrB,MAAMI,EAAWC,EAAcxJ,IAC/B,IAAIuJ,aAAQ,EAARA,EAAUnN,QAAS,EAAG,CACxB,MAAMqN,EAEF,CAAA,EACEC,EAAiC,QAAlBC,GAAA5J,cAAQ,EAARA,GAAUY,gBAAQ,IAAAgJ,QAAA,EAAAA,GAAEC,KAAMpI,GAAiC,UAAnBA,aAAI,EAAJA,EAAMZ,WACnE2I,EAASzL,QAAS+L,UAChB,MAAMjJ,EAAWiJ,aAAO,EAAPA,EAASjJ,SAG1B,GAAiB,QAAbA,EAAoB,CACtB,MAAMkJ,GAA8B,QAApB7N,EAAA4N,aAAO,EAAPA,EAAShJ,mBAAW,IAAA5E,OAAA,EAAAA,EAAE8N,SAAU,mBAC1CC,EAAW,OAAYF,IAExBL,EAAsBO,KACzBP,EAAsBO,GAAY,CAChCpJ,SAAUA,EACVC,YAAaiJ,EACbhJ,MAAO,KAGX2I,EAAsBO,GAAUlJ,MAAM6B,SAASkH,eAAAA,EAAS/I,QAAS,GACnE,MAGM4I,GAAgBA,EAAa5I,QAAS+I,eAAAA,EAAS/I,QACjD4I,EAAa5I,MAAM6B,QAAQkH,EAAQ/I,SAMzCmJ,OAAOC,KAAKT,GAAuB3L,QAASkM,IAC1C,MAAMG,EAAQV,EAAsBO,GACpCjK,UAAAA,GAAUY,SAASgC,KAAK,CACtB/B,SAAUuJ,EAAMvJ,SAChBC,YAAasJ,EAAMtJ,YACnBC,MAAOqJ,EAAMrJ,SAGnB,CACF,CAEA,MAAMhE,GAAU,CACdC,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,aAIxCE,GAAM+B,EAAUlC,EAAqBmN,cAC3C,IAAyB,QAArBC,GAAAJ,OAAOC,KAAKnK,WAAS,IAAAsK,QAAA,EAAAA,GAAEjO,QAAS,EAAG,CACrC,MAAMkO,QAA8B/M,EAAaC,wBAC9CC,KAAKL,GAAK2C,GAAUjD,IACpBY,KAAMC,IAEL,GADAkJ,EAAmB,iBACD,KAAdlJ,EAAIC,OACN,OAAOD,eAAAA,EAAKxB,OAGfoO,MAAO/N,gBACmB,QAArBwB,EAAe,QAAf/B,EAAAO,aAAK,EAALA,EAAOqB,gBAAQ,IAAA5B,OAAA,EAAAA,EAAEE,YAAI,IAAA6B,OAAA,EAAAA,EAAEC,OAAoC,OAAb,QAAfC,EAAA1B,aAAK,EAALA,EAAOqB,gBAAQ,IAAAK,OAAA,EAAAA,EAAEN,UAClDO,EAAuB3B,eAAAA,EAAOqB,YAGpC,GAAIyM,EAAiB9N,MACnB,MAAM8N,EAAiB9N,MAEvB,OAAO8N,CAEX,CACF,GAEaE,EAAwB,CAAOC,EAAiBtN,IAA6BzB,OAAA,OAAA,OAAA,EAAA,YACxF,IAoBE,aAnBmBQ,EAAsBhB,IAAIuP,EAAStN,GACnDO,KAAMG,gBACL,MAAM6M,EAA6C,QAA9BxM,YAAc,QAAdjC,EAAA4B,aAAQ,EAARA,EAAU1B,YAAI,IAAAF,OAAA,EAAAA,EAAE0O,4BAAOC,eAAO,IAAA1M,OAAA,EAAAA,EAAE2M,KAErD,IAAK,MAAMC,KAAQJ,EAAc,CAC/B,GACoB,kBAAlBI,EAAKC,WACc,0BAAnBD,EAAKC,WACc,wBAAnBD,EAAKC,UAEL,OAAOD,EACF,GAAsB,uBAAlBA,EAAKC,UACd,OAAyB,QAAlB1J,EAAAyJ,aAAI,EAAJA,EAAME,oBAAY,IAAA3J,OAAA,EAAAA,EAAG,EAEhC,IAEDkJ,MAAOU,IACN,MAAMA,GAGZ,CAAE,MAAOzO,GACP,OAAOA,CACT,CACF,GAEa0O,EAAmB,CAACpP,EAAgB,KAAMqP,KACrD,IACE,OAAOjP,EAAsBhB,IAAIiQ,EAAW,CAC1CC,UAAWtP,EACXuP,SAAU,IACVtP,KAAM,QAEL2B,KAAMC,UACL,MAAME,EAAgB,CAAA,IACZ,UAATF,aAAG,EAAHA,EAAKxB,YAAI,IAAAF,OAAA,EAAAA,EAAEqP,qBAAsB,IAAI/J,IAAKgK,IACzC1N,EAAS0N,EAAMjQ,MACY,MAAzBiQ,EAAMC,gBAA0BD,EAAMC,gBAAkBD,EAAMlD,QAElE,IACEzL,aAAaC,WAAW,mBACxBD,aAAa6O,QAAQ,kBAAmBtQ,KAAKuQ,UAAU7N,GACzD,CAAE,MAAAG,GAEF,CACA,OAAOH,IAER0M,MAAOU,GACCA,EAEb,CAAE,MAAAhP,GACA,MAAM0P,MAAM,iBACd,GAGWC,EAA+B,CAC1CzO,EACA0O,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,IACgB3Q,OAAA,OAAA,OAAA,EAAA,YAEhB,IAAIoB,EADJF,aAAaC,WAAW,iBAExBC,EAAU,CACRC,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,aAG1C+O,IACFnP,EAAQK,OAAS,CACfR,aAAa,IAGbuP,IACFpP,EAAQK,OAAS,CACfmP,QAAS,QAGVD,IACDvP,EAAQK,OAAM8M,OAAAsC,OAAAtC,OAAAsC,OAAA,GACTzP,EAAQK,QAAM,CACfmP,QAAS,SAIf,IAAIlP,EAAM0O,EAAW7O,EAAqBI,aACtC8O,GAAmBvP,aAAa4P,QAAQ,gBAC1C1P,EAAQC,QAAQ,yBAA2BH,aAAa4P,QAAQ,cAChEpP,EAAM0O,EAAW7O,EAAqBwP,cAExC,MAAMC,EAAkBV,EACpB5O,EAAMH,EAAqB0P,aAAeX,EAC1C5O,EAEEwP,EAAYR,EAAY,YAAYP,IAAa,GACjDgB,EAAWd,GAAoBC,EAAkBU,EAAkBtP,EACnEE,QAAgCC,EAAaC,wBAChDC,KAAK,GAAGoP,IAAWD,IAAazP,EAAQL,GACxCY,KAAMC,IACL,GAAkB,KAAdA,EAAIC,OACN,OAAOD,eAAAA,EAAKxB,OAGfoO,MAAOU,gBACiB,QAAnBjN,EAAa,QAAb/B,EAAAgP,aAAG,EAAHA,EAAKpN,gBAAQ,IAAA5B,OAAA,EAAAA,EAAEE,YAAI,IAAA6B,OAAA,EAAAA,EAAEC,OAAkC,OAAb,QAAbC,EAAA+M,aAAG,EAAHA,EAAKpN,gBAAQ,IAAAK,OAAA,EAAAA,EAAEN,UAC9CO,EAAuB8M,eAAAA,EAAKpN,YAGlC,OAAIP,EAAmBd,MACdc,EAAmBd,MAEnB,CAAEqP,CAACA,GAAWvO,EAEzB,GAQawP,EAAuB,CAClC7F,EACA4E,EACAC,IACgBpQ,OAAA,OAAA,OAAA,EAAA,YAChB,MAAMoB,EAAe,CACnBK,OAAQ,CAAE8J,YAAaA,GACvBlK,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,aAGxCE,EAAM0O,EAAW7O,EAAqBI,aACtCC,QAAgCC,EAAaC,wBAChDC,KAAKL,EAAK,GAAIN,GACdY,KAAMC,IACL,GAAmB,MAAfA,EAAIC,OACN,OAAOD,eAAAA,EAAKxB,OAGfoO,MAAOU,gBACiB,QAAnBjN,EAAa,QAAb/B,EAAAgP,aAAG,EAAHA,EAAKpN,gBAAQ,IAAA5B,OAAA,EAAAA,EAAEE,YAAI,IAAA6B,OAAA,EAAAA,EAAEC,OAAkC,OAAb,QAAbC,EAAA+M,aAAG,EAAHA,EAAKpN,gBAAQ,IAAAK,OAAA,EAAAA,EAAEN,UAC9CO,EAAuB8M,eAAAA,EAAKpN,YAGlC,IAAKP,GAAsBA,EAAmBd,MAC5C,MAAM,IAAImP,MAAM,2BAElB,MAAO,CAAEE,CAACA,GAAWvO,EACvB,GAEayP,EAAwB,CAAOC,EAAelB,IAA+BpQ,OAAA,OAAA,OAAA,EAAA,YACxF,IAAIoB,EACJA,EAAU,CACRK,OAAQ,CAAA,EACRJ,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,aAG9CJ,EAAQK,OAAS,CACf6P,SAAUA,GAEZ,MAAM5P,EAAM0O,EACNmB,QAA8B1P,EAAaC,wBAC9CtC,IAAIkC,EAAKN,GACTY,KAAMC,GACa,KAAdA,EAAIC,OACCD,eAAAA,EAAKxB,KAELwB,eAAAA,EAAKC,QAGf2M,MAAOU,gBACiB,QAAnBjN,EAAa,QAAb/B,EAAAgP,aAAG,EAAHA,EAAKpN,gBAAQ,IAAA5B,OAAA,EAAAA,EAAEE,YAAI,IAAA6B,OAAA,EAAAA,EAAEC,OAAkC,OAAb,QAAbC,EAAA+M,aAAG,EAAHA,EAAKpN,gBAAQ,IAAAK,OAAA,EAAAA,EAAEN,UAC9CO,EAAuB8M,eAAAA,EAAKpN,YAGlC,OAAIoP,aAAgB,EAAhBA,EAAkBzQ,OACbyQ,eAAAA,EAAkBzQ,MAElB,CAAEyQ,mBAEb,GAEaC,EAAqB,CAAOC,EAAmBC,IAAmB1R,OAAA,OAAA,OAAA,EAAA,kBAC7E,IACE,MAAMoB,EAAU,CACdC,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,YAE5CC,OAAQ,CACNkQ,SAAUF,EACVG,YAAaF,IAIXhQ,GACmC,QAAvCnB,EAAAsR,aAAwB,EAAxBA,EAA0BC,qBAAa,IAAAvR,OAAA,EAAAA,EAAEwR,cACzC,GAAGxQ,EAAqByQ,2BACpBnQ,EAAaC,wBAChBtC,IAAIkC,EAAKN,GACTY,KAAMC,IACL,GAAkB,KAAdA,EAAIC,OACN,OAAOD,eAAAA,EAAKxB,MAGpB,CAAE,MAAOK,GAAQ,CACnB,GAEamR,EAAc,CAAOC,EAAa9B,IAA+BpQ,OAAA,OAAA,OAAA,EAAA,YAC5E,IAAIoB,EACJA,EAAU,CACRK,OAAQ,CAAA,EACRJ,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,aAG9CJ,EAAQK,OAAS,CACfyQ,OAAQA,GAEV,MAAMxQ,EAAM0O,EACZ,aAAavO,EAAaC,wBACvBtC,IAAIkC,EAAKN,GACTY,KAAMC,UACL,MAA4C,OAA/B,QAAT1B,EAAA0B,aAAG,EAAHA,EAAKxB,YAAI,IAAAF,OAAA,EAAAA,EAAE4R,6BAMhBtD,MAAOU,cAKN,QAJuB,QAAnBjN,EAAa,QAAb/B,EAAAgP,aAAG,EAAHA,EAAKpN,gBAAQ,IAAA5B,OAAA,EAAAA,EAAEE,YAAI,IAAA6B,OAAA,EAAAA,EAAEC,OAAkC,OAAb,QAAbC,EAAA+M,aAAG,EAAHA,EAAKpN,gBAAQ,IAAAK,OAAA,EAAAA,EAAEN,UAC9CO,EAAuB8M,eAAAA,EAAKpN,UAE9BtB,QAAQ6B,IAAI,MAAO6M,IACZ,GAEb,GAEa6C,EAAmB,CAAOC,EAAejC,IAA+BpQ,OAAA,OAAA,OAAA,EAAA,YACnF,IACE,IAAIoB,EACJA,EAAU,CACRK,OAAQ,CAAA,EACRJ,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,aAG9C,MAAME,EAAM0O,EAAW7O,EAAqB+Q,UAAY,gBAAgBD,IAUxE,aAT8BxQ,EAAaC,wBACxCtC,IAAIkC,EAAKN,GACTY,KAAMC,UACL,OAAoB,OAAhBA,aAAG,EAAHA,EAAKC,UAAwC,UAAtBqM,OAAOC,KAAKvM,aAAG,EAAHA,EAAKxB,aAAK,IAAAF,OAAA,EAAAA,EAAEG,QAAS,EACnDuB,eAAAA,EAAKxB,KAEL,MAIf,CAAE,MAAO8O,GAGP,OADA1O,QAAQ6B,IAAI,MAAO6M,GACZ,IACT,CACF,GAEagD,EAAsB,CAAOC,EAAcpC,IAA+BpQ,OAAA,OAAA,OAAA,EAAA,YACrF,IACE,IAAIoB,EACJA,EAAU,CACRK,OAAQ,CAAA,EACRJ,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,aAG9C,MAAME,EAAM0O,EAAW7O,EAAqBkR,iBAAmB,qBAAqBD,IAUpF,aAT8B3Q,EAAaC,wBACxCtC,IAAIkC,EAAKN,GACTY,KAAMC,YACL,OAAoB,OAAhBA,aAAG,EAAHA,EAAKC,UAAsC,QAApBI,EAAS,QAAT/B,EAAA0B,aAAG,EAAHA,EAAKxB,YAAI,IAAAF,OAAA,EAAAA,EAAEmS,iBAAS,IAAApQ,OAAA,EAAAA,EAAE5B,QAAS,EACjDuB,eAAAA,EAAKxB,KAEL,MAIf,CAAE,MAAO8O,GAGP,OADA1O,QAAQ6B,IAAI,MAAO6M,GACZ,IACT,CACF,GAEaoD,EAAkB,CAAAC,KAAAvP,IAIbrD,OAAA,EAAA,CAAA4S,KAAAvP,QAAA,EAAA,UAHhB+M,EACAyC,EAAU,CAAA,EACVC,GAEA,IAAI1R,EACJA,EAAU,CACRC,QAAS,CACP,mBAAoBC,IACpB,oBAAqByR,EAAgBvR,WACrC,wBAAyBsR,IAI7B,IAAIpR,EAAM0O,GAAW7O,aAAoB,EAApBA,EAAsByR,uBACLnR,EAAaC,wBAChDC,KAAKL,EAAKmR,EAASzR,GACnBY,KAAMC,IACL,GAAkB,KAAdA,EAAIC,OAGN,OADArB,QAAQ6B,IAAI,8BAA+BT,EAAIxB,MACxCwB,eAAAA,EAAKxB,OAGfoO,MAAOU,gBACiB,QAAnBjN,EAAa,QAAb/B,EAAAgP,aAAG,EAAHA,EAAKpN,gBAAQ,IAAA5B,OAAA,EAAAA,EAAEE,YAAI,IAAA6B,OAAA,EAAAA,EAAEC,OAAkC,OAAb,QAAbC,EAAA+M,aAAG,EAAHA,EAAKpN,gBAAQ,IAAAK,OAAA,EAAAA,EAAEN,UAC9CO,EAAuB8M,eAAAA,EAAKpN,WAGpC,GAEa8Q,EAAkB,CAC7B3P,EACAC,EACAC,EACAC,EACAE,IACgB3D,OAAA,OAAA,OAAA,EAAA,kEAChB,IAAIqE,EAAgB,CAAA,EAEhBK,EAAY,GACZC,EAAgB,GACpB,MAAMC,EAA+E,QAAlDrE,EAAAhB,EAAQC,IAAI,8CAAsC,IAAAe,EAAAA,EAAI,GACnFsE,EAAgBC,EAA2C,QAAhBxC,EAAAgB,aAAW,EAAXA,EAAc,UAAE,IAAAhB,OAAA,EAAAA,EAAED,IACnEgC,EAAW,CACTU,aAAc,CACZ,CACE1C,GAAI,YACJ2C,QAAS,gBAGbC,SAAU,CACR,CACEC,SAAU,OACVC,YAAa3B,EACb4B,MAAO,GACPC,KAAM,CACJ,CACEC,OAAQ,yBACRC,KAAMX,OAOhB,MAAMY,EAAkB,CACtBN,SAAU,SACVC,YAAa3B,EACb4B,MAAO,KAGW,QAAhB5C,EAAAc,aAAW,EAAXA,EAAc,UAAE,IAAAd,OAAA,EAAAA,EAAEiD,WACW,QAA/BC,EAAgB,UAAhBpC,aAAW,EAAXA,EAAc,UAAE,IAAAqC,OAAA,EAAAA,EAAEC,qBAAa,IAAAF,GAAAA,EAAEG,IAAKC,8CACpC,GAA4B,QAAxBxD,UAAA/B,EAAAuF,aAAI,EAAJA,EAAMC,oCAAgB,UAAE,IAAAzD,OAAA,EAAAA,EAAED,GAAI,CAChC,MAAM2D,EACwD,IAAZ,QAAhDC,EAA2C,QAA3CC,EAAsC,QAAtCR,EAAwB,QAAxBC,EAAmB,QAAnBnD,EAAAsD,aAAI,EAAJA,EAAMC,qBAAa,IAAAvD,OAAA,EAAAA,EAAG,UAAE,IAAAmD,OAAA,EAAAA,EAAEQ,oBAAY,IAAAT,OAAA,EAAAA,EAAG,UAAE,IAAAQ,OAAA,EAAAA,EAAEE,WAAG,IAAAH,OAAA,EAAAA,EAAEvF,QACE,QAAhD2F,EAA2C,QAA3CC,EAAsC,QAAtCC,EAAwB,QAAxBC,EAAmB,UAAnBV,aAAI,EAAJA,EAAMC,qBAAa,IAAAU,OAAA,EAAAA,EAAG,UAAE,IAAAD,OAAA,EAAAA,EAAEL,oBAAY,IAAAI,OAAA,EAAAA,EAAG,UAAE,IAAAD,OAAA,EAAAA,EAAEF,WAAG,IAAAC,OAAA,EAAAA,EAAG,GACnD,GACmC,oBAArCK,EAAAZ,aAAI,EAAJA,EAAMpC,kCAAaiD,gBACrBnB,EAAwB,YAA4B,QAAxBoB,EAAmB,QAAnBC,EAAAf,aAAI,EAAJA,EAAMC,qBAAa,IAAAc,OAAA,EAAAA,EAAG,UAAE,IAAAD,OAAA,EAAAA,EAAEvE,GACtDqC,EAAYsB,IAEZ3B,EAAmB,SAAE,GAAgB,YAA4B,QAAxByC,UAAAC,EAAAjB,aAAI,EAAJA,EAAMC,oCAAgB,UAAE,IAAAe,OAAA,EAAAA,EAAEzE,GACnEsC,EAAgBqB,EAEpB,CACwC,OAAnB,QAAjBgB,EAAAlB,eAAAA,EAAMpC,mBAAW,IAAAsD,OAAA,EAAAA,EAAEL,gBAAyBpD,IAEA,oBAArC2D,EAAApB,aAAI,EAAJA,EAAMpC,kCAAaiD,eAC5BnB,EAAWJ,MAAM6B,KAAK,CAAE/B,SAAU,WAAY7C,GAAIyD,aAAI,EAAJA,EAAMzD,KACnDgC,EAASY,SAAS,GAAGG,MAAM6B,KAAK,CAAE/B,SAAUY,aAAI,EAAJA,EAAMpC,YAAarB,GAAIyD,aAAI,EAAJA,EAAMzD,QAElFsC,IAA8C,QAA7BsB,EAAkB,QAAlBC,EAAA7B,aAAQ,EAARA,EAAUY,gBAAQ,IAAAiB,OAAA,EAAAA,EAAG,GAAGd,aAAK,IAAAa,GAAAA,EAAEgB,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIsC,KAC7ED,IAA8B,UAAjBc,aAAU,EAAVA,EAAYJ,aAAK,IAAAqB,GAAAA,EAAEQ,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIqC,MAExC,QAAjB8B,EAAAhB,aAAU,EAAVA,EAAYJ,aAAK,IAAAoB,OAAA,EAAAA,EAAE9F,QAAS,IACZ,QAAlB6F,EAAAlC,aAAQ,EAARA,EAAUY,gBAAQ,IAAAsB,GAAAA,EAAEU,KAAKzB,IAEvB7B,IAAcA,aAAU,EAAVA,EAAYjD,QAAS,IACrCiD,SAAAA,EAAYkC,IAAK4B,cACc,QAA9BjF,EAAuB,QAAvBF,EAAkB,QAAlB/B,EAAA8D,aAAQ,EAARA,EAAUY,gBAAQ,IAAA1E,OAAA,EAAAA,EAAG,UAAE,IAAA+B,OAAA,EAAAA,EAAE8C,aAAK,IAAA5C,GAAAA,EAAEyE,KAAK,CAAE/B,SAAU,OAAQ7C,GAAIoF,eAAAA,EAAUE,gBAK1EtD,EAASY,SAAS,GAAGG,MAAM6B,KAAK,CAC9B/B,SAA0B,QAAhBoB,EAAAhD,aAAW,EAAXA,EAAc,UAAE,IAAAgD,OAAA,EAAAA,EAAE5C,YAC5BrB,GAAoB,QAAhBgE,EAAA/C,aAAW,EAAXA,EAAc,UAAE,IAAA+C,OAAA,EAAAA,EAAEhE,MAMtBwC,aAAa,EAAbA,EAAe+C,cACY,QAA7BhB,EAAuB,UAAL,QAAlBF,EAAArC,eAAAA,EAAUY,gBAAQ,IAAAyB,OAAA,EAAAA,EAAG,UAAE,IAAAG,OAAA,EAAAA,EAAExB,YAAI,IAAAuB,GAAAA,EAAEK,KAAK,CAClC3B,OAAQ,sBACRC,KAAMV,aAAa,EAAbA,EAAe+C,eAGrB/C,aAAa,EAAbA,EAAemD,YACY,QAA7BhB,EAAuB,UAAL,QAAlBD,EAAA1C,eAAAA,EAAUY,gBAAQ,IAAA8B,OAAA,EAAAA,EAAG,UAAE,IAAAD,OAAA,EAAAA,EAAEzB,YAAI,IAAA2B,GAAAA,EAAEC,KAAK,CAClC3B,OAAQ,kCACRC,KAA6B,QAAvB2B,EAAArC,eAAAA,EAAemD,gBAAQ,IAAAd,OAAA,EAAAA,EAAEmB,SAOnC,IACE,MAAMC,EAAeC,EAAW,iBAC1BC,EAAqB,CACzB,CACEC,eAAgB,CACdC,qBAAqB,EACrBC,QAAS,KACTC,KAA0B,QAApBvB,EAAAiB,eAAAA,EAASQ,mBAAW,IAAAzB,OAAA,EAAAA,EAAEuB,KAC5BG,QAA6B,QAApBzB,EAAAgB,eAAAA,EAASQ,mBAAW,IAAAxB,OAAA,EAAAA,EAAE2B,OAC/BC,SAA8B,QAApB3B,EAAAe,eAAAA,EAASQ,mBAAW,IAAAvB,OAAA,EAAAA,EAAE2B,SAChCE,QAA6B,QAApB5B,EAAAc,eAAAA,EAASQ,mBAAW,IAAAtB,OAAA,EAAAA,EAAE8B,eAIrCjF,EAASmE,cAAgBA,CAC3B,CAAE,MAAO1H,GAEPD,QAAQ6B,IAAI,0DAA2D5B,EACzE,CAEA,MAAMM,EAAU,CACdC,QAAS,CACP,mBAAoBC,IACpB,oBAAqBC,EAAqBC,aAKxCE,EAAM,GAF4C,QAAvCoG,EAAA+J,aAAwB,EAAxBA,EAA0BC,qBAAa,IAAAhK,OAAA,EAAAA,EAAEiK,eAEhCmB,EAAmBC,aAAa5R,EAAqB6R,gBAC/E,IAAyB,QAArBrL,EAAAwG,OAAOC,KAAKnK,UAAS,IAAA0D,OAAA,EAAAA,EAAErH,QAAS,EAAG,CACrC,MAAMkO,QAA8B/M,EAAaC,wBAC9CC,KAAKL,EAAK2C,EAAUjD,GACpBY,KAAMC,IACL,GAAkB,KAAdA,EAAIC,OACN,OAAOD,eAAAA,EAAKxB,OAGlB,GAAImO,EAAiB9N,MACnB,MAAM8N,EAAiB9N,MAEvB,OAAO8N,CAEX,CACF,GAEayE,EAAyB,IAAyBrT,OAAA,OAAA,OAAA,EAAA,kBAC7D,MACMF,EAAM,GAD4C,QAAvCS,EAAAsR,aAAwB,EAAxBA,EAA0BC,qBAAa,IAAAvR,OAAA,EAAAA,EAAEwR,eAChCxQ,EAAqB+R,wBACzClS,EAAU,CACdK,OAAQ,CAAA,EACRJ,QAAS,CACP,oBAAqBE,EAAqBC,WAC1C,mBAAoBF,MAGxB,IACE,MAAMiS,QAAyB1R,EAAaC,wBACzCtC,IAAIM,EAAKsB,GACTY,KAAMC,UACL,OAAgB,QAAT1B,EAAA0B,aAAG,EAAHA,EAAKxB,YAAI,IAAAF,OAAA,EAAAA,EAAEG,QAAS,EAAIuB,aAAG,EAAHA,EAAKxB,KAAO,KAE/C,OAAO8S,CACT,CAAE,MAAOzS,GAEPD,QAAQ6B,IAAI5B,EACd,CACF"}
1
+ {"version":3,"file":"LineTableService.js","sources":["../../../src/services/LineTableService.ts"],"sourcesContent":["import { ApiServiceV2, CMSStoryblokServiceV2 } from '@sunrise-upc/ajax-lib';\nimport {\n getCookies,\n getLocalStorageWithExpiry,\n getSessionStorage,\n removeLocalStorage,\n setLocalStoreWithExpiry\n} from '../utils/utils';\nimport { API_BASE_BASEPOINT, APIResourceConstants } from './api-constants';\nimport Cookies from 'js-cookie';\nimport { v4 as generateUID } from 'uuid';\nimport {\n DEVICE_INSURANCE,\n FIXNET,\n HARDWARE,\n MOBILE,\n ONE_ECOMMERCE_OTT,\n P2PSUBSCRIBEDPLAN,\n PRE_TO_POST,\n QOQA,\n TV_SERVICE_OPTION,\n VOUCHERCODE,\n VOUCHERTYPE\n} from '../utils/constants';\nimport { getAccessDataFromLineCheck } from '../components/lineTable/LineTableV3.utils';\nimport { LineTableBasicPropConfig } from './LineTableBasicPropConfig';\nimport { errorTrackingDataLayer } from '../utils/AnalyticsUtils';\nimport { apiResConstants } from '../components/LineCheckV3/APIResourceConstants';\nimport { getDeviceNotes } from '../components/UltimateBundleLinetable/DpTableUtils';\nimport {fetchOttItems} from '../components/StaticLineTable/Product.utils'\n\n// Device cart utility functions moved here to avoid circular dependency\nconst getDeviceCartNotes = (deviceDetails: any, upFrontValue: string) => {\n let note = '';\n const smartUpgradeInstallments =\n deviceDetails?.selectedVarientDetails?.hardwarePrices?.smartUpgradeInstallments;\n const installments = deviceDetails?.selectedVarientDetails?.hardwarePrices?.installments;\n const basePrice = deviceDetails?.selectedVarientDetails?.hardwarePrices?.basePrice;\n\n if (smartUpgradeInstallments) {\n note = `${smartUpgradeInstallments?.duration} months, CHF ${upFrontValue} upfront, CHF ${smartUpgradeInstallments?.monthlyPayment?.value}/month`;\n } else if (installments) {\n note = `${installments?.duration} months, CHF ${installments?.monthlyPayment?.value}/month`;\n } else if (basePrice) {\n note = `CHF ${basePrice?.value} one-time payment`;\n }\n return note;\n};\n\nconst getDeviceCartItem = (deviceDetails: any) => {\n let items = [];\n const contractDuration =\n deviceDetails?.selectedVarientDetails?.hardwarePrices?.smartUpgradeInstallments?.duration ?? 0;\n const upFrontValue =\n deviceDetails?.selectedVarientDetails?.hardwarePrices?.smartUpgradeInstallments?.upFrontPayment\n ?.value ?? 0;\n const insuranceValue =\n deviceDetails?.selectedVarientDetails?.hardwarePrices?.smartUpgradeInstallments?.insurance\n ?.value ?? 0;\n const deviceItem = {\n itemType: HARDWARE,\n id: deviceDetails?.selectedVarientDetails?.id ?? '',\n contractTerm: contractDuration,\n note: getDeviceNotes(deviceDetails, upFrontValue)\n };\n deviceItem && items?.push(deviceItem);\n\n if (insuranceValue) {\n const flexItem = {\n itemType: DEVICE_INSURANCE,\n id: deviceDetails?.insuranceName\n };\n items?.push(flexItem);\n }\n return items?.length > 0 ? items : null;\n};\n\nlet AuthData: any = typeof window !== undefined && Cookies.get('sunriseAuth');\nAuthData = AuthData && JSON.parse(AuthData);\n\nexport const fetchCountryList = async (name: string, lang: string, url: string, TTL: number) => {\n const getCountryData = getLocalStorageWithExpiry(`${name}_${lang}_countryData`);\n if (getCountryData) {\n return getCountryData;\n } else {\n try {\n const sbParams = {\n language: lang,\n type: 'B2C'\n };\n const res = await CMSStoryblokServiceV2.get(url, sbParams);\n const stories = res.data?.stories;\n if (stories && stories.length > 0)\n setLocalStoreWithExpiry(`${name}_${lang}_countryData`, stories, TTL);\n return stories;\n } catch (e: any) {\n // eslint-disable-next-line no-console\n console.error(e);\n return e;\n }\n }\n};\n\nexport const fetchOfferingDataV2 = async (\n requestBody: any,\n url: any,\n returnPromo?: boolean\n): Promise<any> => {\n try {\n localStorage.removeItem('entertainment');\n const options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n },\n params: {}\n };\n if (returnPromo) {\n options.params = {\n returnPromo: true\n };\n }\n const URL = url + APIResourceConstants.LINE_TABLEV2;\n const productDynamicData: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, requestBody, options)\n .then((res): any => {\n if (res.status == 200) {\n return res?.data;\n }\n });\n if (productDynamicData.error) {\n return productDynamicData.error;\n } else {\n const response: any[] = [];\n productDynamicData?.forEach((data: any) => {\n response[data.id] = data;\n });\n return response;\n }\n } catch (error: any) {\n if (error?.response?.data?.code || error?.response?.status === 504) {\n errorTrackingDataLayer(error?.response);\n }\n // eslint-disable-next-line no-console\n console.log('error--->', error);\n }\n};\n\nexport const createCartV2 = async (\n productData: any,\n radioValue: string,\n defaultPromo: string,\n cartUrl: string,\n productType: string,\n chooseGift?: any,\n enabledP2P?: any,\n P2PData?: any,\n isQoqaFlow?: boolean,\n qVoucher: any = '',\n deviceDetails?: any,\n tvOptions?: any,\n discountRef?: string,\n discountVersion?: string,\n // Shogun/rewards (loyalty) flow: when the user redeems loyalty points we must\n // attach a `pointsBurnt` note at the item level — the RATEPLAN item for\n // MOBILE and the internet item for FIXNET — so the backend can apply the\n // burn. See StaticProduct.tsx (isShogunFlow branch).\n rewardsInfo?: { pointsBurnt?: string | number; rewardOfferId?: string | number; gloxTokenId?: string | null }\n): Promise<any> => {\n let cartData: any = {};\n /**WIN FLows*/\n \n // Get OTT data from session storage\n const ottCartData = getSessionStorage(ONE_ECOMMERCE_OTT);\n \n if (productType === FIXNET) {\n let mobGiftId = '';\n let mandatoryGift = '';\n const getCoorelationIdFromCookie = Cookies.get('one-commerce-linecheckcorrelationid') ?? '';\n const lineCheckData = getAccessDataFromLineCheck(productData?.[0]?.id);\n cartData = {\n relatedParty: [\n {\n id: 'anonymous',\n segment: 'RESIDENTIAL'\n }\n ],\n cartItem: [\n {\n itemType: 'HOME',\n promotionId: defaultPromo,\n items: [],\n note: [\n {\n author: 'linecheckCorrelationId',\n text: getCoorelationIdFromCookie\n }\n ]\n }\n ]\n };\n /**for 4P bundles*/\n const mobileItem: any = {\n itemType: 'MOBILE',\n promotionId: defaultPromo,\n items: []\n };\n /**Check if bundle or Internet and add it to cart request*/\n if (productData[0]?.isBundle) {\n productData[0]?.bundledOffers?.map((item: any) => {\n if (item?.promotionInfo?.[0]?.id) {\n const giftId =\n item?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.length == 1\n ? item?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.[0]\n : '';\n if (item?.productType?.toLowerCase() === 'mobile') {\n mobileItem['promotionId'] = item?.promotionInfo?.[0]?.id;\n mobGiftId = giftId;\n } else {\n cartData['cartItem'][0]['promotionId'] = item?.promotionInfo?.[0]?.id;\n mandatoryGift = giftId;\n }\n }\n if (item?.productType?.toLowerCase() == 'tv' && radioValue) {\n cartData.cartItem[0].items.push({ itemType: item?.productType, id: radioValue });\n } else if (item?.productType?.toLowerCase() === 'mobile') {\n mobileItem.items.push({ itemType: 'RATEPLAN', id: item?.id });\n } else cartData.cartItem[0].items.push({ itemType: item?.productType, id: item?.id });\n });\n mandatoryGift && cartData.cartItem[0].items?.push({ itemType: 'GIFT', id: mandatoryGift });\n mobGiftId && mobileItem.items.push({ itemType: 'GIFT', id: mobGiftId });\n if (mobileItem?.items?.length > 0) {\n cartData?.cartItem?.push(mobileItem);\n }\n\n //If product has tv options\n if (tvOptions?.length > 0) {\n tvOptions?.forEach((option: any) => {\n cartData.cartItem[0].items.push({ itemType: TV_SERVICE_OPTION, id: option?.id });\n });\n }\n } else {\n /**Add standlone product such as internet to cart request*/\n const mandatoryGift =\n productData?.[0]?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.length == 1\n ? productData?.[0]?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.[0]\n : '';\n cartData.cartItem[0].items.push({\n itemType: productData?.[0]?.productType,\n id: productData?.[0]?.id\n });\n mandatoryGift && cartData.cartItem[0].items?.push({ itemType: 'GIFT', id: mandatoryGift });\n }\n if (chooseGift && chooseGift?.length > 0) {\n chooseGift?.map((giftItem: any) => {\n giftItem?.parentPoType === 'HOME'\n ? cartData?.cartItem?.[0]?.items?.push({ itemType: 'GIFT', id: giftItem?.tuaProdId })\n : mobileItem.items?.push({ itemType: 'GIFT', id: giftItem?.tuaProdId });\n });\n }\n /**\n * changes added for new internet activation section\n */\n if (lineCheckData?.accessType) {\n cartData?.cartItem?.[0]?.note?.push({\n author: 'lineCheckaccessType',\n text: lineCheckData?.accessType\n });\n }\n if (lineCheckData?.timeSlot) {\n cartData?.cartItem?.[0]?.note?.push({\n author: 'lineCheckEarliestActivationDate',\n text: lineCheckData?.timeSlot?.start\n });\n }\n /**\n * Adding line check address while cart creation\n * As part of DEX abandon basket use case\n */\n try {\n const address: any = getCookies('chAddressJson');\n const contactMedium: any = [\n {\n characteristic: {\n installationAddress: true,\n country: 'CH',\n city: address?.selectedAdd?.city,\n street1: address?.selectedAdd?.street,\n postCode: address?.selectedAdd?.postCode,\n street2: address?.selectedAdd?.houseNumber\n }\n }\n ];\n cartData.contactMedium = contactMedium;\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.log('issue at line check address addition in create cart ==>', error);\n }\n } else if (productType === MOBILE) {\n /**Mobile*/\n if (enabledP2P) {\n cartData = {\n relatedParty: [\n {\n segment: 'RESIDENTIAL'\n }\n ],\n cartItem: [\n {\n itemType: 'MOBILE',\n promotionId: defaultPromo,\n items: [\n {\n itemType: 'RATEPLAN',\n id: productData?.[0]?.id ? productData?.[0]?.id : productData,\n subscribedInfo: {\n installedPlan: P2PSUBSCRIBEDPLAN,\n id: P2PData\n }\n }\n ],\n processType: {\n id: PRE_TO_POST\n }\n }\n ]\n };\n } else {\n cartData = {\n relatedParty: [\n {\n segment: 'RESIDENTIAL'\n }\n ],\n cartItem: [\n {\n itemType: 'MOBILE',\n promotionId: defaultPromo,\n items: [\n {\n itemType: 'RATEPLAN',\n id: productData?.[0]?.id ? productData?.[0]?.id : productData,\n clientDiscountInfo: discountRef\n ? [\n {\n discountRef: discountRef,\n discountType: 'DISCOUNT'\n }\n ]\n : undefined\n }\n ]\n }\n ]\n };\n }\n const mandatoryGift =\n productData?.[0]?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.length == 1\n ? productData?.[0]?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.[0]\n : '';\n mandatoryGift && cartData.cartItem[0].items?.push({ itemType: 'GIFT', id: mandatoryGift });\n if (chooseGift && chooseGift?.length > 0) {\n chooseGift?.map((giftItem: any) => {\n giftItem?.parentPoType !== 'HOME' &&\n cartData?.cartItem?.[0]?.items?.push({ itemType: 'GIFT', id: giftItem?.tuaProdId });\n });\n }\n }\n\n if (isQoqaFlow) {\n const note = [];\n note.push({\n author: VOUCHERTYPE,\n text: QOQA\n });\n if (qVoucher !== '') {\n note.push({\n author: VOUCHERCODE,\n text: qVoucher\n });\n removeLocalStorage('vctype');\n }\n cartData.cartItem[0]['note'] = note;\n } else if (discountRef && discountVersion) {\n const note = [];\n note?.push({\n author: 'offerType',\n text: 'ATL'\n });\n note?.push({\n author: 'externalPromotionName',\n text: discountRef\n });\n note?.push({\n author: 'offerVersion',\n text: discountVersion\n });\n cartData.cartItem[0]['note'] = note;\n }\n\n // Shogun / rewards (loyalty) flow — append a pointsBurnt note at the\n // item level (not the cartItem level). For MOBILE this attaches to the\n // RATEPLAN item; for Internet (FIXNET) it attaches to the internet item\n // inside the cartItem's items array. We only push the note when it has\n // a value so the backend does not receive an empty string.\n if (rewardsInfo && cartData?.cartItem?.[0]) {\n const { pointsBurnt, rewardOfferId, gloxTokenId } = rewardsInfo;\n if (gloxTokenId) {\n cartData.guid = gloxTokenId;\n }\n const rewardsNotes = [\n pointsBurnt != null && `${pointsBurnt}` !== '' && { author: 'pointsBurnt', text: `${pointsBurnt}` },\n rewardOfferId != null && `${rewardOfferId}` !== '' && { author: 'rewardOfferId', text: `${rewardOfferId}` }\n ].filter(Boolean);\n\n if (rewardsNotes.length > 0) {\n cartData?.cartItem?.forEach((ci: any) => {\n if (!Array.isArray(ci?.items)) return;\n ci.items.forEach((it: any) => {\n const itType = `${it?.itemType || ''}`.toUpperCase();\n if (itType === 'RATEPLAN' || itType === 'INTERNET') {\n it.note = [...(it.note || []), ...rewardsNotes];\n }\n });\n });\n }\n }\n\n //To add hardware item while creating cart\n if (deviceDetails) {\n const deviceCartItem = getDeviceCartItem(deviceDetails);\n deviceCartItem && cartData?.cartItem?.[0]?.items?.push(...deviceCartItem);\n }\n // Get flow parameter from URL query string if in browser\n let flow: string | null = null;\n if (typeof window !== 'undefined') {\n const params = new URLSearchParams(window.location.search);\n flow = params.get('flow');\n }\n \n // Add OTT items to cart if session storage exists and flow is 'ott'\n const shouldAddOttItems = ottCartData && flow === 'ott';\n if (shouldAddOttItems) {\n const ottItems = fetchOttItems(ottCartData);\n if (ottItems?.length > 0) {\n const groupedByTypeAndPromo: {\n [key: string]: { itemType: string; promotionId: string; items: any[] };\n } = {};\n const homeCartItem = cartData?.cartItem?.find((item: any) => item?.itemType === 'HOME');\n ottItems.forEach((ottItem: any) => {\n const itemType = ottItem?.itemType;\n \n // Only group OTT items, add others directly\n if (itemType === 'OTT') {\n const promoId = ottItem?.promotionId?.trim() || 'defaultOttBundle';\n const groupKey = `${'OTT'}_${promoId}`;\n\n if (!groupedByTypeAndPromo[groupKey]) {\n groupedByTypeAndPromo[groupKey] = {\n itemType: itemType,\n promotionId: promoId,\n items: []\n };\n }\n groupedByTypeAndPromo[groupKey].items.push(...(ottItem?.items || []));\n } else {\n // Add non-OTT items to HOME cartItem's items array\n \n if (homeCartItem && homeCartItem.items && ottItem?.items) {\n homeCartItem.items.push(...ottItem.items);\n }\n }\n });\n\n // Add each grouped OTT item as a separate cart item list\n Object.keys(groupedByTypeAndPromo).forEach((groupKey) => {\n const group = groupedByTypeAndPromo[groupKey];\n cartData?.cartItem.push({\n itemType: group.itemType,\n promotionId: group.promotionId,\n items: group.items\n });\n });\n }\n }\n\n const options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n\n const URL = cartUrl + APIResourceConstants.CREATE_CARTV3;\n if (Object.keys(cartData)?.length > 0) {\n const createCartV2Resp: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, cartData, options)\n .then((res: any) => {\n removeLocalStorage('isB2BCustomer');\n if (res.status == 200) {\n return res?.data;\n }\n })\n .catch((error) => {\n if (error?.response?.data?.code || error?.response?.status === 504) {\n errorTrackingDataLayer(error?.response);\n }\n });\n if (createCartV2Resp.error) {\n throw createCartV2Resp.error;\n } else {\n return createCartV2Resp;\n }\n }\n};\n\nexport const fetchLinetableContent = async (slugurl: string, params: any): Promise<any> => {\n try {\n const resp = await CMSStoryblokServiceV2.get(slugurl, params)\n .then((response: any) => {\n const contentTable = response?.data?.story?.content?.body;\n // return comp;\n for (const comp of contentTable) {\n if (\n comp.component == 'productTableV2' ||\n comp.component === 'productTableWithOutLC' ||\n comp.component === 'prodConfigContainer'\n ) {\n return comp;\n } else if (comp.component == 'roamingProductTable') {\n return comp?.productTable?.[0];\n }\n }\n })\n .catch((err: any) => {\n throw err;\n });\n return resp;\n } catch (error) {\n return error;\n }\n};\n\nexport const getStaticContent = (language: any = 'en', endPoints: any) => {\n try {\n return CMSStoryblokServiceV2.get(endPoints, {\n dimension: language,\n per_page: 1000,\n type: 'B2C'\n })\n .then((res: any) => {\n const response: any = {};\n (res?.data?.datasource_entries || []).map((entry: any) => {\n response[entry.name] =\n entry.dimension_value != null ? entry.dimension_value : entry.value;\n });\n try {\n localStorage.removeItem('sbstaticcontent');\n localStorage.setItem('sbstaticcontent', JSON.stringify(response));\n } catch {\n //\n }\n return response;\n })\n .catch((err) => {\n return err;\n });\n } catch {\n throw Error('Promise failed');\n }\n};\n\nexport const fetchOfferingDataLineTableV2 = async (\n params: any,\n uniqueId: any,\n endpoint: any,\n existingCustomer?: boolean,\n subscriptionType?: string,\n enableReturnPromo?: boolean,\n P2PEnabled?: boolean,\n pegaIntegration?: boolean,\n apiCache?: boolean,\n deviceUltimateBundle?:boolean,\n): Promise<any> => {\n localStorage.removeItem('entertainment');\n let options: any;\n options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n if (enableReturnPromo) {\n options.params = {\n returnPromo: true\n };\n }\n if (P2PEnabled) {\n options.params = {\n journey: 'P2P'\n };\n }\n if(deviceUltimateBundle){\n options.params = {\n ...options.params,\n journey: 'FPB',\n }\n }\n\n let URL = endpoint + APIResourceConstants.LINE_TABLEV2;\n if (pegaIntegration && localStorage.getItem('prospectId')) {\n options.headers['x-sunrise-prospect-id'] = localStorage.getItem('prospectId');\n URL = endpoint + APIResourceConstants.LINE_TABLEV3;\n }\n const queryParams = new URLSearchParams();\n if (subscriptionType) {\n queryParams.set('subscriptionType', subscriptionType);\n }\n // US_31295\n if (apiCache && !existingCustomer) {\n queryParams.set('pageKey', uniqueId);\n }\n const queryString = queryParams.toString();\n const finalUrl = queryString ? `${URL}${URL.includes('?') ? '&' : '?'}${queryString}` : URL;\n const productDynamicData: any = await ApiServiceV2.getApiServiceInstance()\n .post(finalUrl, params, options)\n .then((res): any => {\n if (res.status == 200) {\n return res?.data;\n }\n })\n .catch((err) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n });\n if (productDynamicData.error) {\n return productDynamicData.error;\n } else {\n return { [uniqueId]: productDynamicData };\n }\n};\n\n/**\n * Shogun xSell (rewards/loyalty) flow: fetches offer data using `gloxtoken`\n * as a query parameter. The offer endpoint expects a POST request, so we\n * send an empty JSON body `{}` — the backend resolves eligible products\n * from the token only.\n */\nexport const fetchShogunOfferData = async (\n gloxTokenId: string,\n uniqueId: string,\n endpoint: string\n): Promise<any> => {\n const options: any = {\n params: { gloxTokenId: gloxTokenId },\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n const URL = endpoint + APIResourceConstants.LINE_TABLEV2;\n const productDynamicData: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, [], options)\n .then((res: any): any => {\n if (res.status === 200) {\n return res?.data;\n }\n })\n .catch((err: any) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n });\n if (!productDynamicData || productDynamicData.error) {\n throw new Error('Shogun offer API failed');\n }\n return { [uniqueId]: productDynamicData };\n};\n\nexport const fetchSubscriptionData = async (category: any, endpoint: any): Promise<any> => {\n let options: any;\n options = {\n params: {},\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n options.params = {\n category: category\n };\n const URL = endpoint;\n const subscriptionData: any = await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res): any => {\n if (res.status == 200) {\n return res?.data;\n } else {\n return res?.status;\n }\n })\n .catch((err: any) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n });\n if (subscriptionData?.error) {\n return subscriptionData?.error;\n } else {\n return { subscriptionData };\n }\n};\n\nexport const getVocherPromotion = async (productID: string, voucher: string) => {\n try {\n const options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n },\n params: {\n offerIds: productID,\n voucherCode: voucher\n }\n };\n\n const URL =\n LineTableBasicPropConfig?.getInstance()?.getBaseUrl() +\n `${APIResourceConstants.VOUCHER_PROMOTIONS}`;\n await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res): any => {\n if (res.status == 200) {\n return res?.data;\n }\n });\n } catch (error) {}\n};\n\nexport const validateP2P = async (msisdn: any, endpoint: any): Promise<any> => {\n let options: any;\n options = {\n params: {},\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n options.params = {\n msisdn: msisdn\n };\n const URL = endpoint;\n return await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res): any => {\n if (res?.data?.preToPostConversionStatus == 'OK') {\n return true;\n } else {\n return false;\n }\n })\n .catch((err) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n console.log('err', err);\n return false;\n });\n};\n\nexport const getDeviceDetails = async (deviceID: any, endpoint: any): Promise<any> => {\n try {\n let options: any;\n options = {\n params: {},\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n const URL = endpoint + APIResourceConstants.HARDWARES + `baseProduct__${deviceID}`;\n const deviceData: any = await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res: any) => {\n if (res?.status === 200 && Object.keys(res?.data)?.length > 0) {\n return res?.data;\n } else {\n return null;\n }\n });\n return deviceData;\n } catch (err) {\n // eslint-disable-next-line no-console\n console.log('err', err);\n return null;\n }\n};\n\nexport const getDeviceModelsList = async (brandId: any, endpoint: any): Promise<any> => {\n try {\n let options: any;\n options = {\n params: {},\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n const URL = endpoint + APIResourceConstants.HARDWARE_DEVICES + `manufacturerName__${brandId}`;\n const deviceData: any = await ApiServiceV2.getApiServiceInstance()\n .get(URL, options)\n .then((res: any) => {\n if (res?.status === 200 && res?.data?.hardwares?.length > 0) {\n return res?.data;\n } else {\n return null;\n }\n });\n return deviceData;\n } catch (err) {\n // eslint-disable-next-line no-console\n console.log('err', err);\n return null;\n }\n};\n\nexport const trackPegaEvents = async (\n endpoint: any,\n payload = {},\n prospectId: string\n): Promise<any> => {\n let options: any;\n options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': apiResConstants.X_SUN_CHAL,\n 'x-sunrise-prospect-id': prospectId\n }\n };\n\n let URL = endpoint + APIResourceConstants?.CUSTOMER_EVENTS;\n const productDynamicData: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, payload, options)\n .then((res): any => {\n if (res.status == 200) {\n // eslint-disable-next-line no-console\n console.log('trackPegaEvents result.data', res.data);\n return res?.data;\n }\n })\n .catch((err) => {\n if (err?.response?.data?.code || err?.response?.status === 504) {\n errorTrackingDataLayer(err?.response);\n }\n });\n};\n\nexport const createCartWinV2 = async (\n productData: any,\n radioValue: string,\n defaultPromo: string,\n cartUrl: string,\n chooseGift:any\n): Promise<any> => {\n let cartData: any = {};\n /**WIN FLows*/\n let mobGiftId = '';\n let mandatoryGift = '';\n const getCoorelationIdFromCookie = Cookies.get('one-commerce-linecheckcorrelationid') ?? '';\n const lineCheckData = getAccessDataFromLineCheck(productData?.[0]?.id);\n cartData = {\n relatedParty: [\n {\n id: 'anonymous',\n segment: 'RESIDENTIAL'\n }\n ],\n cartItem: [\n {\n itemType: 'HOME',\n promotionId: defaultPromo,\n items: [],\n note: [\n {\n author: 'linecheckCorrelationId',\n text: getCoorelationIdFromCookie\n }\n ]\n }\n ]\n };\n /**for 4P bundles*/\n const mobileItem: any = {\n itemType: 'MOBILE',\n promotionId: defaultPromo,\n items: []\n };\n /**Check if bundle or Internet and add it to cart request*/\n if (productData?.[0]?.isBundle) {\n productData?.[0]?.bundledOffers?.map((item: any) => {\n if (item?.promotionInfo?.[0]?.id) {\n const giftId =\n item?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.length == 1\n ? item?.promotionInfo?.[0]?.hardwareGift?.[0]?.ids?.[0]\n : '';\n if (item?.productType?.toLowerCase() === 'mobile') {\n mobileItem['promotionId'] = item?.promotionInfo?.[0]?.id;\n mobGiftId = giftId;\n } else {\n cartData['cartItem'][0]['promotionId'] = item?.promotionInfo?.[0]?.id;\n mandatoryGift = giftId;\n }\n }\n if (item?.productType?.toLowerCase() == 'tv' && radioValue) {\n cartData.cartItem[0].items.push({ itemType: item?.productType, id: radioValue });\n } else if (item?.productType?.toLowerCase() === 'mobile') {\n mobileItem.items.push({ itemType: 'RATEPLAN', id: item?.id });\n } else cartData.cartItem[0].items.push({ itemType: item?.productType, id: item?.id });\n });\n mandatoryGift && cartData?.cartItem?.[0].items?.push({ itemType: 'GIFT', id: mandatoryGift });\n mobGiftId && mobileItem?.items?.push({ itemType: 'GIFT', id: mobGiftId });\n\n if (mobileItem?.items?.length > 0) {\n cartData?.cartItem?.push(mobileItem);\n }\n if (chooseGift && chooseGift?.length > 0) {\n chooseGift?.map((giftItem: any) => {\n cartData?.cartItem?.[0]?.items?.push({ itemType: 'GIFT', id: giftItem?.tuaProdId })\n })\n }\n } else {\n /**Add standlone product such as internet to cart request*/\n cartData.cartItem[0].items.push({\n itemType: productData?.[0]?.productType,\n id: productData?.[0]?.id\n });\n }\n /**\n * changes added for new internet activation section\n */\n if (lineCheckData?.accessType) {\n cartData?.cartItem?.[0]?.note?.push({\n author: 'lineCheckaccessType',\n text: lineCheckData?.accessType,\n });\n }\n if (lineCheckData?.timeSlot) {\n cartData?.cartItem?.[0]?.note?.push({\n author: 'lineCheckEarliestActivationDate',\n text: lineCheckData?.timeSlot?.start,\n });\n }\n /**\n * Adding line check address while cart creation\n * As part of DEX abandon basket use case\n */\n try {\n const address: any = getCookies('chAddressJson');\n const contactMedium: any = [\n {\n characteristic: {\n installationAddress: true,\n country: 'CH',\n city: address?.selectedAdd?.city,\n street1: address?.selectedAdd?.street,\n postCode: address?.selectedAdd?.postCode,\n street2: address?.selectedAdd?.houseNumber\n }\n }\n ];\n cartData.contactMedium = contactMedium;\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.log('issue at line check address addition in create cart ==>', error);\n }\n\n const options = {\n headers: {\n 'x-correlation-id': generateUID(),\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL\n }\n };\n const endPoint = LineTableBasicPropConfig?.getInstance()?.getBaseUrl();\n\n const URL = `${endPoint}${API_BASE_BASEPOINT.CART_MGMT}/${APIResourceConstants.CREATE_CARTV2}`;\n if (Object.keys(cartData)?.length > 0) {\n const createCartV2Resp: any = await ApiServiceV2.getApiServiceInstance()\n .post(URL, cartData, options)\n .then((res: any) => {\n if (res.status == 200) {\n return res?.data;\n }\n });\n if (createCartV2Resp.error) {\n throw createCartV2Resp.error;\n } else {\n return createCartV2Resp;\n }\n }\n}\n\nexport const fetchOttServiceOptions = async (): Promise<any> => {\n const endPoint = LineTableBasicPropConfig?.getInstance()?.getBaseUrl();\n const url = `${endPoint}${APIResourceConstants.TV_SERVICE_OPTIONS_V2}`;\n const options = {\n params: {},\n headers: {\n 'x-sunrise-channel': APIResourceConstants.X_SUN_CHAL,\n 'x-correlation-id': generateUID()\n }\n };\n try {\n const optionsData: any = await ApiServiceV2.getApiServiceInstance()\n .get(url, options)\n .then((res) => {\n return res?.data?.length > 0 ? res?.data : [];\n });\n return optionsData;\n } catch (error) {\n // eslint-disable-next-line no-console\n console.log(error);\n }\n};\n"],"names":["AuthData","undefined","window","Cookies","get","JSON","parse","fetchCountryList","name","lang","url","TTL","__awaiter","getCountryData","getLocalStorageWithExpiry","sbParams","language","type","stories","_a","CMSStoryblokServiceV2","data","length","setLocalStoreWithExpiry","e","console","error","fetchOfferingDataV2","requestBody","returnPromo","localStorage","removeItem","options","headers","generateUID","APIResourceConstants","X_SUN_CHAL","params","URL","LINE_TABLEV2","productDynamicData","ApiServiceV2","getApiServiceInstance","post","then","res","status","response","forEach","id","_b","code","_c","errorTrackingDataLayer","log","createCartV2","productData_1","radioValue_1","defaultPromo_1","cartUrl_1","productType_1","chooseGift_1","enabledP2P_1","P2PData_1","isQoqaFlow_1","args_1","productData","radioValue","defaultPromo","cartUrl","productType","chooseGift","enabledP2P","P2PData","isQoqaFlow","qVoucher","deviceDetails","tvOptions","discountRef","discountVersion","rewardsInfo","cartData","ottCartData","getSessionStorage","ONE_ECOMMERCE_OTT","FIXNET","mobGiftId","mandatoryGift","getCoorelationIdFromCookie","lineCheckData","getAccessDataFromLineCheck","relatedParty","segment","cartItem","itemType","promotionId","items","note","author","text","mobileItem","isBundle","_e","_d","bundledOffers","map","item","promotionInfo","giftId","_g","_f","hardwareGift","ids","_m","_l","_k","_j","_h","_o","toLowerCase","_q","_p","_s","_r","_t","push","_u","option","TV_SERVICE_OPTION","_v","_w","_x","_y","giftItem","parentPoType","tuaProdId","accessType","_1","_z","_0","timeSlot","_4","_2","_3","_5","start","address","getCookies","contactMedium","characteristic","installationAddress","country","city","_6","selectedAdd","street1","_7","street","postCode","_8","street2","_9","houseNumber","MOBILE","_10","_11","subscribedInfo","installedPlan","P2PSUBSCRIBEDPLAN","processType","PRE_TO_POST","_12","_13","clientDiscountInfo","discountType","_19","_17","_16","_15","_14","_18","_25","_24","_23","_22","_21","_20","_26","VOUCHERTYPE","QOQA","VOUCHERCODE","removeLocalStorage","_27","pointsBurnt","rewardOfferId","gloxTokenId","guid","rewardsNotes","filter","Boolean","_28","ci","Array","isArray","it","itType","toUpperCase","deviceCartItem","contractDuration","selectedVarientDetails","hardwarePrices","smartUpgradeInstallments","duration","upFrontValue","upFrontPayment","value","insuranceValue","insurance","deviceItem","HARDWARE","contractTerm","getDeviceNotes","flexItem","DEVICE_INSURANCE","insuranceName","getDeviceCartItem","_30","_29","_31","flow","URLSearchParams","location","search","ottItems","fetchOttItems","groupedByTypeAndPromo","homeCartItem","_32","find","ottItem","promoId","trim","groupKey","Object","keys","group","CREATE_CARTV3","_33","createCartV2Resp","catch","fetchLinetableContent","slugurl","contentTable","story","content","body","comp","component","productTable","err","getStaticContent","endPoints","dimension","per_page","datasource_entries","entry","dimension_value","setItem","stringify","Error","fetchOfferingDataLineTableV2","uniqueId","endpoint","existingCustomer","subscriptionType","enableReturnPromo","P2PEnabled","pegaIntegration","apiCache","deviceUltimateBundle","journey","assign","getItem","LINE_TABLEV3","queryParams","set","queryString","toString","finalUrl","includes","fetchShogunOfferData","fetchSubscriptionData","category","subscriptionData","getVocherPromotion","productID","voucher","offerIds","voucherCode","LineTableBasicPropConfig","getInstance","getBaseUrl","VOUCHER_PROMOTIONS","validateP2P","msisdn","preToPostConversionStatus","getDeviceDetails","deviceID","HARDWARES","getDeviceModelsList","brandId","HARDWARE_DEVICES","hardwares","trackPegaEvents","endpoint_1","payload","prospectId","apiResConstants","CUSTOMER_EVENTS","createCartWinV2","API_BASE_BASEPOINT","CART_MGMT","CREATE_CARTV2","fetchOttServiceOptions","TV_SERVICE_OPTIONS_V2","optionsData"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sunrise-upc/mobile-prod-card",
3
- "version": "12.1.4",
3
+ "version": "12.1.6",
4
4
  "description": "Starter project to create reusable functional component",
5
5
  "type": "module",
6
6
  "main": "dist/esm/index.js",
@@ -81,6 +81,6 @@
81
81
  "react-select": "^5.10.2",
82
82
  "storyblok-rich-text-react-renderer": "^3.0.1",
83
83
  "uuid": "^13.0.0",
84
- "@sunrise-upc/sales-static-components": "^4.1.0"
84
+ "@sunrise-upc/sales-static-components": "^4.1.5"
85
85
  }
86
86
  }