1"use strict";(self["webpackChunkontrack_website"]=self["webpackChunkontrack_website"]||[]).push([[1843],{24317:function(e,t,i){i.d(t,{A:function(){return u}});i(83725),i(51339);var a=i(90569),s=i(58743),r=i(97391),n=i(79785),o=i(77018),l=i(73381),c=i(4152),h=i(95803),u=(0,h.A)(s.A,r.A,o.A,n.A,l.A).extend({name:"v-rating",props:{backgroundColor:{type:String,default:"accent"},color:{type:String,default:"primary"},clearable:Boolean,dense:Boolean,emptyIcon:{type:String,default:"$ratingEmpty"},fullIcon:{type:String,default:"$ratingFull"},halfIcon:{type:String,default:"$ratingHalf"},halfIncrements:Boolean,hover:Boolean,length:{type:[Number,String],default:5},readonly:Boolean,size:[Number,String],value:{type:Number,default:0},iconLabel:{type:String,default:"$vuetify.rating.ariaLabel.icon"}},data(){return{hoverIndex:-1,internalValue:this.value}},computed:{directives(){return this.readonly||!this.ripple?[]:[{name:"ripple",value:{circle:!0}}]},iconProps(){const{dark:e,large:t,light:i,medium:a,small:s,size:r,xLarge:n,xSmall:o}=this.$props;return{dark:e,large:t,light:i,medium:a,size:r,small:s,xLarge:n,xSmall:o}},isHovering(){return this.hover&&this.hoverIndex>=0}},watch:{internalValue(e){e!==this.value&&this.$emit("input",e)},value(e){this.internalValue=e}},methods:{createClickFn(e){return t=>{if(this.readonly)return;const i=this.genHoverIndex(t,e);this.clearable&&this.internalValue===i?this.internalValue=0:this.internalValue=i}},createProps(e){const t={index:e,value:this.internalValue,click:this.createClickFn(e),isFilled:Math.floor(this.internalValue)>e,isHovered:Math.floor(this.hoverIndex)>e};return this.halfIncrements&&(t.isHalfHovered=!t.isHovered&&(this.hoverIndex-e)%1>0,t.isHalfFilled=!t.isFilled&&(this.internalValue-e)%1>0),t},genHoverIndex(e,t){let i=this.isHalfEvent(e);return this.halfIncrements&&this.$vuetify.rtl&&(i=!i),t+(i?.5:1)},getIconName(e){const t=this.isHovering?e.isHovered:e.isFilled,i=this.isHovering?e.isHalfHovered:e.isHalfFilled;return t?this.fullIcon:i?this.halfIcon:this.emptyIcon},getColor(e){if(this.isHovering){if(e.isHovered||e.isHalfHovered)return this.color}else if(e.isFilled||e.isHalfFilled)return this.color;return this.backgroundColor},isHalfEvent(e){if(this.halfIncrements){const t=e.target&&e.target.getBoundingClientRect();if(t&&e.pageX-t.left<t.width/2)return!0}return!1},onMouseEnter(e,t){this.runDelay("open",()=>{this.hoverIndex=this.genHoverIndex(e,t)})},onMouseLeave(){this.runDelay("close",()=>this.hoverIndex=-1)},genItem(e){const t=this.createProps(e);if(this.$scopedSlots.item)return this.$scopedSlots.item(t);const i={click:t.click};return this.hover&&(i.mouseenter=t=>this.onMouseEnter(t,e),i.mouseleave=this.onMouseLeave,this.halfIncrements&&(i.mousemove=t=>this.onMouseEnter(t,e))),this.$createElement(a.A,this.setTextColor(this.getColor(t),{attrs:{"aria-label":this.$vuetify.lang.t(this.iconLabel,e+1,Number(this.length))},directives:this.directives,props:this.iconProps,on:i}),[this.getIconName(t)])}},render(e){const t=(0,c.Sd)(Number(this.length)).map(e=>this.genItem(e));return e("div",{staticClass:"v-rating",class:{"v-rating--readonly":this.readonly,"v-rating--dense":this.dense}},t)}})},26513:function(e,t,i){i.d(t,{A:function(){return n}});var a=i(79549),s=i(95803);const r=(0,s.A)(a.A);var n=r.extend({name:"v-textarea",props:{autoGrow:Boolean,noResize:Boolean,rowHeight:{type:[Number,String],default:24,validator:e=>!isNaN(parseFloat(e))},rows:{type:[Number,String],default:5,validator:e=>!isNaN(parseInt(e,10))}},computed:{classes(){return{"v-textarea":!0,"v-textarea--auto-grow":this.autoGrow,"v-textarea--no-resize":this.noResizeHandle,...a.A.options.computed.classes.call(this)}},noResizeHandle(){return this.noResize||this.autoGrow}},watch:{autoGrow(e){this.$nextTick(()=>{var t;e?this.calculateInputHeight():null===(t=this.$refs.input)||void 0===t||t.style.removeProperty("height")})},lazyValue(){this.autoGrow&&this.$nextTick(this.calculateInputHeight)},rowHeight(){this.autoGrow&&this.$nextTick(this.calculateInputHeight)}},mounted(){setTimeout(()=>{this.autoGrow&&this.calculateInputHeight()},0)},methods:{calculateInputHeight(){const e=this.$refs.input;if(!e)return;e.style.height="0";const t=e.scrollHeight,i=parseInt(this.rows,10)*parseFloat(this.rowHeight);
1e.style.height=Math.max(i,t)+"px"},genInput(){const e=a.A.options.methods.genInput.call(this);return e.tag="textarea",delete e.data.attrs.type,e.data.attrs.rows=this.rows,e},onInput(e){a.A.options.methods.onInput.call(this,e),this.autoGrow&&this.calculateInputHeight()},onKeyDown(e){this.isFocused&&13===e.keyCode&&e.stopPropagation(),this.$emit("keydown",e)}}})},31843:function(e,t,i){i.r(t),i.d(t,{default:function(){return w}});var a=i(33740),s=i(3698),r=i(13180),n=i(47678),o=i(3449),l=i(59483),c=i(70174),h=i(36930),u=i(68907),d=i(51554),m=i(24317),p=i(26513),v=function(){var e=this,t=e._self._c;return t(o.A,{staticStyle:{"min-height":"80vh"}},[t(s.A,{staticClass:"mx-auto",attrs:{outlined:"","max-width":"500"}},[t("div",{staticClass:"py-md-4 text-md-center",staticStyle:{"min-height":"300px"}},[e.loading?t("div",{staticClass:"pa-4"},[t(d.A,{attrs:{indeterminate:""}}),t("div",{staticClass:"text-cneter"},[e._v("We are loading ..")])],1):t("div",[e.npsDataAvailable?t("div",{staticClass:"text-center pa-4"},[t(h.A,{attrs:{color:"success"}},[e._v("mdi-check-circle")]),t("div",[t("strong",[e._v("Response recorded!")])]),t("div",{staticClass:"text--disabled"},[e._v("DROP PIN")]),t("div",{staticClass:"ot-text-h2 primary--text pa-2"},[e._v(" "+e._s(e.npsDataAvailable.otp)+" ")]),t("div",[e._v(" Please share this code when ending the booking; sharing this code will confirm the end. ")])],1):t("div",{staticClass:"pa-4"},[t("h3",{staticClass:"primary--text"},[e._v("Share your feedback - "+e._s(e.bookingId))]),t("div",[e._v(" Once you complete the form, you will receive a 4-digit 'DROP PIN'. Please present this PIN to the service agent when you drop off the vehicle. ")]),t(l.A,{staticClass:"my-4"}),t(c.A,{staticClass:"text-left",on:{submit:function(t){return t.preventDefault(),e.submitFeedback.apply(null,arguments)}}},[t(o.A,[t("h3",{staticClass:"primary--text"},[e._v(" What is the reason for returning a bike?* ")]),t(n.A,{attrs:{column:"",multiple:""},model:{value:e.returnReason,callback:function(t){e.returnReason=t},expression:"returnReason"}},e._l(e.reasonBike,function(i,a){return t(r.A,{key:a,attrs:{filter:"",outlined:"",value:i.abbr}},[e._v(" "+e._s(i.name)+" ")])}),1),t(l.A,{staticClass:"my-4"}),t("h3",{staticClass:"primary--text"},[e._v("How was your overall experience?*")]),t(m.A,{attrs:{color:"yellow darken-3","empty-icon":"mdi-star-outline",length:"5",size:"40"},model:{value:e.rating,callback:function(t){e.rating=t},expression:"rating"}}),t(l.A,{staticClass:"my-4"}),t("h3",{staticClass:"primary--text"},[e._v("How was the quality of the bike?*")]),t(m.A,{attrs:{color:"yellow darken-3","empty-icon":"mdi-star-outline",length:"5",size:"40"},model:{value:e.rideQuality,callback:function(t){e.rideQuality=t},expression:"rideQuality"}}),t(l.A,{staticClass:"my-4"}),t("h3",{staticClass:"primary--text"},[e._v(" How was the experience with the service team?* ")]),t(m.A,{attrs:{color:"yellow darken-3","empty-icon":"mdi-star-outline",length:"5",size:"40"},model:{value:e.serviceTeam,callback:function(t){e.serviceTeam=t},expression:"serviceTeam"}}),t(l.A,{staticClass:"my-4"}),t("h3",{staticClass:"primary--text"},[e._v(" How was the customer support experience?* ")]),t(m.A,{attrs:{color:"yellow darken-3","empty-icon":"mdi-star-outline",length:"5",size:"40"},model:{value:e.csScore,callback:function(t){e.csScore=t},expression:"csScore"}}),t(l.A,{staticClass:"my-4"}),t("h3",{staticClass:"primary--text"},[e._v(" How was the platform (app/website) experience?* ")]),t(m.A,{attrs:{color:"yellow darken-3","empty-icon":"mdi-star-outline",length:"5",size:"40"},model:{value:e.platformScore,callback:function(t){e.platformScore=t},expression:"platformScore"}}),t(l.A,{staticClass:"my-4"}),t("h3",{staticClass:"primary--text"},[e._v("Any additional feedback?*")]),t(p.A,{staticClass:"my-4",attrs:{outlined:"",rows:"5",placeholder:"Feedback, suggestions, complaints...","hide-details":"auto"},model:{value:e.custFeedback,callback:function(t){e.custFeedback=t},expression:"custFeedback"}}),t(a.A,{staticClass:"mt-4",attrs:{large:"",block:"",color:"primary",disabled:!e.validateForm(),type:"submit"}},[e._v(" Submit Feedback ")])],1)],1)],1)]),t(u.A,{attrs:{value:e.loading}},[t(d.A,{attrs:{indeterminate:"",size:"64"}})],1)],1)])],1)},g=[],f=(i(28743),i(37194)),y={data(){return{bookingId:"",custFeedback:"",returnReason:[],rating:null,rideQuality:null,serviceTeam:null,csScore:null,platformScore:null,reasonBike:[{name:"Expensive for me",abbr:"Expensive"},{name:"Unhappy with Ontrack",abbr:"NH Ontrack"},{name:"Moving out of city",abbr:"Moving Out"},{name:"Prefer taking Auto",abbr:"Prefer Auto"},{name:"Buying own Vehicle",abbr:"Buy Own VH"},{name:"Don't need a Vehicle",abbr:"DN Vehicle"},{name:"Booking Upgrade",abbr:"Booking Upgrade"},{name:"Lost my Job",abbr:"LJ"},{name:"Not Happy with Bike",abbr:"NH Bike"},{name:"My Reason is not listed",abbr:"Reason NL"}],loading:!1,npsDataAvailable:null}},mounted(){this.fetchData()},methods:{async fetchData(){this.loading=!0;try{this.bookingId=this.$route.params.bookingId;const{data:e}=await f.Bo.get(`/nps/get/${this.bookingId}`);200===e.code?(this.npsDataAvailable=e,this.returnReason=e.returnArray||[],this.rating=e.rating||null,this.rideQuality=e.rideScore||null,this.serviceTeam=e.serviceScore||null,this.csScore=e.csScore||null,this.platformScore=e.platformScore||null,this.custFeedback=e.comment||""):404===e.code&&(this.npsDataAvailable=null)}catch(e){console.error("Error fetching feedback:",e)}finally{this.loading=!1}},async submitFeedback(){try{this.loading=!0;const e=await f.Bo.post("nps/fill",{bookingId:this.bookingId,returnArray:this.returnReason,rideScore:this.rideQuality,serviceScore:this.serviceTeam,csScore:this.csScore,platformScore:this.platformScore,comment:this.custFeedback,rating:this.rating}),t=e.data;this.$router.push(`/feedback-submit/${t}`)}catch(e){console.error("Error submitting feedback:",e)}finally{this.loading=!1}},validateForm(){return this.returnReason.length>0&&null!==this.rating&&null!==this.rideQuality&&null!==this.serviceTeam&&null!==this.csScore&&null!==this.platformScore&&this.custFeedback.trim().length>0}}},b=y,k=i(81656),x=(0,k.A)(b,v,g,!1,null,"5daa6428",null),w=x.exports}}]); 2//# sourceMappingURL=1843.4cdd685f.js.map
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.