1"use strict";(self.webpackChunkyumzy=self.webpackChunkyumzy||[]).push([[5488],{55488:function(e,t,n){n.r(t),n.d(t,{CartMobileModule:function(){return M},playerFactory:function(){return R}});var i=n(97582),a=n(37716),s=n(38583),o=n(67957),r=n(3679),l=n(8032),c=n(88550),d=n(82202),p=n(63333),h=n(21633),m=n(62902),u=n(56371),v=n(73903),y=n(55827),b=n(53787),g=n(57087),f=n(90787),x=n(94490),I=n(76461),w=n(99681),k=n(42549),C=n(61045),O=n(87602),S=n(24565),T=n(93661),D=n(92919),A=n(14104),P=n(37260);let L=class{constructor(e,t,n,i,a,s,o,r,l,c,d,h,u,v,y,b,g){var f;this.router=e,this.cartService=t,this.razorPayService=n,this.route=i,this.cd=a,this.toast=s,this.loaderService=o,this.activateRoute=r,this.analyticsService=l,this.navCtrl=c,this.modalService=d,this.renderer=h,this.cacheService=u,this.firebaseService=v,this.popoverController=y,this.allInOneSDK=b,this.paymentService=g,this.titleTxt="On my plate",this.navUrl="/home",this.yourPlateItemsList=[],this.spInstructions="",this.emptyPlate="",this.btmViewObj={btnTxt:"Pay \u20b90"},this.errorIdsList=[],this.outletId="",this.couponsList=[],this.taxAndChargesAmt=0,this.errorCodesEnum=m.j,this.formattedText="",this.errorCode=0,this.couponDiscount=0,this.paymentList=[],this.isWalletUsed=!1,this.navigateTo="",this.navParams={},this.deliveryType="",this.deliveryAddress={},this.paymentBtn={},this.displayToolTip=!1,this.displayTaxTip=!1,this.statusBarHeight=p.YG.statusBarHeight,this.skeletonLoading=!0,this.errorMessage="",this.selectedDate="",p.YG.bottomNavMobileIndSub$.next(2),p.YG.spInstructionsSub$.subscribe(e=>this.spInstructions=e),this.cartService.init(this.cd,this.preCheckoutPlate.bind(this),this.onSetPlateView.bind(this),this.emptyPlateView.bind(this)),this.activateRoute.queryParams.subscribe(e=>{var t,n;if(console.log("here is data",e),Object.keys(e).length>0){this.params=e;const i=this.backButtonHandleFun(e);this.cacheService.setqueryParams(i),"address"===e.from&&(this.navStateData=null===(n=null===(t=this.router.getCurrentNavigation().extras)||void 0===t?void 0:t.state)||void 0===n?void 0:n.data,this.navStateData&&this.cartService.updateLocation(this.navStateData)),"complete"==e.status?this.preCheckoutPlate(""):this.preCheckoutPlate("MODAL")}else this.preCheckoutPlate("MODAL")});const x=p.YG.yourPlateItems;x&&x.outlets.length>0&&(x.deliveryInfo?this.deliveryType=(null===(f=x.deliveryInfo)||void 0===f?void 0:f.selfPickup)?"self-pickup":"delivery":p.YG.deliveryType?this.deliveryType=p.YG.deliveryType:this.deliveryType="delivery"),this.getYumzyBalance()}backButtonHandleFun(e){let t={};return this.navigateTo=e.redirectUrl,"/explore"===e.redirectUrl&&(t={queryParams:{redirectUrl:"/home"}}),e.hasOwnProperty("promoId")&&e.hasOwnProperty("navigateFrom")&&"/rest-details"===e.navigateFrom?(this.navigateFrom=e.redirectUrl,t={queryParams:{outletId:e.outletId,promoId:e.promoId,redirectUrl:"/home"}}):e.hasOwnProperty("promoId")&&e.hasOwnProperty("navigateFrom")&&"/see-all-dish"===e.navigateFrom?(this.navigateFrom="/see-all-dish",t={queryParams:{outletId:e.outletId,promoId:e.promoId,title:null==e?void 0:e.title,redirectUrl:"/see-all-dish"}}):e.hasOwnProperty("promoId")&&(this.navigateFrom=e.redirectUrl,t={queryParams:{promoId:e.promoId,title:e.title,redirectUrl:"/home"}},e.hasOwnProperty("navigateFrom")&&"/see-all-restaurants"===e.navigateFrom&&(this.navigateFrom="/see-all-restaurants",t.queryParams.outletId=e.outletId,t.queryParams.redirectUrl="/see-all-restaurants")),"APPLY_COUPON"===e.type&&!e.hasOwnProperty("promoId")&&(t={queryParams:{outletId:e.outletId,redirectUrl:"/home"}}),e.hasOwnProperty("navigateFrom")&&!e.hasOwnProperty("promoId")&&(this.navigateFrom=e.navigateFrom,"/order-history"===e.navigateFrom?t={queryParams:{outletId:e.outletId,redirectUrl:"/order-history"}}:"/favorites"===e.navigateFrom?t={queryParams:{outletId:e.outletId,redirectUrl:"/favorites"}}:"/explore"===e.navigateFrom?(this.navigateFrom="/explore",t={queryParams:{outletId:e.outletId,redirectUrl:"/explore"}}):"/rest-details"===e.navigateFrom&&(t={queryParams:{outletId:e.outletId,promoId:e.promoId,redirectUrl:"/home"}})),t}onViewMenu(e){const t={outletId:e,redirectUrl:u.Pf.plate};this.navigateFrom?"/favorites"===this.navigateFrom?t.redirectUrl="/favorites":"/order-history"===this.navigateFrom?t.redirectUrl="/order-history":"/see-all-restaurants"===this.navigateFrom?t.redirectUrl="/see-all-restaurants":"/see-all-dish"===this.navigateFrom?t.navigateFrom="/see-all-dish":"/explore"===this.navigateFrom?t.redirectUrl="/explore":"/rest-details"===this.navigateFrom&&(t.redirectUrl="/home"):this.params&&"/explore"===this.params.redirectUrl?t.navigateFrom="/explore":this.params&&"/rest-details"===this.params.redirectUrl?t.redirectUrl="/home":t.navigateFrom="/cart",this.params&&this.params.hasOwnProperty("promoId")&&(t.promoId=this.params.promoId,t.title=this.params.title),this.router.navigate(["rest-details"],{queryParams:t})}onToggleState(e){this.preCheckoutPlate(e)}onTimeSlotAdded(e){this.preCheckoutPlate(e)}handleChildData(e){this.selectedDate=e}preCheckoutPlate(e){return(0,i.mG)(this,void 0,void 0,function*(){this.cartService.preCheckout().then(t=>(0,i.mG)(this,void 0,void 0,function*(){this.preCheckoutData=t.body.data,console.log(this.preCheckoutData),this.setCartView(this.preCheckoutData,"SUCCESS");const n=this.params;this.skeletonLoading=!1;const i=null==n?void 0:n.type;this.codAmount=this.preCheckoutData.cartDoc.payments.filter(e=>"cod"===e.paidVia.toLowerCase())[0].amount,"APPLY_COUPON"===i&&"MODAL"===e&&(this.preCheckoutData.cartDoc.coupons.length>0&&(this.couponDiscount=this.preCheckoutData.cartDoc.coupons[0],this.analyticsService.cleverTapEvent(h.N.COUPON_APPLIED,(0,b.ZU)(this.billingObj,this.preCheckoutData))),yield this.cartService.openCouponConfirmationModal(this.couponDiscount),console.log("called",this.couponDiscount))}))})}getYumzyBalance(){this.cartService.getYumzyBal().then(e=>{this.balanceObj=e.body.data,console.log(this.balanceObj),this.yumzyBal=this.balanceObj.availableBalance})}setCartView(e,t){return(0,i.mG)(this,void 0,void 0,function*(){const n=e.error;this.formattedText=e.formattedText,this.errorCode=e.code,console.log("errorCode",this.errorCode),this.errorCode===m.j.CART_IS_EMPTY?(console.log(n),yield this.emptyPlateView(!1)):(this.emptyPlate=u.lH.NO,this.billingObj=e.cartDoc.billing,this.couponsList=e.cartDoc.coupons,this.deliveryInfo=e.cartDoc.deliveryInfo,this.walletTexts=e.walletTexts,this.outletsListObj=e.cartDoc.outlets[0],this.outletId=this.outletsListObj.outletId,this.yourPlateItemsList=this.outletsListObj.items,this.paymentObj=e.cartDoc.payments,this.yourPlateItemsList.map(e=>e.available=!0),this.getItemPrice(this.yourPlateItemsList),yield this.checkErrorValidation(e,n,t),this.setPaymentType(this.errorCode,e.cartDoc),p.YG.yourPlateItemsSub$.next(JSON.parse(JSON.stringify(e.cartDoc))),this.taxAndChargesTotal())})}setPaymentType(e,t){t.payments&&(this.paymentList=t.payments,this.usedBalObj=this.paymentList.find(e=>"wallet"===e.paidVia),this.isWalletUsed=this.paymentList.some(e=>"wallet"===e.paidVia),this.usedWalletTotalAmtObj=this.paymentList.find(e=>"paymentGateway"===e.paidVia),p.YG.userInfoData.isTemporary?(this.btmViewObj=u.U2.LOGIN,this.paymentBtn=u.U2.LOGIN):e||(console.warn("paymentObject",this.paymentObj.find(e=>"paymentgateway"===e.paidVia.toLowerCase()).amount),p.YG.currentAddressObj&&p.YG.currentAddressObj.addressId&&p.YG.userInfoData.address.length>0?this.paymentBtn.btnTxt=this.isWalletUsed?"Pay \u20b9"+this.usedWalletTotalAmtObj.amount.toFixed(2):"Pay \u20b9"+this.paymentObj.find(e=>"paymentgateway"===e.paidVia.toLowerCase()).amount.toFixed(2):p.YG.userInfoData.address.length>0?(this.btmViewObj=u.U2.SELECT_ADDRESS,this.paymentBtn=u.U2.SELECT_ADDRESS,console.log("paymentbtn",this.paymentBtn,"btmViewObj",this.btmViewObj)):(this.btmViewObj=u.U2.ADD_ADDRESS,console.log("paymentbtn",this.paymentBtn,"btmViewObj",this.btmViewObj),this.paymentBtn=u.U2.ADD_ADDRESS)))}taxAndChargesTotal(){var e;let t=0,n=0;return console.log("called",this.billingObj),this.billingObj.charges.forEac
1h(e=>{"deliveryCharge"!==e.name&&e.value>0&&(n+=Number(e.value),console.log("total chrges",n))}),t=Number(this.billingObj.taxes[0].value)+n,this.deliveryInfo&&this.deliveryInfo.deliveryCharge>0&&(this.taxAndChargesAmt-=null===(e=this.deliveryInfo)||void 0===e?void 0:e.deliveryCharge),t}emptyPlateView(e){e&&(console.log(this.clearCartCleverTapObj()),this.analyticsService.cleverTapEvent(h.N.CART_CLEARED,this.clearCartCleverTapObj())),this.emptyPlate=u.lH.YES,p.YG.yourPlateItemsSub$.next(JSON.parse(JSON.stringify(null))),p.YG.plateItemCountSub$.next({itemCount:0,itemTotal:0,outletName:"",outletLogo:"",outletId:""}),p.YG.spInstructionsSub$.next("")}getVegNonVegImg(e,t){return(0,y.kH)(e,t)}isCustomizeItem(e){return!!(e.addons.length>0||e.variant)}onInputSpl(){console.log(this.spInstructions),p.YG.spInstructionsSub$.next(this.spInstructions)}checkErrorValidation(e,t,n){var i;let a=e.code;const s={app_name:"yumzy-ios",timestamp:Number(Date.now()),client:"iOS",cartId:p.YG.cartId,errorCode:a,errorMsg:t,outletId:this.outletsListObj.outletId,outletName:this.outletsListObj.outletName,userId:p.YG.userId?p.YG.userId:"",userCity:p.YG.currentAddressObj?p.YG.currentAddressObj.city:"",userLocality:p.YG.currentAddressObj?p.YG.currentAddressObj.locality:"",coordinates:p.YG.currentAddressObj?JSON.stringify(p.YG.currentAddressObj.longLat.coordinates):"",eventId:this.orderId,eventName:"errorInApp"};if(S.Z.errorCheckout(s),this.firebaseService.logCustomEvent("error_checkout",s),!p.YG.isNative){const e=Object.assign(Object.assign({},s),{source:"error_checkout",user_mobile_number:(null===(i=p.YG.userInfoData)||void 0===i?void 0:i.mobile)||""});(0,v.L9)("error_checkout",e)}this.btmViewObj=u.U2[a],this.errorIdsList=e.ids,a===m.j.ITEM_NOT_SERVING?(this.itemNotServing(a,t),"FAILURE"===n&&this.cartService.openCartInvalidModal(t),this.analyticsService.cleverTapEvent(h.N.UNABLE_TO_CHECKOUT,(0,b.If)(this.outletId,t,a))):a===m.j.OUTLET_NOT_SERVING?(this.outletNotServing(a,t),"FAILURE"===n&&this.cartService.openCartInvalidModal(t),this.analyticsService.cleverTapEvent(h.N.UNABLE_TO_CHECKOUT,(0,b.If)(this.outletId,t,a))):a===m.j.OFFER_INVALID?(this.cartService.openCartInvalidModal(t),this.analyticsService.cleverTapEvent(h.N.UNABLE_TO_CHECKOUT,(0,b.If)(this.outletId,t,a)),this.offerIsExpire()):a===m.j.OFFER_MIN_ORDER?this.setDeliveryAddress():a===m.j.DELIVERY_PERSON_UNAVAILABLE||a===m.j.LOCATION_UNSERVICABLE?(this.btmViewObj=u.U2[a],this.paymentBtn=u.U2[a],0===p.YG.userInfoData.address.length&&(this.btmViewObj.btnTxt="ADD ADDRESS"),this.analyticsService.cleverTapEvent(h.N.UNABLE_TO_CHECKOUT,(0,b.If)(this.outletId,t,a))):(this.setDeliveryAddress(),console.log("paymentbtn",this.paymentBtn,"btmViewObj",this.btmViewObj))}itemNotServing(e,t){this.yourPlateItemsList.forEach(e=>{this.errorIdsList.forEach(t=>{e.itemId===t&&(e.available=!1)})});const n=this.yourPlateItemsList.filter(e=>!1===e.available);this.btmViewObj.errorCode=e,this.btmViewObj=u.U2[e],this.btmViewObj.title="Item's not available";const i=n[0].name,a=1===n.length?i+" item is":i+" and "+(n.length-1)+" items are";this.btmViewObj.desc=a+" not available in your cart"}outletNotServing(e,t){this.yourPlateItemsList.map(e=>e.available=!1),this.btmViewObj=u.U2[e],this.btmViewObj.desc=t}setDeliveryAddress(){if(p.YG.userInfoData.address.length>0){const e=p.YG.userInfoData.address,t=p.YG.currentAddressObj;console.log(e),console.log(t);const n=e.find(e=>e.addressTag.toLowerCase()===t.addressTag.toLowerCase()&&e.addressId===t.addressId);console.log("deliveryAdrObj--------\x3e",n),n?(this.paymentBtn=u.U2.DELIVERY_ADDRESS,this.paymentBtn.btnTxt="Pay \u20b9"+this.paymentObj.find(e=>"paymentgateway"===e.paidVia.toLowerCase()).amount.toFixed(2),this.deliveryAddress.title=n.name,this.deliveryAddress.desc=n.fullAddress,console.log(this.paymentBtn)):this.paymentBtn=u.U2.SELECT_ADDRESS}else this.paymentBtn=u.U2.ADD_ADDRESS}offerIsExpire(){this.setDeliveryAddress()}getAddonNameStr(e){return(0,v.mj)(e)}openAddonsVariantModel(e,t){this.cartService.openAddonsVariantModal(e,t)}onItemDecrease(e,t){if(0===e.quantity)return!0;this.loaderService.show(!1),e.promoId=this.params&&this.params.hasOwnProperty("promiId")?this.params.promoId:"",this.cartService.decreaseItemQuantity(e,t,this.outletId)}onItemIncrease(e,t){if(0===e.quantity)return!0;!e.config||!e.config.maxQty||e.quantity<e.config.maxQty?(this.loaderService.show(!1),e.promoId=this.params&&this.params.hasOwnProperty("promiId")?this.params.promoId:"",this.cartService.increaseItemQuantity(e,t,this.outletId)):(this.errorMessage=`Maximum quantity ${e.config.maxQty} reached`,this.toast.presentToast(this.errorMessage,"","error"))}onOpenApplyCoupon(){if(this.couponsList&&!(this.couponsList.length>0)){console.log(p.YG.cartId);const e={routeType:"CART",outletId:this.outletsListObj.outletId,cartId:p.YG.cartId,redirectUrl:u.Pf.plate};this.params&&(this.params.hasOwnProperty("outletId")&&(e.redirOutletId=this.params.outletId),"/explore"===this.params.redirectUrl&&(e.navFromExplore="/explore"),this.params.hasOwnProperty("promoId")&&(e.promoId=this.params.promoId,this.params.hasOwnProperty("title")&&(e.title=this.params.title),"/see-all-restaurants"===this.params.navigateFrom&&(e.outletId=this.params.outletId)),this.navigateFrom&&(e.navigateFrom=this.navigateFrom)),this.router.navigate(["offers"],{queryParams:e,state:{cartValue:this.billingObj}})}}onOpenTaxAndChargesModal(){if(this.billingObj.charges.length>0){console.log("called",this.billingObj);const e=document.querySelector(".tax-info");console.log(e);const t=document.querySelector(".cart-content");this.renderer.listen(t,"click",t=>{e.contains(t.target)?(this.displayTaxTip=!0,setTimeout(()=>{const e=document.querySelector(".custom-tooltip");this.renderer.setStyle(e,"opacity","1")},100)):this.displayTaxTip=!1})}}onSetPlateView(e){var t;return(0,i.mG)(this,void 0,void 0,function*(){this.walletTexts=e.walletTexts;const n=e.error;if(this.errorCode=e.code,this.errorCode===m.j.CART_IS_EMPTY)return void this.setCartView(e,"FAILURE");const i=e.cartDoc.outlets[0];this.billingObj=e.cartDoc.billing,this.couponsList=e.cartDoc.coupons,this.couponsList&&this.couponsList.length>0&&this.couponsList[0].cart&&this.couponsList[0].cart.minAmount>(null===(t=this.billingObj)||void 0===t?void 0:t.subTotal)&&this.onRemoveCoupon(this.couponsList[0].couponCode),this.deliveryInfo=e.cartDoc.deliveryInfo,this.yourPlateItemsList=i.items?i.items:[],this.yourPlateItemsList.map(e=>e.available=!0),this.getItemPrice(this.yourPlateItemsList),yield this.checkErrorValidation(e,n,"SUCCESS"),this.setPaymentType(this.errorCode,e.cartDoc),p.YG.yourPlateItemsSub$.next(JSON.parse(JSON.stringify(e.cartDoc))),console.log("paymentbtn",this.paymentBtn,"btmViewObj",this.btmViewObj),this.taxAndChargesTotal()})}onRemoveCoupon(e){this.cartService.removeCoupon(e),this.analyticsService.cleverTapEvent(h.N.COUPON_REMOVED,(0,b.EK)(this.billingObj,this.preCheckoutData))}onPlaceNewOrder(e){return(0,i.mG)(this,void 0,void 0,function*(){console.log(e),"PLACE_ORDER"===e?"delivery"===this.deliveryType?this.onNewOrderPlace(this.sp
1Instructions):this.onOpenDeliveryTypeCnfModal():"SELECT_ADDRESS"===e?this.cartService.onOpenAddressSelectModal(this.params):"ADD_ADDRESS"===e?this.cartService.onAddNewAddress(this.params):"LOCATION_UNSERVICEABLE"===e?0===p.YG.userInfoData.address.length?this.cartService.onAddNewAddress(this.params):this.cartService.onOpenAddressSelectModal(this.params):"DELIVERY_PERSON_UNAVAILABLE"===e?this.cartService.clearYourPlate():"ITEM_NOT_SERVING"===e?this.navigateToUnavalItem():"OUTLET_NOT_SERVING"===e?this.cartService.clearYourPlate():"LOGIN"===e&&this.router.navigate(["login"],{queryParams:{navigationFrom:"cart",navigateToCart:"Y",redirectUrl:u.Pf.plate}})})}removeUnavailableItem(e,t){this.cartService.removeUnavalItem(e,t)}navigateToUnavalItem(){const e=document.querySelectorAll(".unavalItem")[0].offsetTop;this.content.scrollToPoint(0,e-20,300)}onNewOrderPlace(e){var t,n,a,s,o,r,l,c,d,u;this.loaderService.show();const g=(0,y.ik)(e);console.log("paymentType: ","in-app"),console.log(window.location);let f="";(0,I.n$)("ios"),f=window.location.origin+"/order-confirmation",g.postBackURL=f,g.sdkLink=!0;const x=(null===(n=null===(t=p.YG.currentAddressObj)||void 0===t?void 0:t.longLat)||void 0===n?void 0:n.coordinates)||[],w={app_name:"yumzy-ios",timestamp:Number(Date.now()),client:"iOS",cart_id:String(p.YG.cartId||""),sub_total:Number(this.billingObj.subTotal||0),total:Number(this.billingObj.totalAmount||0),outlet_id:String((null===(a=this.outletsListObj)||void 0===a?void 0:a.outletId)||""),outlet_locality:String((null===(s=this.outletsListObj)||void 0===s?void 0:s.locality)||""),outlet_name:String((null===(o=this.outletsListObj)||void 0===o?void 0:o.outletName)||""),outlet_city:String((null===(l=null===(r=this.outletsListObj)||void 0===r?void 0:r.outletAddress)||void 0===l?void 0:l.city)||""),user_id:String(p.YG.userId||""),user_city:String((null===(c=p.YG.currentAddressObj)||void 0===c?void 0:c.city)||""),user_locality:String((null===(d=p.YG.currentAddressObj)||void 0===d?void 0:d.locality)||""),latitude:x[1]||0,longitude:x[0]||0};if(S.Z.payClick(w),this.firebaseService.logCustomEvent("pay_click",w),!p.YG.isNative){const e=Object.assign(Object.assign({},w),{source:"pay_clicked",user_mobile_number:(null===(u=p.YG.userInfoData)||void 0===u?void 0:u.mobile)||""});(0,v.L9)("view_content",e)}this.cartService.placeOrders(g).then(e=>(0,i.mG)(this,void 0,void 0,function*(){this.loaderService.hide();const t=e.body.data;this.orderNum=t.orderNum,this.orderId=t.orderId;let n={mid:t.mid,orderId:t.orderId,txnToken:t.token,amount:t.totalAmount+"",callbackUrl:t.callbackUrl};try{(0,I.n$)("android")||(0,I.n$)("ios")?this.allInOneSDK.startTransaction(n).then(e=>{console.warn("## resp: "+JSON.stringify(e)),this.paymentCallback()}).catch(e=>{console.warn("## error: "+JSON.stringify(e)),this.paymentCallback()}):this.paymentService.initiatePayment(t.mid,t.orderId,t.token,t.totalAmount+"",t.callbackUrl,()=>{this.paymentCallback()}).then(e=>{}).catch(e=>{console.log(e),this.paymentCallback()})}catch(i){let e={orderId:this.orderId,orderNum:this.orderNum};this.navCtrl.navigateForward(["/order-confirmation"],{queryParams:{type:"pending",navigateFrom:"cart-page"},state:{data:{data:e}}})}this.analyticsService.cleverTapEvent(h.N.PAY_CLICKED,(0,b.Ct)(t,this.outletsListObj))}),e=>(0,i.mG)(this,void 0,void 0,function*(){console.log(e);const t=e.error.data;e.error.code===m.j.ITEM_QTY_MORE_THAN_1&&this.toast.presentToast(t.error,"","error"),this.setCartView(t,"FAILURE"),console.log(t)}))}paymentCallback(){let e={orderId:this.orderId,orderNum:this.orderNum};this.navCtrl.navigateForward(["/order-confirmation"],{queryParams:{type:"pending",navigateFrom:"cart-page"},state:{data:{data:e}}})}onOpenDeliveryTypeCnfModal(){const e=this.modalService.open(C.l,(0,u.iE)("CENTER_CONFIRM_MODAL_CONFIG"));e.componentInstance.modalObj="cartPage",e.result.then(e=>(0,i.mG)(this,void 0,void 0,function*(){"proceed"===e?this.onNewOrderPlace(this.spInstructions):"change"===e&&this.onOpenDeliveryModal()})).catch(e=>{})}onOpenDeliveryModal(){if(!this.showDeliverySelection())return!0;console.log(this.deliveryType);const e=this.modalService.open(w.j,(0,u.iE)("FROM_BOTTOM_MODAL"));e.componentInstance.modalObj=this.deliveryType,e.result.then(e=>(0,i.mG)(this,void 0,void 0,function*(){this.deliveryType=e.name,p.YG.deliveryType=this.deliveryType,this.pickUpType(this.deliveryType)})).catch(e=>{console.log(e)})}razorPaySuccessHandler(){this.cartService.startOrderPolling(this.orderId,this.orderNum,this.outletId,this.paymentObj.find(e=>"paymentGateway"===e.paidVia.toLowerCase()).amount)}onChangeAddress(){return(0,i.mG)(this,void 0,void 0,function*(){this.cartService.onOpenAddressSelectModal(this.params)})}onClearAllItem(){this.cartService.openClearAllItemConfirmationModal(this.clearCartCleverTapObj())}clearCartCleverTapObj(){const e=p.YG.yourPlateItems.outlets[0],t={totalPrice:this.billingObj.totalAmount,cartDiscount:this.billingObj.discount,outletId:e.outletId,outletName:e.outletName,outletLocality:e.locality,cartId:p.YG.cartId,outletCity:e.outletAddress.city,noOfItems:this.preCheckoutData.cartDoc.outlets[0]?this.preCheckoutData.cartDoc.outlets[0].items.length:0,coordinates:e.location.coordinates};return Object.assign(t,(0,b.Pv)())}onBrowseRestaurant(){this.navCtrl.navigateBack(["/home"]),p.YG.bottomNavMobileIndSub$.next(0)}onUseYumzyWallet(e){const t={cartId:p.YG.cartId};!0===e?this.cartService.useYumzyBalance(t).then(e=>{this.isWalletUsed=!0;const t=e.body.data;this.paymentObj=t.cartDoc.payments,this.setPaymentType(this.errorCode,t.cartDoc)}):this.cartService.unUseYumzyBalance(t).then(e=>{this.isWalletUsed=!1;const t=e.body.data;this.paymentObj=t.cartDoc.payments,this.setPaymentType(this.errorCode,t.cartDoc)}
1),this.getSavingAmount()}getItemPrice(e){console.log("your",e)}onScrollToBillSec(){let e=document.getElementById("bill").offsetTop;this.content.scrollToPoint(0,e,300);const t=document.querySelector(".bill-head-text"),n=document.querySelector(".custom-highlight-class");this.renderer.setStyle(n,"display","inline-block"),this.renderer.addClass(n,"custom-highlight"),setTimeout(()=>{this.renderer.setStyle(t,"color","black"),this.renderer.addClass(n,"custom-background")},300),setTimeout(()=>{this.renderer.setStyle(t,"color","black"),this.renderer.addClass(n,"removeAnimation")},800),setTimeout(()=>{this.renderer.setStyle(n,"display","none"),this.renderer.removeClass(n,"removeAnimation"),this.renderer.removeClass(n,"custom-highlight"),this.renderer.removeClass(n,"custom-background"),this.renderer.setStyle(t,"color","var(--primary-grey-2)")},1200)}pickUpType(e){return(0,i.mG)(this,void 0,void 0,function*(){let t;t="delivery"===e?yield this.cartService.noSelfPickupOrder():yield this.cartService.selfPickupOrder(),this.deliveryType=t})}onShowDeliveryBreakUps(){if(this.deliveryInfo&&this.deliveryInfo.deliveryCharge>0){const e=document.querySelector(".delivery-info");console.log(e);const t=document.querySelector(".cart-content");this.renderer.listen(t,"click",t=>{e.contains(t.target)?(this.displayToolTip=!0,setTimeout(()=>{const e=document.querySelector(".custom-tooltip");this.renderer.setStyle(e,"opacity","1")},100)):this.displayToolTip=!1})}}logScrolling(e){const t=document.querySelector(".custom-cart-header"),n=document.querySelector(".custom-text-aera");e.detail.scrollTop>40?(this.renderer.setStyle(t,"boxShadow","0 1px 2px #00000029"),this.renderer.setStyle(n,"opacity","1")):(this.renderer.setStyle(t,"boxShadow","none"),this.renderer.setStyle(n,"opacity","0"))}onNavigateBack(){if(p.YG.navigate=!1,this.cacheService.setqueryParams(""),this.navigateTo){const e=this.backButtonHandleFun(this.params);this.navCtrl.navigateBack([this.navigateTo],e)}else this.navCtrl.navigateBack(["/home"]),p.YG.bottomNavMobileIndSub$.next(0)}showDeliverySelection(){var e,t,n,i,a,s,o,r,l,c,d,p;if(this.deliveryInfo)return this.deliveryInfo.canSelfPickup?!(!(null===(n=null===(t=null===(e=this.deliveryInfo)||void 0===e?void 0:e.config)||void 0===t?void 0:t.types)||void 0===n?void 0:n.onDemand)&&!(null===(s=null===(a=null===(i=this.deliveryInfo)||void 0===i?void 0:i.config)||void 0===a?void 0:a.types)||void 0===s?void 0:s.scheduled)):((null===(l=null===(r=null===(o=this.deliveryInfo)||void 0===o?void 0:o.config)||void 0===r?void 0:r.types)||void 0===l?void 0:l.onDemand)||(null===(p=null===(d=null===(c=this.deliveryInfo)||void 0===c?void 0:c.config)||void 0===d?void 0:d.types)||void 0===p||p.scheduled),!1)}getSavingAmount(){let e=this.billingObj.discount||0;return this.preCheckoutData.cartDoc.payments.forEach(t=>{"wallet"===t.paidVia&&!0===this.isWalletUsed&&t.usageBreakup.rewards&&(e+=t.usageBreakup.rewards)}),e}getDeliveryForDisplay(){var e,t;let n=0;return(null===(e=this.deliveryInfo)||void 0===e?void 0:e.totalDeliveryCharge)>0&&(n=this.deliveryInfo.totalDeliveryCharge),0==(null===(t=this.deliveryInfo)||void 0===t?void 0:t.totalDeliveryCharge)&&this.billingObj.charges.forEach(e=>{"deliveryCharge"===e.name&&e.value>0&&(n=e.value)}),n}showTaxAndChargesTooltip(){return(0,i.mG)(this,void 0,void 0,function*(){let e=this.billingObj.charges.filter(e=>"deliveryCharge"!==e.name&&e.value>0).map(e=>`${e.displayName}: \u20b9${e.value.toFixed(2)}`).join("<br>");return e+=this.billingObj.taxes.filter(e=>e.value>0).map(e=>`<br>Taxes:<br>${e.displayName}: \u20b9${e.value.toFixed(2)}`).join("<br>"),yield(yield this.popoverController.create({component:D.L,cssClass:"tooltip-popover",translucent:!0,showBackdrop:!0,backdropDismiss:!0,mode:"ios",componentProps:{title:"Taxes and Charges",description:e,btnText:"Okay"}})).present()})}showDeliveryBreakupTooltip(){var e,t,n,a,s,o;return(0,i.mG)(this,void 0,void 0,function*(){let i=(null===(e=this.deliveryInfo)||void 0===e?void 0:e.breakup[0])>0?`<br>Base Fee: \u20b9${null===(t=this.deliveryInfo)||void 0===t?void 0:t.originalDelivery.toFixed(2)}`:"";return i+=(null===(n=this.deliveryInfo)||void 0===n?void 0:n.breakup[1])>0?`<br>Additional Distance Fee: \u20b9${null===(a=this.deliveryInfo)||void 0===a?void 0:a.breakup[1].toFixed(2)}`:"",i+=(null===(s=this.deliveryInfo)||void 0===s?void 0:s.deliverySurge)?`<br>Delivery surge: \u20b9${null===(o=this.deliveryInfo)||void 0===o?void 0:o.deliverySurge.amount.toFixed(2)}`:"",yield(yield this.popoverController.create({component:D.L,cssClass:"tooltip-popover",translucent:!0,showBackdrop:!0,backdropDismiss:!0,mode:"ios",componentProps:{title:"Delivery Fee Breakup",description:i,btnText:"Okay"}})).present()})}};L.ctorParameters=()=>[{type:o.F0},{type:d.N},{type:p.xu},{type:o.gz},{type:a.ChangeDetectorRef},{type:p.kl},{type:g.D},{type:o.gz},{type:f.y},{type:x.SH},{type:k.FF},{type:a.Renderer2},{type:O.Q},{type:T.O},{type:x.Dh},{type:A.d},{type:P.t}],L.propDecorators={content:[{type:a.ViewChild,args:[x.W2,{static:!1}]}]},L=(0,i.gn)([(0,a.Component)({template:""})],L);let j=class extends L{constructor(e,t,n,i,a,s,o,r,l,c,d,p,h,m,u,v,y){super(e,t,n,i,a,s,o,r,l,c,d,p,h,m,u,v,y)}ngOnInit(){}};j.ctorParameters=()=>[{type:o.F0},{type:d.N},{type:p.xu},{type:o.gz},{type:a.ChangeDetectorRef},{type:p.kl},{type:g.D},{type:o.gz},{type:f.y},{type:x.SH},{type:k.FF},{type:a.Renderer2},{type:O.Q},{type:T.O},{type:x.Dh},{type:A.d},{type:P.t}],j=(0,i.gn)([(0,a.Component)({selector:"app-cart-mobile",template:'<ion-header class="header ion-no-border custom-cart-header" [ngStyle]="{ \'padding-top\': statusBarHeight + \'px\' }">\n <div class="row m-0" *ngIf="emptyPlate">\n <div class="col-12 d-flex align-items-center">\n <div *ngIf="emptyPlate === \'NO\'" class="p-2 primary-grey-2" (click)="onNavigateBack()">
1\n <span class="fs-16 icon-arrow-back"></span>\n </div>\n <div *ngIf="emptyPlate === \'NO\'">\n <p class="custom-text-aera sitefontmedium pl-2 py-2 mb-1 text-capitalize limit-characters"\n [ngStyle]="{ opacity: 0 }">\n <span class="fs-14 sitefontbold text-capitalize">{{ outletsListObj.outletName }}\n </span>\n <span class="d-block fs-12 primary-grey-2 sitefontnormal">\n {{ yourPlateItemsList.length }}\n <span *ngIf="yourPlateItemsList.length === 1">item</span>\n <span *ngIf="yourPlateItemsList.length > 1">items</span>\n </span>\n </p>\n </div>\n \x3c!-- <p\n class="\n custom-text-aera\n sitefontmedium\n pl-2\n py-2\n mb-1\n text-capitalize\n limit-characters\n "\n *ngIf="emptyPlate !== \'NO\'"\n >\n My Cart\n </p> --\x3e\n </div>\n </div>\n</ion-header>\n<app-cart-skeleton-loading *ngIf="skeletonLoading"></app-cart-skeleton-loading>\n<ion-content [scrollEvents]="true" *ngIf="\n emptyPlate === \'NO\' && yourPlateItemsList && yourPlateItemsList.length > 0 && !skeletonLoading\n " (ionScroll)="logScrolling($event)" class="cart-content"\n [ngClass]="{ \'custom-ion-content\': emptyPlate && emptyPlate !== \'NO\' }">\n <div class="cart-sec">\n <div class="resturant-section d-flex align-items-baseline">
1\n <span class="fs-14 icon-store pr-3"> </span>\n <div class="resturant-info">\n <p class="fs-16 text-capitalize sitefontbold black-clr">\n {{ outletsListObj.outletName }}\n </p>\n <p class="fs-14 sitefontnormal primary-grey-2">\n {{ outletsListObj?.locality }}\n </p>\n <button class="pt-2 px-0 fs-12 view-menu-btn sitefontmedium primary-cta"\n (click)="onViewMenu(outletsListObj.outletId)">\n View Menu\n <p class="fs-9 icon-arrow-drop-up"></p>\n </button>\n </div>\n </div>\n <div class="coupon-card mb-4 pt-2" *ngIf="getSavingAmount() > 0">\n <img src="assets/icon/cart/coupon-card-jaw.svg" class="w-100" alt="" />\n <div class="coupon-text position-absolute w-100 text-center">\n \x3c!-- <img src="assets/icon/cart/icon-gift.svg" alt="" class="pr-4" /> --\x3e\n <span class="fs-14 sitefontbold text-uppercase">Your Total Saving : \u20b9{{\n getSavingAmount() | number: "1.2-2"\n }}</span>\n </div>\n </div>\n <div class="your-plate-list">\n <div *ngFor="let item of yourPlateItemsList; let i = index" class="pb-4"\n [ngClass]="{ unavalItem: !item.available }">\n <div class="menu-item d-flex justify-content-between">\n <div class="d-flex align-items-start flex-grow-1">\n <img [src]="getVegNonVegImg(item.isVeg, item.containsEgg)" class="veg-non-veg mr-2" />\n <div class="menu-item-name">\n <p class="fs-14 sitefontmedium text-capitalize">\n {{ item.name }}\n </p>\n <span class="amount-discount">\n <p class="fs-14 sitefontnormal pt-2 strike" *ngIf="item.discountPercent > 0">\n \u20b9{{ item?.billing?.originalTotal | number: "1.2-2" }} \n </p>\n <p class="fs-16 fw-6 sitefontnormal pt-2">\n \u20b9{{ item?.billing?.subTotal | number: "1.2-2" }}\n </p>\n <p\n *ngIf="item.discountPercent > 0"\n class="fs-14 discount-text pt-2">\n <span class="down-arrow">\u2193</span>{{ item?.discountPercent }}% \n </p>\n \n \x3c!-- <p\n *ngIf="item.billing.couponDiscount > 0"\n class="fs-14 sitefontnormal"\n >\n \u20b9{{ item?.billing.totalAmount | number: "1.2-2" }}\n </p> --\x3e\n </span>\n <p\n *ngIf="item.discountPercent > 0"\n class="fs-12 pt-2">\n {{ item?.discountSummary }}\n </p>\n\n <div class="customized-item pt-1" *ngIf="isCustomizeItem(item)">\n <span class="fs-12 sitefontmedium text-uppercase primary-cta"\n (click)="openAddonsVariantModel(item, i)">Customised\n <p class="fs-10 m-0 p-2 icon-arrow-angle-forward"></p>\n </span>\n </div>\n </div>\n </div>\n <div class="unavailable-item-view float-right d-flex flex-column" *ngIf="!item.available">\n <p class="fs-12 text-center sitefontmedium primary-grey-2">\n Unavailable\n </p>\n <button (click)="removeUnavailableItem(i, outletId)" class="fs-12 sitefontbold primary-cta py-2">\n REMOVE\n </button>\n </div>\n <div class="item-qty-section" *ngIf="item.available">\n <div class="with-qty-view sitefontmedium position-relative">\n <span class="sitefontmedium" (click)="onItemDecrease(item, i)">\n <span class="icon-minus fs-18"></span>\n </span>\n <span class="sitefontmedium fw-5 fs-16 item-qty" id="{{item.itemId }}size">{{ item.quantity }}</span>\n <span class="sitefontmedium fs-14" (click)="onItemIncrease(item, i)">\n <span class="icon-plus fs-20"></span>\n </span>\n <div class="line-loader" [id]="i + \'loader\'"></div>\n <div class="loader-element"></div>\n </div>\n </div>\n </div>\n </div>\n <div class="special-req py-3">\n <div class="special-text">\n <input type="text" placeholder="Add instructions for restaurant" [(ngModel)]="spInstructions"\n (input)="onInputSpl()" />\n </div>\n </div>\n </div>\n <div class="custom-border"></div>\n <div class="offer-sec" style="width: 100% !important;">\n <div>\n <p class="fs-14 sitefontbold primary-grey-2">OFFERS</p>\n <div class="d-flex align-items-center pl-3 py-2 mt-4">
1\n <span class="icon-tag fs-18 mr-3"></span>\n <div class="d-flex align-items-center justify-content-between flex-grow-1" (click)="onOpenApplyCoupon()">\n <span>\n <p *ngIf="couponsList && !(couponsList.length > 0)" class="fs-14 sitefontmedium primary-clr">\n Apply Coupon\n </p>\n <p *ngIf="couponsList && couponsList.length > 0" class="fs-14 sitefontmedium primary-clr">\n {{ couponsList[0].couponName }}\n </p>\n <p *ngIf="couponsList && couponsList.length > 0" class="fs-12 sitefontnormal robin-blue-clr">\n Discount \u20b9{{ couponsList[0]?.couponDiscount | number: "1.2-2" }}\n applied on the bill\n </p>\n </span>\n <p *ngIf="couponsList && !(couponsList.length > 0)" class="icon-arrow-drop-up fs-10"></p>\n <span *ngIf="couponsList && couponsList.length > 0" class="icon-close fs-10 primary-grey-2"\n (click)="onRemoveCoupon(couponsList[0].couponCode)"></span>\n </div>\n </div>\n </div>\n </div>\n <div class="delivery-sec" [ngClass]="{ \'no-wallet-Bal\': !(yumzyBal > 0) }">\n <div (click)="onOpenDeliveryModal()">\n <p class="fs-14 sitefontbold primary-grey-2">DELIVERY TYPE</p>\n <div class="d-flex align-items-center pl-3 py-2 mt-4">\n <span *ngIf="deliveryType === \'delivery\'" class="icon-bike fs-18 mr-3"></span>\n <img *ngIf="deliveryType !== \'delivery\'" src="assets/icon/cart/Icon-shopping-bag.svg" />\n <div class="d-flex align-items-center justify-content-between flex-grow-1">\n <span>\n <p class="fs-14 sitefontmedium primary-clr text-capitalize">\n {{ deliveryType }}\n </p>\n\n <p *ngIf="deliveryType === \'delivery\'" class="fs-12 sitefontnormal robin-blue-clr">\n Order will be delivered by us.\n </p>\n <p *ngIf="deliveryType !== \'delivery\'" class="fs-12 sitefontnormal robin-blue-clr">\n Pick-up your order from the restaurant.\n </p>\n </span>\n <span *ngIf="showDeliverySelection()" class="icon-arrow-drop-up fs-10"></span>\n </div>\n </div>\n <div class="mt-3 fs-12 deliveryPromo" *ngIf="deliveryInfo?.deliveryPromo">\n <p [innerHTML]="deliveryInfo?.deliveryPromo"></p>\n </div>\n </div>\n </div>\n <div class="wallet-sec" *ngIf="yumzyBal > 0">\n <div>\n <p class="fs-14 sitefontbold primary-grey-2">WALLET</p>\n <div class="d-flex align-items-center pl-3 py-2 mt-4">\n <div class="d-flex input-sec position-relative">\n <label for="bal" class="check-box m-0">\n <input id="bal" type="checkbox" #checkbox (change)="onUseYumzyWallet($event.target.checked)"\n [checked]="walletTexts && !(walletTexts.length > 0) && isWalletUsed" [disabled]="walletTexts && walletTexts.length > 0" />\n <span class="checkmark"></span>\n </label>\n </div>\n <div class="wallet-bal-text">\n <span class="fs-14 sitefontmedium primary-clr d-block" [ngStyle]="{\'opacity\':walletTexts && walletTexts.length > 0 ? \'0.5\' : \'1\'}">Available Coins : {{\n balanceObj.availableBalance\n }}</span>\n <p class="fs-12 sitefontmedium primary-cta"\n *ngIf="walletTexts && !(walletTexts.length > 0)"\n [ngClass]="{ \'wallet-checkbox-checked\': checkbox.checked && isWalletUsed }">\n <span *ngIf="balanceObj.availableBalance >= billingObj.totalAmount">\n You are saving extra \u20b9{{ usedBalObj?.amount }} with Chacha Coins.</span>\n <span *ngIf="!(balanceObj.availableBalance >= billingObj.totalAmount)">\n You are saving extra \u20b9{{ usedBalObj?.amount }} with Chacha Coins.</span>\n </p>\n <p class="fs-12 wallet-checkbox-checked sitefontmedium primary-cta"\n *ngIf="walletTexts && walletTexts.length > 0">
1\n <span>{{walletTexts[0]}}\n </span>\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class="custom-border"></div>\n <app-delivery-slot\n *ngIf="preCheckoutData?.cartDoc?.bulkOrder"\n [disabled]="preCheckoutData?.cartDoc?.bulkOrder ? preCheckoutData?.cartDoc?.bulkOrder : false"\n [outletId]="outletsListObj.outletId"\n [scheduleEnabled]="preCheckoutData?.cartDoc?.deliveryInfo?.schedule !== null ? true : false"\n [existingDate]="preCheckoutData?.cartDoc?.deliveryInfo?.schedule?.date ? preCheckoutData?.cartDoc?.deliveryInfo?.schedule?.date : \'\'"\n [existingLabel]="preCheckoutData?.cartDoc?.deliveryInfo?.schedule?.label ? preCheckoutData?.cartDoc?.deliveryInfo?.schedule?.label : \'\'"\n (onTimeSlotAdded)="onTimeSlotAdded($event)"\n (dataEmitter)="handleChildData($event)"\n [existingSelectedSlot]="preCheckoutData?.cartDoc?.deliveryInfo?.schedule !== null ? preCheckoutData?.cartDoc?.deliveryInfo?.schedule : null"\n >\n </app-delivery-slot>\n <div class="bill-sec" id="bill">\n <div>\n <p class="position-relative d-inline">\n <span class="position-absolute custom-highlight custom-highlight-class">\n </span>\n <span class="fs-14 sitefontbold bill-head-text pr-2 primary-grey-2">\n BILL DETAILS\n </span>\n </p>\n <app-toggle-button\n *ngIf="preCheckoutData?.cartDoc?.partialPay"\n [disabled]="preCheckoutData?.partialPayError"\n [tooltipTitle]="preCheckoutData?.partialPayTexts?.tooltip?.title"\n [tooltipDescription]="preCheckoutData?.partialPayTexts?.tooltip?.description"\n [tooltipBtnText]="preCheckoutData?.partialPayTexts?.tooltip?.buttonText || \'OKAY\'"\n [toggleTitle]="preCheckoutData?.partialPayTexts?.applyInfo?.title"\n [toggleDescription]="preCheckoutData?.partialPayTexts?.applyInfo?.description"\n cartId = "{{preCheckoutData?.cartDoc?.cartId}}"\n [isEnabled]="preCheckoutData?.cartDoc?.partialPaySelected"\n (onToggleState)="onToggleState($event)"\n >\n </app-toggle-button>\n <div class="col-12 billing-details">\n <p class="fs-14 black-clr sitefontnormal">\n Item Total\n <span class="float-right fs-14 sitefontnormal black-clr">\n \u20b9{{ billingObj?.subTotal | number: "1.2-2" }}</span>\n </p>\n <div class="fs-14 sitefontnormal" *ngIf="couponsList && couponsList.length > 0">\n <p class="bill-coupon-txt primary-cta">\n PROMO - ({{ couponsList[0]?.couponName }})\n <span class="float-right sitefontnormal primary-cta">\n <span class="icon-minus fs-14"></span> \u20b9{{ couponsList[0]?.couponDiscount | number: "1.2-2" }}</span>\n </p>\n </div>\n <p class="fs-14 black-clr sitefontmedium" style="border-top: 1px dashed var(--primary-grey-2);"\n *ngIf="couponsList && couponsList.length > 0">\n Sub Total\n <span class="float-right fs-14 sitefontmedium black-clr">\n \u20b9{{ billingObj?.subTotal - couponsList[0]?.couponDiscount | number: "1.2-2" }}</span>\n </p>\n <p style="height: 15px;" *ngIf="couponsList && couponsList.length > 0"></p>\n\n <div class="d-flex align-items-center justify-content-between position-relative">\n <p (click)="onShowDeliveryBreakUps()" class="fs-14 sitefontnormal black-clr delivery-info" [ngClass]="{\n \'text-underline\':\n deliveryInfo && deliveryInfo.totalDeliveryCharge > 0\n }">\n Delivery Fee{{deliveryInfo?.distance > 0 ? \' | \'+deliveryInfo?.distance+\' kms\' : \'\'}}\n <span style="vertical-align: top;"><ion-icon name="information-circle" class="info-icon" (click)="showDeliveryBreakupTooltip()"></ion-icon></span>\n </p>\n \x3c!-- <div class="custom-tooltip position-absolute" *ngIf="displayToolTip" data-direction="top">\n <div class="custom-tooltip__initiator"></div>\n <div class="custom-tooltip__item">\n <p class="fs-12 sitefontbold pb-2">\n Delivery Fee Breakup\n </p>\n <p *ngIf="deliveryInfo && deliveryInfo.breakup[0] > 0" class="fs-10 sitefontnormal black-clr">
1\n Base Fee\n <span class="fs-10 sitefontnormal float-right black-clr"\n *ngIf="deliveryInfo?.originalDelivery < deliveryInfo.breakup[0]">\n \u20b9{{ (deliveryInfo.breakup[0] | number: "1.2-2") || 0 | number: "1.2-2" }}\n </span>\n <span class="fs-10 sitefontnormal float-right black-clr"\n *ngIf="deliveryInfo?.originalDelivery > deliveryInfo.breakup[0]">\n <span style="text-decoration: line-through;">\n \u20b9{{ (deliveryInfo.originalDelivery | number: "1.2-2") || 0 | number: "1.2-2" }}\n </span>\n \u20b9{{ (deliveryInfo.breakup[0] | number: "1.2-2") || 0 | number: "1.2-2" }}\n </span>\n </p>\n <p *ngIf="deliveryInfo.breakup[1] > 0" class="fs-10 sitefontnormal black-clr">\n Additional Distance Fee\n <span class="fs-10 sitefontnormal float-right black-clr">\n \u20b9{{ (deliveryInfo.breakup[1] | number: "1.2-2") || 0 | number: "1.2-2" }}\n </span>\n </p>\n <p *ngIf="deliveryInfo.deliverySurge" class="fs-10 sitefontnormal black-clr">\n Delivery surge\n <span class="fs-10 sitefontnormal float-right black-clr">\n \u20b9{{ deliveryInfo.deliverySurge.amount | number: "1.2-2" }}\n </span>\n </p>\n </div>\n </div> --\x3e\n <span class="fs-14 sitefontnormal black-clr">\n \u20b9{{ (getDeliveryForDisplay()| number: "1.2-2") || 0 | number: "1.2-2" }}</span>\n </div>\n <div class="fs-14 sitefontnormal black-clr"\n class="d-flex align-items-center justify-content-between position-relative">\n <p class="fs-14 sitefontnormal black-clr tax-info" (click)="onOpenTaxAndChargesModal()"\n [ngClass]="{ \'text-underline\': taxAndChargesAmt > 0 }">\n Tax and Charges <span style="vertical-align: top;"><ion-icon name="information-circle" class="info-icon" (click)="showTaxAndChargesTooltip()"></ion-icon></span>\n </p>\n \x3c!-- <div class="custom-tooltip position-absolute" *ngIf="displayTaxTip" data-direction="top">\n <div class="custom-tooltip__initiator"></div>\n <div class="custom-tooltip__item tax-tool-tip">\n <p class="fs-12 sitefontbold pb-2" style="width: 100%">\n Tax and Charges\n </p>\n <div *ngFor="let taxInfo of billingObj?.charges">\n <p class="fs-10 sitefontnormal black-clr" *ngIf="\n taxInfo.name !== \'deliveryCharge\' && taxInfo.value > 0\n ">\n {{ taxInfo.displayName }}\n <span class="fs-10 sitefontnormal float-right black-clr">\n \u20b9{{ taxInfo.value | number: "1.2-2" }}\n </span>\n </p>\n </div>\n <div *ngFor="let taxCharges of billingObj.taxes">\n <p class="fs-10 pt-1 sitefontnormal black-clr" *ngIf="taxCharges.value > 0">\n {{ taxCharges.displayName }}\n <span class="fs-10 sitefontnormal float-right black-clr">\n \u20b9{{ taxCharges.value | number: "1.2-2" }}\n </span>\n </p>\n </div>\n </div>\n </div> --\x3e\n <span class="float-right fs-14 sitefontnormal black-clr">\u20b9{{ taxAndChargesTotal() | number: "1.2-2" }}</span>\n </div>\n <div *ngIf="preCheckoutData?.cartDoc?.deliveryInfo?.schedule?.label">\n <p class="sub-text">Your schedule delivery is on {{ selectedDate }} at {{preCheckoutData?.cartDoc?.deliveryInfo?.schedule?.label}}</p>\n </div>\n\n <div class="fs-14 sitefontnormal black-clr" *ngIf="usedBalObj && usedBalObj.paidVia === \'wallet\'">\n <p class="discount-txt primary-cta">\n Chacha coins ({{usedBalObj.amount}}
1)\n <span class="float-right sitefontnormal primary-cta d-flex align-items-center">\n <span class="icon-minus fs-14"></span>\u20b9{{usedBalObj.amount| number: "1.2-2"}}</span>\n </p>\n </div>\n \x3c!-- <div class="to-pay-view">\n <p class="fs-13 fw-7">\n To Pay\n <span class="float-right" *ngIf="!isWalletUsed"\n >\u20b9 {{ billingObj?.totalAmount | number: "1.2-2" }}</span\n >\n <span class="float-right" *ngIf="isWalletUsed"\n >\u20b9 {{ usedWalletTotalAmtObj?.amount | number: "1.2-2" }}</span\n >\n </p>\n </div> --\x3e\n </div>\n <div class="grand-total" *ngIf="preCheckoutData?.cartDoc?.partialPaySelected === true">\n <p class="fs-14 sitefontbold">\n COD\n <span class="fs-14 sitefontbold float-right">\u20b9 {{ codAmount | number: "1.2-2" }}</span>\n </p>\n </div>\n <div class="grand-total">\n <p class="fs-14 sitefontbold">\n Grand Total\n <span *ngIf="!isWalletUsed" class="fs-14 sitefontbold float-right">\n \u20b9{{ billingObj?.totalAmount | number: "1.2-2" }}</span>\n <span class="fs-14 sitefontbold float-right" *ngIf="isWalletUsed">\u20b9 {{ usedWalletTotalAmtObj?.amount |\n number: "1.2-2" }}</span>\n </p>\n </div>\n </div>\n </div>\n\n \x3c!-- tooltip block --\x3e\n\n \x3c!-- tooltip block --\x3e\n\n \x3c!-- <div class="custom-border"></div> --\x3e\n \x3c!-- <div class="tAndC">\n <div>\n <p class="fs-12 sitefontbold primary-grey-2">Terms & Conditions</p>\n <div class="py-3 my-1">\n <p class="fs-12 sitefontnormal black-clr">\n 100% cancellation fee will be applicable if you decide to Cancel the\n order anytime after order placement\n </p>\n <p class="pt-3 fs-12 sitefontnormal primary-grey-2">\n Avoid cancellation as it leads to food wastage\n </p>\n </div>\n </div>\n </div> --\x3e\n </div>\n</ion-content>\n<div class="d-flex align-items-center text-center empty-plate-view" *ngIf="emptyPlate === \'YES\'">\n <div class="m-auto d-flex flex-column justify-content-center">\n <img src="assets/icon/cart/empty-plate.svg" />\n <p class="pt-4 fs-18 fw-8">Your plate awaits good food</p>\n \x3c!-- <p class="fs-11 fw-4 cool-grey-clr">Add food from the menu?</p> --\x3e\n <p class="fs-11 fw-4 cool-grey-clr pb-2">\n Add all your favourite dishes from the menu\n </p>\n <button class="btn btn-red-bg-sm mt-2" (click)="onBrowseRestaurant()">\n Browse Restaurants\n </button>\n </div>\n</div>\n\n<ion-footer class="cart-footer-sec" *ngIf="emptyPlate === \'NO\'">\n \x3c!-- <div class="cart-footer-skeleton-loading" *ngIf="footerSkeletonLoading">\n <div class="address-sec">\n <div class="d-flex justify-content-between">\n <span class="skeleton-loader height-20 width-50 "></span>\n <span class="skeleton-loader height-10" style="width:30%;"></span>\n </div>
1\n <span class="skeleton-loader height-10 mb-0 width-100 "></span>\n </div>\n <div class="payment-details">\n <span class="skeleton-loader width-100 " style="height:40px ;"></span>\n </div>\n\n </div> --\x3e\n <div class="address-sec" *ngIf="\n errorCode !== 1010 &&\n errorCode !== 1011 &&\n errorCode !== 1014 &&\n errorCode !== 1015 &&\n paymentBtn.btnTxt !== \'Login\' &&\n paymentBtn.btnTxt !== \'Select Address\' &&\n paymentBtn.btnTxt !== \'Add Address\'\n ">\n <div>\n <div class="d-flex align-items-center justify-content-between">\n <p class="fs-12 sitefontnormal black-clr">\n Deliver to :\n <span class="fs-12 sitefontbold primary-clr text-uppercase">\n {{ deliveryAddress.title }}</span>\n </p>\n <p (click)="onChangeAddress()" class="fs-12 sitefontbold new-error-color">\n CHANGE\n </p>\n </div>\n <p class="fs-12 pt-2 address-desc sitefontlight primary-clr">\n {{ deliveryAddress.desc }}\n </p>\n </div>\n \x3c!-- <div *ngIf="btmViewObj.errorCode === 1010">\n <p class="fs-12 sitefontmedium new-error-color">\n {{ btmViewObj.desc + btmViewObj.title }}\n </p>\n </div> --\x3e\n </div>\n <div class="payment-details d-flex align-items-flex-start justify-content-between" *ngIf="\n (paymentBtn &&\n errorCode !== 1010 &&\n errorCode !== 1011 &&\n errorCode !== 1011 &&\n errorCode !== 1014 &&\n errorCode !== 1015) ||\n paymentBtn.btnTxt === \'Select Address\' ||\n paymentBtn.btnTxt === \'Add Address\'\n " [ngClass]="{\n \'payment-sec-box-shadow\':\n paymentBtn.btnTxt === \'Select Address\' ||\n paymentBtn.btnTxt === \'Add Address\'\n }">\n <div>\n <p class="fs-12 sitefontnormal black-clr">BILL DETAILS</p>\n <span class="d-flex align-items-center">\n <button (click)="onScrollToBillSec()" class="robin-blue-clr p-0 fs-14 sitefontbold mt-3">\n View Bill\n <span class="fs-10 icon-arrow-dropdown pl-1"></span>\n </button>\n </span>\n </div>\n <button (click)="onPlaceNewOrder(paymentBtn.btnAction)" type="button"\n class="text-uppercase payment-btn sitefontbold fs-16">\n {{ paymentBtn.btnTxt }}\n </button>\n </div>\n <div *ngIf="\n (errorCode && errorCode === 1011) ||\n errorCode === 1010 ||\n errorCode === 1011 ||\n errorCode === 1014 ||\n (errorCode === 1015 &&\n paymentBtn.btnTxt !== \'Select Address\' &&\n paymentBtn.btnTxt !== \'Add Address\')\n ">\n <div class="restaurant-unavailable">\n <div class="d-flex align-items-center pb-4">\n <img [src]="btmViewObj.imgUrl" alt="" width="30px" height="30px" class="mr-3 mt-2" />\n <div class="mt-3">\n <p class="fs-14 sitefontlight black-clr">{{ btmViewObj.title }}</p>\n <p class="fs-11 sitefontlight black-clr">\n {{ btmViewObj.desc }}\n </p>\n </div>\n </div>\n <button (click)="onPlaceNewOrder(btmViewObj.btnAction)" class="btn unavailable-btn">\n {{ btmViewObj?.btnTxt }}\n </button>\n </div>\n </div>\n</ion-footer>',styles:[c]})],j);var E=n(77119);let N=class{constructor(){}ngOnInit(){}};N.ctorParameters=()=>[],N=(0,i.gn)([(0,a.Component)({selector:"app-cart-skeleton-loading",template:'<div class="skeleton mt-5 pt-3">\n <div class="pl-3 ml-1">\n <span class="skeleton-loader height-20 width-50 "></span>\n <span class="skeleton-loader height-10 width-30 "></span>\n <span class="skeleton-loader height-10 width-25 "></span>\n </div>\n <div class="d-flex justify-content-between align-items-start pt-3 px-3 mx-1" *ngFor="let number of [0,1]">\n <div style="width: 45%;">
1\n <span class="skeleton-loader height-20"></span>\n <span class="skeleton-loader height-20 width-50"></span>\n </div>\n <div style="width: 25%;">\n <span class="skeleton-loader height-40"></span>\n </div>\n </div>\n <div class="mx-3 px-1 mt-4 special-inst">\n <span class="skeleton-loader height-20 width-100"></span>\n </div>\n <div class="custom-border mt-3">\n\n </div>\n <div class="offer-sec mx-3 px-1 mt-3 ">\n <span class="skeleton-loader height-20 width-25"></span>\n <div class="mt-3">\n <span class="skeleton-loader height-20 width-100 mb-0"></span>\n </div>\n\n </div>\n <div class="delivery-sec mx-3 px-1 mt-4 ">\n <span class="skeleton-loader height-20 width-25"></span>\n <div class="mt-3">\n <span class="skeleton-loader height-20 width-100 mb-0"></span>\n </div>\n </div>\n <div class="mx-3 px-1">\n <span class="skeleton-loader height-25 width-100"></span>\n </div>\n <div class="wallet-sec mx-3 px-1 mt-4 ">\n <span class="skeleton-loader height-20 width-25"></span>\n <div class="mt-3">
1\n <span class="skeleton-loader height-20 width-100 mb-0"></span>\n </div>\n </div>\n</div>',styles:[E]})],N);var U=n(67735),_=n(98679),B=n(63052),F=n.n(B),V=n(24143),Y=n(78187);const G=[{path:"",component:j}];function R(){return F()}let M=class{};M=(0,i.gn)([(0,a.NgModule)({declarations:[j,N,U.F,C.l,V.d,D.L,Y.w],imports:[s.ez,o.Bz.forChild(G),r.u5,l.p,x.Pc,_.CT.forRoot({player:R})]})],M)},88550:function(e){e.exports='.header {\n display: block;\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n background-color: var(--white);\n z-index: 1000;\n height: auto;\n}\n.header > div > div {\n padding: 8px 12px 0px 12px;\n}\n.header .limit-characters {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n opacity: 1;\n transition: opacity 0.5s ease-out;\n}\n.header.no-border {\n border: none !important;\n}\n.cart-content {\n height: calc(100vh - 90px);\n --padding-bottom: 200px;\n}\n.cart-content .cart-sec {\n padding: 0rem 0rem 1.25rem 0rem;\n}\n.cart-content .cart-sec .custom-border {\n height: 8px;\n background: var(--layout-bg-color);\n}\n.cart-content .cart-sec .resturant-section {\n padding: 0px 1.25rem 0.75rem 1.25rem;\n}\n.cart-content .cart-sec .resturant-section .resturant-info button {\n background: none;\n}\n.cart-content .cart-sec .resturant-section .resturant-info button .icon-arrow-drop-up {\n display: inline-block;\n transform: rotate(90deg);\n}\n.cart-content .cart-sec .coupon-card {\n position: sticky;\n top: -1px;\n background: var(--white);\n z-index: 10;\n}\n.cart-content .cart-sec .coupon-card > img {\n height: 40px;\n}\n.cart-content .cart-sec .coupon-card .coupon-text {\n top: calc(50% - 9px);\n}\n.cart-content .cart-sec .coupon-card .coupon-text span {\n color: var(--discount-txt-clr);\n}\n.cart-content .cart-sec .your-plate-list {\n padding: 0rem 1.25rem;\n}\n.cart-content .cart-sec .your-plate-list .menu-item .veg-non-veg {\n width: 12px;\n padding-top: 4px !important;\n}\n.cart-content .cart-sec .your-plate-list .menu-item .menu-item-name {\n width: 80%;\n}\n.cart-content .cart-sec .your-plate-list .menu-item .menu-item-name .discount-view {\n text-decoration: line-through;\n color: var(--primary-grey-2);\n font-size: 12px !important;\n}\n.cart-content .cart-sec .your-plate-list .menu-item .customized-item .icon-arrow-angle-forward {\n display: inline-block;\n transform: rotate(90deg);\n}\n.cart-content .cart-sec .your-plate-list .menu-item .customized-item :before {\n color: var(--primary-cta);\n}\n.cart-content .cart-sec .your-plate-list .menu-item .item-qty-section {\n margin-top: 4px;\n}\n.cart-content .cart-sec .your-plate-list .menu-item .item-qty-section .with-qty-view {\n display: flex;\n align-items: center;\n justify-content: space-between;\n border: 1px solid var(--layout-bg-color);\n background: var(--white);\n box-shadow: 0 6px 8px #00000020;\n border-radius: 6px;\n color: var(--primary-cta);\n border-radius: 6px;\n padding: 4px 4px;\n}\n.cart-content .cart-sec .your-plate-list .menu-item .item-qty-section .with-qty-view > span {\n padding: 1px 4px;\n line-height: 1;\n}\n.cart-content .cart-sec .your-plate-list .menu-item .item-qty-section .with-qty-view .item-qty {\n padding: 3px 0px;\n width: 20px;\n text-align: center;\n}\n.cart-content .cart-sec .your-plate-list .unavailable-item-view p {\n background: var(--layout-bg-color);\n padding: 8px 11px;\n border-radius: 6px;\n height: -moz-fit-content;\n height: fit-content;\n margin-top: 4px;\n border: 1px solid var(--silver);\n}\n.cart-content .cart-sec .your-plate-list .unavailable-item-view button {\n background: none;\n border: none;\n outline: none;\n}\n.cart-content .cart-sec .your-plate-list .special-req .special-text {\n border-top: 1px solid var(--layout-bg-color);\n border-bottom: 1px solid var(--layout-bg-color);\n font-size: 12 !important;\n}\n.cart-content .cart-sec .your-plate-list .special-req .special-text input {\n border: none;\n height: 56px;\n width: 100%;\n font-size: 14px;\n background: white;\n}
1\n.cart-content .cart-sec .your-plate-list .special-req .special-text :focus {\n border: none;\n outline: none;\n}\n.cart-content .cart-sec .your-plate-list .special-req .special-text input::-moz-placeholder {\n font-size: 14px;\n}\n.cart-content .cart-sec .your-plate-list .special-req .special-text input::placeholder {\n font-size: 14px;\n}\n.cart-content .cart-sec .deliveryPromo {\n border: none !important;\n border-radius: 2px !important;\n background-color: #fffaeb;\n color: var(--primary-clr);\n border-color: #fff3cf;\n}\n.cart-content .cart-sec .deliveryPromo p {\n padding-left: 5px;\n border-left: 5px solid #fff3cf;\n}\n.cart-content .cart-sec .offer-sec,\n.cart-content .cart-sec .delivery-sec,\n.cart-content .cart-sec .wallet-sec {\n padding: 0rem 1.25rem;\n position: relative;\n}\n.cart-content .cart-sec .offer-sec > div,\n.cart-content .cart-sec .delivery-sec > div,\n.cart-content .cart-sec .wallet-sec > div {\n padding: 0.75rem 0rem;\n}\n.cart-content .cart-sec .offer-sec > div > p:before,\n.cart-content .cart-sec .delivery-sec > div > p:before,\n.cart-content .cart-sec .wallet-sec > div > p:before {\n content: "";\n display: inline-block;\n position: absolute;\n top: 42px;\n width: 20px;\n height: 1px;\n background-color: var(--silver);\n}\n.cart-content .cart-sec .offer-sec > div > div,\n.cart-content .cart-sec .delivery-sec > div > div,\n.cart-content .cart-sec .wallet-sec > div > div {\n border: 1px solid var(--silver);\n border-radius: 6px;\n padding-right: 6px;\n}\n.cart-content .cart-sec .offer-sec > div > div img,\n.cart-content .cart-sec .delivery-sec > div > div img,\n.cart-content .cart-sec .wallet-sec > div > div img {\n width: 15px;\n top: 10px;\n margin-right: 16px;\n}\n.cart-content .cart-sec .offer-sec > div > div div,\n.cart-content .cart-sec .delivery-sec > div > div div,\n.cart-content .cart-sec .wallet-sec > div > div div {\n line-height: 1.8;\n}\n.cart-content .cart-sec .offer-sec > div > div div .icon-arrow-drop-up,\n.cart-content .cart-sec .delivery-sec > div > div div .icon-arrow-drop-up,\n.cart-content .cart-sec .wallet-sec > div > div div .icon-arrow-drop-up {\n transform: rotate(90deg);\n padding: 10px;\n}\n.cart-content .cart-sec .offer-sec > div > div div ::before,\n.cart-content .cart-sec .delivery-sec > div > div div ::before,\n.cart-content .cart-sec .wallet-sec > div > div div ::before {\n color: var(--primary-clr);\n}\n.cart-content .cart-sec .offer-sec > div > div div .icon-close,\n.cart-content .cart-sec .delivery-sec > div > div div .icon-close,\n.cart-content .cart-sec .wallet-sec > div > div div .icon-close {\n padding: 10px;\n}\n.cart-content .cart-sec .offer-sec > div > div div ::before,\n.cart-content .cart-sec .delivery-sec > div > div div ::before,\n.cart-content .cart-sec .wallet-sec > div > div div ::before {\n color: var(--primary-grey-2);\n}\n.cart-content .cart-sec .no-wallet-Bal {\n padding-bottom: 0.75rem;\n}\n.cart-content .cart-sec .no-wallet-Bal > div {\n border: none;\n}\n.cart-content .cart-sec .wallet-sec {\n padding-bottom: 0.75rem;\n}\n.cart-content .cart-sec .wallet-sec > div {\n border: none;\n}\n.cart-content .cart-sec .wallet-sec > div .wallet-bal-text {\n padding-left: 36px;\n}\n.cart-content .cart-sec .wallet-sec > div .wallet-bal-text > p {\n display: none;\n}\n.cart-content .cart-sec .wallet-sec > div .wallet-checkbox-checked {\n display: block !important;\n}\n.cart-content .cart-sec .wallet-sec > div .input-sec {\n /* Hide the browser\'s default checkbox */\n /* Create a custom checkbox */\n /* When the checkbox is checked, add a blue background */\n /* Create the checkmark/indicator (hidden when not checked) */\n /* Show the checkmark when checked */\n /* Style the checkmark/indicator */\n}\n.cart-content .cart-sec .wallet-sec > div .input-sec .check-box {\n display: block;\n position: relative;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.cart-content .cart-sec .wallet-sec > div .input-sec .check-box input {\n opacity: 0;\n cursor: pointer;\n height: 0;\n width: 0;\n}
1\n.cart-content .cart-sec .wallet-sec > div .input-sec .checkmark {\n position: absolute;\n top: 1px;\n left: 0;\n height: 19px;\n width: 19px;\n border: 1px solid #cccccc;\n}\n.cart-content .cart-sec .wallet-sec > div .input-sec .check-box input:checked ~ .checkmark {\n background-color: #cc1e56;\n}\n.cart-content .cart-sec .wallet-sec > div .input-sec .checkmark:after {\n content: "";\n position: absolute;\n display: none;\n}\n.cart-content .cart-sec .wallet-sec > div .input-sec .check-box input:checked ~ .checkmark:after {\n display: block;\n}\n.cart-content .cart-sec .wallet-sec > div .input-sec .check-box input:checked ~ div > span {\n font-weight: 600;\n}\n.cart-content .cart-sec .wallet-sec > div .input-sec .check-box .checkmark:after {\n left: 6px;\n top: 0px;\n width: 6px;\n height: 12px;\n border: solid white;\n border-width: 0 2px 2px 0;\n transform: rotate(45deg);\n}\n.cart-content .cart-sec .bill-sec {\n padding: 0rem 1.25rem;\n position: relative;\n}\n.cart-content .cart-sec .bill-sec > div {\n padding: 1.25rem 0rem;\n}\n.cart-content .cart-sec .bill-sec > div > p:before {\n content: "";\n display: inline-block;\n position: absolute;\n top: 28px;\n width: 20px;\n height: 1px;\n background-color: var(--silver);\n}\n.cart-content .cart-sec .bill-sec > div .billing-details {\n padding: 1.5rem 0rem;\n line-height: 2;\n}\n.cart-content .cart-sec .bill-sec > div .grand-total p {\n padding: 10px 0px;\n border-top: 1px dashed var(--primary-grey-2);\n border-bottom: 1px dashed var(--primary-grey-2);\n}\n.cart-content .cart-sec .bill-sec .text-underline {\n text-decoration: underline;\n}\n.cart-content .tAndC {\n padding: 0rem 1.2rem;\n position: relative;\n}\n.cart-content .tAndC > div {\n padding-top: 1.25rem;\n}\n.cart-content .tAndC > div > p:before {\n content: "";\n display: inline-block;\n position: absolute;\n top: 38px;\n width: 20px;\n height: 1px;\n background-color: var(--silver);\n}\n.empty-plate-view {\n height: calc(100vh - 90px);\n}\n.custom-ion-content {\n --padding-bottom: 0px !important;\n}\n.cart-footer-sec {\n position: fixed;\n z-index: 1001 !important;\n bottom: 0px;\n background-color: white;\n}\n.cart-footer-sec .cart-footer-skeleton-loading {\n background-color: white;\n}\n.cart-footer-sec .address-sec {\n padding: 10px 20px;\n background: var(--layout-bg-color);
1\n box-shadow: 0px -2px 4px var(--box-shadow);\n}\n.cart-footer-sec .address-sec > div .address-desc {\n width: 80%;\n display: block;\n display: -webkit-box;\n max-width: 100%;\n margin: 0 auto;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.cart-footer-sec .payment-details {\n background: var(--white);\n padding: 20px;\n}\n.cart-footer-sec .payment-details > div button {\n background: none;\n}\n.cart-footer-sec .payment-details > div :focus {\n outline: none;\n}\n.cart-footer-sec .payment-details .payment-btn {\n height: 56px;\n width: 55%;\n border-radius: 6px;\n padding: 0px 20px;\n background: var(--primary-cta);\n color: var(--white);\n box-shadow: 0 4px 12px var(--box-shadow);\n}\n.cart-footer-sec .payment-details :focus {\n outline: none;\n}\n.cart-footer-sec .payment-details .disabled-btn {\n background: var(--silver);\n color: var(--primary-grey-2);\n pointer-events: none;\n}\n.cart-footer-sec .payment-sec-box-shadow {\n box-shadow: 0px -2px 4px var(--box-sha
1dow);\n}\n.cart-footer-sec .restaurant-unavailable {\n padding: 0px 16px 12px 16px;\n background: linear-gradient(111deg, #f1eff3, rgba(232, 230, 234, 0.97), white) !important;\n}\n.cart-footer-sec .restaurant-unavailable .unavailable-btn {\n width: 100%;\n padding: 10px 0px;\n height: 56px;\n background-color: var(--primary-cta);\n color: var(--white);\n border-radius: 4px;\n box-shadow: 0 4px 12px var(--box-shadow);\n}\n.log-in-btn {\n box-shadow: 0px -4px 20px -5px rgba(0, 0, 0, 0.2);\n}\n.log-in-btn .payment-btn {\n font-size: 14px !important;\n}\n@media screen and (max-height: 800px) {\n .cart-footer-sec .address-sec > p {\n width: 80%;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n .cart-footer-sec .payment-details {\n padding: 10px 20px;\n }\n}\n.custom-tooltip {\n left: 10%;\n opacity: 0;\n bottom: 16px;\n width: 100%;\n transition: opacity 0.5s ease;\n}\n.custom-tooltip__item {\n position: absolute;\n padding: 14px;\n min-width: 180px;\n line-height: 1.8;\n background: var(--white);\n transition: all 0.25s cubic-bezier(0, 0, 0.2, 1);\n color: #484848;\n border-radius: 4px;\n font-weight: 400;\n box-shadow: 0 0px 8px #bcbcbc;\n z-index: 4;\n}\n.custom-tooltip__item p:first-child {\n width: 90%;\n line-height: 1.5;\n}\n.tax-tool-tip {\n padding: 14px 14px;\n}\n.tax-tool-tip p:first-child {\n width: 100%;\n}
1\n.custom-tooltip__item:after {\n content: "";\n display: block;\n position: absolute;\n width: 0;\n height: 0;\n border-style: solid;\n}\n.custom-tooltip__initiator {\n cursor: pointer;\n z-index: 5;\n}\n.custom-tooltip[data-direction=top] .custom-tooltip__item {\n bottom: calc(100% + 1em);\n}\n.custom-tooltip[data-direction=top] .custom-tooltip__item:after {\n bottom: -0.9em;\n border-width: 0.9em 0.8em 0 0.2em;\n border-color: white transparent transparent transparent;\n filter: drop-shadow(0px 2px 1px #bcbcbc);\n -webkit-filter: drop-shadow(0px 2px 1px #bcbcbc);\n}\n.custom-highlight {\n left: -5px;\n top: 1px;\n height: 100%;\n width: 100%;\n transform: rotateX(90deg);\n background: red;\n opacity: 0.3;\n padding-right: 14px;\n transition: all 0.5s ease;\n}\n.custom-background {\n transform: rotateX(180deg);\n}\n.removeAnimation {\n height: 0px;\n}\n.sub-text {\n font-size: 15px;\n color: #999;\n line-height: 1.5;\n margin: 0;\n padding-right: 10px;\n}\n.info-icon {\n font-size: 20px;\n color: #e91e63;\n flex-shrink: 0;\n cursor: pointer;\n margin-top: 2px;\n}\n.amount-discount {\n display: flex;\n align-items: center;\n grid-gap: 8px;\n gap: 8px;\n /* space between amount & percentage */\n}\n.discount-text {\n color: #129839;\n /* optional */\n font-size: 13px;\n}\n.strike {\n text-decoration: line-through;\n color: #999;\n}'},77119:function(e){e.exports=".skeleton .width-75 {\n width: 75%;\n}\n.skeleton .width-25 {\n width: 25%;\n}\n.skeleton .width-65 {\n width: 65%;\n}\n.skeleton .width-30 {\n width: 30%;\n}\n.skeleton .height-25 {\n height: 25%;\n}\n.skeleton .height-40 {\n height: 5vh;\n}\n.skeleton .height-10 {\n height: 10px;\n}\n.skeleton .special-inst {\n padding: 16px;\n border-top: 1px solid var(--layout-bg-color);\n border-bottom: 1px solid var(--layout-bg-color);\n}\n.skeleton .custom-border {\n height: 10px;\n background: var(--layout-bg-color);\n}\n.skeleton .offer-sec > div,\n.skeleton .delivery-sec > div,\n.skeleton .wallet-sec > div {\n padding: 0.75rem 1.25rem;\n border: 1px solid var(--silver);\n}"}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.