"use strict";(globalThis["webpackChunkcasestudy"]=globalThis["webpackChunkcasestudy"]||[]).push([[189],{5572:(t,e,a)=>{a.d(e,{C:()=>r,_:()=>l});const s="/api/",l=async t=>{let e,a=d();try{let l=await fetch(`${s}${t}`,{method:"GET",headers:a});e=await l.json()}catch(l){console.log(l),e={error:`Error has occured: ${l.message}`}}return e},r=async(t,e)=>{let a,l=d();try{let r=await fetch(`${s}${t}`,{method:"POST",headers:l,body:JSON.stringify(e)});a=await r.json()}catch(r){a=r}return a},d=()=>{const t=new Headers,e=JSON.parse(sessionStorage.getItem("customer"));return e?(t.append("Content-Type","application/json"),t.append("Authorization","Bearer "+e.token)):t.append("Content-Type","application/json"),t}},7081:(t,e,a)=>{a.d(e,{p:()=>l,x:()=>s});const s=t=>t.toLocaleString("en-US",{style:"currency",currency:"USD"}),l=t=>{let e;e=void 0===t?new Date:new Date(Date.parse(t));let a=e.getDate(),s=e.getMonth()+1,l=e.getFullYear(),r=(e.getHours(),e.getMinutes());return r<10&&(r="0"+r),l+"-"+s+"-"+a}},7189:(t,e,a)=>{a.r(e),a.d(e,{default:()=>j});var s=a(9835),l=a(6970);const r={class:"text-center"},d=["src"],o=(0,s._)("div",{class:"text-h2 q-mt-lg"},"Brands",-1),c={class:"status q-mt-md text-subtitle2 text-negative","text-color":"red"},n=(0,s._)("p",null,null,-1),i={key:1,class:"text-h6 text-bold text-center text-primary"},u=["src"],p=["src"],m={class:"text-subtitle2 text-center"},g={class:"row"};function w(t,e,a,w,h,y){const f=(0,s.up)("q-avatar"),q=(0,s.up)("q-select"),v=(0,s.up)("q-item-section"),_=(0,s.up)("q-item"),b=(0,s.up)("q-list"),x=(0,s.up)("q-card"),S=(0,s.up)("q-scroll-area"),k=(0,s.up)("q-btn"),C=(0,s.up)("q-card-actions"),W=(0,s.up)("q-card-section"),P=(0,s.up)("q-tooltip"),B=(0,s.up)("q-chip"),Q=(0,s.up)("q-input"),Z=(0,s.up)("q-dialog"),$=(0,s.Q2)("close-popup");return(0,s.wg)(),(0,s.iD)(s.HY,null,[(0,s._)("div",r,[(0,s.Wm)(f,{class:"q-mt-lg",size:"xl",square:""},{default:(0,s.w5)((()=>[(0,s._)("img",{src:"img/fahmyz.png"},null,8,d)])),_:1}),o,(0,s._)("div",c,(0,l.zw)(w.state.status),1),n,w.state.brands.length>0?((0,s.wg)(),(0,s.j4)(q,{key:0,class:"q-mt-lg q-ml-lg",style:{width:"50vw","margin-bottom":"4vh","background-color":"#fff"},"option-value":"id","option-label":"name","model-value":"",options:w.state.brands,label:"Select a Brand",modelValue:w.state.selectedBrandId,"onUpdate:modelValue":[e[0]||(e[0]=t=>w.state.selectedBrandId=t),e[1]||(e[1]=t=>w.getProducts())],"emit-value":"","map-options":""},null,8,["options","modelValue"])):(0,s.kq)("",!0),w.state.products.length>0?((0,s.wg)(),(0,s.iD)("div",i,(0,l.zw)(w.state.selectedBrand.name)+" Products ",1)):(0,s.kq)("",!0),(0,s.Wm)(S,{style:{height:"55vh"}},{default:(0,s.w5)((()=>[(0,s.Wm)(x,{class:"q-ma-md"},{default:(0,s.w5)((()=>[(0,s.Wm)(b,{separator:""},{default:(0,s.w5)((()=>[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(w.state.products,(t=>((0,s.wg)(),(0,s.j4)(_,{clickable:"",key:t.id,onClick:e=>w.selectProduct(t.id)},{default:(0,s.w5)((()=>[(0,s.Wm)(v,{avatar:""},{default:(0,s.w5)((()=>[(0,s.Wm)(f,{style:{height:"125px",width:"90px"},square:""},{default:(0,s.w5)((()=>[(0,s._)("img",{src:`/img/${t.graphicName}`},null,8,u)])),_:2},1024)])),_:2},1024),(0,s.Wm)(v,{class:"text-left"},{default:(0,s.w5)((()=>[(0,s.Uk)((0,l.zw)(t.productName),1)])),_:2},1024)])),_:2},1032,["onClick"])))),128))])),_:1})])),_:1})])),_:1})]),(0,s.Wm)(Z,{modelValue:w.state.productSelected,"onUpdate:modelValue":e[5]||(e[5]=t=>w.state.productSelected=t),"transition-show":"rotate","transition-hide":"rotate"},{default:(0,s.w5)((()=>[(0,s.Wm)(x,null,{default:(0,s.w5)((()=>[(0,s.Wm)(C,{align:"right"},{default:(0,s.w5)((()=>[(0,s.wy)((0,s.Wm)(k,{flat:"",label:"X",color:"primary",class:"text-h5"},null,512),[[$]])])),_:1}),(0,s.Wm)(v,{class:"text-center"},{default:(0,s.w5)((()=>[(0,s._)("div",null,[(0,s._)("img",{src:`/img/${w.state.selectedProduct.graphicName}`},null,8,p)])])),_:1}),(0,s.Wm)(W,null,{default:(0,s.w5)((()=>[(0,s._)("div",m,(0,l.zw)(w.state.selectedProduct.productName)+" - "+(0,l.zw)(w.formatCurrency(w.state.selectedProduct.msrp)),1)])),_:1}),(0,s.Wm)(W,{class:"text-center"},{default:(0,s.w5)((()=>[(0,s.Wm)(B,{icon:"bookmark",color:"primary","text-color":"white","text-center":""},{default:(0,s.w5)((()=>[(0,s.Uk)("Details "),(0,s.Wm)(P,{"transition-show":"flip-right","transition-hide":"flip-left","text-color":"white"},{default:(0,s.w5)((()=>[(0,s.Uk)((0,l.zw)(w.state.selectedProduct.description),1)])),_:1})])),_:1})])),_:1}),(0,s.Wm)(W,null,{default:(0,s.w5)((()=>[(0,s._)("div",g,[(0,s.Wm)(Q,{modelValue:w.state.qty,"onUpdate:modelValue":e[2]||(e[2]=t=>w.state.qty=t),modelModifiers:{number:!0},type:"number",filled:"",placeholder:"qty",hint:"Qty",dense:"",style:{"max-width":"12vw"}},null,8,["modelValue"]),(0,s.Uk)(" "),(0,s.Wm)(k,{color:"primary",label:"ADD TO CART",disable:w.state.qty<0,onClick:e[3]||(e[3]=t=>w.addToCart()),style:{"max-width":"25vw","margin-left":"3vw"}},null,8,["disable"]),(0,s.Wm)(k,{color:"primary",label:"View Cart",onClick:e[4]||(e[4]=t=>w.viewCart()),style:{"max-width":"25vw","margin-left":"1vw"}})])])),_:1}),(0,s.Wm)(W,{class:"text-center text-positive"},{default:(0,s.w5)((()=>[(0,s.Uk)((0,l.zw)(w.state.dialogStatus),1)])),_:1})])),_:1})])),_:1},8,["modelValue"])],64)}a(9665);var h=a(7081),y=a(499),f=a(8339),q=a(5572);const v={setup(){(0,s.bv)((()=>{l()}));let t=(0,y.qj)({status:"",brands:[],products:[],selectedBrand:{},selectedBrandId:"",selectedProduct:{},dialogStatus:"",productSelected:!1,qty:0,cart:[]});const e=(0,f.tv)(),a=()=>{e.push("cart")},l=async()=>{try{t.status="brands loaded",t.brands=await(0,q._)("Brand")}catch(e){console.log(e),t.status=`Error has occured: ${e.message}`}},r=async()=>{try{t.selectedBrand=t.brands.find((e=>e.id===t.selectedBrandId)),t.status=`finding products for category ${t.selectedBrand}...`,t.products=await(0,q._)(`Product/${t.selectedBrand.id}`),t.status=`loaded ${t.products.length} menu items for\n${t.selectedBrand.name}`}catch(e){console.log(e),t.status=`Error has occured: ${e.message}`}},d=async e=>{try{t.selectedProduct=t.products.find((t=>t.id===e)),t.productSelected=!0,t.dialogStatus="",sessionStorage.getItem("cart")&&(t.cart=JSON.parse(sessionStorage.getItem("cart")))}catch(a){console.log(a),t.status=`Error has occured: ${a.message}`}},o=()=>{let e=-1;t.cart.length>0&&(e=t.cart.findIndex((e=>e.id===t.selectedProduct.id))),t.qty>0?(-1===e?t.cart.push({id:t.selectedProduct.id,qty:t.qty,product:t.selectedProduct}):t.cart[e]={id:t.selectedProduct.id,qty:t.qty,product:t.selectedProduct},t.dialogStatus=`${t.qty} product(s) added`):(-1!==e&&t.cart.splice(e,1),t.dialogStatus="product(s) removed"),sessionStorage.setItem("cart",JSON.stringify(t.cart)),t.qty=0};return{state:t,loadBrands:l,getProducts:r,selectProduct:d,formatCurrency:h.x,addToCart:o,viewCart:a}}};var _=a(1639),b=a(1357),x=a(995),S=a(1019),k=a(4458),C=a(3246),W=a(490),P=a(1233),B=a(7743),Q=a(1821),Z=a(4455),$=a(3190),D=a(7691),I=a(6858),T=a(6611),z=a(2146),U=a(9984),V=a.n(U);const N=(0,_.Z)(v,[["render",w]]),j=N;V()(v,"components",{QAvatar:b.Z,QSelect:x.Z,QScrollArea:S.Z,QCard:k.Z,QList:C.Z,QItem:W.Z,QItemSection:P.Z,QDialog:B.Z,QCardActions:Q.Z,QBtn:Z.Z,QCardSection:$.Z,QChip:D.Z,QTooltip:I.Z,QInput:T.Z}),V()(v,"directives",{ClosePopup:z.Z})}}]);