1"use strict";(self.webpackChunkyumzy=self.webpackChunkyumzy||[]).push([[4963],{4963:function(e,n,t){t.r(n),t.d(n,{RestaurantDetailsMobileModule:function(){return me},playerFactory:function(){return de}});var i=t(97582),s=t(37716),o=t(38583),a=t(67957),r=t(91075),l=t(89088),d=t(42549),c=t(21633),m=t(53787),p=t(62902),u=t(63333);const g=[{address:"Shanthi Nagar,Kukatpally",rating:"3.5",prepTime:"30min",offer:"50% off"},{address:"Shanthi Nagar,Kukatpally",rating:"4.5",prepTime:"29min",offer:"50% off"},{address:"Shanthi Nagar,Kukatpally",rating:"4",prepTime:"38min",offer:"50% off"}];var h=t(56565),f=t(56371),b=t(59063),v=t(73903),x=t(3679),y=t(88002),I=t(54395),w=t(87519),O=t(90787),k=t(75319),L=t(79765);let C=class{constructor(e,n,t,s){this.router=e,this.activeModal=n,this.analyticsService=t,this.renderer=s,this.menuItemSearch=new x.NI,this.menuListCopy=[],this.menuList=[],this.outletName="",this.itemTotal=0,this.itemCount=0,this.searchItemsCount=0,this.outletNameForViewPlate="",this.queryString="",this.plateItemCountSubscription=new k.w,this.searchText=new L.xQ,this.plateItemCountSubscription=u.YG.plateItemCountSub$.subscribe(e=>{this.itemTotal=e.itemTotal,this.itemCount=e.itemCount,this.outletNameForViewPlate=e.outletName}),console.log(this.modalObj),this.searchText.pipe((0,y.U)(e=>(console.log("eeeee:",e,this.queryString),e.target.value)),(0,I.b)(500),(0,w.x)()).subscribe(e=>(0,i.mG)(this,void 0,void 0,function*(){this.onSearchResult(e)}))}onSearchResult(e){return(0,i.mG)(this,void 0,void 0,function*(){if(e.length>=2){console.log(e);const n=this.menuListCopy,t=yield document.querySelector(".noRes");if(t&&this.renderer.setStyle(t,"display","none"),this.displayMenuItemsList=(0,v.Bm)(n,"name",e),!(this.displayMenuItemsList.length>0)){const e=yield document.querySelector(".noRes");e&&this.renderer.setStyle(e,"display","block")}this.searchItemsCount=this.displayMenuItemsList.length;const i=this.displayMenuItemsList.map(e=>e.itemId);this.analyticsService.cleverTapEvent(c.N.SEARCH_MENUITEM,(0,m.a)(e,this.modalObj.outletObj,i))}else this.displayMenuItemsList=[]})}ngOnInit(){return(0,i.mG)(this,void 0,void 0,function*(){console.log(this.modalObj);JSON.parse(JSON.stringify(this.modalObj.items));const e=JSON.parse(JSON.stringify(this.modalObj.items));this.menuListCopy=Object.values(e),this.outletName=this.modalObj.outletName})}ngAfterViewInit(){document.getElementById("input-search").setAttribute("disabled","true"),setTimeout(()=>{document.getElementById("input-search").removeAttribute("disabled"),document.getElementById("input-search").focus()},800)}menuSearchCleverTapEventObj(e){const n={search_item:e,search_size:this.searchItemsCount,outlet_name:this.outletName};return Object.assign(n,(0,m.Pv)())}capitalizeFirstString(e){return(0,v.r8)(e)}trackByItemId(e,n){return n.itemId}onViewPlate(){this.router.navigate(["/cart"]),this.activeModal.close()}clearInputField(){this.queryString="",this.displayMenuItemsList=this.menuListCopy,this.searchItemsCount=this.displayMenuItemsList.length}};C.ctorParameters=()=>[{type:a.F0},{type:d.Kz},{type:O.y},{type:s.Renderer2}],C.propDecorators={modalObj:[{type:s.Input}],queryData:[{type:s.Input}]},C=(0,i.gn)([(0,s.Component)({selector:"app-search-items",template:'<div class="search-menu-item-view">\n <div class="position-absolute close-icon-top position-relative">\n <span class="icon-close fs-12 position-relative\n " (click)="activeModal.close()"></span>\n </div>\n <div class="head-view">\n <div class="search-view d-flex align-items-center flex-row-reverse">\n <input type="text" class="search-input dark-black-clr sitefontmedium w-100" [(ngModel)]="queryString"\n id="input-search" (keyup)="searchText.next($event)" placeholder="Search menu..." #searchInput />\n <span class="icon-search s-i-v fs-24"></span>\n </div>\n <div *ngIf="displayMenuItemsList && displayMenuItemsList.length > 0" class="menu-list-length">\n <p class="fs-12 sitefontnormal ">{{displayMenuItemsList.length}} Items matching</p>\n </div>\n </div>\n\n <div class="body-view">\n <div class="menu-item-view " *ngIf="displayMenuItemsList && displayMenuItemsList.length > 0">\n <div *ngFor="let menuItemsList of displayMenuItemsList" class="my-3">\n <app-menu-items [menuItems]="menuItemsList" [showCatName]="false" [fromSearch]="true"\n [outletObj]="modalObj.outletObj"></app-menu-items>\n </div>\n\n </div>\n <div *ngIf="queryString && queryString.length >= 3">\n <p class="sitefontmedium text-center mt-5 noRes">No results found</p>\n </div>\n </div>\n <ion-footer *ngIf="itemTotal" class="ion-no-border footer-content">
1\n <app-view-plate-card [queryParams]="queryData"></app-view-plate-card>\n </ion-footer>\n</div>',styles:[b]})],C);var S=t(94490),j=t(99681),A=t(22784);let B=class{constructor(e,n){this.activeModal=e,this.rendere=n}ngOnInit(){this.currentOutlet=this.modalObj.currentOutlet.outletId,this.selectedOutlet=this.modalObj.currentOutlet}onChangeOutlet(e){if(!e.operational)return!1;this.selectedOutlet=e,this.activeModal.close(this.selectedOutlet)}ngAfterViewInit(){if(this.modalObj.outlets.length>4){const e=document.querySelector(".modal-body");this.rendere.setStyle(e,"height","70vh")}}};B.ctorParameters=()=>[{type:d.Kz},{type:s.Renderer2}],B.propDecorators={modalObj:[{type:s.Input}]},B=(0,i.gn)([(0,s.Component)({selector:"app-outlet-group",template:'<div class="outlet-change-page ">\n <div class="position-absolute close-icon-top">\n <span class="icon-close fs-12 position-relative\n " (click)="activeModal.close()"></span>\n </div>\n <div class="d-flex align-items-center modal-head-section position-relative">\n <p class="fs-16 black-clr sitefontbold fw-8">Select outlet</p>\n </div>\n <ion-content class="modal-body">\n <div class="modal-body-section">\n <div class="outlet-types" *ngFor="let outletList of modalObj[\'outlets\']; let i = index">\n <div class="d-flex align-items-start" (click)="onChangeOutlet(outletList)"\n [ngClass]="{ \'closed-outlet\': outletList.operational === false }">\n <input class="pointer" type="radio" name="outlettype" [id]="i + \'outletList\'"\n [checked]="outletList.outletId === currentOutlet" [disabled]="outletList.operational === false" />\n\n <label class="fs-16" [for]="i + \'outletList\'">\n <span class="fs-16 sitefontmedium"> {{ outletList.outletName }}</span>\n <p class="fs-14 sitefontmedium primary-grey-2">\n {{ outletList.locality }}\n </p>\n <p class="fs-14 sitefontmedium primary-grey-2">\n {{ outletList.distance + " " + "kms" }}\n </p>\n </label>\n <div>\n <p *ngIf="outletList.operational === false" class="fs-12 sitefontnormal new-error-color mt-1">\n Closed\n </p>\n </div>\n </div>\n </div>\n </div>\n </ion-content>\n \x3c!-- <ion-footer class="ion-no-border">\n <div class="modal-footer-section">\n <button (click)="onSelectOutlet()" type="button" class="btn custom-button sitefontbold fs-18">\n Confirm Outlet location\n </button>\n </div>\n </ion-footer> --\x3e\n</div>',styles:[A]})],B);var D=t(87602),M=t(73494),T=t(24565),U=t(93661);let P=class{constructor(e,n,t,i,s,o,a,r,l,d,c,m,g){this.menuItemService=e,this.modalService=n,this.renderer=t,this.activateRoute=i,this.location=s,this.router=o,this.analyticsService=a,this.navCtrl=r,this.ngZone=l,this.cacheService=d,this.statusBar=c,this.platform=m,this.firebaseService=g,this.outletUnavailable=(0,f.RR)("OUTLET_UNAVAILABLE_CONFIG"),this.lottieConfig=(0,f.RR)("COUPON_CAN_CONFIG"),this.outletId="",this.displayMenuList=[],this.copyMenuItemList=[],this.vegOnlyMenuItemList=[],this.vegOnlyOrderAgainMenuList=[],this.searchItemsList=[],this.categoryLists=[],this.categoryListCopy=[],this.vegCategoryList=[],this.orderAgainItems=[],this.orderAgainItemsCopy=[],this.recommendedMenuList=[],this.isNonVeg=!1,this.isMenuView=!1,this.layoutCode=p.j,this.isPlateItems=!1,this.navigateTo="",this.addressTag="",this.deliveryType="delivery",this.outletGroup=[],this.offerColors=f.y$,this.currentlyActiveMenu="",this.itemCounter=0,this.promoId="",this.titleText="",this.isOutletchanged=!1,this.statusBarHeight=u.YG.statusBarHeight,this.showAnim=!1,this.redirectUrl="",this.skeletonLoading=!0,this.offerSecHeight=0,this.sliderCurrentPage=1,this.slideOpts={slidesPerView:.9,spaceBetween:10,pager:!1,centeredSlides:!0,loop:!1,speed:400},window.scroll(0,0),this.activateRoute.queryParams.subscribe(e=>{this.outletId=e.outletId,this.params=e,e.hasOwnProperty("promoId")&&(this.promoId=e.promoId),e.hasOwnProperty("title")&&(this.titleText=e.title),e.hasOwnProperty("redirectUrl")&&(this.redirectUrl=e.redirectUrl),"cart"!==e.navigateFrom?this.queryData={outletId:this.outletId,redirectUrl:f.Pf.outlet}:this.queryData={redirectUrl:f.Pf.outlet};const n=this.handleBackButtonFun(e);console.log("calledfor checking",n),this.cacheService.setqueryParams(n),this.displayMenuList&&!(this.displayMenuList.length>0)&&this.getMenuItems()}),console.log("Window",window),u.YG.plateItemCountSub$.subscribe(e=>{console.log(e),e.itemTotal?this.isPlateItems=!0:this.isPlateItems=!1})}handleBackButtonFun(e){let n={};return(this.promoId||this.titleText)&&"/favorites"!==this.params.redirectUrl?(("/see-all-dish"===this.params.redirectUrl||"/see-all-restaurants"===this.params.redirectUrl)&&(n={queryParams:{promoId:this.params.promoId,title:this.params.title,redirectUrl:"/home"}}),"/see-all-dish"===this.params.navigateFrom?n={queryParams:{promoId:this.params.promoId,title:this.params.title,redirectUrl:"/see-all-dish"}}:"/see-all-restaurants"===this.params.navigateFrom&&(n={queryParams:{promoId:this.params.promoId,title:this.params.title,redirectUrl:"/see-all-restaurants"}})):"/favorites"===this.params.navigateFrom?n={queryParams:{redirectUrl:"/favorites"}}:"/order-history"===this.params.navigateFrom?n={queryParams:{redirectUrl:"/order-history"}}:"/explore"===this.params.navigateFrom?n={queryParams:{redirectUrl:"/explore"}}:"/explore"===e.redirectUrl?n={queryParams:{redirectUrl:"/home"}}:("/order-history"===e.redirectUrl||"/favorites"===e.redirectUrl)&&(n={queryParams:{redirectUrl:"/account"}}),n}viewDetail(){var e,n,t,i,s,o,a,r;if(this.platform.is("cordova"))try{const l={app_name:"yumzy-ios",timestamp:Number(Date.now()),client:"iOS",outlet_id:String(this.outletObj.outletId||""),outlet_locality:String(this.outletObj.locality||""),outlet_name:String(this.outletObj.outletName||""),description:String(this.outletObj.cuisines||""),latitude:(null===(t=null===(n=null===(e=u.YG.currentAddressObj)||void 0===e?void 0:e.longLat)||void 0===n?void 0:n.coordinates)||void 0===t?void 0:t[1])||0,longitude:(null===(o=null===(s=null===(i=u.YG.currentAddressObj)||void 0===i?void 0:i.longLat)||void 0===s?void 0:s.coordinates)||void 0===o?void 0:o[0])||0,user_city:String((null===(a=u.YG.currentAddressObj)||void 0===a?void 0:a.city)||""),user_locality:String((null===(r=u.YG.currentAddressObj)||void 0===r?void 0:r.locality)||""),user_id:String(u.YG.userId||"")};T.Z.viewOutlet(l),this.firebaseService.logCustomEvent("view_outlet",l)}catch(l){console.warn("Error logging FB event:",l)}else console.log("FB event logging skipped: Not running on a native device.")}animationCreated(e){console.log(e),this.animationItem=e,this.animationItem.autoplay=!1,this.animationItem.loop=!1}showAnimation(e){console.log("showAnimation:",e),console.log(u.YG.yourPlateItems.outlets[0].outletId,this.outletId),e.showAnimation&&u.YG.yourPlateItems.outlets[0].outletId===this.outletId?(this.showAnim=e.showAnimation,this.ngZone.runOutsideAngular(()=>{console.log("Played Called"),this.animationItem.play()}),setTimeout(()=>{this.showAnim=!1},3e3)):this.showAnim=!1}onBack(){history.go(-1)}getMenuItems(){this.menuItemService.getMenuItem(this.outletId,u.YG.userId).then(e=>(0,i.mG)(this,void 0,void 0,function*(){var n,t,i,s,o,a,r,l,d;const p=e.body.data;if(console.log("------\x3eMenu ",p),Object.keys(p).length>0){if(this.categoryLists=p.categoryList,this.categoryLists&&this.categoryLists.map(e=>{e.hasSubCategories&&delete e.isCollapsed,e.hasOwnProperty("isCollapsed")||(e.isCollapsed=!1)}),this.categoryListCopy=JSON.parse(JSON.stringify(this.categoryLists)),this.outletObj=p.outlet,this.checkDeliveryType(),this.couponScrollWidth=Math.ceil(this.outletObj.couponStrings.length/2),this.outletGroups(),this.getRatingValue(),this.sortingCoupon(),this.viewDetail(),this.addonIdsListObj=p.addons,this.displayMenuList=p.menuItems,yield this.categoryCollapsed(),this.orderAgainItems=p.orderAgainItems,this.skeletonLoading=!1,!u.YG.isNative){const e={source:"view_outlet",outlet_id:String(this.outletObj.outletId||""),outlet_locality:String(this.outletObj.locality||""),outlet_name:String(this.outletObj.outletName||""),description:String(this.outletObj.cuisines||""),latitude:(null===(i=null===(t=null===(n=u.YG.currentAddressObj)||void 0===n?void 0:n.longLat)||void 0===t?void 0:t.coordinates)||void 0===i?void 0:i[1])||0,longitude:(null===(a=null===(o=null===(s=u.YG.currentAddressObj)||void 0===s?void 0:s.longLat)||void 0===o?void 0:o.coordinates)||void 0===a?void 0:a[0])||0,user_city:String((null===(r=u.YG.currentAddressObj)||void 0===r?void 0:r.city)||""),user_locality:String((null===(l=u.YG.currentAddressObj)||void 0===l?void 0:l.locality)||""),user_id:String(u.YG.userId||""),user_mobile_number:(null===(d=u.YG.userInfoData)||void 0===d?void 0:d.mobile)||""};(0,v.L9)("view_outlet",e)}if(this.analyticsService.cleverTapEvent(c.N.OUTLET_VIEWED,(0,m.wh)(this.outletObj,this.promoId)),this.displayMenuList&&this.categoryLists){this.copyMenuItemList=JSON.parse(JSON.stringify(this.displayMenuList)),u.YG.addonList=this.addonIdsListObj,this.isMenuView=!0;const e=yield this.menuItemService.getVegCategory(this.categoryLists,this.displayMenuList);if(this.vegCategoryList=e,this.orderAgainItems){this.orderAgainItemsCopy=JSON.parse(JSON.stringify(this.orderAgainItems));const e=yield this.menuItemService.filterVegMenu(this.orderAgainItems,this.displayMenuList);this.vegOnlyOrderAgainMenuList=e}"on"===this.outletObj.available&&this.sortingCategory()}this.isOutletchanged&&this.analyticsService.cleverTapEvent(c.N.CHA
1NGE_OUTLET,(0,m.pf)(this.outletObj))}}),e=>{console.log(e.error.code);const n=e.error;this.errorCode=n.code,this.skeletonLoading=!1,(!this.outletObj||!this.outletObj.hasOwnProperty("outletId"))&&this.navCtrl.navigateRoot("/home")})}sortingCoupon(){this.outletObj.offerDetails&&this.outletObj.offerDetails.length>2&&this.outletObj.offerDetails.sort((e,n)=>{e.minOrderAmount,n.minOrderAmount}),console.log(this.outletObj)}sortingCategory(){this.categoryLists&&this.categoryLists.length>0&&JSON.parse(JSON.stringify(this.categoryLists)).forEach((e,n)=>{if(e.hasSubCategories)e.subCategories.forEach((e,t)=>{const i=this.sortingCategoryMenuList(e);i&&(this.categoryLists[n].subCategories[t].menuItems=i)});else{const t=this.sortingCategoryMenuList(e);t&&(this.categoryLists[n].menuItems=t)}})}sortingCategoryMenuList(e){if(e.menuItems&&e.menuItems.length>0){const n=e.menuItems.filter(e=>!this.displayMenuList[e].itemAvailable||!this.displayMenuList[e].availableForOrder||!this.displayMenuList[e].itemOperational),t=e.menuItems.filter(e=>this.displayMenuList[e].itemAvailable&&this.displayMenuList[e].availableForOrder&&this.displayMenuList[e].itemOperational);if(n&&t)return t.concat(n)}}categoryCollapsed(){this.categoryLists.map(e=>{let n;e.hasSubCategories?e.subCategories.map(t=>{n="",t.menuItems&&(n=t.menuItems.find(e=>this.displayMenuList[e].itemAvailable&&this.displayMenuList[e].itemOperational&&this.displayMenuList[e].outletAvailable&&this.displayMenuList[e].outletOperational),n?(e.isCollapsed=!1,t.isCollapsed=!1):t.isCollapsed=!0)}):e.menuItems&&(n=e.menuItems.find(e=>this.displayMenuList[e].itemAvailable&&this.displayMenuList[e].itemOperational&&this.displayMenuList[e].outletAvailable&&this.displayMenuList[e].outletOperational),n||(e.isCollapsed=!0))})}checkDeliveryType(){var e,n,t,i,s,o;console.log("Checking Delivery Type: ",this.outletObj.config.delivery);const a=u.YG.yourPlateItems;!this.outletObj.config.delivery||(null===(n=null===(e=this.outletObj.config.delivery)||void 0===e?void 0:e.types)||void 0===n?void 0:n.onDemand)||(null===(i=null===(t=this.outletObj.config.delivery)||void 0===t?void 0:t.types)||void 0===i?void 0:i.scheduled)?(this.deliveryType="delivery",u.YG.deliveryType="delivery"):(this.deliveryType="self-pickup",u.YG.deliveryType="self-pickup"),a&&(null===(s=a.outlets[0])||void 0===s?void 0:s.outletId)===this.outletId&&(this.deliveryType=(null===(o=a.deliveryInfo)||void 0===o?void 0:o.selfPickup)?"self-pickup":"delivery")}showDeliverySelection(){var e,n,t,i,s,o;const a=null===(n=null===(e=this.outletObj)||void 0===e?void 0:e.config)||void 0===n?void 0:n.delivery;if(a)return a.canSelfPickup?!(!(null===(t=null==a?void 0:a.types)||void 0===t?void 0:t.onDemand)&&!(null===(i=null==a?void 0:a.types)||void 0===i?void 0:i.scheduled)):((null===(s=null==a?void 0:a.types)||void 0===s?void 0:s.onDemand)||(null===(o=null==a?void 0:a.types)||void 0===o||o.scheduled),!1)}getRatingValue(){this.outletObj.ratingCount&&""!=this.outletObj.ratingCount&&(this.outletObj.ratingMul100=this.outletObj.ratingCount)}slideChanged(e){this.slides.getActiveIndex().then(e=>{var n,t;console.log(e),this.sliderCurrentPage=e+1;const i=document.querySelectorAll(".swiper-indicator");console.log(this.sliderCurrentPage,(null===(n=this.outletObj)||void 0===n?void 0:n.offerDetails.length)-1),e>=2&&e!==(null===(t=this.outletObj)||void 0===t?void 0:t.offerDetails.length)-1?i[1].classList.contains("swiper-indicator-active-copy")||i[1].classList.add("swiper-indicator-active-copy"):i[1].classList.remove("swiper-indicator-active-copy")})}onOpenDeliveryModal(){if(!this.showDeliverySelection())return!0;const e=this.modalService.open(j.j,(0,f.iE)("FROM_BOTTOM_MODAL"));this.modalService&&u.YG.modalCloseAnimation$.next("bottom"),e.componentInstance.modalObj=this.deliveryType,e.result.then(e=>(0,i.mG)(this,void 0,void 0,function*(){var n;this.deliveryType=e.name,u.YG.deliveryType=this.deliveryType;const t=u.YG.yourPlateItems;t&&(null===(n=t.outlets[0])||void 0===n?void 0:n.outletId)===this.outletId&&("delivery"===this.deliveryType?yield this.menuItemService.noSelfPickupOrder():yield this.menuItemService.selfPickupOrder())})).catch(e=>{console.log(e)})}openTermsAndCondModal(e){}getOutletDistance(){console.log(this.outletGroup,this.outletObj);const e=this.outletGroup.find(e=>e.outletId===this.outletObj.outletId);this.outletObj.distance=e.distance}outletGroups(){this.menuItemService.getOutletGroup(this.outletObj.restId).then(e=>{const n=e.body.data.outlets;n&&n.length>0&&(this.outletGroup=n,this.getOutletDistance())})}getColorNumber(e){return e%3}onChangeOutlet(){if(!(this.outletGroup&&this.outletGroup.length>1))return!1;{const e=this.modalService.open(B,(0,f.iE)("FROM_BOTTOM_MODAL"));this.modalService&&u.YG.modalCloseAnimation$.next("bottom"),console.log(g);const n={outlets:this.outletGroup,currentOutlet:this.outletObj};console.log(this.outletGroup),e.componentInstance.modalObj=n,e.result.then(e=>(0,i.mG)(this,void 0,void 0,function*(){e&&setTimeout(()=>{this.skeletonLoading=!0,this.outletId=e.outletId,this.isOutletchanged=!0,this.getMenuItems()},500)})).catch(e=>{console.log(e)})}}getMenuCategories(){if(this.categoryLists&&this.categoryLists.length>0){const e=this.modalService.open(h.B,(0,f.iE)("MENU_CATEGORY_CONFIG"));this.modalService&&u.YG.modalCloseAnimation$.next("center-menu");const n=document.querySelector(".menu-cat-button");this.renderer.setStyle(n,"display","none");const t={categoryLists:this.categoryLists,currentlyActiveMenu:this.currentlyActiveMenu};e.componentInstance.modalObj=t,e.result.then(e=>{if(console.log(e),this.renderer.setStyle(n,"display","block"),e){const n=document.getElementById(e);console.log(n);let t=this.statusBarHeight>20?30:0;const i=document.querySelector(".back-button").clientHeight,s=document.querySelector(".body-veg-filter-sec").clientHeight,o=document.querySelector(".cat-menu").clientHeight,a=document.querySelector(".outlet-image").clientHeight;console.log(i,s,o,a);let r=0;r=this.categoryLists[0].name.toLowerCase()===e.toLowerCase()?n.offsetTop+a+15-(s+i+o+t):n.offsetTop+a-(s+i+o+20+t),this.content.scrollToPoint(0,r,300),this.analyticsService.cleverTapEvent(c.N.CATEGORY_CLICKED,(0,m.O5)(this.outletObj))}}).catch(e=>{this.renderer.setStyle(n,"display","block"),console.log()})}}toggle(e,n,t,i){const s=document.getElementById(`${n}li`);
1if("subCat"===i){this.categoryLists[e].subCategories[t].isCollapsed=!this.categoryLists[e].subCategories[t].isCollapsed;const n=this.categoryLists[e].subCategories.filter(e=>e.isCollapsed);let i=this.categoryLists[e].subCategories.length;n&&n.length===this.categoryLists[e].subCategories.length?(this.renderer.setStyle(s,"padding-bottom","16px"),this.renderer.addClass(s,"remove-border-radius"),this.renderer.removeClass(s,"enable-border-radius")):n&&n.length>0&&n.catId!==this.categoryLists[e].subCategories[i-1].catId&&!0===this.categoryLists[e].subCategories[i-1].isCollapsed?(this.renderer.addClass(s,"enable-border-radius"),this.renderer.removeClass(s,"remove-border-radius"),this.renderer.setStyle(s,"padding-bottom","16px")):(this.renderer.addClass(s,"enable-border-radius"),this.renderer.removeClass(s,"remove-border-radius"),this.renderer.setStyle(s,"padding-bottom","0px"))}else this.categoryLists[e].isCollapsed=!this.categoryLists[e].isCollapsed,this.categoryLists[e].isCollapsed?(this.renderer.addClass(s,"remove-border-radius"),this.renderer.removeClass(s,"enable-border-radius")):(this.renderer.addClass(s,"enable-border-radius"),this.renderer.removeClass(s,"remove-border-radius"))}getCollapsed(e){return e.hasSubCategories?!!e.subCategories.find(e=>e.isCollapsed):!e.isCollapsed}onVegOnlyFilter(e){return(0,i.mG)(this,void 0,void 0,function*(){this.isNonVeg=e.target.checked,this.isNonVeg?(this.categoryLists=this.vegCategoryList,this.orderAgainItems=this.vegOnlyOrderAgainMenuList,yield this.categoryCollapsed()):(this.categoryLists=this.categoryListCopy,this.orderAgainItems=this.orderAgainItemsCopy,yield this.categoryCollapsed()),this.sortingCategory(),this.analyticsService.cleverTapEvent(c.N.VEG_TOGGLED,(0,m.YV)(this.outletObj,this.isNonVeg))})}onSearchItem(){const e={items:this.displayMenuList,outletObj:this.outletObj},n=this.modalService.open(C,(0,f.iE)("FROM_BOTTOM_MODAL"));this.modalService&&u.YG.modalCloseAnimation$.next("bottom"),n.componentInstance.modalObj=e,n.componentInstance.queryData=this.queryData,n.result.then(e=>{}).catch(e=>{console.log()})}logScrolling(e){var n,t,i;const s=e.detail.scrollTop;if(!this.errorCode){const e=document.getElementById("restNameHeader"),o=document.querySelector(".rest-icons"),a=document.querySelector(".icon-arrow-long-back"),r=document.getElementById("shadowEnable"),l=document.querySelector(".body-veg-filter-sec"),d=document.querySelector(".header-filter-sec"),c=document.querySelector(".outlet-image").clientHeight,m=document.querySelector(".header-category-sec"),p=document.querySelectorAll(".menu-list"),u=document.querySelector(".back-button").clientHeight,g=document.querySelector(".outlet-details-sec");let h=this.statusBarHeight>20?30:0;if(s>10?(this.statusBar.isVisible||(this.statusBar.isVisible=!0,this.statusBar.backgroundColorByHexString("#ffffff")),this.renderer.setStyle(e,"opacity","1"),this.renderer.setStyle(o,"opacity","1"),this.renderer.removeClass(a,"back-button-background"),this.renderer.addClass(r,"header-background")):(this.statusBar.isVisible&&(this.statusBar.isVisible=!1,this.statusBar.backgroundColorByHexString("#00000000")),this.renderer.setStyle(e,"opacity","0"),this.renderer.setStyle(o,"opacity","0"),this.renderer.addClass(a,"back-button-background"),this.renderer.removeClass(r,"header-background")),"off"!==this.outletObj.available){if(this.categoryLists&&this.categoryLists.length>0){const e=null===(n=document.querySelector(".cat-menu"))||void 0===n?void 0:n.clientHeight,o=c-(l.clientHeight+e+u+25+h);s>l.offsetTop+c-l.clientHeight-30-h?this.renderer.setStyle(d,"display","block"):this.renderer.setStyle(d,"display","none"),s>l.offsetTop+c-60-h?this.renderer.addClass(m,"header-cat-anmi"):(this.renderer.removeClass(m,"header-cat-anmi"),this.itemCounter=0),s-(null===(t=p[this.itemCounter])||void 0===t?void 0:t.offsetTop)-o>0?(this.currentlyActiveMenu=this.getMenuNameLength(this.categoryLists[this.itemCounter]),this.itemCounter+=1):s-(null===(i=p[this.itemCounter-1])||void 0===i?void 0:i.offsetTop)-o<0&&(this.itemCounter-=1,this.currentlyActiveMenu=this.getMenuNameLength(this.categoryLists[this.itemCounter-1]))}}else{const e=document.querySelector(".header-outlet-unavailable");s>c-g.clientHeight-h-30?this.renderer.addClass(e,"header-unavl-anmi"):this.renderer.removeClass(e,"header-unavl-anmi")}}}getMenuNameLength(e){let n=e.menuItems.length;
1return e.hasSubCategories&&(n=0,e.subCategories.forEach(e=>{n+=e.menuItems.length})),console.log(n),`${null==e?void 0:e.name} [${n}]`}ngAfterViewInit(){return(0,i.mG)(this,void 0,void 0,function*(){this.statusBar.isVisible=!1})}showViewPlateHeight(e){let n=20;this.platform.is("ios")&&this.platform.height()>780&&(n=30),e>0&&(n=e+32,this.platform.is("ios")&&this.platform.height()>780&&(n=e+56));const t=document.querySelector(".menu-cat-button");this.renderer.setStyle(t,"bottom",n+"px")}addFavourite(e){const n={isFav:!e,ids:[this.outletId],type:"outlet"};this.menuItemService.addFavourite(n).then(n=>{this.outletObj.favorite=!e})}getCuisines(e){const n=e.split(",");return(0,v.N5)(n)}navigateBack(){if(this.cacheService.setqueryParams(""),this.analyticsService.cleverTapEvent(c.N.OUTLET_EXITED,(0,m.N9)(this.outletObj?this.outletObj:"",this.promoId)),"/home"===this.redirectUrl)this.navCtrl.navigateBack(["/home"]);else if(this.redirectUrl){const e=this.handleBackButtonFun(this.params);this.navCtrl.navigateBack([this.redirectUrl],e)}else this.navCtrl.navigateBack(["/home"])}getNewOfferStr(e){return e.value.maxDiscount>0?`${e.value.discountValue}% off upto \u20b9${e.value.maxDiscount}`:`Flat ${e.value.discountValue}% off`}ngOnDestroy(){this.statusBar.isVisible=!0,this.statusBar.overlaysWebView(!0),this.statusBar.styleDefault()}};P.ctorParameters=()=>[{type:l.p},{type:d.FF},{type:s.Renderer2},{type:a.gz},{type:o.Ye},{type:a.F0},{type:O.y},{type:S.SH},{type:s.NgZone},{type:D.Q},{type:M.A},{type:S.t4},{type:U.O}],P.propDecorators={slides:[{type:s.ViewChild,args:["slides"]}],content:[{type:s.ViewChild,args:[S.W2,{static:!1}]}]},P=(0,i.gn)([(0,s.Component)({template:""})],P);let z=class extends P{constructor(e,n,t,i,s,o,a,r,l,d,c,m,p){super(e,n,t,i,s,o,a,r,l,d,c,m,p)}ngOnInit(){}};z.ctorParameters=()=>[{type:l.p},{type:d.FF},{type:s.Renderer2},{type:a.gz},{type:o.Ye},{type:a.F0},{type:O.y},{type:S.SH},{type:s.NgZone},{type:D.Q},{type:M.A},{type:S.t4},{type:U.O}],z=(0,i.gn)([(0,s.Component)({selector:"app-restaurant-details-mobile",template:'<div class="outlet-skeleton-view" *ngIf="skeletonLoading">\n <app-outlet-skeleton-loader></app-outlet-skeleton-loader>\n</div>\n<ion-header class="header ion-no-border position-relative">\n <div class="header-outlet-name-sec position-absolute" id="shadowEnable" [ngStyle]="{\'top\':statusBarHeight + \'px\'}">\n <div class="header-inner d-flex align-items-center justify-content-between">\n <div class="d-flex align-items-center back-button ">\n <span class="icon-arrow-long-back back-button-background fs-16 " (click)="navigateBack()"> </span>\n <p id="restNameHeader" class="fs-18 pl-2 sitefontextrabold fw-8" *ngIf="outletObj && outletObj?.outletName">\n {{ outletObj?.outletName }}\n </p>\n </div>\n <div class="d-flex align-items-center rest-icons" *ngIf="!errorCode && errorCode !== 1020">\n <span (click)="onSearchItem()" class="icon-search p-2 fs-28"></span>\n <div class="d-flex" (click)="addFavourite(outletObj?.favorite)">\n <span *ngIf="!outletObj?.favorite" class="icon-favorite p-2 fs-24"></span>\n <span *ngIf="outletObj?.favorite" class="icon-heart p-2 fs-24"></span>\n </div>\n </div>\n </div>\n <ng-template #vegNonVegSec>\n <div class="veg-non-veg-filter px-2" *ngIf="(categoryListCopy && categoryListCopy.length > 0) ">\n <div class="filter-view d-flex align-items-center ">\n <div class="pure-veg d-flex align-items-center" *ngIf="outletObj?.config && outletObj?.config?.pureVeg">\n <span class="mr-2"><img src="assets/icon/common/veg.svg" alt="" /></span>\n <p class="fs-14 mt-1 sitefontextrabold fw-8 weird-green">Pure veg</p>\n </div>\n <div class="veg-nonveg-sec d-flex align-items-center"\n *ngIf="outletObj?.config && !outletObj?.config?.pureVeg">\n <div class="d-flex align-items-center">\n <span class="fs-14 sitefontextrabold fw-8"> Veg </span>\n <label class="switch mx-2 mb-0">\n <input type="checkbox" [checked]="isNonVeg" (change)="onVegOnlyFilter($event)" />
1\n <span class="slider round veg-toggle"></span>\n </label>\n </div>\n </div>\n <div class="d-flex align-items-center additional-filter pl-2" *ngIf="false">\n <p class="fs-14 sitefontbold fw-8 mr-2">Bestsellers</p>\n <p class="fs-14 sitefontbold fw-8">Unavailable</p>\n </div>\n </div>\n </div>\n </ng-template>\n <div class="header-filter-sec" *ngIf="outletObj && outletObj?.available !== \'off\'">\n <ng-container *ngTemplateOutlet="vegNonVegSec"></ng-container>\n </div>\n <div class="header-category-sec mx-2" *ngIf="outletObj && outletObj?.available !== \'off\'">\n <p class="fs-14 sitefontbold fw-8 py-2 text-capitalize">{{currentlyActiveMenu}}</p>\n </div>\n <div *ngIf="outletObj && outletObj?.available === \'off\'" class="header-outlet-unavailable align-items-center">\n <img src="assets/icon/common/clock-black.svg" alt="" width="20px" height="20px">\n <p class="fs-14 sitefontblod pl-2 ml-1 fw-6">\n Outlet is unavailable at this time\n </p>\n </div>\n </div>\n</ion-header>\n<ion-content [scrollEvents]="true" *ngIf="!skeletonLoading && !errorCode" (ionScroll)="logScrolling($event)">\n <div [ngClass]="{ \'no-lic\': !outletObj?.lic }" *ngIf="outletObj">\n <div class="outlet-image">\n <img [src]="outletObj?.imageUrl" alt="">\n </div>\n <div class="position-relative">\n <div class="position-absolute outlet-details-sec">\n <div *ngIf="outletObj?.available === \'off\'" class="outlet-unavailable d-flex align-items-center">\n <img src="assets/icon/common/clock-black.svg" alt="" width="20px" height="20px">\n <p class="fs-14 sitefontblod pl-2 ml-1 fw-6">\n Outlet is unavailable at this time\n </p>\n </div>\n <div class="d-flex align-items-start justify-content-between">\n <div class="outlet-info">\n <p class="sitefontextrabold fs-20 fw-8 text-capitalize outlet-name" [ngStyle]="{\'color\':outletObj?.available === \'off\'? \'#838383\' :\'\n #3E2743\' }">{{outletObj?.outletName}}</p>\n <div>\n <p *ngIf="outletObj?.cuisines" class="fs-14 sitefontmedium pt-2 outlet-cuisines primary-grey-3">\n {{outletObj?.cuisines}}\n </p>\n <p (click)="onChangeOutlet()" *ngIf="outletObj?.locality"\n class="fs-14 sitefontmedium pt-2 d-flex align-items-center primary-grey-3">\n <span class="limit-line-length-1" style="max-width:65%;">{{ outletObj?.locality }} </span>\n <span class="sitefontmedium dark-black-clr ml-1 primary-grey-3" *ngIf="outletObj?.distance">\n {{ " | " + outletObj.distance + " kms" }}</span>\n <span *ngIf="outletGroup && outletGroup.length > 1" class="fs-12 icon-arrow-angle-forward"></span>\n </p>\n </div>\n </div>\n <div class="outlet-timing-info d-flex align-items-center flex-column mt-1" *ngIf="outletObj?.deliveryTime">\n <img src="assets/icon/common/clock-black.svg" alt="" width="28px" height="28px">\n <p class="fs-12 sitefontmedium py-1">{{outletObj?.deliveryTime}} mins</p>\n <p class="closing-text fs-12 sitefontmedium text-center" style="width: 75%;" *ngIf="false">Closes soon</p>\n </div>\n </div>\n <div class="h-divider"></div>\n <div class="d-flex align-items-center justify-content-between outlet-type m-0"\n [ngClass]="{\'justify-content-between\':outletObj?.costForTwo}">\n <div class="p-0 delivery-mode" (click)="onOpenDeliveryModal()">\n <p class="d-flex align-items-center">\n <span class="fs-14 sitefontmedium primary-cta">Order Mode\n </span>\n <span *ngIf="showDeliverySelection()" class="fs-12 icon-arrow-angle-forward"></span>\n </p>\n <p class="fs-12 sitefontmedium text-capitalize primary-grey-3">{{ deliveryType }}</p>\n </div>\n <div class="pt-0 pr-0 pb-0 rating"\n [ngStyle]="{\'padding-left\': (outletObj?.costForTwo || outletObj?.costForOne) ? \'0p
1x\' : \'32px\'}">\n <p class="d-flex">\n <span class="fs-14 icon-star primary-cta mr-1"></span>\n <span class="fs-14 sitefontmedium primary-cta" *ngIf="outletObj?.rating">{{\n outletObj?.rating | number: "1.1-1"\n }}</span>\n <span class="fs-14 sitefontmedium shk-black-clr" *ngIf="!outletObj?.rating">NA</span>\n </p>\n <p class="fs-12 sitefontmedium primary-grey-3" *ngIf="outletObj?.ratingMul100 && outletObj?.ratingMul100 != \'\' && outletObj?.rating">\n {{ outletObj?.ratingMul100 }}+ ratings\n </p>\n <p class="fs-12 sitefontmedium text-center primary-grey-3" *ngIf="!(outletObj?.ratingMul100 && outletObj?.ratingMul100 != \'\')">NA\n \x3c!-- <span class="icon-minus fs-18 primary-grey-3" style="padding-left: 18px;"></span> --\x3e\n </p>\n </div>\n <div class="p-0 preference " *ngIf="outletObj?.costForTwo">\n <p class="d-flex align-items-center">\n <span class="mr-1 fs-14 primary-cta">\u20b9</span>\n <span class="fs-14 sitefontmedium primary-cta">\n {{ outletObj?.costForTwo }}</span>\n </p>\n <p class="fs-12 sitefontmedium primary-grey-3">Cost of two</p>\n </div>\n <div class="p-0 preference " *ngIf="outletObj?.costForOne">\n <p class="d-flex align-items-center">\n <span class="mr-1 fs-14 primary-cta">\u20b9</span>\n <span class="fs-14 sitefontmedium primary-cta">\n {{ outletObj?.costForOne }}</span>\n </p>\n <p class="fs-12 sitefontmedium primary-grey-3">Cost of one</p>\n </div>\n </div>\n\n </div>\n <div class="position-absolute offer-sec"\n [ngClass]="{\'no-offer-sec\':(!outletObj?.offerDetails || !(outletObj?.offerDetails.length > 0))}">\n <div class="drop-shadow-offer-sec">\n\n </div>\n <div class="offer-details-sec position-absolute"\n *ngIf="outletObj?.offerDetails && outletObj?.offerDetails.length > 0">\n <div class="custom-scrollbar-offer">\n <div class="container-fluid position-relative">\n <div class="row flex-row flex-nowrap" style="width: 85%;">\n <ion-slides class="m-0 position-static" #slides [options]="slideOpts"\n (ionSlideWillChange)="slideChanged($event)">\n <ion-slide class="d-flex align-items-center justify-content-start" *ngFor="\n let offerDetail of outletObj?.offerDetails;\n let i = index\n " (click)="openTermsAndCondModal(offerDetail)">
1\n <span style="margin-top: 1px" class="icon-offer fs-50"></span>\n <div class="offer-text mt-1">\n <div>\n <p class="sitefontextrabold fw-8 fs-18 ml-2 shk-black-cl fw-8"\n *ngIf="offerDetail.discountType === \'percentage\'">\n {{getNewOfferStr(offerDetail)}}\n </p>\n <p class="sitefontbold fw-8 fs-18 ml-2 shk-black-cl fw-8"\n *ngIf="offerDetail.discountType === \'net\'">\n {{offerDetail.description}}</p>\n </div>\n <div class="d-flex align-items-center">\n <p class="sitefontmedium primary-cta fs-12 ml-2 fw-5">USE {{offerDetail.couponCode}}</p>\n <p class="sitefontmedium primary-cta fs-12 ml-2 fw-5" *ngIf="offerDetail.minOrderAmount > 0"> |\n <span class="ml-1">{{ "ABOVE \u20b9"+offerDetail.minOrderAmount}}</span>\n </p>\n </div>\n </div>\n </ion-slide>\n </ion-slides>\n <div class="slider-page-num" *ngIf="outletObj.offerDetails && outletObj.offerDetails.length > 1">\n <div class="d-flex align-items-center flex-column">\n <p class="text-center fs-14 sitefontbold fw-8">{{sliderCurrentPage}} /\n {{outletObj.offerDetails.length}}</p>\n <div class="d-flex ">\n <span class="swiper-indicator" *ngFor="let offer of outletObj?.offerDetails;let i = index"\n [ngClass]="{\'inactiveClass\': i >= 2,\'activeClass\':i === outletObj?.offerDetails.length -1,\'swiper-indicator-active\': i===sliderCurrentPage-1}"></span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="menu-items-sec position-relative"\n [ngStyle]="{\'paddingTop\':(!outletObj.offerDetails || !(outletObj.offerDetails.length > 0)) ? (80+\'px\') : 150+\'px\'}">\n \x3c!-- ORDER AGAIN SEC --\x3e\n <div class="order-again-item-filter-sec"\n [ngClass]="{\'orderAgain-sec\': (orderAgainItems && orderAgainItems.length > 0)}"\n *ngIf="categoryListCopy && categoryListCopy.length > 0">\n <div *ngIf="orderAgainItems && orderAgainItems.length > 0">\n <app-outlet-order-again [menuItemsList]="displayMenuList" [outletObj]="outletObj"\n [orderAgainLists]="orderAgainItems">\n </app-outlet-order-again>\n </div>\n <div class="h-divider mx-3" *ngIf="orderAgainItems && orderAgainItems.length > 0"></div>\n <div class="px-2 body-veg-filter-sec">\n <ng-container *ngTemplateOutlet="vegNonVegSec"></ng-container>\n </div>\n </div>\n \x3c!--MENU SECTION --\x3e\n\n <div class="menu-section" *ngIf="categoryLists && categoryLists.length > 0">\n <ul id="accordion" class="accordion p-0 m-0" style="list-style: none;">\n <li *ngFor="let categoryList of categoryLists let i = index" class="menu-list"\n [id]="categoryList.catId + \'li\'"\n [class.active]="categoryList.isCollapsed === false"\n [ngClass]="{\'remove-border-radius\':categoryList.isCollapsed !== false}">\n \x3c!-- --\x3e\n <ng-container *ngIf="categoryList[\'hasSubCategories\'] === true ;\n then subCatSec;\n else catSec\n ">\n </ng-container>\n <ng-template #subCatSec>\n <div *ngIf="(categoryList[\'subCategories\'] && categoryList[\'subCategories\'].length > 0)"\n class="menu d-flex align-items-center justify-content-between px-3" [id]="categoryList.catId">\n <p class="fs-18 sitefontextrabold fw-8 pt-3 fw-8 text-capitalize ">{{categoryList.name }}\n </p>\n </div>\n <li class="subCat-sec" *ngFor="let subCat of categoryList[\'subCategories\'];let id=index"\n [class.active]="!subCat.isCollapsed">\n <div class="sub-cat-menu d-flex align-items-center justify-content-between px-3"\n (click)="toggle(i,categoryList.catId,id,\'subCat\')" [id]="subCat.catId">\n <p class="fs-14 sitefontmedium pt-3 fw-5 text-capitalize">{{subCat.name +\' [\' +\n subCat[\'menuItems\'].length + \']\'}}</p>
1\n <span class="fs-14 icon-arrow-angle-back"></span>\n </div>\n <ul class="submenu m-0 " #submenu style="list-style: none;"\n [style.height.px]="!subCat.isCollapsed ? submenu.scrollHeight : 0">\n <li *ngFor="let menuListId of subCat[\'menuItems\'];let i = index" class="pt-3"\n [ngStyle]="{\'padding-bottom\': i === (subCat[\'menuItems\'].length - 1)?\'16px\':\'0px\' }">\n <app-menu-items [menuItems]="displayMenuList[menuListId]" [outletObj]="outletObj" [fromSearch]="false">\n </app-menu-items>\n </li>\n </ul>\n </li>\n </ng-template>\n <ng-template #catSec>\n <div *ngIf="(categoryList[\'menuItems\'] && categoryList[\'menuItems\'].length > 0)"\n class="cat-menu d-flex align-items-center justify-content-between px-3"\n (click)="toggle(i,categoryList.catId)" [id]="categoryList.catId ? categoryList.catId:categoryList.name">\n <p class="fs-18 sitefontextrabold fw-8 pt-3 fw-8 text-capitalize">{{categoryList.name + \' [\' +\n categoryList[\'menuItems\'].length + \']\'}}</p>\n <span class="fs-14 icon-arrow-angle-back"></span>\n </div>\n <ul class="submenu m-0 " #submenu style="list-style: none;"\n [style.height.px]="!categoryList.isCollapsed ? submenu.scrollHeight : 0">\n\n <li *ngFor="let menuListId of categoryList[\'menuItems\'];let i = index" class="pt-3"\n [ngStyle]="{\'padding-bottom\': i === (categoryList[\'menuItems\'].length - 1)?\'16px\':\'0px\' }">\n <app-menu-items [menuItems]="displayMenuList[menuListId]" [outletObj]="outletObj" [fromSearch]="false">\n </app-menu-items>\n </li>\n </ul>\n </ng-template>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf="categoryLists && !(categoryLists.length > 0)">\n <p class="sitefontmedium text-center my-5 pb-2">No Items Found</p>\n\n </div>\n <div class="lic-section" *ngIf="outletObj?.lic && displayMenuList && categoryLists">\n <div class="d-flex align-items-center">\n <img src="assets/images/fssai-logo.svg" alt="" />\n <p class="fs-12 sitefontmedium primary-clr mt-2 pl-4">\n License No : {{ outletObj?.lic }}\n </p>\n </div>\n </div>\n </div>\n</ion-content>\n\n\x3c!-- OUTLET UNAV SECTION --\x3e\n\n<div *ngIf="errorCode && (errorCode === 1020 || errorCode === 1023)" class="outlet-unaval-sec">\n <div class="position-relative">\n <img src="assets/icon/store-unaval.png" alt="" />\n <div *ngIf="errorCode === 1024">\n <p class="fs-14 sitefontbold fw-8 black-clr pt-2">Just a little too far.</p>\n <p class="fs-12 sitefontnormal primary-grey-2 w-75 m-auto pt-2">\n Sorry, this restaurant doesn\'t deliver to this location. Try a different\n one.\n </p>\n </div>\n <div *ngIf="errorCode === 1023">\n <p class="fs-14 sitefontbold fw-8 black-clr pt-2">Our restaurants around you are closed !</p>\n <p class="fs-12 sitefontnormal primary-grey-2 w-75 m-auto pt-2">\n You can check back in at 7 AM to fulfill your cravings!\n </p>\n </div>\n <div *ngIf="errorCode === 1020">\n <p class="fs-14 sitefontbold fw-8 black-clr pt-2">We\'re not here yet.</p>\n <p class="fs-12 sitefontnormal primary-grey-2 w-75 m-auto pt-2">\n Sorry, we don\u2019t deliver here. Please check back soon, or try another location.\n </p>\n </div>\n </div>\n</div>\n\n\x3c!-- MENU CAT BUTTON SECTION --\x3e\n\n<ion-col class="menu-cat-button" style="z-index:10;" *ngIf="categoryLists && categoryLists.length >0">\n <button class="fs-16" (click)="getMenuCategories()">\n <div class="d-flex align-items-center">\n <div class="icon-circle">\n <span class="icon-menu-icon fs-24"></span>\n </div>
1\n <span class="ml-2 white-clr fs-14 sitefontextrabold fw-8 fw-8">Menu</span>\n </div>\n </button>\n</ion-col>\n\n\x3c!--FOOTER SECTION --\x3e\n<ion-footer *ngIf="isPlateItems && !skeletonLoading && !errorCode" class="ion-no-border cart-footer"\n [ngClass]="{ \'lic-no\': outletObj?.lic, \'cart-details-footer\': isPlateItems }">\n <app-view-plate-card [queryParams]="queryData" [outlet]="outletObj" (showAnimation)="showAnimation($event)"\n (showViewPlateHeight)="showViewPlateHeight($event)">\n </app-view-plate-card>\n</ion-footer>',styles:[r]})],z);var N=t(83993),F=t(32939),V=t(55827),E=t(27305),q=t(47243);let G=class{constructor(e,n,t,i,s){this.menuAddService=e,this.menuItemService=n,this.modalService=t,this.renderer=s,this.offerPrice=0;let o=!1;this.menuItemService.isAddonVarientModalOpened.subscribe(e=>{e&&(console.log("opened"),o=!0),i.onPopState(()=>{console.log("pressed back"),o&&history.go(1)})})}ngOnInit(){this.fromSearch?this.menuAddService.fromSearch=!0:this.menuAddService.fromSearch=!1}ngAfterViewInit(){setTimeout(()=>{console.log(this.itemHeight.nativeElement.clientHeight),this.itemSecHeight=this.itemHeight.nativeElement.clientHeight},10)}getVegNonVegImg(e,n){return(0,V.kH)(e,n)}onAddItemInCart(e){this.menuAddService.onAddItem(e)}onItemDecrease(e){this.menuAddService.onItemDecrease(e)}onItemIncrease(e){this.menuAddService.onItemIncrease(e)}showQty(e){return this.menuItemService.onDisplayQuantity(e)}increaseShow(e,n){n.showDescriptionLength=e}capitalizeFirstString(e){return(0,v.r8)(e)}trackByItemId(e,n){return n.itemId}getOfferPrice(e,n){return this.offerPrice=this.menuItemService.getOfferPrice(e,n),this.offerPrice}onOpenMenuDesc(e){console.log(e);const n=this.modalService.open(q.J,(0,f.iE)("FROM_BOTTOM_MODAL"));this.modalService&&u.YG.modalCloseAnimation$.next("bottom"),n.componentInstance.modalObj=e}setDiscountVal(e){return!!(e.price&&e.price<e.originalPrice)}};G.ctorParameters=()=>[{type:E.r},{type:l.p},{type:d.FF},{type:o.lw},{type:s.Renderer2}],G.propDecorators={menuItems:[{type:s.Input}],outletObj:[{type:s.Input}],showCatName:[{type:s.Input}],fromSearch:[{type:s.Input}],itemHeight:[{type:s.ViewChild,args:["itemHeight",{static:!0}]}]},G=(0,i.gn)([(0,s.Component)({selector:"app-menu-items",template:'<div class="menu-lists-sec"\n [ngClass]="{\'non-img-sec\':!(menuItems?.imageUrl),\'non-addons-img-padding\':(!(menuItems.addons.length > 0) && !menuItems?.imageUrl)}">\n <div class="items-body px-2 mx-1 pt-2 pb-1 justify-content-between" [ngClass]="{\n \'outlet-unavailable\':\n (menuItems.itemAvailable !== true ||\n menuItems.itemOperational !== true ||\n menuItems.outletAvailable !== true ||\n menuItems.outletOperational !== true )||\n outletObj?.available === \'off\',\'groupBuyDealsTarget\': menuItems?.groupBuy?.maxLimitOfUnits && (menuItems?.groupBuy?.maxLimitOfUnits - menuItems?.groupBuy?.currentUnitsOrdered) > 0,\'groupBuyDealsTargetReached\': menuItems?.groupBuy?.maxLimitOfUnits && (menuItems?.groupBuy?.maxLimitOfUnits - menuItems?.groupBuy?.currentUnitsOrdered) <= 0\n }">\n <ng-template #buttonSec>\n <ng-container *ngIf="\n menuItems.itemAvailable === true &&\n menuItems.itemOperational === true &&\n menuItems.outletAvailable === true &&\n menuItems.outletOperational === true &&\n outletObj?.available !== \'off\';\n then enableBtn;\n else disabledBtn\n ">\n </ng-container>\n\n\n <ng-template #enableBtn>\n <div class="item-add-sec"\n [ngClass]="{\'non-img-sec-item-add\':!(menuItems?.imageUrl), \'groupBuyDeals\': menuItems?.groupBuy && menuItems?.groupBuy?.maxLimitOfUnits}">\n <div id="btn{{menuItems.itemId}}" class="item-add-amount-sec">\n <div *ngIf="showQty(menuItems) === 0 " class="add-btn-text position-relative">\n <button class="sitefontextrabold fw-8 fs-14" (click)="onAddItemInCart(menuItems)">\n ADD\n </button>\n <div class="line-loader" [id]="(fromSearch ? \'loaderSearch\' : \'loader\') + menuItems.itemId">\n <div class="loader-element"></div>\n </div>\n </div>\n </div>\n <div class="with-qty-view d-flex align-items-center justify-content-between position-relative\n sitefontmedium" *ngIf="showQty(menuItems) > 0 ">
1\n <span class="sitefontextrabold fw-8" style="margin-top: 2px;" (click)="onItemDecrease(menuItems)">\n <span class="icon-minus fs-18"></span>\n </span>\n <span class="sitefontextrabold fw-8 fs-16" id="{{ menuItems?.itemId }}size">{{\n showQty(menuItems) }}</span>\n <span class="sitefontextrabold fw-8" style="margin-top: 1px;" (click)="onItemIncrease(menuItems)">\n <span class="icon-plus fs-20"></span>\n </span>\n <div class="line-loader" [id]=" (fromSearch ? \'loaderSearch\' : \'loader\') + menuItems.itemId ">\n <div class="loader-element"></div>\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template #disabledBtn>\n <button class="sitefontbold fw-8 fs-14 item-unaval-btn">\n Unavailable\n </button>\n </ng-template>\n <p class="customizable-txt sitefontmedium fs-12" style="color: #8A8A8A;" *ngIf="menuItems.addons.length > 0">\n Customizable\n </p>\n </ng-template>\n <ng-template #groupBuyDealSec>\n <div class="pt-2 mt-1">\n <div class="slider-section"\n [ngClass]="{\'maxLimitReached\':(menuItems?.groupBuy?.maxLimitOfUnits - menuItems?.groupBuy?.currentUnitsOrdered) <= 0,\'search-sec\':fromSearch}">\n <ion-range disabled aria-label="Custom range" class="ion-range-slider" [min]="0" [max]="menuItems?.groupBuy?.maxLimitOfUnits"\n pin="true" [ticks]="true" [value]="menuItems?.groupBuy.currentUnitsOrdered">\n <div class="behind" slot="end">\n <div class="check">\n </div>\n </div>\n </ion-range>\n <div *ngIf="(menuItems?.groupBuy?.maxLimitOfUnits - menuItems?.groupBuy?.currentUnitsOrdered) <= 0">\n <p class="sitefontnormal px-2 fs-10 fw-5">{{menuItems?.groupBuy?.totalUnitsSold}} Units Sold</p>\n </div>\n </div>\n <div *ngIf="(menuItems?.groupBuy?.maxLimitOfUnits - menuItems?.groupBuy?.currentUnitsOrdered) <= 0"\n class="pt-2 mt-1">\n <p class="fs-12 sitefontnormal" style="color: #0B8D31;"> <span class="fs-12 sitefontbold"> Deal\n Unlocked!</span> Get <span class="fs-12 sitefontbold">\n \u20b9{{menuItems?.groupBuy?.groupBuyDealsOfferAmount}} coins</span> & redeem them in <span\n class="fs-12 sitefontbold">\n full!</span>.</p>\n </div>\n <div *ngIf="(menuItems?.groupBuy?.maxLimitOfUnits - menuItems?.groupBuy?.currentUnitsOrdered) > 0"\n class="pt-2 mt-1">\n <p class="fs-12 sitefontnormal" style="color: #8F672A;">Win\n <span class="fs-12 sitefontbold">\n \u20b9{{menuItems?.groupBuy?.groupBuyDealsOfferAmount}} coins</span> (Fully Redeemable) once <span\n class="fs-12 sitefontbold">\n {{menuItems?.groupBuy?.maxLimitOfUnits}} orders </span>are reached.\n </p>\n </div>\n </div>\n\n </ng-template>\n\n\n <div #itemHeight class="items-section pt-1"\n [ngClass]="(menuItems?.imageUrl)? \'WidthContainer\':\'maximumWidthContainer\'">\n <div class="item-indicator-ribbon">\n <img class="mb-1" [src]="getVegNonVegImg(menuItems?.isVeg,menuItems?.containsEgg)">\n <span class="fs-10 sitefontbold fw-8 fw-8 ml-2 text-capitalize" style="position: relative;\n bottom: 2px;" [ngClass]="{\'groupBuyDealRibbon\':menuItems?.groupBuy && menuItems?.groupBuy?.maxLimitOfUnits}"\n *ngIf="menuItems.ribbon">{{menuItems.ribbon\n }}</span>\n </div>\n <div class="pt-2">\n <span class="menu-item-txt text-capitalize fs-16 primary-clr sitefontbold fw-8"\n [ngClass]="(menuItems?.groupBuy && menuItems?.groupBuy?.maxLimitOfUnits)? \'limit-line-length-1\':\'limit-line-length-2\'"\n style="line-height:1.4;">{{\n menuItems.name\n }}</span>\n <div class="menu-item-desc-sec d-flex" [ngClass]="{\'non-img-sec-desc-sec\':!(menuItems?.imageUrl)}">\n <div class="menu-amt-txt dark-black-clr pt-2">\n <p class="d-flex align-items-center" *ngIf="setDiscountVal(menuItems);\n else noOfferPrice">\n <s class="price-line-through pr-2 sitefontmedium fs-14">\n \u20b9{{ menuItems?.originalPrice }}\n </s>
1\n <span class="sitefontextrabold fw-8 fs-16 primary-clr">\u20b9{{ menuItems.price }}</span>\n </p>\n <ng-template #noOfferPrice>\n <p>\n <span class="sitefontextrabold fw-8 fs-16 primary-clr"> \u20b9{{ menuItems.price }}</span>\n </p>\n </ng-template>\n <div class="non-img-custom-button" [ngClass]="{\'addons-text\': menuItems.addons.length > 0}">\n <div *ngIf="!menuItems?.imageUrl">\n <ng-container *ngTemplateOutlet="buttonSec"></ng-container>\n </div>\n </div>\n </div>\n <p class="sitefontmedium text-capitalize menu-dec-txt primary-clr fs-12"\n *ngIf="menuItems.description !== \'\' && (!menuItems?.groupBuy || (menuItems?.groupBuy && !menuItems?.groupBuy?.maxLimitOfUnits))">\n {{\n menuItems?.description\n }}\n </p>\n <div *ngIf="menuItems?.groupBuy && menuItems?.groupBuy?.maxLimitOfUnits">\n <ng-container *ngTemplateOutlet="groupBuyDealSec"></ng-container>\n </div>\n </div>\n </div>\n </div>\n <div class="item-img-sec position-relative"\n [ngClass]="{\'img-paddingMore\':(menuItems.addons.length > 0 && menuItems?.imageUrl)}">\n <div class="text-center d-flex flex-column">\n <div class="image-section" (click)="onOpenMenuDesc(menuItems)" *ngIf="menuItems?.imageUrl">\n <img [src]="\n menuItems?.loaded\n ? menuItems?.imageUrl\n : \'assets/icon/common/yumzy-placeholder_4_3.png\'\n " onerror="this.src=\'assets/icon/Mask Group 62.svg\';" loading="lazy" class="menu-img img-shadow"\n appImgFallback (load)="menuItems.loaded = true"\n [ngStyle]="{\'height\': menuItems.addons.length > 0 ? itemSecHeight - 26 + \'px\' :itemSecHeight - 12 + \'px\' }" />\n </div>\n <div>\n <div class="custom-button text-center w-100" [ngClass]="{\'addons-text\': menuItems.addons.length > 0}">\n <div *ngIf="menuItems?.imageUrl">\n <ng-container *ngTemplateOutlet="buttonSec"></ng-container>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n </div>\n</div>',styles:[F]})],G);let R=class{};R=(0,i.gn)([(0,s.NgModule)({declarations:[G],imports:[o.ez,S.Pc],exports:[G]})],R);var _=t(35168),Y=t(2330),H=t(74592);let Q=class{constructor(e,n,t){this.menuAddService=e,this.menuItemService=n,this.cartCalService=t,this.offerPrice=0,this.slideOpts=(0,f.$t)("BEST_SELLER")}ngOnInit(){}getVegNonVegImg(e,n){return(0,V.kH)(e,n)}onAddItemInCart(e){this.menuAddService.onAddItem(e)}onItemDecrease(e){this.menuAddService.onItemDecrease(e)}onItemIncrease(e){this.menuAddService.onItemIncrease(e)}showQty(e){return this.menuItemService.onDisplayQuantity(e)}getOfferPrice(e,n){return this.offerPrice=this.menuItemService.getOfferPrice(e,n),this.offerPrice}};Q.ctorParameters=()=>[{type:E.r},{type:l.p},{type:H.F}],Q.propDecorators={bestSellerItems:[{type:s.Input}]},Q=(0,i.gn)([(0,s.Component)({selector:"app-best-seller-items",template:'<div class="best-seller py-2">\n <ion-slides [options]="slideOpts">\n <ion-slide *ngFor="let menu of bestSellerItems.list">\n\n \x3c!-- <span class="ribbon fs-10 fw-6 px-1 text-capitalize">{{ menu.ribbon }}</span> --\x3e\n <img [src]="menu?.loaded ? menu?.imageUrl : \'assets/icon/common/yumzy-placeholder_4_3.png\'"\n class="menu-img img-shadow" appImgFallback (load)="menu.loaded = true" loading="lazy" />\n\n <div class="d-flex align-items-baseline pt-2">\n <img [src]="getVegNonVegImg(menu.isVeg,menu.containsEgg)" class="item-type-img mr-1">\n <span class="item-txt">{{menu.name}}</span>\n </div>\n\n <div class="row m-0 d-flex align-items-center pt-2">\n <div class="col-6 amt-txt">\n <p *ngIf="getOfferPrice(menu?.offers,menu?.price);else noOfferPrice">\n <s> <span class="price-line-through"> \u20b9{{ menu.price }} </span> </s>
1\n <span class="pl-1">\u20b9{{ offerPrice | number:\'1.2-2\'}}</span>\n </p>\n\n <ng-template #noOfferPrice>\n <p> <span> \u20b9{{ menu.price }} </span> </p>\n </ng-template>\n </div>\n\n <div class="col-6 pl-0 text-right add-btn" id="btn{{menu?.itemId}}">\n <button class="btn item-add-btn float-right" (click)="onAddItemInCart(menu)"\n *ngIf="(showQty(menu) === 0)">ADD</button>\n <div class="line-loader" id="loader{{menu?.itemId}}">\n <div class="loader-element"></div>\n </div>\n <div class="with-qty-view" *ngIf="(showQty(menu) > 0)">\n <button class="btn btn-minus" (click)="onItemDecrease(menu)"><span>-</span></button>\n <div class="qry-count" id="{{menu.itemId}}size">{{showQty(menu)}}</div>\n <button class="btn btn-plus" (click)="onItemIncrease(menu)"><span>+</span></button>\n </div>\n <div class="line-loader" id="loader{{menu?.itemId}}">\n <div class="loader-element"></div>\n </div>\n <p class="customizable-txt" *ngIf="menu.addons.length > 0">\n Customizable</p>\n </div>\n </div>\n </ion-slide>\n </ion-slides>\n</div>',styles:[Y]})],Q);let $=class{};$=(0,i.gn)([(0,s.NgModule)({declarations:[Q],imports:[o.ez,_.Z,S.Pc],exports:[Q]})],$);var W=t(79038);let J=class{constructor(e,n,t,i,s){this.menuAddService=e,this.menuItemService=n,this.modalService=t,this.cartCalService=i,this.renderer=s,this.offerPrice=0}ngOnInit(){}getVegNonVegImg(e,n){return(0,V.kH)(e,n)}onAddItemInCart(e){this.menuAddService.onAddItem(e)}onOpenMenuDesc(e){console.log(e);this.modalService.open(q.J,(0,f.iE)("FROM_BOTTOM_MODAL")).componentInstance.modalObj=e}onItemDecrease(e){this.menuAddService.onItemDecrease(e)}onItemIncrease(e){this.menuAddService.onItemIncrease(e)}increaseShow(e,n){n.showDescriptionLength=e}showQty(e){return this.menuItemService.onDisplayQuantity(e)}trackByItemId(e,n){return n.itemId}getOfferPrice(e,n){return this.offerPrice=this.menuItemService.getOfferPrice(e,n),this.offerPrice}itemAvailable(e){return!!(e.itemAvailable&&e.itemOperational&&e.outletAvailable&&e.outletOperational)}ngAfterViewInit(){return(0,i.mG)(this,void 0,void 0,function*(){})}onScrollItems(e){return(0,i.mG)(this,void 0,void 0,function*(){})}capitalizeFirstString(e){return(0,v.r8)(e)}setDiscountVal(e){return!!(e.price&&e.price<e.originalPrice)}};J.ctorParameters=()=>[{type:E.r},{type:l.p},{type:d.FF},{type:H.F},{type:s.Renderer2}],J.propDecorators={recommendedItemsList:[{type:s.Input}],outletObj:[{type:s.Input}]},J=(0,i.gn)([(0,s.Component)({selector:"app-recommended-items",template:'\x3c!-- <div class="check-verify"> --\x3e\n<div\n class="recommended-items checking"\n [id]="recommendedItemsList.name"\n (scroll)="onScrollItems($event)"\n>\n <div\n class="d-flex align-items-start scroll-item borderBottom"\n style="width: 95%"\n *ngFor="\n let menu of recommendedItemsList.list;\n trackBy: trackByItemId;\n let i = index "\n\n >\n \x3c!-- [ngClass]="{\n borderBottom: recommendedItemsList.list.length > 1 && i % 2 === 0\n }" --\x3e\n <div class="col-12 p-0 checking1">\n <div class="d-flex align-items-center pb-1" *ngIf="menu?.ribbon !== \'\'">\n <span class="fs-12 icon-star pr-1"></span>\n <span class="sitefontnormal fs-13 ml-1 text-capitalize" style="color: #fc8005">\n {{ menu.ribbon }}</span\n >\n </div>\n <div class="d-flex">\n <div class="d-flex col-7 p-0 align-items-baseline">\n <img\n [src]="getVegNonVegImg(menu.isVeg, menu.containsEgg)"\n class="item-type-img mr-1"\n />\n <div class="pl-1 flex-grow-1">\n <span class="menu-item-txt text-capitalize fs-16 primary-clr sitefontbold">{{\n menu.name\n }}</span>\n <div class="menu-amt-txt dark-black-clr py-1">\n <p\n *ngIf="\n setDiscountVal(menu);\n else noOfferPrice\n "\n >\n <s>
1\n <span class="price-line-through pr-1 sitefontnormal">\n \u20b9{{ menu?.originalPrice }}\n </span>\n </s>\n <span class="sitefontnormal"\n >\u20b9{{ menu.price }}</span\n >\n </p>\n\n <ng-template #noOfferPrice>\n <p>\n <span class="sitefontnormal"> \u20b9{{ menu.price }}</span>\n </p>\n </ng-template>\n </div>\n <p\n class="sitefontlight menu-dec-txt fs-13 primary-grey-2"\n *ngIf="menu.description !== \'\'"\n >\n {{\n capitalizeFirstString(menu?.description)\n | slice: 0:menu?.showDescriptionLength || 35\n }}\n <span\n *ngIf="\n menu?.description.length > (menu?.showDescriptionLength || 45)\n "\n >\n ...\n <span class="sitefontbold show-less-more black-clr" (click)="onOpenMenuDesc(menu)">More</span>\n </span>\n </p>\n </div>\n </div>\n <div class="col-1"></div>\n <div\n [ngClass]="{\n \'outlet-unavailable\':\n menu.itemAvailable === false ||\n menu.itemOperational === false ||\n menu.outletAvailable === false ||\n menu.outletOperational === false ||\n outletObj?.available === \'off\'\n }"\n style="width: 100%"\n class="\n col-4\n p-0\n d-flex\n flex-d flex-column\n align-items-center\n position-relative\n img-sec\n "\n >\n \x3c!-- <span class="ribbon fs-10 fw-6 px-1 text-capitalize img-shadow">{{ menu.ribbon }}</span> --\x3e\n <div class="text-center" style="width: 92%">\n <div\n class="position-absolute image-section w-100"\n (click)="onOpenMenuDesc(menu)"\n >\n <img\n [src]="\n menu?.loaded\n ? menu?.imageUrl\n : \'assets/icon/common/yumzy-placeholder_4_3.png\'\n "\n onerror="this.src=\'assets/icon/Mask Group 62.svg\';"\n loading="lazy"\n class="menu-img img-shadow"\n appImgFallback\n (load)="menu.loaded = true"\n />\n </div>\n \x3c!-- <div class="p-0 add-btn"> --\x3e\n <div>\n <div class="custom-button text-center w-100">\n <ng-container\n *ngIf="\n menu.itemAvailable === true &&\n menu.itemOperational === true &&\n menu.outletAvailable === true &&\n menu.outletOperational === true &&\n outletObj?.available !== \'off\';\n then enableBtn;\n else disabledBtn\n "\n >\n </ng-container>\n <ng-template #enableBtn>\n <span\n *ngIf="\n showQty(menu) === 0 || outletObj?.available === \'off\'\n "\n class="position-relative"\n >\n <button\n class="sitefontmedium fs-16"\n (click)="onAddItemInCart(menu)"\n >\n ADD\n </button>\n <div class="line-loader" style="bottom: 1px;" [id]="menu.itemId + \'loader\'"></div>\n </span>\n <div\n class="with-qty-view sitefontmedium position-relative"\n *ngIf="showQty(menu) > 0 && outletObj?.available !== \'off\'"\n >\n <span class="sitefontmedium" (click)="onItemDecrease(menu)">
1\n <span class="icon-minus fs-18"></span>\n </span>\n <span\n class="sitefontmedium fs-16"\n id="{{ menu?.itemId }}size"\n >{{ showQty(menu) }}</span\n >\n <span class="sitefontmedium" (click)="onItemIncrease(menu)">\n <span class="icon-plus fs-20"></span>\n </span>\n <div class="line-loader" [id]="menu.itemId + \'loader\'"></div> \n </div>\n </ng-template>\n <ng-template #disabledBtn>\n <button class="sitefontmedium fs-12 item-unaval-btn">\n Unavailable\n </button>\n </ng-template>\n\n \x3c!-- <div class="line-loader" id="{{ menu?.itemId }}loader">\n <div class="loader-element"></div>\n </div> --\x3e\n </div>\n </div>\n <p\n class="customizable-txt sitefontnormal p-1 fs-12"\n style="color: #808080"\n *ngIf="menu?.addons.length > 0"\n >\n Customizable\n </p>\n \x3c!-- </div> --\x3e\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\x3c!-- </div> --\x3e\n\x3c!-- <div class="custom-scroll-bar mb-3" *ngIf="recommendedItemsList.list.length > 2">\n <div class="custom-inner-scroll-bar"></div>\n</div> --\x3e\n',styles:[W]})],J);let X=class{};X=(0,i.gn)([(0,s.NgModule)({declarations:[J],imports:[o.ez,_.Z],exports:[J]})],X);let Z=class{};Z=(0,i.gn)([(0,s.NgModule)({declarations:[j.j],imports:[o.ez,S.Pc],exports:[j.j]})],Z);let K=class{};K=(0,i.gn)([(0,s.NgModule)({declarations:[B],imports:[o.ez,S.Pc],exports:[B]})],K);var ee=t(98679),ne=t(63052),te=t.n(ne),ie=t(33298);let se=class{constructor(){}ngOnInit(){}};se.ctorParameters=()=>[],se=(0,i.gn)([(0,s.Component)({selector:"app-outlet-skeleton-loader",template:'<div class="skeleton skeleton-loader-items">\n <span class="img-item-skeleton"></span>\n <div class="position-relative">\n <div class="position-absolute outlet-details-sec item-desc-skeleton">
1\n <span class="skeleton-loader height-25" style="width: 65%;"></span>\n <span class="skeleton-loader height-10 width-75 "></span>\n <span class="skeleton-loader height-10 width-75 "></span>\n <div class="outlet-info mt-4 ml-1">\n <div class="d-flex flex-column align-items-start w-100 col-3 p-0">\n <span class="skeleton-loader height-10 width-75"></span>\n <span class="skeleton-loader height-10 width-75"></span>\n </div>\n <div class="divider col-1"></div>\n <div class="d-flex flex-column align-items-center w-100 col-3 p-0">\n <span class="skeleton-loader height-10 width-75"></span>\n <span class="skeleton-loader height-10 width-75"></span>\n </div>\n <div class="divider col-1"></div>\n <div class="d-flex flex-column w-100 align-items-center col-4 p-0">\n <span class="skeleton-loader height-10 width-50"></span>\n <span class="skeleton-loader height-10 width-50"></span>\n </div>\n </div>\n </div>\n <div class=" position-absolute offer-sec">\n <div class="offers ">\n <div class="d-flex align-items-center justify-content-between">\n <span class="img-item-skeleton m-0"></span>\n <div class="w-100 pl-3">\n <span class="skeleton-loader height-10 width-75 m-0 "></span>\n <span class="skeleton-loader height-10 width-75 mt-1 mb-0"></span>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="px-3 py-3 item-section">\n <span class="skeleton-loader height-25 width-75 pb-3 mt-3"></span>\n <span class="skeleton-loader height-10 width-45 pb-3 mt-3"></span>\n <div class="item mt-3">\n <div class="d-flex align-items-start justify-content-between item-desc-skeleton">\n <div style="width: 70%;">\n <span class="skeleton-loader height-10 width-65"></span>\n <span class="skeleton-loader height-20 width-75 mt-3"></span>\n <span class="skeleton-loader height-15 width-95 mt-2"></span>\n <span class="skeleton-loader height-10 width-85 mt-2"></span>\n <span class="skeleton-loader height-10 width-75 mt-2"></span>\n <span class="skeleton-loader height-10 width-85 mt-2"></span>\n </div>\n <span class="img-item-skeleton"></span>\n </div>\n </div>\n </div>\n <div class="px-3 py-3 item-section">\n <span class="skeleton-loader height-25 width-75 pb-3 mt-3"></span>\n <span class="skeleton-loader height-10 width-45 pb-3 mt-3"></span>\n <div class="item mt-3">\n <div class="d-flex align-items-start justify-content-between item-desc-skeleton" style="box-shadow: 0px 1px 24px rgba(208, 208, 208, 0.72);">\n <div style="width: 70%;">\n <span class="skeleton-loader height-10 width-100"></span>\n <span class="skeleton-loader height-20 width-65 mt-3"></span>\n <span class="skeleton-loader height-15 width-75 mt-2"></span>\n <span class="skeleton-loader height-10 width-75 mt-2"></span>\n <span class="skeleton-loader height-10 width-75 mt-2"></span>\n <span class="skeleton-loader height-10 width-75 mt-2"></span>\n </div>\n <span class="img-item-skeleton"></span>\n </div>\n </div>\n </div>\n</div>',styles:[ie]})],se);var oe=t(58912),ae=t(96655);let re=class{constructor(e,n,t,i,s){this.menuAddService=e,this.menuItemService=n,this.modalService=t,this.cartCalService=i,this.renderer=s,this.offerPrice=0,this.slideOpts={slidesPerView:1.1,spaceBetween:10,pager:!1,centeredSlides:!1,loop:!1}}ngOnInit(){this.orderAgainLists&&1===this.orderAgainLists.length&&(this.slideOpts.slidesPerView=1)}getVegNonVegImg(e,n){return(0,V.kH)(e,n)}getRibbonText(e,n){return e?!0===n?"assets/icon/common/egg_icon.svg":"assets/icon/common/veg.svg":"assets/icon/common/non-veg.svg"}onAddItemInCart(e){this.menuAddService.onAddItem(e)}onOpenMenuDesc(e){console.log(e);const n=this.modalService.open(q.J,(0,f.iE)("FROM_BOTTOM_MODAL"));this.modalService&&ae.Y.modalCloseAnimation$.next("bottom"),n.componentInstance.modalObj=e}onItemDecrease(e){this.menuAddService.onItemDecrease(e)}onItemIncrease(e){this.menuAddService.onItemIncrease(e)}
1increaseShow(e,n){n.showDescriptionLength=e}showQty(e){return this.menuItemService.onDisplayQuantity(e)}trackByItemId(e,n){return n.itemId}getOfferPrice(e,n){return this.offerPrice=this.menuItemService.getOfferPrice(e,n),this.offerPrice}itemAvailable(e){return!!(e.itemAvailable&&e.itemOperational&&e.outletAvailable&&e.outletOperational)}onScrollItems(e){return(0,i.mG)(this,void 0,void 0,function*(){})}capitalizeFirstString(e){return(0,v.r8)(e)}setDiscountVal(e){return!!(e.price&&e.price<e.originalPrice)}};re.ctorParameters=()=>[{type:E.r},{type:l.p},{type:d.FF},{type:H.F},{type:s.Renderer2}],re.propDecorators={recommendedItemsList:[{type:s.Input}],outletObj:[{type:s.Input}],menuItemsList:[{type:s.Input}],orderAgainLists:[{type:s.Input}]},re=(0,i.gn)([(0,s.Component)({selector:"app-outlet-order-again",template:'<div class="order-again-sec ">\n <p class="fs-18 sitefontextrabold fw-8 pr-3">Order Again</p>\n <ion-slides class="order-again-item-sec pt-3 px-3 m-0 " [options]="slideOpts">\n <ion-slide *ngFor="let itemId of orderAgainLists"\n class="items-body pt-2 d-flex align-items-start justify-content-between"\n [ngClass]="{ \'outlet-unavailable\':\n (menuItemsList[itemId]?.itemAvailable !== true ||\n menuItemsList[itemId]?.itemOperational !== true ||\n menuItemsList[itemId]?.outletAvailable !== true ||\n menuItemsList[itemId]?.outletOperational !== true )||\n outletObj?.available === \'off\' ,\'groupBuyDealsTarget\': menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits && (menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits - menuItemsList[itemId]?.groupBuy?.currentUnitsOrdered) > 0,\'groupBuyDealsTargetReached\': menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits && (menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits - menuItemsList[itemId]?.groupBuy?.currentUnitsOrdered) <= 0}"\n style="min-height: 160px;">\n <ng-template #buttonSec>\n <ng-container *ngIf="\n menuItemsList[itemId]?.itemAvailable === true &&\n menuItemsList[itemId]?.itemOperational === true &&\n menuItemsList[itemId]?.outletAvailable === true &&\n menuItemsList[itemId]?.outletOperational === true &&\n outletObj?.available !== \'off\';\n then enableBtn;\n else disabledBtn\n ">\n </ng-container>\n <ng-template #enableBtn>\n <div class="item-add-sec"\n [ngClass]="{\'non-img-sec-item-add\':!(menuItemsList[itemId]?.imageUrl), \'groupBuyDeals\': menuItemsList[itemId]?.groupBuy && menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits}">\n <div id="btn{{menuItemsList[itemId].itemId}}" class="item-add-amount-sec">\n <div *ngIf="showQty(menuItemsList[itemId]) === 0 " class="add-btn-text position-relative">\n <button class="sitefontextrabold fw-8 fs-14" (click)="onAddItemInCart(menuItemsList[itemId])">\n ADD\n </button>\n <div class="line-loader" [id]="\'loader\' + menuItemsList[itemId].itemId ">\n <div class="loader-element"></div>\n </div>\n </div>\n </div>\n <div class="with-qty-view d-flex align-items-center justify-content-between position-relative\n sitefontmedium" *ngIf="showQty(menuItemsList[itemId]) > 0 ">\n <span class="sitefontextrabold fw-8" style="margin-top: 2px;"\n (click)="onItemDecrease(menuItemsList[itemId])">\n <span class="icon-minus fs-18"></span>\n </span>\n <span class="sitefontextrabold fw-8 fs-16" id="{{ menuItemsList[itemId]?.itemId }}size">{{\n showQty(menuItemsList[itemId]) }}</span>\n <span class="sitefontextrabold fw-8" style="margin-top: 1p
1x;"\n (click)="onItemIncrease(menuItemsList[itemId])">\n <span class="icon-plus fs-20"></span>\n </span>\n <div class="line-loader" [id]="\'loader\' + menuItemsList[itemId].itemId ">\n <div class="loader-element"></div>\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template #disabledBtn>\n <button class="sitefontbold fw-8 fs-14 item-unaval-btn">\n Unavailable\n </button>\n </ng-template>\n <p class="customizable-txt sitefontmedium fs-12" style="color: #8A8A8A;"\n *ngIf="menuItemsList[itemId].addons.length > 0">\n Customizable\n </p>\n </ng-template>\n <ng-template #groupBuyDealSec>\n <div class="mt-1">\n <div\n *ngIf="(menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits - menuItemsList[itemId]?.groupBuy?.currentUnitsOrdered) <= 0"\n class="">\n <p class="fs-10 sitefontnormal" style="color: #0B8D31;"> <span class="fs-10 sitefontbold"> Deal\n Unlocked!</span> Get <span class="fs-10 sitefontbold">\n \u20b9{{menuItemsList[itemId]?.groupBuy?.groupBuyDealsOfferAmount}} coins</span> & redeem them in <span\n class="fs-10 sitefontbold">\n full!</span>.</p>\n </div>\n <div\n *ngIf="(menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits - menuItemsList[itemId]?.groupBuy?.currentUnitsOrdered) > 0"\n class="">\n <p class="fs-10 sitefontnormal" style="color: #8F672A;">Win\n <span class="fs-10 sitefontbold">\n \u20b9{{menuItemsList[itemId]?.groupBuy?.groupBuyDealsOfferAmount}} coins</span> (Fully Redeemable) once <span\n class="fs-10 sitefontbold">\n {{menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits}} orders</span>are reached.\n </p>\n </div>\n </div>\n\n </ng-template>\n <div class="items-section"\n [ngClass]="(menuItemsList[itemId]?.imageUrl)? \'WidthContainer\':\'maximumWidthContainer\'">\n <div class="item-indicator-ribbon">\n <img class="mb-1" [src]="getVegNonVegImg(menuItemsList[itemId]?.isVeg,menuItemsList[itemId]?.containsEgg)">\n <span class="fs-10 sitefontbold fw-8 fw-8 ml-2 text-capitalize" style="position: relative;\n bottom: 3px;"\n [ngClass]="{\'groupBuyDealRibbon\':menuItemsList[itemId]?.groupBuy && menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits}"\n *ngIf="menuItemsList[itemId].ribbon">{{menuItemsList[itemId].ribbon\n }}</span>\n </div>\n <div class="pt-2">\n <span class="menu-item-txt text-capitalize fs-16 primary-clr sitefontbold fw-8" style="line-height:1.4;">{{\n menuItemsList[itemId].name\n }}</span>\n <div class="menu-item-desc-sec d-flex"\n [ngClass]="{\'non-img-sec-desc-sec\':!(menuItemsList[itemId]?.imageUrl)}">\n <div class="menu-amt-txt dark-black-clr pt-2">\n <p class="d-flex align-items-center" *ngIf="setDiscountVal(menuItemsList[itemId]);\n else noOfferPrice">\n <s class="price-line-through pr-2 sitefontmedium fs-14">\n \u20b9{{ menuItemsList[itemId]?.originalPrice }}\n </s>\n <span class="sitefontextrabold fw-8 fs-16 primary-clr">\u20b9{{ menuItemsList[itemId].price }}</span>\n </p>\n <ng-template #noOfferPrice>\n <p>\n <span class="sitefontextrabold fw-8 fs-16 primary-clr"> \u20b9{{ menuItemsList[itemId].price }}</span>\n </p>\n </ng-template>\n <div class="non-img-custom-button" [ngClass]="{\'addons-text\': menuItemsList[itemId].addons.length > 0}">\n <div *ngIf="!menuItemsList[itemId]?.imageUrl">\n <ng-container *ngTemplateOutlet="buttonSec"></ng-container>\n </div>\n </div>\n </div>\n <div\n *ngIf="menuItemsList[itemId]?.groupBuy && menuItemsList[itemId]?.groupBuy?.maxLimitOfUnits">\n <ng-container *ngTemplateOutlet="groupBuyDealSec"></ng-container>\n </div>\n <p class="sitefontmedium text-capitalize menu-dec-txt limit-line-length-1 primary-clr fs-12 pt-2"\n *ngIf="!(menuItemsList[itemId]?.imageUrl)">\n {{\n menuItemsList[itemId]?.description\n }}\n </p>\n\n </div>\n </div>\n </div>\n <div class="item-img-sec position-relative"\n [ngClass]="{\'img-paddingMore\':(menuItemsList[itemId].addons.length > 0 && menuItemsList[itemId]?.imageUrl)}">\n <div class="text-center d-flex flex-column">\n <div class="image-section" (click)="onOpenMenuDesc(menuItemsList[itemId])"\n *ngIf="menuItemsList[itemId]?.imageUrl">\n <img [src]="\n menuItemsList[itemId]?.loaded\n ? menuItemsList[itemId]?.imageUrl\n : \'assets/icon/common/yumzy-placeholder_4_3.png\'\n " onerror="this.src=\'assets/icon/Mask Group 62.
1svg\';" loading="lazy" class="menu-img img-shadow"\n appImgFallback (load)="menuItemsList[itemId].loaded = true" />\n </div>\n <div>\n <div class="custom-button text-center w-100"\n [ngClass]="{\'addons-text\': menuItemsList[itemId].addons.length > 0}">\n <div *ngIf="menuItemsList[itemId]?.imageUrl">\n <ng-container *ngTemplateOutlet="buttonSec"></ng-container>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n \x3c!-- <ng-template #enableBtn>\n <div class="item-add-sec" [ngClass]="{\'non-img-sec-item-add\':!(menuItemsList[itemId]List[itemId]?.imageUrl)}" *ngIf="menuItemsList[itemId]List[itemId]">\n <div id="btn{{menuItemsList[itemId]List[itemId].itemId}}" class="item-add-amount-sec">\n <div *ngIf="showQty(menuItemsList[itemId]List[itemId]) === 0 " class="add-btn-text position-relative">\n <button class="sitefontextrabold fw-8 fs-14" (click)="onAddItemInCart(menuItemsList[itemId]List[itemId])">\n ADD\n </button>\n <div class="line-loader" [id]="\'loader\' + menuItemsList[itemId]List[itemId].itemId ">\n <div class="loader-element"></div>\n </div>\n </div>\n </div>\n <div class="with-qty-view d-flex align-items-center justify-content-between position-relative\n sitefontmedium" *ngIf="showQty(menuItemsList[itemId]List[itemId]) > 0 ">\n <span class="sitefontextrabold fw-8" style="margin-top: 2px;" (click)="onItemDecrease(menuItemsList[itemId]List[itemId])">\n <span class="icon-minus fs-18"></span>\n </span>\n <span class="sitefontextrabold fw-8 fs-16" id="{{ menuItemsList[itemId]List[itemId]?.itemId }}size">{{\n showQty(menuItemsList[itemId]List[itemId]) }}</span>\n <span class="sitefontextrabold fw-8" style="margin-top: 1p
1x;" (click)="onItemIncrease(menuItemsList[itemId]List[itemId])">\n <span class="icon-plus fs-20"></span>\n </span>\n <div class="line-loader" [id]="\'loader\' + menuItemsList[itemId]List[itemId].itemId ">\n <div class="loader-element"></div>\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template #disabledBtn>\n <button class="sitefontbold fw-8 fs-14 item-unaval-btn">\n Unavailable\n </button>\n </ng-template>\n <p class="customizable-txt sitefontmedium fs-12" style="color: #8A8A8A;"\n *ngIf="menuItemsList[itemId]List[itemId].addons.length > 0">\n Customizable\n </p>\n </ng-template>\n <div class="items-section py-2" [ngStyle]="{\'width\': (menuItemsList[itemId]List[itemId]?.imageUrl)? \'60%\':\'100%\'}" *ngIf="menuItemsList[itemId]List[itemId]">\n <div class="item-indicator-ribbon">\n <img [src]="getVegNonVegImg(menuItemsList[itemId]List[itemId]?.isVeg,menuItemsList[itemId]List[itemId]?.containsEgg)">\n <span class="fs-10 sitefontbold fw-8 pl-2 text-capitalize" *ngIf="menuItemsList[itemId]List[itemId].ribbon">{{menuItemsList[itemId]List[itemId].ribbon\n }}</span>\n </div>\n <div class="pt-2">\n <span class="menu-item-txt text-capitalize fs-16 primary-clr sitefontbold fw-8" style="line-height:1.4;">{{\n menuItemsList[itemId]List[itemId].name\n }}</span>\n <div class="menu-item-desc-sec d-flex" [ngClass]="{\'non-img-sec-desc-sec\':!(menuItemsList[itemId]List[itemId]?.imageUrl)}">\n <p class="sitefontmedium menu-dec-txt fs-12 pt-2" *ngIf="menuItemsList[itemId]List[itemId].description !== \'\'">\n {{\n capitalizeFirstString(menuItemsList[itemId]List[itemId]?.description)\n }}\n </p>\n <div class="menu-amt-txt dark-black-clr pt-2">\n <p *ngIf="setDiscountVal(menuItemsList[itemId]List[itemId]);\n else noOfferPrice">\n <s class="price-line-through pr-2 sitefontmedium fs-14">\n \u20b9{{ menuItemsList[itemId]List[itemId]?.originalPrice }}\n </s>\n <span class="sitefontextrabold fw-8 fs-16">\u20b9{{ menuItemsList[itemId]List[itemId].price }}</span>\n </p>\n <ng-template #noOfferPrice>\n <p>\n <span class="sitefontextrabold fw-8 fs-16"> \u20b9{{ menuItemsList[itemId]List[itemId].price }}</span>\n </p>\n </ng-template>\n <div class="non-img-custom-button" [ngClass]="{\'addons-text\': menuItemsList[itemId]List[itemId].addons.length > 0}">\n <div *ngIf="!menuItemsList[itemId]List[itemId]?.imageUrl">\n <ng-container *ngTemplateOutlet="buttonSec"></ng-container>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n </div>\n <div class="item-img-sec position-relative pt-2" *ngIf="menuItemsList[itemId]List[itemId]">\n <div class="text-center d-flex flex-column">\n <div class="image-section" (click)="onOpenMenuDesc(menuItemsList[itemId]List[itemId])"\n *ngIf="menuItemsList[itemId]List[itemId]?.imageUrl">\n <img [src]="\n menuItemsList[itemId]List[itemId]?.loaded\n ? menuItemsList[itemId]List[itemId]?.imageUrl\n : \'assets/icon/common/yumzy-placeholder_4_3.png\'\n " onerror="this.src=\'assets/icon/Mask Group 62.svg\';" loading="lazy" class="menu-img img-shadow"\n appImgFallback (load)="menuItemsList[itemId]List[itemId].loaded = true" />\n </div>\n <div class="custom-button text-center w-100"\n [ngClass]="{\'addons-text\': menuItemsList[itemId]List[itemId].addons.length > 0}">\n <div *ngIf="menuItemsList[itemId]List[itemId]?.imageUrl">\n <ng-container *ngTemplateOutlet="buttonSec"></ng-container>\n </div>\n </div>\n </div>\n </div> --\x3e\n </ion-slide>\n </ion-slides>\n</div>',styles:[oe]})],re);let le=class{};function de(){return te()}le=(0,i.gn)([(0,s.NgModule)({declarations:[re],imports:[o.ez,_.Z,S.Pc],exports:[re]})],le);const ce=[{path:"",component:z}];let me=class{};me=(0,i.gn)([(0,s.NgModule)({declarations:[z,C,se],imports:[o.ez,a.Bz.forChild(ce),_.Z,d.IJ,x.u5,x.UX,X,R,$,N.z,S.Pc,Z,K,le,ee.CT.forRoot({player:de})]})],me)},32939:function(e){e.exports='.menu-lists-sec {\n box-shadow: 0px 1px 24px rgba(208, 208, 208, 0.72);\n margin: 0px 16px 0px 16px;\n border-radius: 16px;\n background: var(--white);\n}\n.menu-lists-sec .items-body {\n display: flex;\n align-items: flex-start;\n border-radius: 24px;\n background: var(--white);\n border-radius: 16px;\n}
1\n.menu-lists-sec .items-body .item-indicator-ribbon span {\n color: #0c9835;\n}\n.menu-lists-sec .items-body .menu-item-desc-sec {\n flex-direction: column;\n display: flex;\n}\n.menu-lists-sec .items-body .menu-item-desc-sec .with-qty-view {\n float: none !important;\n margin: auto;\n width: -moz-fit-content;\n width: fit-content;\n}\n.menu-lists-sec .items-body .non-img-sec-desc-sec {\n flex-direction: column-reverse;\n}\n.menu-lists-sec .items-body .non-img-sec-desc-sec .menu-amt-txt {\n display: flex;\n align-items: flex-start;\n width: 100%;\n padding-right: 4px;\n justify-content: space-between;\n padding-bottom: 8px;\n}\n.menu-lists-sec .items-body .non-img-sec-desc-sec .menu-amt-txt > p {\n position: relative;\n top: 6px;\n}\n.menu-lists-sec .items-body .non-img-sec-desc-sec .menu-dec-txt {\n display: block;\n display: -webkit-box;\n max-width: 100%;\n margin: 0 auto;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n padding-top: 8px !important;\n}\n.menu-lists-sec .items-body .groupBuyDealRibbon {\n background: linear-gradient(180deg, #f7c443 0%, #f79943 100%), #d9d9d9;\n color: #4e3a09 !important;\n padding: 1px 6px;\n border-radius: 8px;\n}\n.menu-lists-sec .items-body .menu-item-txt {\n display: block;\n display: -webkit-box;\n max-width: 100%;\n margin: 0 auto;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.menu-lists-sec .items-body .limit-line-length-1 {\n -webkit-line-clamp: 1;\n}\n.menu-lists-sec .items-body .limit-line-length-2 {\n -webkit-line-clamp: 2;\n}\n.menu-lists-sec .items-body .menu-amt-txt .price-line-through {\n margin-bottom: 1px;\n color: #8a8a8a;\n}\n.menu-lists-sec .items-body .menu-dec-txt {\n display: block;\n display: -webkit-box;\n max-width: 100%;\n margin: 0 auto;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n padding-top: 8px !important;\n}\n.menu-lists-sec .items-body .item-img-sec {\n padding-bottom: 20px;\n}\n.menu-lists-sec .items-body .item-img-sec .image-section img {\n width: 27vw;\n height: 16.5vh;\n border-radius: 16px;\n -o-object-fit: cover;\n object-fit: cover;\n}\n.menu-lists-sec .items-body .maximumWidthContainer {\n width: 100% !important;\n}\n.menu-lists-sec .items-body .WidthContainer {\n width: 64%;\n}\n.menu-lists-sec .outlet-unavailable .item-img-sec .image-section img {\n filter: grayscale(100%);\n}\n.menu-lists-sec .slider-section {\n background: #ffffff;\n box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.13);\n border-radius: 8px;\n padding: 0px;\n height: 24px;\n}\n.menu-lists-sec .slider-section ion-range {\n opacity: 1;\n height: 24px;\n padding: 0px 8px;\n transform: translateY(-0.5px);\n --bar-background: #ababab;\n --bar-background-active: linear-gradient(\n 180deg,\n #f7c443 0%,\n #f79943 100%\n );\n --bar-height: 6px;\n --bar-border-radius: 26px;\n --knob-background: linear-gradient(180deg, #f7c443 0%, #f79943 100%);\n --knob-border-radius: 8px;\n --knob-size: 19px;\n --pin-background: none;\n}\n.menu-lists-sec .slider-section ion-range.md {\n --knob-size: 24px;\n}\n.menu-lists-sec .slider-section ion-range::part(bar) {\n width: 104%;\n}\n.menu-lists-sec .slider-section ion-range::part(knob) {\n display: none !important;\n width: 24px;\n height: 16px;\n border-radius: 14px;\n border: 0.5px solid #e4ad1f;\n box-shadow: none;\n left: 14px;\n transform: translateY(1px) !important;\n}\n.menu-lists-sec .slider-section ion-range::part(bar-active) {\n transform: translateY(1px);\n}\n.menu-lists-sec .slider-section ion-range::part(bar) {\n transform: translateY(1px);\n}\n.menu-lists-sec .slider-section ion-range.md::part(bar-active) {\n transform: translateY(1px) !important;\n}\n.menu-lists-sec .slider-section ion-range.md::part(bar) {\n transform: translateY(1px) !important;\n}\n.menu-lists-sec .slider-section .ion-range-slider.ios::part(bar-active) {\n top: 17.5px !important;\n}\n.menu-lists-sec .slider-section .ion-range-slider.ios::part(bar) {\n top: 17.5px !important;\n}\n.menu-lists-sec .slider-section ion-range.md::part(knob) {\n display: none !important;\n}\n.menu-lists-sec .slider-section .check {\n display: inline-block;\n transform: rotate(45deg) translateX(26%) translateY(-54%);\n height: 10px;\n width: 4px;\n padding: 2px;\n position: relative;\n border-bottom: 2px solid white;\n border-right: 2px solid white;\n}\n.menu-lists-sec .slider-section .behind {\n z-index: 10;\n border-radius: 50%;\n width: 16px;\n height: 16px;\n background: #0c9835;\n transform: translateY(1px);\n}\n.menu-lists-sec .slider-section ion-range.md .check {\n transform: rotate(45deg) translateX(42%) translateY(-42%) !important;\n}\n.menu-lists-sec .slider-section .ion-range-slider.ios .behind {\n transform: translateY(0px) !important;\n}\n.menu-lists-sec .slider-section ion-range::part(pin) {\n margin: 0px;\n color: #ffffff;\n background: linear-gradient(180deg, #f7c443 0%, #f79943 100%);\n border-radius: 50%;\n transform: scale(1) translateX(28%) translateY(154%);\n padding: 0px;\n width: 24px;\n font-weight: 900 !important;\n font-family: "Avenir-Medium" !important;\n z-index: 11;\n height: 18px;\n padding: 1px;\n border-radius: 14px;\n box-shadow: none;\n transition: transform 120ms ease, background 120ms ease;\n}\n.menu-lists-sec .slider-section ion-range.md::part(pin) {\n transform: scale(1) translateX(30%) translateY(86%) !important;\n}\n.menu-lists-sec .slider-section .ion-range-slider.ios::part(pin) {\n top: -19.2px;\n}\n.menu-lists-sec .slider-section ion-range::part(pin)::before {\n content: none;\n}\n.menu-lists-sec .maxLimitReached {\n height: 40px;\n}\n.menu-lists-sec .maxLimitReached ion-range::part(knob) {\n display: none;\n}\n.menu-lists-sec .maxLimitReached ion-range {\n --bar-background-active: linear-gradient(\n 180deg,\n #12b442 0%,\n #89e2a3 100%\n );\n}\n.menu-lists-sec .maxLimitReached ion-range::part(pin) {\n display: none;\n}\n.menu-lists-sec .maxLimitReached ion-range::part(bar-active) {\n width: 104%;\n}\n.menu-lists-sec .custom-button,\n.menu-lists-sec .non-img-custom-button {\n position: absolute;\n bottom: 8px;\n}\n.menu-lists-sec .custom-button > div,\n.menu-lists-sec .non-img-custom-button > div {\n width: 100%;\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n.menu-lists-sec .custom-button .customizable-txt,\n.menu-lists-sec .non-img-custom-button .customizable-txt {\n width: 100%;\n width: -moz-fit-content;\n width: fit-content;\n top: 16px;\n}
1\n.menu-lists-sec .custom-button .item-unaval-btn,\n.menu-lists-sec .non-img-custom-button .item-unaval-btn {\n width: -moz-fit-content;\n width: fit-content;\n left: 0px;\n right: 0px;\n margin: auto;\n bottom: 10px;\n padding: 8px 12px;\n background: var(--white);\n border-radius: 16px;\n border: 1px solid #a1a1a1 !important;\n color: #a1a1a1 !important;\n}\n.menu-lists-sec .custom-button .item-add-sec,\n.menu-lists-sec .non-img-custom-button .item-add-sec {\n width: 100%;\n display: flex;\n justify-content: center;\n bottom: 10px;\n}\n.menu-lists-sec .custom-button .item-add-sec .item-add-amount-sec .add-btn-text button,\n.menu-lists-sec .non-img-custom-button .item-add-sec .item-add-amount-sec .add-btn-text button {\n padding: 8px 20px;\n background: var(--white);\n border-radius: 16px;\n border: 1px solid var(--primary-cta-2);\n color: var(--primary-cta-2);\n}\n.menu-lists-sec .custom-button .item-add-sec .item-add-amount-sec .add-btn-text .line-loader,\n.menu-lists-sec .non-img-custom-button .item-add-sec .item-add-amount-sec .add-btn-text .line-loader {\n bottom: 2px;\n border: 1px solid var(--primary-cta-2);\n}\n.menu-lists-sec .groupBuyDeals .item-add-amount-sec .add-btn-text button {\n padding: 8px 20px;\n background: var(--white);\n border-radius: 16px;\n border: 1px solid #f7c443 !important;\n color: #f7c443 !important;\n}\n.menu-lists-sec .groupBuyDeals .with-qty-view {\n border: 1px solid #f7c443 !important;\n background: linear-gradient(0deg, rgba(0, 0, 0, 0.41), rgba(0, 0, 0, 0.41)), linear-gradient(180deg, #f7c443 0%, #f79943 100%), #ffffff;\n}\n.menu-lists-sec .addons-text {\n bottom: 6px;\n}\n.menu-lists-sec .non-img-custom-button {\n width: auto;\n flex-direction: column;\n position: relative;\n bottom: 0px;\n}\n.menu-lists-sec .non-img-custom-button .item-unaval-btn {\n position: relative;\n bottom: 0px;\n}\n.menu-lists-sec .non-img-custom-button .customizable-txt {\n text-align: center;\n padding-top: 2px;\n top: 30px;\n}\n.menu-lists-sec .non-img-custom-button .item-add-sec {\n width: 100%;\n position: relative;\n bottom: 0px;\n}\n.menu-lists-sec .non-img-sec {\n align-items: flex-end;\n padding-bottom: 0px;\n}\n.menu-lists-sec .non-addons-img-padding {\n padding-bottom: 4px;\n}\n.menu-lists-sec .with-qty-view {\n padding: 0px 8px;\n height: 32px;\n border-radius: 16px;\n color: var(--white);\n background: var(--primary-cta-2);\n border: 1px solid var(--primary-cta-2);\n}\n.menu-lists-sec .with-qty-view .line-loader {\n border: 1px solid var(--white);\n}\n.menu-lists-sec .with-qty-view > span {\n line-height: 1;\n}\n.menu-lists-sec .with-qty-view .icon-plus {\n padding: 1px 0px 1px 8px;\n}\n.menu-lists-sec .with-qty-view .icon-minus {\n padding: 1px 8px 1px 0px;\n}\n:focus {\n outline: none;\n}\n.img-paddingMore {\n padding-bottom: 40px !important;\n}\n@media screen and (max-width: 500px) {\n .menu-lists-sec ion-range::part(bar) {\n width: 110% !important;\n }\n .menu-lists-sec .maxLimitReached ion-range::part(bar-active) {\n width: 110% !important;\n }\n .menu-lists-sec .item-img-sec {\n padding-bottom: 24px !important;\n }\n .menu-lists-sec .item-img-sec .image-section img {\n width: 112px !important;\n min-height: 146px;\n border-radius: 16px;\n -o-object-fit: cover;\n object-fit: cover;\n }\n .menu-lists-sec .groupBuyDealsTarget .item-img-sec {\n padding-bottom: 24px !important;\n }\n .menu-lists-sec .groupBuyDealsTarget .item-img-sec .image-section img {\n height: 164px;\n }\n .menu-lists-sec .groupBuyDealsTargetReached .item-img-sec {\n padding-bottom: 24px;\n }\n .menu-lists-sec .img-paddingMore {\n padding-bottom: 40px !important;\n }\n .menu-lists-sec .groupBuyDealsTarget .img-paddingMore {\n padding-bottom: 40px !important;\n }\n .menu-lists-sec .search-sec ion-range::part(bar-active) {\n transform: translateY(1px) !important;\n }\n .menu-lists-sec .search-sec ion-range::part(bar) {\n transform: translateY(1px) !important;\n }\n .menu-lists-sec .search-sec .ion-range-slider.ios .behind {\n transform: translateY(0px) !important;\n }\n .menu-lists-sec .search-sec .check {\n transform: rotate(45deg) translateX(-1px) translateY(-8px) !important;\n position: relative !important;\n top: 1px !important;\n }\n .menu-lists-sec .search-sec ion-range.md .check {\n transform: rotate(45deg) translateX(3px) translateY(-5px) !important;\n position: relative;\n top: 1px;\n }\n .menu-lists-sec .search-sec ion-range.ios .check {\n position: relative;\n top: 1px;\n transform: rotate(45deg) translateX(-1px) translateY(-8px) !important;\n }\n .menu-lists-sec .search-sec .ion-range-slider.ios::part(bar-active) {\n top: 17.5px !important;\n }\n .menu-lists-sec .search-sec .ion-range-slider.ios::part(bar) {\n top: 17.5px !important;\n }\n .menu-lists-sec .search-sec .ion-range-slider.ios::part(pin) {\n top: -22px;\n }\n\n .non-img-sec ion-range::part(bar) {\n width: 108% !important;\n }\n .non-img-sec .maxLimitReached ion-range::part(bar-active) {\n width: 108% !important;\n }\n}\n@media screen and (max-width: 380px) {\n .menu-lists-sec .WidthContainer {\n width: 61% !important;\n }\n .menu-lists-sec ion-range::part(bar) {\n width: 113% !important;\n max-width: 292px !important;\n }\n .menu-lists-sec .maxLimitReached ion-range::part(bar-active) {\n width: 113% !important;\n max-width: 292px !important;\n }\n}\n@media screen and (min-width: 410px) {\n .menu-lists-sec .WidthContainer {\n width: 58% !important;\n }\n\n .item-img-sec {\n width: 40%;\n }\n}\n@media screen and (max-width: 370px) and (min-height: 700px) {\n .menu-lists-sec .WidthContainer {\n width: 61% !important;\n }\n\n .non-img-sec ion-range::part(bar) {\n width: 110% !important;\n }\n .non-img-sec .maxLimitReached ion-range::part(bar-active) {\n width: 110% !important;\n }\n}'},33298: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-95 {\n width: 95%;\n}\n.skeleton .width-85 {\n width: 85%;\n}\n.skeleton .width-30 {\n width: 30%;\n}\n.skeleton .height-25 {\n height: 25px;\n}\n.skeleton .img-item-skeleton {\n height: 48vh;\n width: 100%;\n border-radius: 0px;\n}\n.skeleton .item-desc-skeleton {\n width: 100%;\n}\n.skeleton .outlet-details-sec {\n bottom: -56px !important;\n background: white;\n z-index: 12;\n width: 91%;\n left: 0;\n right: 0;\n margin: auto;\n border-radius: 16px;\n padding: 12px;\n box-shadow: 0 1px 12px rgba(188, 51, 87, 0.16);\n}\n.skeleton .outlet-details-sec .outlet-info {\n display: flex;\n align-items: center;\n position: relative;\n justify-content: center;\n padding: 10px 0px;\n}\n.skeleton .outlet-details-sec .outlet-info .divider:before {\n content: "";\n display: block;\n background: var(--layout-bg-color);\n}\n.skeleton .offer-sec {\n bottom: -150px;\n z-index: 11;\n height: 200px;\n width: 100%;\n background-color: white;\n border-radius: 16px;\n box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.07);\n}\n.skeleton .offer-sec .offers {\n position: absolute;\n width: 91%;\n height: 64px;\n left: 0;\n right: 0;\n margin: auto;\n background: #f3f3f3;\n border-radius: 16px;\n bottom: 16px;\n padding: 6px 16px;\n}\n.skeleton .offer-sec .offers .img-item-skeleton {\n width: 60px;\n height: 52px;\n border-radius: 8px;\n}\n.skeleton .item-section {\n position: relative;\n top: 140px;\n padding-top: 20px;\n}\n.skeleton .item-section .item {\n box-shadow: 0px 1px 14px rgba(208, 208, 208, 0.7);\n border-radius: 16px;\n padding: 8px;\n border: 1px solid #dfdfdf;\n}\n.skeleton .item-section .item .img-item-skeleton {\n width: 27vw;\n height: 19vh;\n border-radius: 16px;\n}'},59063:function(e){e.exports=".search-menu-item-view {\n height: 80vh;\n}\n.search-menu-item-view .close-icon-top {\n left: 0px;\n right: 0px;\n text-align: center;\n top: -46px;\n}
1\n.search-menu-item-view .close-icon-top .icon-close {\n color: #bc3357;\n background: black;\n border-radius: 50%;\n padding: 12px;\n}\n.search-menu-item-view .head-view {\n padding: 1.25rem 1.25rem 0rem 1.25rem;\n z-index: 10;\n line-height: 1;\n border-radius: 12px 12px 0px 0px;\n box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.01);\n position: sticky;\n top: 0px;\n background: white;\n}\n.search-menu-item-view .head-view .search-view {\n padding-bottom: 1.25rem;\n}\n.search-menu-item-view .head-view .search-view input {\n outline: none;\n font-size: 18px;\n color: #3e2743;\n background: white;\n font-weight: 500;\n border: none;\n}\n.search-menu-item-view .head-view .search-view ::-moz-placeholder {\n opacity: 0.5;\n}\n.search-menu-item-view .head-view .search-view ::placeholder {\n opacity: 0.5;\n}\n.search-menu-item-view .head-view .search-view .s-i-v {\n padding-right: 16px;\n}\n.search-menu-item-view .head-view .search-view ::before {\n color: #3e2743;\n}\n.search-menu-item-view .head-view .menu-list-length {\n padding-top: 20px 0px;\n border-top: 1px solid #dbdbdb;\n}\n.search-menu-item-view .head-view .menu-list-length p {\n color: #3e2743;\n padding: 12px 0px;\n}\n.search-menu-item-view .noRes {\n display: none;\n}\n.search-menu-item-view .body-view {\n overflow: scroll;\n height: calc(100% - 80px);\n padding-bottom: 140px;\n background: #f5f5f5;\n}\n.search-menu-item-view .body-view ::-webkit-scrollbar {\n display: none;\n}\n.search-menu-item-view .footer-content {\n position: fixed;\n background: var(--white);\n bottom: 0px;\n animation: fromBottom 0.6s;\n box-shadow: 0px -4px 12px rgba(0, 0, 0, 0.23);\n border-radius: 0px 0px 12px 12px;\n padding: 12px 0px 12px 0px;\n}\n@keyframes fromBottom {\n from {\n bottom: -200px;\n opacity: 0;\n }\n to {\n bottom: 0px;\n opacity: 1;\n }\n}"},91075:function(e){e.exports=".header {\n padding-top: 0px !important;\n z-index: 15 !important;\n}\n.header .header-outlet-name-sec {\n width: 100%;\n padding: 0px 8px;\n height: -moz-max-content;\n height: max-content;\n}\n.header .header-outlet-name-sec .header-filter-sec {\n display: none;\n}\n.header .header-outlet-name-sec .header-category-sec {\n background: var(--white);\n overflow: hidden;\n height: 0;\n}\n.header .header-outlet-name-sec .header-category-sec p {\n color: #3e2743;\n}\n.header .header-outlet-name-sec .header-cat-anmi {\n height: 38px;\n border-top: 1px solid #dbdbdb;\n transition: height 0.3s ease-out;\n}\n.header .header-outlet-name-sec .header-inner {\n width: 100%;\n padding: 8px 0px;\n}\n.header .header-outlet-name-sec .header-inner .back-button-background {\n border-radius: 50%;\n background: var(--light-grey);\n padding: 11px 8px;\n}\n.header .header-outlet-name-sec .header-inner #restNameHeader {\n opacity: 0;\n color: #3e2743;\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.header .header-outlet-name-sec .header-inner .rest-icons {\n opacity: 0;\n}\n.header .header-outlet-name-sec .header-inner .icon-arrow-long-back {\n padding: 11px 8px;\n}\n.header .header-outlet-name-sec .header-inner :before {\n color: #3e2743;\n}\n.header .header-outlet-name-sec .header-inner .icon-search:before {\n color: #3e2743;\n}\n.header .header-outlet-name-sec .header-inner .icon-favorite {\n padding: 6px;\n}\n.header .header-outlet-name-sec .header-inner :before {\n color: #3e2743;\n}\n.header .header-outlet-name-sec .header-inner .icon-heart:before {\n color: var(--primary-cta-2);\n}\n.header .header-outlet-name-sec .header-inner .icon-heart {\n padding: 8px 8px 6px 7px;\n}\n.header .header-outlet-name-sec .header-outlet-unavailable {\n overflow: hidden;\n display: flex;\n height: 0;\n line-height: 1;\n}\n.header .header-outlet-name-sec .header-outlet-unavailable p {\n color: #bc3357;\n margin-top: 4px !important;\n}\n.header .header-outlet-name-sec .header-unavl-anmi {\n height: 48px;\n padding-left: 8px;\n padding-bottom: 20px;\n transition: height 0.3s ease-out;\n}\n.header .veg-non-veg-filter {\n padding-top: 0px;\n}\n.header-background {\n background: white;\n box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.23);\n}\nion-content {\n height: calc(100vh - 0px);\n --padding-bottom: 0px;\n --background: #f3f3f3 !important;\n}\nion-content .outlet-image {\n top: 0px;\n}\nion-content .outlet-image img {\n height: 48vh;\n -o-object-fit: cover;\n object-fit: cover;\n width: 100%;\n}\nion-content .offer-sec {\n bottom: -150px;\n z-index: 11;\n height: 200px;\n width: 100%;\n background-color: white;\n border-radius: 16px;\n box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.07);\n}\nion-content .offer-sec .drop-shadow-offer-sec {\n height: 64px;\n width: 100%;\n border-radius: 16px 16px 0px 0px;\n background: rgba(188, 51, 87, 0.01);\n}\nion-content .offer-sec .offer-details-sec {\n width: 91%;\n left: 0;\n right: 0;\n margin: auto;\n background: #f3f3f3;\n border-radius: 16px;\n bottom: 16px;\n padding: 6px 0px;\n}\nion-content .offer-sec .offer-details-sec .container-fluid {\n padding-right: 8px;\n}\nion-content .offer-sec .offer-details-sec ion-slides {\n padding-left: 10px;\n margin-left: 10px !important;\n}\nion-content .offer-sec .offer-details-sec .offer-text p {\n display: block;\n display: -webkit-box;\n max-width: 96%;\n margin: 0 auto;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n}\nion-content .offer-sec .offer-details-sec .icon-offer {\n font-size: 52px;\n color: var(--primary-cta-2);\n}\nion-content .offer-sec .offer-details-sec .slider-page-num {\n position: absolute;\n top: 12%;\n right: 6%;\n}\nion-content .offer-sec .offer-details-sec .slider-page-num p {\n color: #bc3357;\n letter-spacing: -0.12em;\n}\nion-content .offer-sec .offer-details-sec .slider-page-num .swiper-indicator {\n width: 8px;\n height: 8px;\n margin-right: 4px;\n border: 1px solid silver;\n border-radius: 50%;\n}\nion-content .offer-sec .offer-details-sec .slider-page-num .inactiveClass {\n display: none;\n}\nion-content .offer-sec .offer-details-sec .slider-page-num .activeClass {\n display: inline;\n}\nion-content .offer-sec .offer-details-sec .slider-page-num .swiper-indicator-active {\n border: 1px solid #bc3357;\n background: #bc3357;\n}\nion-content .offer-sec .offer-details-sec .slider-page-num .swiper-indicator-active-copy {\n border: 1px solid #bc3357;\n background: #bc3357;\n}\nion-content .no-offer-sec {\n height: 130px;\n bottom: -80px;\n}\nion-content .h-divider {\n width: auto;\n border-top: 1px solid var(--border-clr);\n margin: 12px 0px;\n}\nion-content .outlet-details-sec {\n bottom: -56px;\n z-index: 12;\n width: 91%;\n left: 0;\n right: 0;\n margin: auto;\n background-color: white;\n border-radius: 16px;\n padding: 12px;\n box-shadow: 0 1px 12px rgba(188, 51, 87, 0.16);\n}\nion-content .outlet-details-sec .outlet-unavailable {\n line-height: 1;\n padding: 0px 0px 16px 0px;\n}\nion-content .outlet-details-sec .outlet-unavailable p {\n color: #bc3357;\n margin-top: 4px !important;\n}\nion-content .outlet-details-sec .outlet-info {\n width: 85%;\n}\nion-content .outlet-details-sec .outlet-info .outlet-name {\n display: block;\n display: -webkit-box;\n margin: 0 auto;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n}\nion-content .outlet-details-sec .outlet-info .outlet-cuisines {\n display: block;\n display: -webkit-box;\n margin: 0 auto;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n}\nion-content .outlet-details-sec .outlet-info > div p,\nion-content .outlet-details-sec .outlet-info span {\n color: #838383;\n}\nion-content .outlet-details-sec .icon-arrow-angle-forward {\n transform: rotate(90deg);\n margin: 0rem 0rem 0rem 0.5rem;\n padding: 4px;\n padding-left: 6px;\n}\nion-content .outlet-details-sec .icon-arrow-angle-forward:before {\n color: var(--primary-cta-2);\n}\nion-content .outlet-details-sec .outlet-timing-info .closing-text {\n color: #cb5e07;\n line-height: 1;\n}\nion-content .outlet-details-sec .outlet-type .icon-star {\n margin-top: 2px;\n}\nion-content .menu-items-sec {\n background: #f3f3f3;\n z-index: 10;\n}\nion-content .menu-items-sec .order-again-item-filter-sec {\n background: #f3f3f3;\n padding-bottom: 4px;\n padding-top: 4px;\n}\nion-content .menu-items-sec .order-again-item-filter-sec .h-divider {\n border-top: 1px solid #dcdcdc;\n margin: 0px 0px 0px 0px;\n}\nion-content .menu-items-sec .orderAgain-sec {\n padding-bottom: 8px;\n padding-top: 16px;\n}\nion-content .menu-items-sec .orderAgain-sec .h-divider {\n margin: 16px 0px 0px 0px;\n}\nion-content .menu-items-sec .menu-section .menu-list {\n background: var(--white);\n border-radius: 16px;\n margin-bottom: 16px;\n}\nion-content .menu-items-sec .menu-section .enable-border-radius {\n border-radius: 16px;\n padding-bottom: 0px;\n}\nion-content .menu-items-sec .menu-section .remove-border-radius {\n border-radius: 0px;\n padding-bottom: 16px;\n}\nion-content .menu-items-sec .menu-section .accordion {\n width: 100%;\n margin: auto;\n border-radius: 4px;\n}\nion-content .menu-items-sec .menu-section .accordion .cat-menu,\nion-content .menu-items-sec .menu-section .accordion .sub-cat-menu {\n position: relative;\n cursor: pointer;\n transition: all 0.5s ease;\n}\nion-content .menu-items-sec .menu-section .accordion li.active span.icon-arrow-angle-back {\n transform: rotate(90deg);\n padding-left: 0px;\n padding: 12px 0px 0px 2px;\n margin-top: -4px;\n}\nion-content .menu-items-sec .menu-section .subCat-sec .sub-cat-menu span.icon-arrow-angle-back {\n right: 1rem;\n left: auto;\n transform: rotate(270deg) !important;\n padding: 0px 12px 0px 0px !important;\n}\nion-content .menu-items-sec .menu-section .subCat-sec.active .sub-cat-menu span.icon-arrow-angle-back {\n right: 1rem;\n left: auto;\n transform: rotate(90deg) !important;\n padding: 12px 0px 0px 2px !important;\n}\nion-content .menu-items-sec .menu-section .accordion li .icon-arrow-angle-back {\n position: absolute;\n top: 1.2rem;\n left: 1rem;\n color: #595959;\n transition: all 0.4s ease;\n}\nion-content .menu-items-sec .menu-section .accordion li span.icon-arrow-angle-back {\n right: 1rem;\n left: auto;\n transform: rotate(270deg);\n padding: 0px 12px 0px 0px;\n}\nion-content .menu-items-sec .menu-section .submenu {\n height: 0;\n padding: 0px;\n overflow: hidden;\n font-size: 14px;\n transition: height 0.5s ease;\n}\n.veg-non-veg-filter {\n padding-bottom: 12px;\n padding-top: 12px;\n color: #bfbfbf;\n}\n.veg-non-veg-filter .veg-nonveg-sec {\n padding-right: 12px;\n}
1\n.veg-non-veg-filter .veg-nonveg-sec .switch {\n position: relative;\n display: inline-block;\n min-width: 36px;\n width: 32px;\n height: 10px;\n}\n.veg-non-veg-filter .veg-nonveg-sec .switch input {\n opacity: 0;\n width: 0;\n height: 0;\n}\n.veg-non-veg-filter .veg-nonveg-sec .slider {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: #979797;\n transition: 0.4s;\n}\n.veg-non-veg-filter .veg-nonveg-sec .slider:before {\n position: absolute;\n content: \"\";\n height: 17px;\n background-size: 16px 16px;\n width: 17px;\n left: 0;\n top: -3px;\n bottom: 0;\n background-repeat: no-repeat;\n transition: 0.4s;\n}\n.veg-non-veg-filter .veg-nonveg-sec .veg-toggle:before {\n background-image: url('veg.4a01577bd3f8fc041bb2.svg');\n}\n.veg-non-veg-filter .veg-nonveg-sec .egg-toggle:before {\n background-image: url('egg_icon.11953bca693695ead471.svg');\n}\n.veg-non-veg-filter .veg-nonveg-sec input:checked + .veg-toggle {\n background-color: #059839;\n}\n.veg-non-veg-filter .veg-nonveg-sec input:checked + .egg-toggle {\n background-color: #ffca52;\n}\n.veg-non-veg-filter .veg-nonveg-sec input:checked + .slider:before {\n transform: translateX(20px);\n left: 0%;\n}\n.veg-non-veg-filter .veg-nonveg-sec .slider.round {\n border-radius: 34px;\n}\n.veg-non-veg-filter .veg-nonveg-sec .slider.round::before {\n border-radius: 0%;\n}\n.additional-filter p {\n padding: 8px 12px;\n border: 1px solid #dcdcdc;\n border-radius: 16px;\n color: #3e2743;\n background: var(--white);\n}\n.menu-cat-button {\n position: fixed;\n width: -moz-fit-content;\n width: fit-content;\n bottom: 20px;\n left: 0;\n right: 0;\n margin: auto;\n transition: bottom 0.2s 0.2s;\n text-align: center;\n}\n.menu-cat-button .icon-menu-icon {\n color: var(--white);\n}\n.menu-cat-button .icon-circle {\n border: 1px solid var(--white);\n border-radius: 50%;\n padding: 8px 10px;\n}\n.menu-cat-button button {\n padding: 6px 20px !important;\n border: none;\n background: black !important;\n border-radius: 16px;\n font-size: 14px;\n z-index: 5;\n}\n.menu-cat-button :focus {\n outline: none;\n}\n.lic-section {\n padding: 24px 20px 150px;\n background: #f3f3f3;\n}\n.addShrink .icons .head-rest {\n opacity: 1;\n text-transform: capitalize;\n width: 90%;\n}\n.cart-footer {\n position: fixed;\n bottom: 0px;\n animation: fromBottom 0.2s;\n box-shadow: 0px -4px 12px rgba(0, 0, 0, 0.23);\n border-radius: 0px 0px 12px 12px;\n padding: 12px 0px 12px 0px;\n background: var(--white);\n}\n@keyframes fromBottom {\n from {\n bottom: -200px;\n opacity: 0;\n }\n to {\n bottom: 0px;\n opacity: 1;\n }\n}\n@media screen and (min-height: 800px) {\n .ios.cart-details-footer {\n padding-bottom: 2rem !important;\n }\n}\n@media screen and (min-height: 800px) {\n .header-ios .header-inner {\n padding: 3rem 0rem 0.3rem 0rem !important;\n }\n\n .ios.cart-details-footer {\n padding-bottom: 2rem !important;\n }\n}\n@media screen and (max-height: 790px) {\n .header-ios .header-inner {\n padding: 20px 0px 8px 0px !important;\n }\n}\n.no-lic {\n padding-bottom: 200px;\n}\n.cart-details-footer {\n padding: 0.625rem 0rem 0.75rem 0rem;\n}\n.outlet-unaval-sec {\n height: calc(100vh - 90px);\n text-align: center;\n}\n.outlet-unaval-sec > div {\n top: 30%;\n}"},2330:function(e){e.exports=".best-seller .menu-img {\n border-radius: 0.875rem;\n -o-object-fit: cover;\n object-fit: cover;\n height: 11rem;\n width: 11rem;\n}\n.best-seller img.item-type-img {\n width: 0.75rem;\n height: 0.75rem;\n}\n.best-seller .item-txt {\n line-height: 1.1;\n color: var(--menu-item-clr);\n font-size: 0.875rem;\n font-weight: 500;\n text-transform: capitalize;\n}\n.best-seller .amt-txt {\n line-height: 0.812rem;\n font-size: 0.812rem;\n font-weight: 500;\n color: var(--amt-clr);\n}\n.best-seller .ribbon {\n background-color: var(--coupon-bg-clr);\n line-height: var(--px-22);\n position: absolute;\n top: var(--px-15);\n left: 0;\n border-radius: var(--px-4);\n color: var(--white);\n}\n.best-seller .price-line-through {\n opacity: 50%;\n}\n.best-seller .add-btn {\n position: relative;\n}\n.best-seller .add-btn .customizable-txt {\n text-align: right;\n}"},22784:function(e){e.exports='.outlet-change-page .close-icon-top {\n left: 0px;\n right: 0px;\n text-align: center;\n top: -46px;\n}
1\n.outlet-change-page .close-icon-top .icon-close {\n color: #bc3357;\n background: black;\n border-radius: 50%;\n padding: 12px;\n}\n.outlet-change-page .modal-head-section {\n padding: 1.25rem 1rem 1.25rem 1rem;\n z-index: 10;\n box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.01);\n}\n.outlet-change-page ion-content {\n height: 58vh;\n --background: #f5f5f5;\n --padding-bottom: 40px;\n}\n.outlet-change-page .modal-body-section {\n padding: 1.5rem 1rem 0rem 1rem;\n}\n.outlet-change-page .outlet-types {\n margin-bottom: 1.25rem;\n}\n.outlet-change-page .outlet-types label {\n margin-left: 0.625rem;\n width: 85%;\n line-height: 1.5;\n}\n.outlet-change-page .outlet-types label span {\n color: var(--black);\n}\n.outlet-change-page .outlet-types:last-child {\n border: none;\n}\n.outlet-change-page .title-txt {\n text-align: left;\n font-size: 16px;\n color: var(--search-icon-border-clr);\n}\n.outlet-change-page input[type=radio] {\n margin-top: 2px;\n -webkit-appearance: none;\n width: 18px;\n height: 18px;\n border: 2px solid #B5B5B5;\n border-radius: 50%;\n background: #f5f5f5;\n outline: none;\n}\n.outlet-change-page input[type=radio]:checked {\n border: 2px solid #bc3357 !important;\n}\n.outlet-change-page input[type=radio]:before {\n content: "";\n display: block;\n width: 10px;\n height: 10px;\n margin: 14% auto;\n border-radius: 50%;\n}\n.outlet-change-page input[type=radio]:checked:before {\n background: #bc3357;\n}\n.outlet-change-page input:checked + span {\n color: var(--primary-clr) !important;\n}\n.outlet-change-page input:checked + label {\n color: var(--primary-clr) !important;\n}\n.outlet-change-page input:checked ~ label span {\n color: var(--primary-clr) !important;\n font-weight: 800 !important;\n}\nion-footer .modal-footer-section {\n padding: 0.615rem 1rem 1.25rem 1rem;\n background: var(--white);\n width: 100%;\n background: linear-gradient(white, rgba(255, 255, 255, 0.9), rgba(232, 230, 234, 0.9));\n}\nion-footer .custom-button {\n width: 100%;\n padding: 10px 0px;\n height: 56px;\n background-color: var(--primary-cta);\n color: var(--white);\n border-radius: 4px;
1\n box-shadow: 0 4px 12px var(--box-shadow);\n}\n.closed-outlet input[type=radio]:checked {\n border: 2px solid var(--silver) !important;\n}\n.closed-outlet input[type=radio]:checked:before {\n background: var(--silver);\n}\n.closed-outlet input:checked + span {\n color: var(--silver) !important;\n}\n.closed-outlet input:checked + label {\n color: var(--silver) !important;\n}\n.closed-outlet input:checked ~ label span {\n color: var(--silver) !important;\n font-weight: 800 !important;\n font-family: "Avenir-Black" !important;\n src: url(\'Avenir-Heavy.26c06d2725a98285bc46.ttf\');\n}\n.closed-outlet label span,\n.closed-outlet label p {\n color: var(--silver) !important;\n}\n@media screen and (min-height: 800px) {\n .ios .modal-body {\n padding-bottom: 0.5rem;\n }\n}'},58912:function(e){e.exports=".order-again-sec > p {\n padding-left: 20px;\n display: block;\n display: -webkit-box;\n max-width: 100%;\n margin: 0 auto;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.order-again-sec .order-again-item-sec .items-body {\n display: flex;\n padding: 0px 12px;\n align-items: flex-start;\n border-radius: 24px;\n background: var(--white);\n border-radius: 16px;\n}\n.order-again-sec .order-again-item-sec .items-body .item-indicator-ribbon span {\n color: #0c9835;\n}\n.order-again-sec .order-again-item-sec .items-body .menu-item-desc-sec {\n flex-direction: column;\n display: flex;\n}\n.order-again-sec .order-again-item-sec .items-body .menu-item-desc-sec .with-qty-view {\n float: none !important;\n margin: auto;\n width: -moz-fit-content;\n width: fit-content;\n}\n.order-again-sec .order-again-item-sec .items-body .non-img-sec-desc-sec {\n flex-direction: column-reverse;\n}\n.order-again-sec .order-again-item-sec .items-body .non-img-sec-desc-sec .menu-amt-txt {\n display: flex;\n align-items: flex-start;\n width: 100%;\n padding-right: 12px;\n justify-content: space-between;\n padding-bottom: 8px;\n}\n.order-again-sec .order-again-item-sec .items-body .non-img-sec-desc-sec .menu-amt-txt > p {\n position: relative;\n top: 4px;\n}\n.order-again-sec .order-again-item-sec .items-body .groupBuyDealRibbon {\n background: linear-gradient(180deg, #f7c443 0%, #f79943 100%), #d9d9d9;\n color: #4e3a09 !important;\n padding: 1px 6px;\n border-radius: 8px;\n}\n.order-again-sec .order-again-item-sec .items-body .menu-item-txt {\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.order-again-sec .order-again-item-sec .items-body .menu-amt-txt .price-line-through {\n margin-bottom: 1px;\n color: #8a8a8a;\n}\n.order-again-sec .order-again-item-sec .items-body .menu-dec-txt {\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.order-again-sec .order-again-item-sec .items-body .item-img-sec {\n padding-bottom: 24px;\n}\n.order-again-sec .order-again-item-sec .items-body .item-img-sec .image-section img {\n width: 27vw;\n border-radius: 16px;\n -o-object-fit: cover;\n object-fit: cover;\n}\n.order-again-sec .order-again-item-sec .items-body .maximumWidthContainer {\n width: 100% !important;\n}\n.order-again-sec .order-again-item-sec .items-body .WidthContainer {\n width: 61%;\n}\n.order-again-sec .order-again-item-sec .groupBuyDealsTarget, .order-again-sec .order-again-item-sec .groupBuyDealsTargetReached {\n border: 1px solid #f7c443;\n}\n.order-again-sec .order-again-item-sec .outlet-unavailable .item-img-sec .image-section img {\n filter: grayscale(100%);\n}\n.order-again-sec .order-again-item-sec .custom-button,\n.order-again-sec .order-again-item-sec .non-img-custom-button {\n position: absolute;\n bottom: 8px;\n}\n.order-again-sec .order-again-item-sec .custom-button > div,\n.order-again-sec .order-again-item-sec .non-img-custom-button > div {\n width: 100%;\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n.order-again-sec .order-again-item-sec .custom-button .customizable-txt,\n.order-again-sec .order-again-item-sec .non-img-custom-button .customizable-txt {\n width: 100%;\n width: -moz-fit-content;\n width: fit-content;\n top: 16px;\n}\n.order-again-sec .order-again-item-sec .custom-button .item-un
1aval-btn,\n.order-again-sec .order-again-item-sec .non-img-custom-button .item-unaval-btn {\n width: -moz-fit-content;\n width: fit-content;\n left: 0px;\n right: 0px;\n margin: auto;\n bottom: 10px;\n padding: 8px 12px;\n background: var(--white);\n border-radius: 16px;\n border: 1px solid #a1a1a1 !important;\n color: #a1a1a1 !important;\n}\n.order-again-sec .order-again-item-sec .custom-button .item-add-sec,\n.order-again-sec .order-again-item-sec .non-img-custom-button .item-add-sec {\n width: 100%;\n display: flex;\n justify-content: center;\n bottom: 10px;\n}\n.order-again-sec .order-again-item-sec .custom-button .item-add-sec .item-add-amount-sec .add-btn-text button,\n.order-again-sec .order-again-item-sec .non-img-custom-button .item-add-sec .item-add-amount-sec .add-btn-text button {\n padding: 8px 20px;\n background: var(--white);\n border-radius: 16px;\n border: 1px solid var(--primary-cta-2);\n color: var(--primary-cta-2);\n}\n.order-again-sec .order-again-item-sec .custom-button .item-add-sec .item-add-amount-sec .add-btn-text .line-loader,\n.order-again-sec .order-again-item-sec .non-img-custom-button .item-add-sec .item-add-amount-sec .add-btn-text .line-loader {\n bottom: 2px;\n border: 1px solid var(--primary-cta-2);\n}\n.order-again-sec .order-again-item-sec .groupBuyDeals .item-add-amount-sec .add-btn-text button {\n padding: 8px 20px;\n background: var(--white);\n border-radius: 16px;\n border: 1px solid #f7c443 !important;\n color: #f7c443 !important;\n}\n.order-again-sec .order-again-item-sec .groupBuyDeals .with-qty-view {\n border: 1px solid #f7c443 !important;\n background: linear-gradient(0deg, rgba(0, 0, 0, 0.41), rgba(0, 0, 0, 0.41)), linear-gradient(180deg, #f7c443 0%, #f79943 100%), #ffffff;\n}\n.order-again-sec .order-again-item-sec .addons-text {\n bottom: 6px;\n}\n.order-again-sec .order-again-item-sec .non-img-custom-button {\n width: auto;\n flex-direction: column;\n position: relative;\n bottom: 0px;\n}\n.order-again-sec .order-again-item-sec .non-img-custom-button .item-unaval-btn {\n position: relative;\n bottom: 0px;\n}\n.order-again-sec .order-again-item-sec .non-img-custom-button .customizable-txt {\n text-align: center;\n padding-top: 2px;\n top: 30px;\n}\n.order-again-sec .order-again-item-sec .non-img-custom-button .item-add-sec {\n width: 100%;\n position: relative;\n bottom: 0px;\n}\n.order-again-sec .order-again-item-sec .non-img-sec {\n align-items: flex-end;\n padding-bottom: 0px;\n}\n.order-again-sec .order-again-item-sec .non-addons-img-padding {\n padding-bottom: 4px;\n}\n.order-again-sec .order-again-item-sec .with-qty-view {\n padding: 0px 8px;\n height: 32px;\n border-radius: 16px;\n color: var(--white);\n background: var(--primary-cta-2);\n border: 1px solid var(--primary-cta-2);\n}\n.order-again-sec .order-again-item-sec .with-qty-view .line-loader {\n border: 1px solid var(--white);\n}\n.order-again-sec .order-again-item-sec .with-qty-view > span {\n line-height: 1;\n}\n.order-again-sec .order-again-item-sec .with-qty-view .icon-plus {\n padding: 1px 0px 1px 8px;\n}\n.order-again-sec .order-again-item-sec .with-qty-view .icon-minus {\n padding: 1px 8px 1px 0px;\n}\n.order-again-sec :focus {\n outline: none;\n}\n.order-again-sec .img-paddingMore {\n padding-bottom: 40px !important;\n}\n@media screen and (max-width: 500px) {\n .order-again-sec .image-section img {\n width: 112px !important;\n min-height: 126px;\n border-radius: 16px;\n -o-object-fit: cover;\n object-fit: cover;\n }\n .order-again-sec .img-paddingMore {\n padding-bottom: 40px !important;\n }\n .order-again-sec .img-paddingMore .image-section img {\n width: 112px !important;\n min-height: 112px !important;\n border-radius: 16px;\n -o-object-fit: cover;\n object-fit: cover;\n }\n .order-again-sec .groupBuyDealsTargetReached .img-paddingMore .image-section img {\n min-height: 160px !important;\n }\n}"},79038:function(e){e.exports=".recommended-items {\n display: flex;\n flex-wrap: wrap;\n overflow: scroll;\n line-height: 1.5;\n margin-left: 20px;\n -ms-overflow-style: none;\n /* IE and Edge */\n scrollbar-width: none;\n /* Firefox */\n}\n.recommended-items .icon-star {\n padding-bottom: 2px;\n}\n.recommended-items .icon-star:before {\n color: #fc8005;\n}\n.recommended-items > div {\n padding: 20px 0px;\n margin-right: 20px;\n scroll-snap-align: start;\n scroll-snap-stop: always;\n}\n.recommended-items > div .menu-item-txt {\n display: block;\n display: -webkit-box;\n max-width: 100%;\n margin: 0 auto;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.recommended-items .img-sec {\n width: 100%;\n}\n.recommended-items .img-sec > div {\n position: relative;\n}\n.recommended-items .img-sec > div > div img {\n border-radius: 4px;\n -o-object-fit: cover;\n object-fit: cover;\n}\n.recommended-items .borderBottom {\n border-bottom: 1px solid var(--layout-bg-color);\n}\n.recommended-items .borderBottom:last-child {\n border-bottom: 0px;\n}\n.recommended-items .item-type-img {\n width: 12px;\n height: 12px;\n}\n.recommended-items .image-section .menu-img {\n width: 100%;\n height: 10vh;\n border-radius: 4px;\n}\n.recommended-items .price-line-through {\n opacity: 50%;\n}\n.recommended-items .add-btn {\n position: relative;\n}\n.recommended-items .add-btn .with-qty-view {\n float: none !important;\n}\n.recommended-items .add-btn .menu-img {\n border-radius: 4px;\n -o-object-fit: cover;\n object-fit: cover;\n}\n.recommended-items .add-btn .price-line-through {\n opacity: 50%;\n}\n.recommended-items .add-btn .customizable-txt {\n color: var(--rest-grey-clr);\n padding: 5px 4px 0px 4px;\n}\n.recommended-items .add-btn .line-loader {\n right: 15px !important;\n}\n.recommended-items .add-btn .unavailable-item-view {\n background: #eff1f2;\n padding: 6px;\n border-radius: 4px;\n width: 72px;\n}\n.recommended-items::-webkit-scrollbar {\n display: none;\n}\n.custom-button {\n width: 100%;\n margin-top: 8vh;\n position: relative;\n display: flex;\n justify-content: center;\n}\nbutton {\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 padding: 8px 22px;\n}\n:focus {\n outline: none;\n}\n.with-qty-view {\n display: flex;\n align-items: center;\n justify-content: space-between;\n color: var(--primary-cta);\n border: 1px solid var(--layout-bg-color);\n background: var(--white);\n box-shadow: 0 6px 8px #00000020;\n border-radius: 6px;\n padding: 4px 4px;\n}\n.with-qty-view > span {\n padding: 1px 4px;\n line-height: 1;\n}\n.outlet-unavailable img {\n filter: grayscale(100%);\n}\n.outlet-unavailable .custom-button button {\n background: lightgray;\n color: #6c757d;\n border: none;\n}\n.item-unaval-btn {\n padding: 10px 8px !important;\n background: var(--white) !important;\n border: 1px solid lightgray !important;\n color: #6c757d !important;\n}\n.custom-scroll-bar {\n position: relative;\n width: 25%;\n height: 4px;\n margin: auto;\n background: var(--layout-bg-color);\n border-radius: 4px;\n}\n.custom-scroll-bar .custom-inner-scroll-bar {\n height: 4px;\n background: #F67280;\n position: absolute;\n border-radius: 4px;\n width: 25%;\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.