1import{d as w,e as b}from"./hooks-DXJ6HdY6.js";import{E as h}from"./logger-D4LHGIkN.js";var U=Object.defineProperty,T=Object.defineProperties,j=Object.getOwnPropertyDescriptors,P=Object.getOwnPropertySymbols,D=Object.prototype.hasOwnProperty,I=Object.prototype.propertyIsEnumerable,C=(n,e,t)=>e in n?U(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,u=(n,e)=>{for(var t in e||(e={}))D.call(e,t)&&C(n,t,e[t]);if(P)for(var t of P(e))I.call(e,t)&&C(n,t,e[t]);return n},k=(n,e)=>T(n,j(e)),p=(n,e,t)=>new Promise((i,o)=>{var r=a=>{try{c(t.next(a))}catch(s){o(s)}},l=a=>{try{c(t.throw(a))}catch(s){o(s)}},c=a=>a.done?i(a.value):Promise.resolve(a.value).then(r,l);c((t=t.apply(n,e)).next())}),N=class{constructor(){this._config=null}get config(){return this._config}init(n){this._config=this.setDefaults(n)}update(n){this._config=u(u({},this._config),this.setDefaults(n))}setDefaults(n){return k(u({},n),{grecaptcha:u({v3Key:"",spammyCountryCodes:[973,965]},n.grecaptcha),cookie:u({tokenExpiration:30},n.cookie)})}},d=new N,K="queue_session",L="queue-token",g=n=>p(null,[n],function*({baseUrl:e,url:t,options:i,raw:o,formData:r,includeAuth:l=!0,includeToken:c=!0,queue:a=!1,version:s}){var _;const v=(_=d.config)==null?void 0:_.wbk;if(!e&&!v){const O="WBK `ApiConfig` was not initialized. See instructions in https://github.com/nadude/webook-frontend/blob/main/packages/api/README.md";throw console.error(O),new Error(O)}let y=v==null?void 0:v.api;s==="v1"&&(y=y==null?void 0:y.replace("/v2","/v1"));const A=e||y,$=t.startsWith("/")?t:`/${t}`,x=w("token")||"",E=a?w(K):"",S=u(k(u(u(u({},c&&{token:v==null?void 0:v.apiToken}),l&&{Authorization:`Bearer ${x}`}),E&&{[L]:E}),{Accept:"application/json"}),i==null?void 0:i.headers),m=yield fetch(`${A}${$}`,k(u({},i),{headers:r?S:u({"Content-Type":"application/json"},S)}));if(o)return m;const f=yield m.json();if(!m.ok)throw f.message||(f.message=(f==null?void 0:f.error)||"Something went wrong"),f.statusCode=m.status,f;return f}),W=n=>p(null,[n],function*({lang:e}){var t,i,o,r,l;const c=b(e);if(!w("token"))return null;const s=yield g({url:`/user/profile?lang=${c}`,baseUrl:(i=(t=d.config)==null?void 0:t.wbk)==null?void 0:i.authApi});if(((o=s.status)==null?void 0:o.toLowerCase())!=="success"){const _=Object.values((s==null?void 0:s.error)||{})[0]||((l=(r=s==null?void 0:s.original)==null?void 0:r.error)==null?void 0:l.description),v=Array.isArray(_)?_[0]:_;throw new Error(v)}return s.data}),z=n=>p(null,[n],function*({lang:e}){try{const t=`/subscriptions/user_subscriptions?lang=${e}&status=active`;return(yield g({url:t})).data.filter(o=>o.status==="active")}catch(t){throw new h({error:t,name:"getUserSubscriptionsException",context:{tags:{journey:"subscribe"}}})}}),R=(n="unspecific")=>p(null,null,function*(){return new Promise((e,t)=>{var i,o;try{if(typeof grecaptcha>"u")return t("Error loading recaptcha, please refresh and try again.");if(!((o=(i=d.config)==null?void 0:i.grecaptcha)!=null&&o.v3Key))return t("No reCAPTCHA v3 key found in config, please follow usage instruction in https://github.com/nadude/webook-frontend/blob/main/packages/api/README.md");grecaptcha.ready(()=>{var r,l;return grecaptcha.execute(((l=(r=d.config)==null?void 0:r.grecaptcha)==null?void 0:l.v3Key)||"",{action:n}).then(c=>{e(c)})})}catch(r){console.log(r),t(r)}})});function B(n){return p(this,arguments,function*({slug:e,lang:t,perPage:i,page:o,ticketType:r="event"}){var l,c;try{const a=new URLSearchParams;a.append("lang",b(t)),a.append("visible_in",((c=(l=d.config)==null?void 0:l.wbk)==null?void 0:c.appSource)||""),o&&a.append("page",o.toString()),i&&a.append("per_page",i.toString());const s=r==="event"?`/event-ticket-details/${e}?${a.toString()}`:`/season-ticket-details/${e}?${a.toString()}`;return yield g({url:s,includeAuth:!1})}catch(a){throw new h({error:a,name:r==="event"?"getEventTicketsException":"getSeasonTicketsException"})}})}var H=n=>p(null,[n],function*({lang:e,country:t}){var i;try{const o=b(e),r=yield g({url:`/cities/${t}?lang=${o}`});if(((i=r.status)==null?void 0:i.toLowerCase())!=="success"){const l=Object.values((r==null?void 0:r.error)||{})[0]||(r==null?void 0:r.error);throw new Error(String(l))}return r.data}catch(o){throw new h({error:o,name:"getCitiesException"})}}),J=n=>p(null,null,function*(){var e,t,i,o;try{const r=yield R("refetch_token");return yield g({url:"/refresh_token",baseUrl:(t=(e=d.config)==null?void 0:e.wbk)==null?void 0:t.authApi,options:{method:"POST",body:JSON.stringify({refresh_token:n,captcha:r,app_source:(o=(i=d.config)==null?void 0:i.wbk)==null?void 0:o.appSource})}})}catch(r){throw new h({error:r,name:"refreshTokensException"})}}),Q=n=>p(null,[n],function*({user:e,locale:t="en"}){var i,o,r,l,c;try{const a=b(t),s=yield g({url:`/update-profile?lang=${a}`,baseUrl:(o=(i=d.config)==null?void 0:i.wbk)==null?void 0:o.authApi,options:{method:"POST",body:JSON.stringify({first_name:e.first_name,last_name:e.last_name,city:e.city,country:e.country,nationality:e.nationality,dob:e.dob,gender:e.gender,email:e.email,cell_country_code:e.cell_country_code,cell_number:e.cell_number,favorite_team:e.favorite_team,passport_data:e.passport_data,lang:a,skip_phone_validation:!0,country_code:e.cell_country_code,phone:e.cell_number})}});if(((r=s.status)==null?void 0:r.toLowerCase())!=="success")throw(s==null?void 0:s.error)||{message:(l=s.original)==null?void 0:l.error,phone:(c=s.original)==null?void 0:c.error};return s.data.user}catch(a){throw new h({error:a,name:"updateUserInfoException",context:a})}});
1export{d as A,u as _,z as a,k as b,B as c,H as d,W as g,J as r,Q as u}; 2//# sourceMappingURL=api-B_YjgDBB.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.