1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7349],{97349:(e,t,n)=>{n.d(t,{o:()=>k,GI:()=>V,xA:()=>G});var i=n(30009),r=n(88606),a=n(4869),s=n(67790);let o="http://localhost".replace(/\/+$/,"");class l{set config(e){this.configuration=e}get basePath(){return null!=this.configuration.basePath?this.configuration.basePath:o}get fetchApi(){return this.configuration.fetchApi}get middleware(){return this.configuration.middleware||[]}get queryParamsStringify(){return this.configuration.queryParamsStringify||function e(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return Object.keys(t).map(i=>(function t(n,i){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",a=r+(r.length?"[".concat(n,"]"):n);if(i instanceof Array){let e=i.map(e=>encodeURIComponent(String(e))).join("&".concat(encodeURIComponent(a),"="));return"".concat(encodeURIComponent(a),"=").concat(e)}return i instanceof Set?t(n,Array.from(i),r):i instanceof Date?"".concat(encodeURIComponent(a),"=").concat(encodeURIComponent(i.toISOString())):i instanceof Object?e(i,a):"".concat(encodeURIComponent(a),"=").concat(encodeURIComponent(String(i)))})(i,t[i],n)).filter(e=>e.length>0).join("&")}}get username(){return this.configuration.username}get password(){return this.configuration.password}get apiKey(){let e=this.configuration.apiKey;if(e)return"function"==typeof e?e:()=>e}get accessToken(){let e=this.configuration.accessToken;if(e)return"function"==typeof e?e:async()=>e}get headers(){return this.configuration.headers}get credentials(){return this.configuration.credentials}constructor(e={}){this.configuration=e}}let u=new l;class c{withMiddleware(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];let i=this.clone();return i.middleware=i.middleware.concat(...t),i}withPreMiddleware(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];let i=t.map(e=>({pre:e}));return this.withMiddleware(...i)}withPostMiddleware(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];let i=t.map(e=>({post:e}));return this.withMiddleware(...i)}isJsonMime(e){return!!e&&c.jsonRegex.test(e)}async request(e,t){let{url:n,init:i}=await this.createFetchParams(e,t),r=await this.fetchApi(n,i);if(r&&r.status>=200&&r.status<300)return r;throw new d(r,"Response returned an error code")}async createFetchParams(e,t){var n,i;let r,a=this.configuration.basePath+e.path;void 0!==e.query&&0!==Object.keys(e.query).length&&(a+="?"+this.configuration.queryParamsStringify(e.query));let s=Object.assign({},this.configuration.headers,e.headers);Object.keys(s).forEach(e=>void 0===s[e]?delete s[e]:{});let o={method:e.method,headers:s,body:e.body,credentials:this.configuration.credentials},l={...o,...await ("function"==typeof t?t:async()=>t)({init:o,context:e})};return n=l.body,r="undefined"!=typeof FormData&&n instanceof FormData||l.body instanceof URLSearchParams||(i=l.body,"undefined"!=typeof Blob&&i instanceof Blob)?l.body:this.isJsonMime(s["Content-Type"])?JSON.stringify(l.body):l.body,{url:a,init:{...l,body:r}}}clone(){let e=new this.constructor(this.configuration);return e.middleware=this.middleware.slice(),e}constructor(e=u){this.configuration=e,this.fetchApi=async(e,t)=>{let n,i={url:e,init:t};for(let e of this.middleware)e.pre&&(i=await e.pre({fetch:this.fetchApi,...i})||i);try{n=await (this.configuration.fetchApi||fetch)(i.url,i.init)}catch(e){for(let t of this.middleware)t.onError&&(n=await t.onError({fetch:this.fetchApi,url:i.url,init:i.init,error:e,response:n?n.clone():void 0})||n);if(void 0===n)if(e instanceof Error)throw new g(e,"The request failed and the interceptors did not return an alternative response");else throw e}for(let e of this.middleware)e.post&&(n=await e.post({fetch:this.fetchApi,url:i.url,init:i.init,response:n.clone()})||n);return n},this.middleware=e.middleware}}c.jsonRegex=RegExp("^(:?application/json|[^;/ ]+/[^;/ ]+[+]json)[ ]*(:?;.*)?$","i");class d extends Error{constructor(e,t){super(t),this.response=e,this.name="ResponseError"}}class g extends Error{constructor(e,t){super(t),this.cause=e,this.name="FetchError"}}
1class h extends Error{constructor(e,t){super(t),this.field=e,this.name="RequiredError"}}class v{async value(){return this.transformer(await this.raw.json())}constructor(e,t=e=>e){this.raw=e,this.transformer=t}}function p(e,t){return null==e?e:{id:e.id,userId:e.user_id,travelStyle:e.travel_style,travelRhythm:e.travel_rhythm,travelPriority:e.travel_priority,planningStyle:e.planning_style,interestSubcategory:e.interest_subcategory,createdAt:e.created_at,updatedAt:e.updated_at}}function f(e){var t;return null==(t=e)?t:{id:t.id,mediaType:null==t.mediaType?void 0:t.mediaType,url:null==t.url?void 0:t.url,caption:null==t.caption?void 0:t.caption,sortOrder:null==t.sortOrder?void 0:t.sortOrder,metadata:null==t.metadata?void 0:t.metadata}}function y(e){var t;return null==(t=e)?t:{id:t.id,name:t.name,slug:null==t.slug?void 0:t.slug}}function m(e){var t;return null==(t=e)?t:{id:t.id,name:t.name,experience:null==t.experience?void 0:t.experience,createdAt:null==t.createdAt?void 0:t.createdAt,updatedAt:null==t.updatedAt?void 0:t.updatedAt,deletedAt:null==t.deletedAt?void 0:t.deletedAt,image:null==t.image?void 0:f(t.image),agency:null==t.agency?void 0:y(t.agency)}}function w(e){return function(e,t){var n,i,r,a;if(null==e)return e;return{pricePerPerson:null==e.pricePerPerson?void 0:e.pricePerPerson,slug:e.slug,category:null==e.category?void 0:(n=e.category,null==n?n:{id:n.id,name:n.name,slug:n.slug}),subcategories:null==e.subcategories?void 0:e.subcategories.map(y),trips:null==e.trips?void 0:e.trips.map(y),destinations:null==e.destinations?void 0:e.destinations.map(y),location:null==e.location?void 0:(i=e.location,null==i?i:{latitude:null==i.latitude?void 0:i.latitude,longitude:null==i.longitude?void 0:i.longitude}),images:null==e.images?void 0:e.images.map(f),starterGuide:null==e.starterGuide?void 0:f(e.starterGuide),agency:null==e.agency?void 0:(r=e.agency,null==r?r:{id:r.id,name:r.name,slug:r.slug,imageUrl:null==r.imageUrl?void 0:r.imageUrl}),rating:null==e.rating?void 0:(a=e.rating,null==a?a:{averageRating:null==a.averageRating?void 0:a.averageRating,totalReviews:null==a.totalReviews?void 0:a.totalReviews}),status:null==e.status?void 0:e.status,rejectionNotes:null==e.rejectionNotes?void 0:e.rejectionNotes,guides:null==e.guides?void 0:e.guides.map(m),activities:null==e.activities?void 0:e.activities.map(y),id:e.id,createdAt:null==e.createdAt?void 0:e.createdAt,updatedAt:null==e.updatedAt?void 0:e.updatedAt,deletedAt:null==e.deletedAt?void 0:e.deletedAt,name:e.name,shortName:null==e.shortName?void 0:e.shortName,isActive:null==e.isActive?void 0:e.isActive,country:null==e.country?void 0:e.country,province:null==e.province?void 0:e.province,district:null==e.district?void 0:e.district,cityOrVillage:null==e.cityOrVillage?void 0:e.cityOrVillage,badge:null==e.badge?void 0:e.badge,tier:null==e.tier?void 0:e.tier,metaTitle:null==e.metaTitle?void 0:e.metaTitle,metaDescription:null==e.metaDescription?void 0:e.metaDescription,duration:null==e.duration?void 0:e.duration,description:null==e.description?void 0:e.description,difficultyLevel:null==e.difficultyLevel?void 0:e.difficultyLevel,currency:null==e.currency?void 0:e.currency,tags:null==e.tags?void 0:e.tags,highlights:null==e.highlights?void 0:e.highlights,inclusions:null==e.inclusions?void 0:e.inclusions,exclusions:null==e.exclusions?void 0:e.exclusions,equipment:null==e.equipment?void 0:e.equipment,safety:null==e.safety?void 0:e.safety,physicalPrepAbout:null==e.physicalPrepAbout?void 0:e.physicalPrepAbout,budget:null==e.budget?void 0:e.budget,seasons:null==e.seasons?void 0:e.seasons,departureDates:null==e.departureDates?void 0:e.departureDates}}(e,0)}class A extends c{async getPreferencesApiV1PreferencesGetRaw(e){let t={};if(this.configuration&&this.configuration.accessToken){let e=this.configuration.accessToken,n=await e("HTTPBearer",[]);n&&(t.Authorization="Bearer ".concat(n))}return new v(await this.request({path:"/api/v1/preferences",method:"GET",headers:t,query:{}},e),e=>{var t;return null==(t=e)?t:{success:t.success,message:t.message,data:null==t.data?void 0:p(t.data,!1)}})}async getPreferencesApiV1PreferencesGet(e){let t=await this.getPreferencesApiV1PreferencesGetRaw(e);return await t.value()}async savePreferencesApiV1PreferencesPostRaw(e,t){if(null==e.savePreferencesRequest)throw new h("savePreferencesRequest",'Required parameter "savePreferencesRequest" was null or undefined when calling savePreferencesApiV1PreferencesPost().');let n={};if(n["Content-Type"]="application/json",this.configuration&&this.configuration.accessToken){let e=this.configuration.accessToken,t=await e("HTTPBearer",[]);t&&(n.Authorization="Bearer ".concat(t))}return new v(await this.request({path:"/api/v1/preferences",method:"POST",headers:n,query:{},body:function(e){return(arguments.length>1&&void 0!==arguments[1]&&arguments[1],null==e)?e:{travel_style:e.travelStyle,travel_rhythm:e.travelRhythm,travel_priority:e.travelPriority,planning_style:e.planningStyle,interest_subcategory:e.interestSubcategory}}(e.savePreferencesRequest,!1)},t),e=>{var t;return null==(t=e)?t:{success:t.success,message:t.message,data:null==t.data?void 0:p(t.data,!1)}})}async savePreferencesApiV1PreferencesPost(e,t){let n=await this.savePreferencesApiV1PreferencesPostRaw(e,t);
1return await n.value()}}class P extends c{async getRecommendationsApiV1RecommendationsGetRaw(e,t){let n={};null!=e.page&&(n.page=e.page),null!=e.limit&&(n.limit=e.limit);let i={};if(this.configuration&&this.configuration.accessToken){let e=this.configuration.accessToken,t=await e("HTTPBearer",[]);t&&(i.Authorization="Bearer ".concat(t))}return new v(await this.request({path:"/api/v1/recommendations",method:"GET",headers:i,query:n},t),e=>{var t;return null==(t=e)?t:{success:t.success,message:t.message,data:null==t.data?void 0:function(e,t){var n;if(null==e)return e;return{recommendations:e.recommendations.map(w),pagination:(n=e.pagination,null==n?n:{total:n.total,page:n.page,limit:n.limit,hasNext:n.hasNext,hasPrev:n.hasPrev}),message:null==e.message?void 0:e.message,hasPreferences:null==e.has_preferences?void 0:e.has_preferences}}(t.data,0)}})}async getRecommendationsApiV1RecommendationsGet(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,n=await this.getRecommendationsApiV1RecommendationsGetRaw(e,t);return await n.value()}}let b=n(66050).P0.replace(/\/api\/v1\/?$/,"");function R(e){return new l({basePath:b,accessToken:async()=>{var t;return null!=(t=await e())?t:""}})}function _(e){let t=AbortSignal.timeout(3e4);return e?AbortSignal.any([e,t]):t}function q(e){return{id:e.id,user_id:e.userId,travel_style:e.travelStyle,travel_rhythm:e.travelRhythm,travel_priority:e.travelPriority,planning_style:e.planningStyle,interest_subcategory:e.interestSubcategory,created_at:e.createdAt,updated_at:e.updatedAt}}let T=async(e,t)=>{let n=_(t),i=await new A(R(e)).getPreferencesApiV1PreferencesGet({signal:n});return i.data?q(i.data):null},S=async(e,t)=>{let n=await new A(R(e)).savePreferencesApiV1PreferencesPost({savePreferencesRequest:function(e){return{travelStyle:e.travel_style,travelRhythm:e.travel_rhythm,travelPriority:e.travel_priority,planningStyle:e.planning_style,interestSubcategory:e.interest_subcategory}}(t)},{signal:_()});if(!n.data)throw Error("Failed to save preferences: empty response");return q(n.data)},j=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,i=arguments.length>3?arguments[3]:void 0,r=_(i);return(await new P(R(e)).getRecommendationsApiV1RecommendationsGet({page:t,limit:n},{signal:r})).data},x=["preferences"],E=["recommendations"];function k(e){var t;let{getToken:n,isSignedIn:a,isLoaded:s}=(0,i.As)();return(0,r.I)({queryKey:x,queryFn:e=>{let{signal:t}=e;return T(n,t)},enabled:(null==(t=null==e?void 0:e.enabled)||t)&&s&&!!a,retry:1,retryDelay:5e3,staleTime:6e4})}function V(e){var t,n,a;let{getToken:s,isSignedIn:o,isLoaded:l}=(0,i.As)(),u=null!=(t=null==e?void 0:e.page)?t:1,c=null!=(n=null==e?void 0:e.limit)?n:10;return(0,r.I)({queryKey:[...E,u,c],queryFn:e=>{let{signal:t}=e;return j(s,u,c,t)},enabled:(null==(a=null==e?void 0:e.enabled)||a)&&l&&!!o,retry:1,retryDelay:5e3,staleTime:3e5})}function G(){let{getToken:e}=(0,i.As)(),t=(0,a.jE)();return(0,s.n)({mutationFn:t=>S(e,t),onSuccess:e=>{t.setQueryData(x,e),t.invalidateQueries({queryKey:E})}})}}}]); 2//# sourceMappingURL=7349-690914414fb14c1e.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.