PageSourceSearch

https://www.weroad.com/_nuxt/GafMggja2.js

js weroad.com collected 2026-09-24 10:12:13 UTC 12,938 bytes, 1 lines download raw bytes

1(function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{};e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[new e.Error().stack]=function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];if(n!=null)for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}return e}({},e._sentryModuleMetadata[new e.Error().stack],{"_sentryBundlerPluginAppKey:weroad":!0});var t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`844fab46-fc11-4ab2-b5ae-280118a5bd45`,e._sentryDebugIdIdentifier=`sentry-dbid-844fab46-fc11-4ab2-b5ae-280118a5bd45`)}catch{}})();import{J as e,P as t,Qt as n,W as r,Y as i,Yt as a,d as o,f as s,lt as c,p as l,u,v as d,y as f}from"./BSXR3eMi.js";import{u as p}from"./MuQb3bw4.js";import{p as m}from"./BWVdFgo5.js";import{a as h}from"./Y_Qrfv_w.js";import{a as g}from"./CSQlDpKi.js";import{t as _}from"./DTchdQ1X.js";import{n as v}from"./zo0YGbYv.js";import{t as y}from"./D7DM0C_z2.js";import{t as b}from"./Dmf5a-0n2.js";import{t as x}from"./DqMzMQNk2.js";import{n as S,t as C}from"./BDO1oBQb2.js";import{t as w}from"./Bs1fiZcu2.js";import{t as T}from"./Bnq20HY9.js";import{n as E,t as D}from"./BVbe_EHb.js";import{t as O}from"./ZsLCFlfi2.js";import{t as k}from"./BGk22Ap52.js";var A={"2xs":`size-3`,xs:`size-4`,sm:`size-5`,md:`size-6`,default:`size-7`,lg:`size-8`,xl:`size-9`,"2xl":`size-10`,"3xl":`size-11`,"4xl":`size-12`},j={name:`wr-favorite-button`,components:{wrSearchButton:T},props:{value:{type:Boolean},theme:{type:String,default:`gray`},iconSize:{type:String,default:`default`},size:{type:String,default:`default`},loading:{type:Boolean},outline:{type:Boolean},square:{type:Boolean},ariaLabel:{type:String,default:``},iconVariant:{type:String,default:`default`,validator:e=>[`default`,`simple`].includes(e)}},emits:[`click`],data(){return{isStatusChanged:!1}},computed:{iconName(){return this.iconVariant==="default"?this.value?`common:heart-outline-glass-primary`:`common:heart-outline-glass`:this.value?`mdi:heart`:`mdi:heart-outline`},iconColorClass(){return this.iconVariant==="default"?this.value?`text-primary`:`text-gray-600`:this.value?`text-primary`:`text-gray-800`},sizeClass(){return A[this.iconSize]??`size-7`},nuxtIconMode(){return this.iconVariant==="default"?`svg`:void 0}},watch:{value(e){e&&(this.isStatusChanged=!0,setTimeout(()=>{this.isStatusChanged=!1},300))}}},M={key:0,class:`font-medium text-gray-700`};function N(t,n,d,m,h,g){let _=x,v=i(`wr-search-button`);return r(),o(v,{square:d.square,outline:d.outline,transparent:!d.outline,theme:d.value&&d.theme!==`white`?`black`:d.theme,size:d.size,"aria-label":d.ariaLabel,"data-name":`wr-favorite-button`,class:a([`cursor-pointer py-1.5 transition-all duration-300`,{"pointer-events-none":h.isStatusChanged||d.loading}]),onClick:n[0]||=p(e=>t.$emit(`click`),[`stop`])},{default:c(()=>[u(`div`,{class:a({"flex items-center justify-center gap-2":d.outline})},[f(_,{name:g.iconName,mode:g.nuxtIconMode,class:a([g.sizeClass,g.iconColorClass,{"scale-125":h.isStatusChanged,"animate-favorite":d.value,"animate-favorite-infinite":d.loading}])},null,8,[`name`,`mode`,`class`]),t.$slots.default?(r(),l(`span`,M,[e(t.$slots,`default`)])):s(``,!0)],2)]),_:3},8,[`square`,`outline`,`transparent`,`theme`,`size`,`aria-label`,`class`])}var P=b(j,[[`render`,N]]),F={name:`wr-toastify-link`,props:{text:{type:String,required:!0},link:{type:String,required:!0},linkRef:{type:String,required:!0}},async mounted(){await this.$nextTick();let e=document.querySelectorAll(`[data-link="${this.linkRef}"]`)[0];if(!e){console.error(`Element with data-link: ${this.linkRef} not found`);return}e.addEventListener(`click`,this.handleRouterPush)},beforeUnmount(){let e=document.querySelectorAll(`[data-link="${this.linkRef}"]`)[0];e&&e.removeEventListener(`click`,this.handleRouterPush)},methods:{handleRouterPush(){m().push(this.link).catch(()=>{})}}},I=[`innerHTML`];function L(e,t,n,i,a,o){return r(),l(`div`,{innerHTML:n.text},null,8,I)}var R=b(F,[[`render`,L]]),z={name:`wr-wishlist-remove-confirm`,components:{wrSearchButton:T,wrStorelessModal:w},props:{modelValue:{type:Boolean,default:!1},numberOfTours:{type:Number,default:0}},emits:[`remove`,`cancel`],data(){return{}},computed:{showRemoveConfirm(){return this.modelValue}}},B={class:`pb-4 lg:pb-5`},V={class:`p-4 leading-tight lg:p-5 lg:pb-3`},H={class:`text-lg font-bold`},U=[`innerHTML`],W={class:`flex flex-col justify-center gap-3 px-4 lg:px-5`};function G(e,a,s,l,p,m){let h=i(`wr-search-button`),g=i(`wr-storeless-modal`);return r(),o(g,t(e.$attrs,{modelValue:m.showRemoveConfirm,"onUpdate:modelValue":a[2]||=e=>m.showRemoveConfirm=e,"no-padding":``,"bottom-sheet":``,"inside-close-button":``,size:`xs`,"hide-header":``}),{default:c(()=>[u(`div`,B,[u(`div`,V,[u(`div`,H,n(e.$i18n.t(`wishlist.removeConfirm.TITLE`)),1)]),u(`div`,{class:`px-4 text-base font-normal leading-relaxed text-gray-800 lg:px-5`,innerHTML:e.$i18n.tc(`wishlist.removeConfirm.TEXT`,s.numberOfTours,{number:s.numberOfTours})},null,8,U),a[3]||=u(`div`,{"data-name":`divider`,class:`mb-4 mt-3 h-px w-full bg-gray-200`},null,-1),u(`div`,W,[f(h,{theme:`secondary`,onClick:a[0]||=t=>e.$emit(`remove`)},{default:c(()=>[d(n(e.$i18n.t(`wishlist.removeConfirm.BUTTON_OK`)),1)]),_:1}),f(h,{theme:`gray`,outline:``,onClick:a[1]||=t=>e.$emit(`cancel`)},{default:c(()=>
1[d(n(e.$i18n.t(`wishlist.removeConfirm.BUTTON_NO`)),1)]),_:1})])])]),_:1},16,[`modelValue`])}var K=b(z,[[`render`,G]]),q=class extends Error{status;body;constructor(e,t){super(`wishlist request failed with status ${e}`),this.status=e,this.body=t}},J=()=>{let e=y(),t=({response:e,error:t})=>new q(e.status,t),n=e=>D(e,t),r=e=>E(e,t);return{fetchUserWishlist:async()=>r(await e.GET(`/users/wishlist`)).data??[],fetchWishlistedToursByTravelSlug:async(t,n)=>r(await e.GET(`/travels/{slug}/wishlist`,{params:{path:{slug:t},query:n}})).data,addToWishlist:async(t,r={})=>{if(`travelId`in t){n(await e.POST(`/travels/{travelId}/wishlist`,{params:{path:{travelId:t.travelId}},headers:{[v]:`1`,...r.headers}}));return}n(await e.POST(`/tours/{tourId}/wishlist`,{params:{path:{tourId:t.tourId}},headers:{[v]:`1`,...r.headers}}))},removeTourFromWishlist:async(t,r={})=>{n(await e.DELETE(`/tours/{tourId}/wishlist`,{params:{path:{tourId:t}},headers:{[v]:`1`,...r.headers}}))},removeTravelFromWishlist:async(t,r,i={})=>{n(await e.DELETE(`/travels/{travelId}/wishlist`,{params:{path:{travelId:t},query:{deleteTours:r}},headers:{[v]:`1`,...i.headers}}))}}},Y=new Map,X=new Map,Z={name:`wr-wishlist`,components:{wrFavoriteButton:P,wrRemoveConfirm:K},props:{isWishlisted:{type:Boolean,default:!1},centered:{type:Boolean,default:!1},travelId:{type:String,required:!0},travelTitle:{type:String,required:!0},travelNumberOfDays:{type:Number,required:!0},tour:{type:Object,default:()=>({})},sectionFrom:{type:String,required:!0}},emits:[`refresh-list-of-tours`,`tour-added-to-wishlist`,`tour-removed-from-wishlist`,`travel-added-to-wishlist`,`travel-removed-from-wishlist`],setup(e){let{trackEvent:t}=_(),{addToWishlist:n,removeTourFromWishlist:r,removeTravelFromWishlist:i}=J(),{requireAuth:a}=S({sectionFrom:e.sectionFrom,source:C.LEAD_WISHLIST});return{requireAuth:a,trackEvent:t,addWishlist:n,removeTourWishlist:r,removeTravelWishlist:i}},data(){return{isMutating:!1,isWishlistedInner:!1,isRemoveConfirmOpen:!1,wishlistNumberOfTours:0}},computed:{logged(){return this.$auth.loggedIn},isTour(){return!!this.tour?.id},wishlistTarget(){return this.isTour?{tourId:this.tour?.id}:{travelId:this.travelId}},wishlistKey(){return this.isTour?`tour:${this.tour?.id}`:`travel:${this.travelId}`},wishlistButtonAriaLabel(){return this.isWishlistedInner?this.$i18n.t(`wishlist.removeConfirm.TITLE`):this.isTour?this.$i18n.t(`wishlist.tour.WELCOME`):this.$i18n.t(`wishlist.travel.WELCOME`)}},watch:{isWishlisted:{immediate:!0,handler(e){let t=X.get(this.wishlistKey);this.isWishlistedInner=t??!!e}},isWishlistedInner(e){X.set(this.wishlistKey,e)}},methods:{async toggleWishlist(){let e=this.wishlistKey;if(X.has(e)&&X.get(e)!==this.isWishlistedInner){this.isWishlistedInner=X.get(e);return}if(Y.has(e)||this.isMutating)return;this.isMutating=!0;let t=(async()=>{this.isWishlistedInner?await(this.isTour?this.removeTourFromWishlist():this.removeTravelFromWishlist()):await this.addToWishlist()})();Y.set(e,t);try{await t}finally{Y.delete(e),this.isMutating=!1}},async addToWishlist(){if(this.logged){this.isWishlistedInner=!0;let e=this.tour,t=this.trackEvent(`wr_wishlist_added`,{travelId:this.travelId,travelName:this.travelTitle,sectionFrom:this.sectionFrom,...e?.id&&{tourId:e.id,tourStatus:O(e.salesStatus),missingDaysToDeparture:k(e.startingDate)}},{delivery:`after-paint`});await this.addToWishlistLoggedUser(t?.uniqueEventId),this.completeWishlistActivation()}else{if(!await this.requireAuth())return;this.isWishlistedInner=!0;let e=this.tour,t=this.trackEvent(`wr_wishlist_added`,{travelId:this.travelId,travelName:this.travelTitle,sectionFrom:this.sectionFrom,...e?.id&&{tourId:e.id,tourStatus:O(e.salesStatus),missingDaysToDeparture:k(e.startingDate)}},{delivery:`after-paint`});await this.addToWishlistLoggedUser(t?.uniqueEventId),this.$emit(`refresh-list-of-tours`),this.completeWishlistActivation()}},async addToWishlistLoggedUser(e){try{await this.addWishlist(this.wishlistTarget,g(e))}catch{this.isWishlistedInner=!1,this.$toastify.handleErrorWithToast();return}},completeWishlistActivation(){let e=`link-wishlist-${new Date().getMilliseconds()}`,t=this.isTour?`wishlist.notification.tour.TOUR_ADDED`:`wishlist.notification.travel.TRIP_ADDED`;this.$toastify.showToast({component:R,componentProps:{linkRef:e,link:this.$i18n.localePath({name:`wishlist`}),text:this.$i18n.t(t,{toastLink:e})}});let n=this.isTour?`tour-added-to-wishlist`:`travel-added-to-wishlist`;this.$emit(n)},async removeTourFromWishlist(){this.isWishlistedInner=!1;try{let e=this.tour,t=this.trackEvent(`wr_wishlist_removed`,{travelId:this.travelId,travelName:this.travelTitle,sectionFrom:this.sectionFrom,...e?.id&&{tourId:e.id,tourStatus:O(e.salesStatus),missingDaysToDeparture:k(e.startingDate)}},{delivery:`after-paint`});await this.removeTourWishlist(this.tour.id,g(t?.uniqueEventId));let n=`link-wishlist-${new Date().getMilliseconds()}`;this.$toastify.showToast({component:R,componentProps:{linkRef:n,link:this.$i18n.localePath({name:`wishlist`}),text:this.$i18n.t(`wishlist.notification.tour.TOUR_REMOVED`,{toastLink:n})}}),this.$emit(`tour-removed-from-wishlist`)}catch(e){this.isWishlistedInner=!0,e?.status===401?this.$auth.logout():this.$toastify.handleErrorWithToast()}},async removeTravelFromWishlist(e=!1){this.isWishlistedInner=!1;try{let t=this.trackEvent(`wr_wishlist_removed`,{travelId:this.travelId,travelName:this.travelTitle,sectionFrom:this.sectionFrom,tourInWishlist:this.wishlistNumberOfTours},{delivery:`after-paint`});await this.removeTravelWishlist(this.travelId,e,g(t?.uniqueEventId));let n=`link-wishlist-${new Date().getMilliseconds()}`;this.$toastify.showToast({component:R,componentProps:{linkRef:n,link:this.$i18n.localePath({name:`wishlist`}),text:this.$i18n.t(`wishlist.notification.travel.TRIP_REMOVED`,{toastLink:n})}}),this.$emit(`travel-removed-from-wishlist`)}catch(e){this.isWishlistedInner=!0,e?.status===400&&e.body?.key===`TOURS_IN_WISHLIST_FOR_TRAVEL`?(this.wishlistNumberOfTours=e.body?.extra?.count,this.isRemoveConfirmOpen=!0):e?.status===401?this.$auth.logout():this.$toastify.handleErrorWithToast()}},async confirmRemoveFromWishlist(){this.isRemoveConfirmOpen=!1;let e=this.wishlistKey;if(Y.has(e))return;let t=this.removeTravelFromWishlist(!0);Y.set(e,t);try{await t}finally{Y.delete(e)}},hideRemoveConfirm(){this.isRemoveConfirmOpen=!1}}},Q={"data-name":`wishlist`};function $(t,n,a,o,s,u){let d=i(`wr-favorite-button`),p=i(`wr-remove-confirm`),m=h;return r(),l(`div`,Q,[e(t.$slots,`activator`,{isWishlisted:s.isWishlistedInner,addToWishlist:u.addToWishlist,toggleWishlist:u.toggleWishlist},()=>[f(d,{square:``,theme:`white`,value:s.isWishlistedInner,"aria-label":u.wishlistButtonAriaLabel,onClick:u.toggleWishlist},null,8,[`value`,`aria-label`,`onClick`])]),f(m,null,{default:c(()=>[f(p,{modelValue:s.isRemoveConfirmOpen,"onUpdate:modelValue":n[0]||=e=>s.isRemoveConfirmOpen=e,"number-of-tours":s.wishlistNumberOfTours,onRemove:u.confirmRemoveFromWishlist,onCancel:u.hideRemoveConfirm},null,8,[`modelValue`,`number-of-tours`,`onRemove`,`onCancel`])]),_:1})])}var ee=b(Z,[[`render`,$]]),te={name:`wr-discount-badge`,props:{value:{type:String,default:null},size:{type:String,default:`sm`,validator:e=>[`xs`,`sm`].includes(e)}}};function ne(e,t,i,o,s,c){return r(),l(`div`,{class:a([`inline-flex w-auto items-center rounded bg-secondary-50 px-1.5 text-center font-bold leading-none text-secondary-hover`,{"py-0.5 text-xs":i.size===`xs`,"py-1 text-sm":i.size===`sm`}])},n(i.value),3)}var re=b(te,[[`render`,ne]]);export{P as i,ee as n,J as r,re as t};

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.