From 43693dfc67e07abc980d16325528a27f6f5f59b1 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 20 Dec 2023 11:46:29 +0100 Subject: [PATCH] build dist files --- fittrackee/dist/index.html | 2 +- .../dist/static/{index-0v1Cinoq.js => index-SJb1QCEI.js} | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) rename fittrackee/dist/static/{index-0v1Cinoq.js => index-SJb1QCEI.js} (95%) diff --git a/fittrackee/dist/index.html b/fittrackee/dist/index.html index 6bc49f6e..1903e740 100644 --- a/fittrackee/dist/index.html +++ b/fittrackee/dist/index.html @@ -7,7 +7,7 @@ FitTrackee - + diff --git a/fittrackee/dist/static/index-0v1Cinoq.js b/fittrackee/dist/static/index-SJb1QCEI.js similarity index 95% rename from fittrackee/dist/static/index-0v1Cinoq.js rename to fittrackee/dist/static/index-SJb1QCEI.js index 800a58ea..8593c91c 100644 --- a/fittrackee/dist/static/index-0v1Cinoq.js +++ b/fittrackee/dist/static/index-SJb1QCEI.js @@ -6,7 +6,7 @@ import{C as Yd,B as Uh,L as Mh,a as vS,b as RS,P as bS,p as NS,c as CS,d as yS,i `).forEach(function(o){a=o.indexOf(":"),n=o.substring(0,a).trim().toLowerCase(),r=o.substring(a+1).trim(),!(!n||t[n]&&Eb[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},Wp=Symbol("internals");function Ds(e){return e&&String(e).trim().toLowerCase()}function yi(e){return e===!1||e==null?e:J.isArray(e)?e.map(yi):String(e)}function _b(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const Tb=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Vc(e,t,n,r,a){if(J.isFunction(r))return r.call(this,t,n);if(a&&(t=n),!!J.isString(t)){if(J.isString(r))return t.indexOf(r)!==-1;if(J.isRegExp(r))return r.test(t)}}function gb(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function Ab(e,t){const n=J.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(a,s,o){return this[r].call(this,t,a,s,o)},configurable:!0})})}class uc{constructor(t){t&&this.set(t)}set(t,n,r){const a=this;function s(i,u,c){const l=Ds(u);if(!l)throw new Error("header name must be a non-empty string");const f=J.findKey(a,l);(!f||a[f]===void 0||c===!0||c===void 0&&a[f]!==!1)&&(a[f||u]=yi(i))}const o=(i,u)=>J.forEach(i,(c,l)=>s(c,l,u));return J.isPlainObject(t)||t instanceof this.constructor?o(t,n):J.isString(t)&&(t=t.trim())&&!Tb(t)?o(hb(t),n):t!=null&&s(n,t,r),this}get(t,n){if(t=Ds(t),t){const r=J.findKey(this,t);if(r){const a=this[r];if(!n)return a;if(n===!0)return _b(a);if(J.isFunction(n))return n.call(this,a,r);if(J.isRegExp(n))return n.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Ds(t),t){const r=J.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||Vc(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let a=!1;function s(o){if(o=Ds(o),o){const i=J.findKey(r,o);i&&(!n||Vc(r,r[i],i,n))&&(delete r[i],a=!0)}}return J.isArray(t)?t.forEach(s):s(t),a}clear(t){const n=Object.keys(this);let r=n.length,a=!1;for(;r--;){const s=n[r];(!t||Vc(this,this[s],s,t,!0))&&(delete this[s],a=!0)}return a}normalize(t){const n=this,r={};return J.forEach(this,(a,s)=>{const o=J.findKey(r,s);if(o){n[o]=yi(a),delete n[s];return}const i=t?gb(s):String(s).trim();i!==s&&delete n[s],n[i]=yi(a),r[i]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return J.forEach(this,(r,a)=>{r!=null&&r!==!1&&(n[a]=t&&J.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(a=>r.set(a)),r}static accessor(t){const r=(this[Wp]=this[Wp]={accessors:{}}).accessors,a=this.prototype;function s(o){const i=Ds(o);r[i]||(Ab(a,o),r[i]=!0)}return J.isArray(t)?t.forEach(s):s(t),this}}uc.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);J.reduceDescriptors(uc.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});J.freezeMethods(uc);const hr=uc;function Kc(e,t){const n=this||Rf,r=t||n,a=hr.from(r.headers);let s=r.data;return J.forEach(e,function(i){s=i.call(n,s,a.normalize(),t?t.status:void 0)}),a.normalize(),s}function O1(e){return!!(e&&e.__CANCEL__)}function Po(e,t,n){et.call(this,e??"canceled",et.ERR_CANCELED,t,n),this.name="CanceledError"}J.inherits(Po,et,{__CANCEL__:!0});function Sb(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new et("Request failed with status code "+n.status,[et.ERR_BAD_REQUEST,et.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}const Ob=qn.hasStandardBrowserEnv?{write(e,t,n,r,a,s){const o=[e+"="+encodeURIComponent(t)];J.isNumber(n)&&o.push("expires="+new Date(n).toGMTString()),J.isString(r)&&o.push("path="+r),J.isString(a)&&o.push("domain="+a),s===!0&&o.push("secure"),document.cookie=o.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Ib(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function vb(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function I1(e,t){return e&&!Ib(t)?vb(e,t):t}const Rb=qn.hasStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");let r;function a(s){let o=s;return t&&(n.setAttribute("href",o),o=n.href),n.setAttribute("href",o),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=a(window.location.href),function(o){const i=J.isString(o)?a(o):o;return i.protocol===r.protocol&&i.host===r.host}}():function(){return function(){return!0}}();function bb(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Nb(e,t){e=e||10;const n=new Array(e),r=new Array(e);let a=0,s=0,o;return t=t!==void 0?t:1e3,function(u){const c=Date.now(),l=r[s];o||(o=c),n[a]=u,r[a]=c;let f=s,d=0;for(;f!==a;)d+=n[f++],f=f%e;if(a=(a+1)%e,a===s&&(s=(s+1)%e),c-o{const s=a.loaded,o=a.lengthComputable?a.total:void 0,i=s-n,u=r(i),c=s<=o;n=s;const l={loaded:s,total:o,progress:o?s/o:void 0,bytes:i,rate:u||void 0,estimated:u&&o&&c?(o-s)/u:void 0,event:a};l[t?"download":"upload"]=!0,e(l)}}const Cb=typeof XMLHttpRequest<"u",yb=Cb&&function(e){return new Promise(function(n,r){let a=e.data;const s=hr.from(e.headers).normalize();let{responseType:o,withXSRFToken:i}=e,u;function c(){e.cancelToken&&e.cancelToken.unsubscribe(u),e.signal&&e.signal.removeEventListener("abort",u)}let l;if(J.isFormData(a)){if(qn.hasStandardBrowserEnv||qn.hasStandardBrowserWebWorkerEnv)s.setContentType(!1);else if((l=s.getContentType())!==!1){const[g,...b]=l?l.split(";").map(I=>I.trim()).filter(Boolean):[];s.setContentType([g||"multipart/form-data",...b].join("; "))}}let f=new XMLHttpRequest;if(e.auth){const g=e.auth.username||"",b=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";s.set("Authorization","Basic "+btoa(g+":"+b))}const d=I1(e.baseURL,e.url);f.open(e.method.toUpperCase(),T1(d,e.params,e.paramsSerializer),!0),f.timeout=e.timeout;function m(){if(!f)return;const g=hr.from("getAllResponseHeaders"in f&&f.getAllResponseHeaders()),I={data:!o||o==="text"||o==="json"?f.responseText:f.response,status:f.status,statusText:f.statusText,headers:g,config:e,request:f};Sb(function(v){n(v),c()},function(v){r(v),c()},I),f=null}if("onloadend"in f?f.onloadend=m:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(m)},f.onabort=function(){f&&(r(new et("Request aborted",et.ECONNABORTED,e,f)),f=null)},f.onerror=function(){r(new et("Network Error",et.ERR_NETWORK,e,f)),f=null},f.ontimeout=function(){let b=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const I=e.transitional||g1;e.timeoutErrorMessage&&(b=e.timeoutErrorMessage),r(new et(b,I.clarifyTimeoutError?et.ETIMEDOUT:et.ECONNABORTED,e,f)),f=null},qn.hasStandardBrowserEnv&&(i&&J.isFunction(i)&&(i=i(e)),i||i!==!1&&Rb(d))){const g=e.xsrfHeaderName&&e.xsrfCookieName&&Ob.read(e.xsrfCookieName);g&&s.set(e.xsrfHeaderName,g)}a===void 0&&s.setContentType(null),"setRequestHeader"in f&&J.forEach(s.toJSON(),function(b,I){f.setRequestHeader(I,b)}),J.isUndefined(e.withCredentials)||(f.withCredentials=!!e.withCredentials),o&&o!=="json"&&(f.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&f.addEventListener("progress",Gp(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&f.upload&&f.upload.addEventListener("progress",Gp(e.onUploadProgress)),(e.cancelToken||e.signal)&&(u=g=>{f&&(r(!g||g.type?new Po(null,e,f):g),f.abort(),f=null)},e.cancelToken&&e.cancelToken.subscribe(u),e.signal&&(e.signal.aborted?u():e.signal.addEventListener("abort",u)));const E=bb(d);if(E&&qn.protocols.indexOf(E)===-1){r(new et("Unsupported protocol "+E+":",et.ERR_BAD_REQUEST,e));return}f.send(a||null)})},Wl={http:J2,xhr:yb};J.forEach(Wl,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const zp=e=>`- ${e}`,Db=e=>J.isFunction(e)||e===null||e===!1,v1={getAdapter:e=>{e=J.isArray(e)?e:[e];const{length:t}=e;let n,r;const a={};for(let s=0;s`adapter ${i} `+(u===!1?"is not supported by the environment":"is not available in the build"));let o=t?s.length>1?`since : `+s.map(zp).join(` -`):" "+zp(s[0]):"as no adapter specified";throw new et("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return r},adapters:Wl};function Yc(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Po(null,e)}function Bp(e){return Yc(e),e.headers=hr.from(e.headers),e.data=Kc.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),v1.getAdapter(e.adapter||Rf.adapter)(e).then(function(r){return Yc(e),r.data=Kc.call(e,e.transformResponse,r),r.headers=hr.from(r.headers),r},function(r){return O1(r)||(Yc(e),r&&r.response&&(r.response.data=Kc.call(e,e.transformResponse,r.response),r.response.headers=hr.from(r.response.headers))),Promise.reject(r)})}const Hp=e=>e instanceof hr?e.toJSON():e;function Xa(e,t){t=t||{};const n={};function r(c,l,f){return J.isPlainObject(c)&&J.isPlainObject(l)?J.merge.call({caseless:f},c,l):J.isPlainObject(l)?J.merge({},l):J.isArray(l)?l.slice():l}function a(c,l,f){if(J.isUndefined(l)){if(!J.isUndefined(c))return r(void 0,c,f)}else return r(c,l,f)}function s(c,l){if(!J.isUndefined(l))return r(void 0,l)}function o(c,l){if(J.isUndefined(l)){if(!J.isUndefined(c))return r(void 0,c)}else return r(void 0,l)}function i(c,l,f){if(f in t)return r(c,l);if(f in e)return r(void 0,c)}const u={url:s,method:s,data:s,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:i,headers:(c,l)=>a(Hp(c),Hp(l),!0)};return J.forEach(Object.keys(Object.assign({},e,t)),function(l){const f=u[l]||a,d=f(e[l],t[l],l);J.isUndefined(d)&&f!==i||(n[l]=d)}),n}const R1="1.6.2",bf={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{bf[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const jp={};bf.transitional=function(t,n,r){function a(s,o){return"[Axios v"+R1+"] Transitional option '"+s+"'"+o+(r?". "+r:"")}return(s,o,i)=>{if(t===!1)throw new et(a(o," has been removed"+(n?" in "+n:"")),et.ERR_DEPRECATED);return n&&!jp[o]&&(jp[o]=!0,console.warn(a(o," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(s,o,i):!0}};function Pb(e,t,n){if(typeof e!="object")throw new et("options must be an object",et.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let a=r.length;for(;a-- >0;){const s=r[a],o=t[s];if(o){const i=e[s],u=i===void 0||o(i,s,e);if(u!==!0)throw new et("option "+s+" must be "+u,et.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new et("Unknown option "+s,et.ERR_BAD_OPTION)}}const Gl={assertOptions:Pb,validators:bf},Nr=Gl.validators;class qi{constructor(t){this.defaults=t,this.interceptors={request:new Fp,response:new Fp}}request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Xa(this.defaults,n);const{transitional:r,paramsSerializer:a,headers:s}=n;r!==void 0&&Gl.assertOptions(r,{silentJSONParsing:Nr.transitional(Nr.boolean),forcedJSONParsing:Nr.transitional(Nr.boolean),clarifyTimeoutError:Nr.transitional(Nr.boolean)},!1),a!=null&&(J.isFunction(a)?n.paramsSerializer={serialize:a}:Gl.assertOptions(a,{encode:Nr.function,serialize:Nr.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=s&&J.merge(s.common,s[n.method]);s&&J.forEach(["delete","get","head","post","put","patch","common"],E=>{delete s[E]}),n.headers=hr.concat(o,s);const i=[];let u=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(n)===!1||(u=u&&g.synchronous,i.unshift(g.fulfilled,g.rejected))});const c=[];this.interceptors.response.forEach(function(g){c.push(g.fulfilled,g.rejected)});let l,f=0,d;if(!u){const E=[Bp.bind(this),void 0];for(E.unshift.apply(E,i),E.push.apply(E,c),d=E.length,l=Promise.resolve(n);f{if(!r._listeners)return;let s=r._listeners.length;for(;s-- >0;)r._listeners[s](a);r._listeners=null}),this.promise.then=a=>{let s;const o=new Promise(i=>{r.subscribe(i),s=i}).then(a);return o.cancel=function(){r.unsubscribe(s)},o},t(function(s,o,i){r.reason||(r.reason=new Po(s,o,i),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}static source(){let t;return{token:new Nf(function(a){t=a}),cancel:t}}}const wb=Nf;function Lb(e){return function(n){return e.apply(null,n)}}function $b(e){return J.isObject(e)&&e.isAxiosError===!0}const zl={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(zl).forEach(([e,t])=>{zl[t]=e});const kb=zl;function b1(e){const t=new Di(e),n=o1(Di.prototype.request,t);return J.extend(n,Di.prototype,t,{allOwnKeys:!0}),J.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return b1(Xa(e,a))},n}const Ct=b1(Rf);Ct.Axios=Di;Ct.CanceledError=Po;Ct.CancelToken=wb;Ct.isCancel=O1;Ct.VERSION=R1;Ct.toFormData=ic;Ct.AxiosError=et;Ct.Cancel=Ct.CanceledError;Ct.all=function(t){return Promise.all(t)};Ct.spread=Lb;Ct.isAxiosError=$b;Ct.mergeConfig=Xa;Ct.AxiosHeaders=hr;Ct.formToJSON=e=>S1(J.isHTMLForm(e)?new FormData(e):e);Ct.getAdapter=v1.getAdapter;Ct.HttpStatusCode=kb;Ct.default=Ct;const N1=Ct;var C1=(e=>(e.ACCEPT_PRIVACY_POLICY="ACCEPT_PRIVACY_POLICY",e.CHECK_AUTH_USER="CHECK_AUTH_USER",e.CONFIRM_ACCOUNT="CONFIRM_ACCOUNT",e.CONFIRM_EMAIL="CONFIRM_EMAIL",e.DELETE_ACCOUNT="DELETE_ACCOUNT",e.DELETE_PICTURE="DELETE_PICTURE",e.GET_REQUEST_DATA_EXPORT="GET_REQUEST_DATA_EXPORT",e.GET_USER_PROFILE="GET_USER_PROFILE",e.LOGIN_OR_REGISTER="LOGIN_OR_REGISTER",e.LOGOUT="LOGOUT",e.REQUEST_DATA_EXPORT="REQUEST_DATA_EXPORT",e.RESEND_ACCOUNT_CONFIRMATION_EMAIL="RESEND_ACCOUNT_CONFIRMATION_EMAIL",e.RESET_USER_PASSWORD="RESET_USER_PASSWORD",e.RESET_USER_SPORT_PREFERENCES="RESET_USER_SPORT_PREFERENCES",e.SEND_PASSWORD_RESET_REQUEST="SEND_PASSWORD_RESET_REQUEST",e.UPDATE_USER_ACCOUNT="UPDATE_USER_ACCOUNT",e.UPDATE_USER_PICTURE="UPDATE_USER_PICTURE",e.UPDATE_USER_PROFILE="UPDATE_USER_PROFILE",e.UPDATE_USER_PREFERENCES="UPDATE_USER_PREFERENCES",e.UPDATE_USER_SPORT_PREFERENCES="UPDATE_USER_SPORT_PREFERENCES",e))(C1||{}),y1=(e=>(e.AUTH_TOKEN="AUTH_TOKEN",e.AUTH_USER_PROFILE="AUTH_USER_PROFILE",e.IS_ADMIN="IS_ADMIN",e.IS_AUTHENTICATED="IS_AUTHENTICATED",e.IS_SUCCESS="IS_SUCCESS",e.IS_REGISTRATION_SUCCESS="IS_REGISTRATION_SUCCESS",e.USER_LOADING="USER_LOADING",e.EXPORT_REQUEST="EXPORT_REQUEST",e))(y1||{}),D1=(e=>(e.CLEAR_AUTH_USER_TOKEN="CLEAR_AUTH_USER_TOKEN",e.UPDATE_AUTH_TOKEN="UPDATE_AUTH_TOKEN",e.UPDATE_AUTH_USER_PROFILE="UPDATE_AUTH_USER_PROFILE",e.UPDATE_IS_SUCCESS="UPDATE_USER_IS_SUCCESS",e.UPDATE_IS_REGISTRATION_SUCCESS="UPDATE_IS_REGISTRATION_SUCCESS",e.UPDATE_USER_LOADING="UPDATE_USER_LOADING",e.SET_EXPORT_REQUEST="SET_EXPORT_REQUEST",e))(D1||{}),P1=(e=>(e.AUTHORIZE_CLIENT="AUTHORIZE_CLIENT",e.CREATE_CLIENT="CREATE_CLIENT",e.DELETE_CLIENT="DELETE_CLIENT",e.GET_CLIENTS="GET_CLIENTS",e.GET_CLIENT_BY_CLIENT_ID="GET_CLIENT_BY_CLIENT_ID",e.GET_CLIENT_BY_ID="GET_CLIENT_BY_ID",e.REVOKE_ALL_TOKENS="REVOKE_ALL_TOKENS",e))(P1||{}),w1=(e=>(e.CLIENT="CLIENT",e.CLIENTS="CLIENTS",e.CLIENTS_PAGINATION="CLIENTS_PAGINATION",e.REVOCATION_SUCCESSFUL="REVOCATION_SUCCESSFUL",e))(w1||{}),L1=(e=>(e.EMPTY_CLIENT="EMPTY_CLIENT",e.SET_CLIENT="SET_CLIENT",e.SET_CLIENTS="SET_CLIENTS",e.SET_CLIENTS_PAGINATION="SET_CLIENTS_PAGINATION",e.SET_REVOCATION_SUCCESSFUL="SET_REVOCATION_SUCCESSFUL",e))(L1||{}),$1=(e=>(e.GET_APPLICATION_CONFIG="GET_APPLICATION_CONFIG",e.GET_APPLICATION_PRIVACY_POLICY="GET_APPLICATION_PRIVACY_POLICY",e.GET_APPLICATION_STATS="GET_APPLICATION_STATS",e.UPDATE_APPLICATION_CONFIG="UPDATE_APPLICATION_CONFIG",e.UPDATE_APPLICATION_LANGUAGE="UPDATE_APPLICATION_LANGUAGE",e))($1||{}),k1=(e=>(e.APP_CONFIG="APP_CONFIG",e.APP_LOADING="APP_LOADING",e.APP_STATS="APP_STATS",e.DARK_MODE="DARK_MODE",e.ERROR_MESSAGES="ERROR_MESSAGES",e.LANGUAGE="LANGUAGE",e.LOCALE="LOCALE",e))(k1||{}),U1=(e=>(e.EMPTY_ERROR_MESSAGES="EMPTY_ERROR_MESSAGES",e.SET_ERROR_MESSAGES="SET_ERROR_MESSAGES",e.UPDATE_APPLICATION_CONFIG="UPDATE_APPLICATION_CONFIG",e.UPDATE_APPLICATION_LOADING="UPDATE_APPLICATION_LOADING",e.UPDATE_APPLICATION_PRIVACY_POLICY="UPDATE_APPLICATION_PRIVACY_POLICY",e.UPDATE_APPLICATION_STATS="UPDATE_APPLICATION_STATS",e.UPDATE_DARK_MODE="UPDATE_DARK_MODE",e.UPDATE_LANG="UPDATE_LANG",e))(U1||{}),M1=(e=>(e.GET_SPORTS="GET_SPORTS",e.UPDATE_SPORTS="UPDATE_SPORTS",e))(M1||{}),x1=(e=>(e.SPORTS="SPORTS",e))(x1||{}),F1=(e=>(e.SET_SPORTS="SET_SPORTS",e))(F1||{}),W1=(e=>(e.GET_USER_STATS="GET_USER_STATS",e))(W1||{}),G1=(e=>(e.USER_STATS="USER_STATS",e))(G1||{}),z1=(e=>(e.EMPTY_USER_STATS="EMPTY_USER_STATS",e.UPDATE_USER_STATS="UPDATE_USER_STATS",e))(z1||{}),B1=(e=>(e.EMPTY_USER="EMPTY_USER",e.EMPTY_USERS="EMPTY_USERS",e.GET_USER="GET_USER",e.GET_USERS="GET_USERS",e.UPDATE_USER="UPDATE_USER",e.DELETE_USER_ACCOUNT="DELETE_USER_ACCOUNT",e))(B1||{}),H1=(e=>(e.USER="USER",e.USERS="USERS",e.USERS_IS_SUCCESS="USERS_IS_SUCCESS",e.USERS_LOADING="USERS_LOADING",e.USERS_PAGINATION="USERS_PAGINATION",e))(H1||{}),j1=(e=>(e.UPDATE_USER="UPDATE_USER",e.UPDATE_USER_IN_USERS="UPDATE_USER_IN_USERS",e.UPDATE_USERS="UPDATE_USERS",e.UPDATE_USERS_LOADING="UPDATE_USERS_LOADING",e.UPDATE_USERS_PAGINATION="UPDATE_USERS_PAGINATION",e.UPDATE_IS_SUCCESS="UPDATE_IS_SUCCESS",e))(j1||{}),V1=(e=>(e.ADD_WORKOUT="ADD_WORKOUT",e.ADD_WORKOUT_WITHOUT_GPX="ADD_WORKOUT_WITHOUT_GPX",e.DELETE_WORKOUT="DELETE_WORKOUT",e.EDIT_WORKOUT="EDIT_WORKOUT",e.GET_CALENDAR_WORKOUTS="GET_CALENDAR_WORKOUTS",e.GET_USER_WORKOUTS="GET_USER_WORKOUTS",e.GET_TIMELINE_WORKOUTS="GET_TIMELINE_WORKOUTS",e.GET_MORE_TIMELINE_WORKOUTS="GET_MORE_TIMELINE_WORKOUTS",e.GET_WORKOUT_DATA="GET_WORKOUT_DATA",e))(V1||{}),K1=(e=>(e.CALENDAR_WORKOUTS="CALENDAR_WORKOUTS",e.TIMELINE_WORKOUTS="TIMELINE_WORKOUTS",e.USER_WORKOUTS="USER_WORKOUTS",e.WORKOUT_DATA="WORKOUT_DATA",e.WORKOUTS_PAGINATION="WORKOUTS_PAGINATION",e))(K1||{}),ca=(e=>(e.ADD_TIMELINE_WORKOUTS="ADD_TIMELINE_WORKOUTS",e.EMPTY_WORKOUTS="EMPTY_WORKOUTS",e.EMPTY_CALENDAR_WORKOUTS="EMPTY_CALENDAR_WORKOUTS",e.EMPTY_WORKOUT="EMPTY_WORKOUT",e.SET_CALENDAR_WORKOUTS="SET_CALENDAR_WORKOUTS",e.SET_TIMELINE_WORKOUTS="SET_TIMELINE_WORKOUTS",e.SET_USER_WORKOUTS="SET_USER_WORKOUTS",e.SET_WORKOUT="SET_WORKOUT",e.SET_WORKOUT_GPX="SET_WORKOUT_GPX",e.SET_WORKOUT_CHART_DATA="SET_WORKOUT_CHART_DATA",e.SET_WORKOUT_LOADING="SET_WORKOUT_LOADING",e.SET_WORKOUTS_PAGINATION="SET_WORKOUTS_PAGINATION",e))(ca||{});const H={ACTIONS:$1,GETTERS:k1,MUTATIONS:U1},$t={ACTIONS:M1,GETTERS:x1,MUTATIONS:F1},Kr={ACTIONS:W1,GETTERS:G1,MUTATIONS:z1},Y={ACTIONS:C1,GETTERS:y1,MUTATIONS:D1},Ve={ACTIONS:P1,GETTERS:w1,MUTATIONS:L1},Ce={ACTIONS:B1,GETTERS:H1,MUTATIONS:j1},Te={ACTIONS:V1,GETTERS:K1,MUTATIONS:ca},wo=()=>"/api/",he=(e,t,n="UNKNOWN")=>{var s;if(t&&t.message==="canceled")return;const r=t!=null&&t.response&&t.response.data?t.response.data:null;if(((s=t==null?void 0:t.response)==null?void 0:s.status)===401&&(r==null?void 0:r.error)==="invalid_token"){localStorage.removeItem("authToken"),e.dispatch(Y.ACTIONS.CHECK_AUTH_USER);return}const a=t?t.response?t.response.status===413?"file size is greater than the allowed size":r!=null&&r.message?r.message:n:t.message?t.message:n:n;e.commit(H.MUTATIONS.SET_ERROR_MESSAGES,a.includes(` +`):" "+zp(s[0]):"as no adapter specified";throw new et("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return r},adapters:Wl};function Yc(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Po(null,e)}function Bp(e){return Yc(e),e.headers=hr.from(e.headers),e.data=Kc.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),v1.getAdapter(e.adapter||Rf.adapter)(e).then(function(r){return Yc(e),r.data=Kc.call(e,e.transformResponse,r),r.headers=hr.from(r.headers),r},function(r){return O1(r)||(Yc(e),r&&r.response&&(r.response.data=Kc.call(e,e.transformResponse,r.response),r.response.headers=hr.from(r.response.headers))),Promise.reject(r)})}const Hp=e=>e instanceof hr?e.toJSON():e;function Xa(e,t){t=t||{};const n={};function r(c,l,f){return J.isPlainObject(c)&&J.isPlainObject(l)?J.merge.call({caseless:f},c,l):J.isPlainObject(l)?J.merge({},l):J.isArray(l)?l.slice():l}function a(c,l,f){if(J.isUndefined(l)){if(!J.isUndefined(c))return r(void 0,c,f)}else return r(c,l,f)}function s(c,l){if(!J.isUndefined(l))return r(void 0,l)}function o(c,l){if(J.isUndefined(l)){if(!J.isUndefined(c))return r(void 0,c)}else return r(void 0,l)}function i(c,l,f){if(f in t)return r(c,l);if(f in e)return r(void 0,c)}const u={url:s,method:s,data:s,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:i,headers:(c,l)=>a(Hp(c),Hp(l),!0)};return J.forEach(Object.keys(Object.assign({},e,t)),function(l){const f=u[l]||a,d=f(e[l],t[l],l);J.isUndefined(d)&&f!==i||(n[l]=d)}),n}const R1="1.6.2",bf={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{bf[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const jp={};bf.transitional=function(t,n,r){function a(s,o){return"[Axios v"+R1+"] Transitional option '"+s+"'"+o+(r?". "+r:"")}return(s,o,i)=>{if(t===!1)throw new et(a(o," has been removed"+(n?" in "+n:"")),et.ERR_DEPRECATED);return n&&!jp[o]&&(jp[o]=!0,console.warn(a(o," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(s,o,i):!0}};function Pb(e,t,n){if(typeof e!="object")throw new et("options must be an object",et.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let a=r.length;for(;a-- >0;){const s=r[a],o=t[s];if(o){const i=e[s],u=i===void 0||o(i,s,e);if(u!==!0)throw new et("option "+s+" must be "+u,et.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new et("Unknown option "+s,et.ERR_BAD_OPTION)}}const Gl={assertOptions:Pb,validators:bf},Nr=Gl.validators;class qi{constructor(t){this.defaults=t,this.interceptors={request:new Fp,response:new Fp}}request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Xa(this.defaults,n);const{transitional:r,paramsSerializer:a,headers:s}=n;r!==void 0&&Gl.assertOptions(r,{silentJSONParsing:Nr.transitional(Nr.boolean),forcedJSONParsing:Nr.transitional(Nr.boolean),clarifyTimeoutError:Nr.transitional(Nr.boolean)},!1),a!=null&&(J.isFunction(a)?n.paramsSerializer={serialize:a}:Gl.assertOptions(a,{encode:Nr.function,serialize:Nr.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=s&&J.merge(s.common,s[n.method]);s&&J.forEach(["delete","get","head","post","put","patch","common"],E=>{delete s[E]}),n.headers=hr.concat(o,s);const i=[];let u=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(n)===!1||(u=u&&g.synchronous,i.unshift(g.fulfilled,g.rejected))});const c=[];this.interceptors.response.forEach(function(g){c.push(g.fulfilled,g.rejected)});let l,f=0,d;if(!u){const E=[Bp.bind(this),void 0];for(E.unshift.apply(E,i),E.push.apply(E,c),d=E.length,l=Promise.resolve(n);f{if(!r._listeners)return;let s=r._listeners.length;for(;s-- >0;)r._listeners[s](a);r._listeners=null}),this.promise.then=a=>{let s;const o=new Promise(i=>{r.subscribe(i),s=i}).then(a);return o.cancel=function(){r.unsubscribe(s)},o},t(function(s,o,i){r.reason||(r.reason=new Po(s,o,i),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}static source(){let t;return{token:new Nf(function(a){t=a}),cancel:t}}}const wb=Nf;function Lb(e){return function(n){return e.apply(null,n)}}function $b(e){return J.isObject(e)&&e.isAxiosError===!0}const zl={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(zl).forEach(([e,t])=>{zl[t]=e});const kb=zl;function b1(e){const t=new Di(e),n=o1(Di.prototype.request,t);return J.extend(n,Di.prototype,t,{allOwnKeys:!0}),J.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return b1(Xa(e,a))},n}const Ct=b1(Rf);Ct.Axios=Di;Ct.CanceledError=Po;Ct.CancelToken=wb;Ct.isCancel=O1;Ct.VERSION=R1;Ct.toFormData=ic;Ct.AxiosError=et;Ct.Cancel=Ct.CanceledError;Ct.all=function(t){return Promise.all(t)};Ct.spread=Lb;Ct.isAxiosError=$b;Ct.mergeConfig=Xa;Ct.AxiosHeaders=hr;Ct.formToJSON=e=>S1(J.isHTMLForm(e)?new FormData(e):e);Ct.getAdapter=v1.getAdapter;Ct.HttpStatusCode=kb;Ct.default=Ct;const N1=Ct;var C1=(e=>(e.ACCEPT_PRIVACY_POLICY="ACCEPT_PRIVACY_POLICY",e.CHECK_AUTH_USER="CHECK_AUTH_USER",e.CONFIRM_ACCOUNT="CONFIRM_ACCOUNT",e.CONFIRM_EMAIL="CONFIRM_EMAIL",e.DELETE_ACCOUNT="DELETE_ACCOUNT",e.DELETE_PICTURE="DELETE_PICTURE",e.GET_REQUEST_DATA_EXPORT="GET_REQUEST_DATA_EXPORT",e.GET_USER_PROFILE="GET_USER_PROFILE",e.LOGIN_OR_REGISTER="LOGIN_OR_REGISTER",e.LOGOUT="LOGOUT",e.REQUEST_DATA_EXPORT="REQUEST_DATA_EXPORT",e.RESEND_ACCOUNT_CONFIRMATION_EMAIL="RESEND_ACCOUNT_CONFIRMATION_EMAIL",e.RESET_USER_PASSWORD="RESET_USER_PASSWORD",e.RESET_USER_SPORT_PREFERENCES="RESET_USER_SPORT_PREFERENCES",e.SEND_PASSWORD_RESET_REQUEST="SEND_PASSWORD_RESET_REQUEST",e.UPDATE_USER_ACCOUNT="UPDATE_USER_ACCOUNT",e.UPDATE_USER_PICTURE="UPDATE_USER_PICTURE",e.UPDATE_USER_PROFILE="UPDATE_USER_PROFILE",e.UPDATE_USER_PREFERENCES="UPDATE_USER_PREFERENCES",e.UPDATE_USER_SPORT_PREFERENCES="UPDATE_USER_SPORT_PREFERENCES",e))(C1||{}),y1=(e=>(e.AUTH_TOKEN="AUTH_TOKEN",e.AUTH_USER_PROFILE="AUTH_USER_PROFILE",e.IS_ADMIN="IS_ADMIN",e.IS_AUTHENTICATED="IS_AUTHENTICATED",e.IS_PROFILE_NOT_LOADED="IS_PROFILE_NOT_LOADED",e.IS_SUCCESS="IS_SUCCESS",e.IS_REGISTRATION_SUCCESS="IS_REGISTRATION_SUCCESS",e.USER_LOADING="USER_LOADING",e.EXPORT_REQUEST="EXPORT_REQUEST",e))(y1||{}),D1=(e=>(e.CLEAR_AUTH_USER_TOKEN="CLEAR_AUTH_USER_TOKEN",e.UPDATE_AUTH_TOKEN="UPDATE_AUTH_TOKEN",e.UPDATE_AUTH_USER_PROFILE="UPDATE_AUTH_USER_PROFILE",e.UPDATE_IS_SUCCESS="UPDATE_USER_IS_SUCCESS",e.UPDATE_IS_REGISTRATION_SUCCESS="UPDATE_IS_REGISTRATION_SUCCESS",e.UPDATE_USER_LOADING="UPDATE_USER_LOADING",e.SET_EXPORT_REQUEST="SET_EXPORT_REQUEST",e))(D1||{}),P1=(e=>(e.AUTHORIZE_CLIENT="AUTHORIZE_CLIENT",e.CREATE_CLIENT="CREATE_CLIENT",e.DELETE_CLIENT="DELETE_CLIENT",e.GET_CLIENTS="GET_CLIENTS",e.GET_CLIENT_BY_CLIENT_ID="GET_CLIENT_BY_CLIENT_ID",e.GET_CLIENT_BY_ID="GET_CLIENT_BY_ID",e.REVOKE_ALL_TOKENS="REVOKE_ALL_TOKENS",e))(P1||{}),w1=(e=>(e.CLIENT="CLIENT",e.CLIENTS="CLIENTS",e.CLIENTS_PAGINATION="CLIENTS_PAGINATION",e.REVOCATION_SUCCESSFUL="REVOCATION_SUCCESSFUL",e))(w1||{}),L1=(e=>(e.EMPTY_CLIENT="EMPTY_CLIENT",e.SET_CLIENT="SET_CLIENT",e.SET_CLIENTS="SET_CLIENTS",e.SET_CLIENTS_PAGINATION="SET_CLIENTS_PAGINATION",e.SET_REVOCATION_SUCCESSFUL="SET_REVOCATION_SUCCESSFUL",e))(L1||{}),$1=(e=>(e.GET_APPLICATION_CONFIG="GET_APPLICATION_CONFIG",e.GET_APPLICATION_PRIVACY_POLICY="GET_APPLICATION_PRIVACY_POLICY",e.GET_APPLICATION_STATS="GET_APPLICATION_STATS",e.UPDATE_APPLICATION_CONFIG="UPDATE_APPLICATION_CONFIG",e.UPDATE_APPLICATION_LANGUAGE="UPDATE_APPLICATION_LANGUAGE",e))($1||{}),k1=(e=>(e.APP_CONFIG="APP_CONFIG",e.APP_LOADING="APP_LOADING",e.APP_STATS="APP_STATS",e.DARK_MODE="DARK_MODE",e.ERROR_MESSAGES="ERROR_MESSAGES",e.LANGUAGE="LANGUAGE",e.LOCALE="LOCALE",e))(k1||{}),U1=(e=>(e.EMPTY_ERROR_MESSAGES="EMPTY_ERROR_MESSAGES",e.SET_ERROR_MESSAGES="SET_ERROR_MESSAGES",e.UPDATE_APPLICATION_CONFIG="UPDATE_APPLICATION_CONFIG",e.UPDATE_APPLICATION_LOADING="UPDATE_APPLICATION_LOADING",e.UPDATE_APPLICATION_PRIVACY_POLICY="UPDATE_APPLICATION_PRIVACY_POLICY",e.UPDATE_APPLICATION_STATS="UPDATE_APPLICATION_STATS",e.UPDATE_DARK_MODE="UPDATE_DARK_MODE",e.UPDATE_LANG="UPDATE_LANG",e))(U1||{}),M1=(e=>(e.GET_SPORTS="GET_SPORTS",e.UPDATE_SPORTS="UPDATE_SPORTS",e))(M1||{}),x1=(e=>(e.SPORTS="SPORTS",e))(x1||{}),F1=(e=>(e.SET_SPORTS="SET_SPORTS",e))(F1||{}),W1=(e=>(e.GET_USER_STATS="GET_USER_STATS",e))(W1||{}),G1=(e=>(e.USER_STATS="USER_STATS",e))(G1||{}),z1=(e=>(e.EMPTY_USER_STATS="EMPTY_USER_STATS",e.UPDATE_USER_STATS="UPDATE_USER_STATS",e))(z1||{}),B1=(e=>(e.EMPTY_USER="EMPTY_USER",e.EMPTY_USERS="EMPTY_USERS",e.GET_USER="GET_USER",e.GET_USERS="GET_USERS",e.UPDATE_USER="UPDATE_USER",e.DELETE_USER_ACCOUNT="DELETE_USER_ACCOUNT",e))(B1||{}),H1=(e=>(e.USER="USER",e.USERS="USERS",e.USERS_IS_SUCCESS="USERS_IS_SUCCESS",e.USERS_LOADING="USERS_LOADING",e.USERS_PAGINATION="USERS_PAGINATION",e))(H1||{}),j1=(e=>(e.UPDATE_USER="UPDATE_USER",e.UPDATE_USER_IN_USERS="UPDATE_USER_IN_USERS",e.UPDATE_USERS="UPDATE_USERS",e.UPDATE_USERS_LOADING="UPDATE_USERS_LOADING",e.UPDATE_USERS_PAGINATION="UPDATE_USERS_PAGINATION",e.UPDATE_IS_SUCCESS="UPDATE_IS_SUCCESS",e))(j1||{}),V1=(e=>(e.ADD_WORKOUT="ADD_WORKOUT",e.ADD_WORKOUT_WITHOUT_GPX="ADD_WORKOUT_WITHOUT_GPX",e.DELETE_WORKOUT="DELETE_WORKOUT",e.EDIT_WORKOUT="EDIT_WORKOUT",e.GET_CALENDAR_WORKOUTS="GET_CALENDAR_WORKOUTS",e.GET_USER_WORKOUTS="GET_USER_WORKOUTS",e.GET_TIMELINE_WORKOUTS="GET_TIMELINE_WORKOUTS",e.GET_MORE_TIMELINE_WORKOUTS="GET_MORE_TIMELINE_WORKOUTS",e.GET_WORKOUT_DATA="GET_WORKOUT_DATA",e))(V1||{}),K1=(e=>(e.CALENDAR_WORKOUTS="CALENDAR_WORKOUTS",e.TIMELINE_WORKOUTS="TIMELINE_WORKOUTS",e.USER_WORKOUTS="USER_WORKOUTS",e.WORKOUT_DATA="WORKOUT_DATA",e.WORKOUTS_PAGINATION="WORKOUTS_PAGINATION",e))(K1||{}),ca=(e=>(e.ADD_TIMELINE_WORKOUTS="ADD_TIMELINE_WORKOUTS",e.EMPTY_WORKOUTS="EMPTY_WORKOUTS",e.EMPTY_CALENDAR_WORKOUTS="EMPTY_CALENDAR_WORKOUTS",e.EMPTY_WORKOUT="EMPTY_WORKOUT",e.SET_CALENDAR_WORKOUTS="SET_CALENDAR_WORKOUTS",e.SET_TIMELINE_WORKOUTS="SET_TIMELINE_WORKOUTS",e.SET_USER_WORKOUTS="SET_USER_WORKOUTS",e.SET_WORKOUT="SET_WORKOUT",e.SET_WORKOUT_GPX="SET_WORKOUT_GPX",e.SET_WORKOUT_CHART_DATA="SET_WORKOUT_CHART_DATA",e.SET_WORKOUT_LOADING="SET_WORKOUT_LOADING",e.SET_WORKOUTS_PAGINATION="SET_WORKOUTS_PAGINATION",e))(ca||{});const H={ACTIONS:$1,GETTERS:k1,MUTATIONS:U1},$t={ACTIONS:M1,GETTERS:x1,MUTATIONS:F1},Kr={ACTIONS:W1,GETTERS:G1,MUTATIONS:z1},Y={ACTIONS:C1,GETTERS:y1,MUTATIONS:D1},Ve={ACTIONS:P1,GETTERS:w1,MUTATIONS:L1},Ce={ACTIONS:B1,GETTERS:H1,MUTATIONS:j1},Te={ACTIONS:V1,GETTERS:K1,MUTATIONS:ca},wo=()=>"/api/",he=(e,t,n="UNKNOWN")=>{var s;if(t&&t.message==="canceled")return;const r=t!=null&&t.response&&t.response.data?t.response.data:null;if(((s=t==null?void 0:t.response)==null?void 0:s.status)===401&&(r==null?void 0:r.error)==="invalid_token"){localStorage.removeItem("authToken"),e.dispatch(Y.ACTIONS.CHECK_AUTH_USER);return}const a=t?t.response?t.response.status===413?"file size is greater than the allowed size":r!=null&&r.message?r.message:n:t.message?t.message:n:n;e.commit(H.MUTATIONS.SET_ERROR_MESSAGES,a.includes(` `)?a.split(` `).filter(o=>o!=="").map(o=>`api.ERROR.${o}`):`api.ERROR.${a}`)},Ub={class:"user-picture"},Mb=["alt","src"],xb={key:1,class:"no-picture"},Fb=p("i",{class:"fa fa-user-circle-o","aria-hidden":"true"},null,-1),Wb=[Fb],Lo=Q({__name:"UserPicture",props:{user:{}},setup(e){const t=e,n=$(()=>t.user.picture?`${wo()}users/${t.user.username}/picture?${Date.now()}`:"");return(r,a)=>(T(),N("div",Ub,[n.value!==""?(T(),N("img",{key:0,class:"profile-user-img",alt:r.$t("user.USER_PICTURE"),src:n.value},null,8,Mb)):(T(),N("div",xb,Wb))]))}});function Gb(){return Y1().__VUE_DEVTOOLS_GLOBAL_HOOK__}function Y1(){return typeof navigator<"u"&&typeof window<"u"?window:typeof global<"u"?global:{}}const zb=typeof Proxy=="function",Bb="devtools-plugin:setup",Hb="plugin:settings:set";let ba,Bl;function jb(){var e;return ba!==void 0||(typeof window<"u"&&window.performance?(ba=!0,Bl=window.performance):typeof global<"u"&&(!((e=global.perf_hooks)===null||e===void 0)&&e.performance)?(ba=!0,Bl=global.perf_hooks.performance):ba=!1),ba}function Vb(){return jb()?Bl.now():Date.now()}class Kb{constructor(t,n){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=n;const r={};if(t.settings)for(const o in t.settings){const i=t.settings[o];r[o]=i.defaultValue}const a=`__vue-devtools-plugin-settings__${t.id}`;let s=Object.assign({},r);try{const o=localStorage.getItem(a),i=JSON.parse(o);Object.assign(s,i)}catch{}this.fallbacks={getSettings(){return s},setSettings(o){try{localStorage.setItem(a,JSON.stringify(o))}catch{}s=o},now(){return Vb()}},n&&n.on(Hb,(o,i)=>{o===this.plugin.id&&this.fallbacks.setSettings(i)}),this.proxiedOn=new Proxy({},{get:(o,i)=>this.target?this.target.on[i]:(...u)=>{this.onQueue.push({method:i,args:u})}}),this.proxiedTarget=new Proxy({},{get:(o,i)=>this.target?this.target[i]:i==="on"?this.proxiedOn:Object.keys(this.fallbacks).includes(i)?(...u)=>(this.targetQueue.push({method:i,args:u,resolve:()=>{}}),this.fallbacks[i](...u)):(...u)=>new Promise(c=>{this.targetQueue.push({method:i,args:u,resolve:c})})})}async setRealTarget(t){this.target=t;for(const n of this.onQueue)this.target.on[n.method](...n.args);for(const n of this.targetQueue)n.resolve(await this.target[n.method](...n.args))}}function Yb(e,t){const n=e,r=Y1(),a=Gb(),s=zb&&n.enableEarlyProxy;if(a&&(r.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__||!s))a.emit(Bb,e,t);else{const o=s?new Kb(n,a):null;(r.__VUE_DEVTOOLS_PLUGINS__=r.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:t,proxy:o}),o&&t(o.proxiedTarget)}}/*! * vuex v4.1.0 @@ -393,7 +393,7 @@ vulnerable to XSS attacks. Please remove it from \`allowedTags\`. Or, to disable this warning, add the \`allowVulnerableTags\` option and ensure you are accounting for this risk. -`)});const i=t.nonTextTags||["script","style","textarea","option"];let u,c;t.allowedAttributes&&(u={},c={},Ws(t.allowedAttributes,function(P,B){u[B]=[];const V=[];P.forEach(function(se){typeof se=="string"&&se.indexOf("*")>=0?V.push(WE(se).replace(/\\\*/g,".*")):u[B].push(se)}),V.length&&(c[B]=new RegExp("^("+V.join("|")+")$"))}));const l={},f={},d={};Ws(t.allowedClasses,function(P,B){if(u&&(ur(u,B)||(u[B]=[]),u[B].push("class")),l[B]=P,Array.isArray(P)){const V=[];l[B]=[],d[B]=[],P.forEach(function(se){typeof se=="string"&&se.indexOf("*")>=0?V.push(WE(se).replace(/\\\*/g,".*")):se instanceof RegExp?d[B].push(se):l[B].push(se)}),V.length&&(f[B]=new RegExp("^("+V.join("|")+")$"))}});const m={};let E;Ws(t.transformTags,function(P,B){let V;typeof P=="function"?V=P:typeof P=="string"&&(V=Io.simpleTransform(P)),B==="*"?E=V:m[B]=V});let g,b,I,R,v,A,C=!1;k();const w=new JTe.Parser({onopentag:function(P,B){if(t.enforceHtmlBoundary&&P==="html"&&k(),v){A++;return}const V=new s(P,B);b.push(V);let se=!1;const Pe=!!V.text;let We;if(ur(m,P)&&(We=m[P](P,B),V.attribs=B=We.attribs,We.text!==void 0&&(V.innerText=We.text),P!==We.tagName&&(V.name=P=We.tagName,R[g]=We.tagName)),E&&(We=E(P,B),V.attribs=B=We.attribs,P!==We.tagName&&(V.name=P=We.tagName,R[g]=We.tagName)),(!o(P)||t.disallowedTagsMode==="recursiveEscape"&&!sge(I)||t.nestingLimit!=null&&g>=t.nestingLimit)&&(se=!0,I[g]=!0,t.disallowedTagsMode==="discard"&&i.indexOf(P)!==-1&&(v=!0,A=1),I[g]=!0),g++,se){if(t.disallowedTagsMode==="discard")return;a=r,r=""}r+="<"+P,P==="script"&&(t.allowedScriptHostnames||t.allowedScriptDomains)&&(V.innerText=""),(!u||ur(u,P)||u["*"])&&Ws(B,function(Ae,ye){if(!uge.test(ye)){delete V.attribs[ye];return}if(Ae===""&&(t.nonBooleanAttributes.includes(ye)||t.nonBooleanAttributes.includes("*"))){delete V.attribs[ye];return}let Wt=!1;if(!u||ur(u,P)&&u[P].indexOf(ye)!==-1||u["*"]&&u["*"].indexOf(ye)!==-1||ur(c,P)&&c[P].test(ye)||c["*"]&&c["*"].test(ye))Wt=!0;else if(u&&u[P]){for(const ke of u[P])if(ege(ke)&&ke.name&&ke.name===ye){Wt=!0;let ze="";if(ke.multiple===!0){const rt=Ae.split(" ");for(const X of rt)ke.values.indexOf(X)!==-1&&(ze===""?ze=X:ze+=" "+X)}else ke.values.indexOf(Ae)>=0&&(ze=Ae);Ae=ze}}if(Wt){if(t.allowedSchemesAppliedToAttributes.indexOf(ye)!==-1&&z(P,Ae)){delete V.attribs[ye];return}if(P==="script"&&ye==="src"){let ke=!0;try{const ze=F(Ae);if(t.allowedScriptHostnames||t.allowedScriptDomains){const rt=(t.allowedScriptHostnames||[]).find(function(pe){return pe===ze.url.hostname}),X=(t.allowedScriptDomains||[]).find(function(pe){return ze.url.hostname===pe||ze.url.hostname.endsWith(`.${pe}`)});ke=rt||X}}catch{ke=!1}if(!ke){delete V.attribs[ye];return}}if(P==="iframe"&&ye==="src"){let ke=!0;try{const ze=F(Ae);if(ze.isRelativeUrl)ke=ur(t,"allowIframeRelativeUrls")?t.allowIframeRelativeUrls:!t.allowedIframeHostnames&&!t.allowedIframeDomains;else if(t.allowedIframeHostnames||t.allowedIframeDomains){const rt=(t.allowedIframeHostnames||[]).find(function(pe){return pe===ze.url.hostname}),X=(t.allowedIframeDomains||[]).find(function(pe){return ze.url.hostname===pe||ze.url.hostname.endsWith(`.${pe}`)});ke=rt||X}}catch{ke=!1}if(!ke){delete V.attribs[ye];return}}if(ye==="srcset")try{let ke=tge(Ae);if(ke.forEach(function(ze){z("srcset",ze.url)&&(ze.evil=!0)}),ke=zE(ke,function(ze){return!ze.evil}),ke.length)Ae=oge(zE(ke,function(ze){return!ze.evil})),V.attribs[ye]=Ae;else{delete V.attribs[ye];return}}catch{delete V.attribs[ye];return}if(ye==="class"){const ke=l[P],ze=l["*"],rt=f[P],X=d[P],pe=f["*"],le=[rt,pe].concat(X).filter(function(Se){return Se});if(ke&&ze?Ae=re(Ae,GE(ke,ze),le):Ae=re(Ae,ke||ze,le),!Ae.length){delete V.attribs[ye];return}}if(ye==="style"){if(t.parseStyleAttributes)try{const ke=nge(P+" {"+Ae+"}"),ze=U(ke,t.allowedStyles);if(Ae=Z(ze),Ae.length===0){delete V.attribs[ye];return}}catch{typeof window<"u"&&console.warn('Failed to parse "'+P+" {"+Ae+`}", If you're running this in a browser, we recommend to disable style parsing: options.parseStyleAttributes: false, since this only works in a node environment due to a postcss dependency, More info: https://github.com/apostrophecms/sanitize-html/issues/547`),delete V.attribs[ye];return}else if(t.allowedStyles)throw new Error("allowedStyles option cannot be used together with parseStyleAttributes: false.")}r+=" "+ye,Ae&&Ae.length&&(r+='="'+L(Ae,!0)+'"')}else delete V.attribs[ye]}),t.selfClosing.indexOf(P)!==-1?r+=" />":(r+=">",V.innerText&&!Pe&&!t.textFilter&&(r+=L(V.innerText),C=!0)),se&&(r=a+L(r),a="")},ontext:function(P){if(v)return;const B=b[b.length-1];let V;if(B&&(V=B.tag,P=B.innerText!==void 0?B.innerText:P),t.disallowedTagsMode==="discard"&&(V==="script"||V==="style"))r+=P;else{const se=L(P,!1);t.textFilter&&!C?r+=t.textFilter(se,V):C||(r+=se)}if(b.length){const se=b[b.length-1];se.text+=P}},onclosetag:function(P,B){if(v)if(A--,!A)v=!1;else return;const V=b.pop();if(!V)return;if(V.tag!==P){b.push(V);return}v=t.enforceHtmlBoundary?P==="html":!1,g--;const se=I[g];if(se){if(delete I[g],t.disallowedTagsMode==="discard"){V.updateParentNodeText();return}a=r,r=""}if(R[g]&&(P=R[g],delete R[g]),t.exclusiveFilter&&t.exclusiveFilter(V)){r=r.substr(0,V.tagPosition);return}if(V.updateParentNodeMediaChildren(),V.updateParentNodeText(),t.selfClosing.indexOf(P)!==-1||B&&!o(P)&&["escape","recursiveEscape"].indexOf(t.disallowedTagsMode)>=0){se&&(r=a,a="");return}r+="",se&&(r=a+L(r),a=""),C=!1}},t.parser);return w.write(e),w.end(),r;function k(){r="",g=0,b=[],I={},R={},v=!1,A=0}function L(P,B){return typeof P!="string"&&(P=P+""),t.parser.decodeEntities&&(P=P.replace(/&/g,"&").replace(//g,">"),B&&(P=P.replace(/"/g,"""))),P=P.replace(/&(?![a-zA-Z0-9#]{1,20};)/g,"&").replace(//g,">"),B&&(P=P.replace(/"/g,""")),P}function z(P,B){for(B=B.replace(/[\x00-\x20]+/g,"");;){const Pe=B.indexOf("",Pe+4);if(We===-1)break;B=B.substring(0,Pe)+B.substring(We+3)}const V=B.match(/^([a-zA-Z][a-zA-Z0-9.\-+]*):/);if(!V)return B.match(/^[/\\]{2}/)?!t.allowProtocolRelative:!1;const se=V[1].toLowerCase();return ur(t.allowedSchemesByTag,P)?t.allowedSchemesByTag[P].indexOf(se)===-1:!t.allowedSchemes||t.allowedSchemes.indexOf(se)===-1}function F(P){if(P=P.replace(/^(\w+:)?\s*[\\/]\s*[\\/]/,"$1//"),P.startsWith("relative:"))throw new Error("relative: exploit attempt");let B="relative://relative-site";for(let Pe=0;Pe<100;Pe++)B+=`/${Pe}`;const V=new URL(P,B);return{isRelativeUrl:V&&V.hostname==="relative-site"&&V.protocol==="relative:",url:V}}function U(P,B){if(!B)return P;const V=P.nodes[0];let se;return B[V.selector]&&B["*"]?se=GE(B[V.selector],B["*"]):se=B[V.selector]||B["*"],se&&(P.nodes[0].nodes=V.nodes.reduce(ee(se),[])),P}function Z(P){return P.nodes[0].nodes.reduce(function(B,V){return B.push(`${V.prop}:${V.value}${V.important?" !important":""}`),B},[]).join(";")}function ee(P){return function(B,V){return ur(P,V.prop)&&P[V.prop].some(function(Pe){return Pe.test(V.value)})&&B.push(V),B}}function re(P,B,V){return B?(P=P.split(/\s+/),P.filter(function(se){return B.indexOf(se)!==-1||V.some(function(Pe){return Pe.test(se)})}).join(" ")):P}}const cge={decodeEntities:!0};Io.defaults={allowedTags:["address","article","aside","footer","header","h1","h2","h3","h4","h5","h6","hgroup","main","nav","section","blockquote","dd","div","dl","dt","figcaption","figure","hr","li","main","ol","p","pre","ul","a","abbr","b","bdi","bdo","br","cite","code","data","dfn","em","i","kbd","mark","q","rb","rp","rt","rtc","ruby","s","samp","small","span","strong","sub","sup","time","u","var","wbr","caption","col","colgroup","table","tbody","td","tfoot","th","thead","tr"],nonBooleanAttributes:["abbr","accept","accept-charset","accesskey","action","allow","alt","as","autocapitalize","autocomplete","blocking","charset","cite","class","color","cols","colspan","content","contenteditable","coords","crossorigin","data","datetime","decoding","dir","dirname","download","draggable","enctype","enterkeyhint","fetchpriority","for","form","formaction","formenctype","formmethod","formtarget","headers","height","hidden","high","href","hreflang","http-equiv","id","imagesizes","imagesrcset","inputmode","integrity","is","itemid","itemprop","itemref","itemtype","kind","label","lang","list","loading","low","max","maxlength","media","method","min","minlength","name","nonce","optimum","pattern","ping","placeholder","popover","popovertarget","popovertargetaction","poster","preload","referrerpolicy","rel","rows","rowspan","sandbox","scope","shape","size","sizes","slot","span","spellcheck","src","srcdoc","srclang","srcset","start","step","style","tabindex","target","title","translate","type","usemap","value","width","wrap","onauxclick","onafterprint","onbeforematch","onbeforeprint","onbeforeunload","onbeforetoggle","onblur","oncancel","oncanplay","oncanplaythrough","onchange","onclick","onclose","oncontextlost","oncontextmenu","oncontextrestored","oncopy","oncuechange","oncut","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","onformdata","onhashchange","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onlanguagechange","onload","onloadeddata","onloadedmetadata","onloadstart","onmessage","onmessageerror","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onoffline","ononline","onpagehide","onpageshow","onpaste","onpause","onplay","onplaying","onpopstate","onprogress","onratechange","onreset","onresize","onrejectionhandled","onscroll","onscrollend","onsecuritypolicyviolation","onseeked","onseeking","onselect","onslotchange","onstalled","onstorage","onsubmit","onsuspend","ontimeupdate","ontoggle","onunhandledrejection","onunload","onvolumechange","onwaiting","onwheel"],disallowedTagsMode:"discard",allowedAttributes:{a:["href","name","target"],img:["src","srcset","alt","title","width","height","loading"]},selfClosing:["img","br","hr","area","base","basefont","input","link","meta"],allowedSchemes:["http","https","ftp","mailto","tel"],allowedSchemesByTag:{},allowedSchemesAppliedToAttributes:["href","src","cite"],allowProtocolRelative:!0,enforceHtmlBoundary:!1,parseStyleAttributes:!0};Io.simpleTransform=function(e,t,n){return n=n===void 0?!0:n,t=t||{},function(r,a){let s;if(n)for(s in t)a[s]=t[s];else a=t;return{tagName:e,attribs:a}}};const lge=qd(ige),vo=e=>lge(Fhe(e,{target:"_blank"}),{allowedTags:["a"],disallowedTagsMode:"escape"}),dge=e=>(ut("data-v-a720b26e"),e=e(),ct(),e),fge={id:"admin-app",class:"admin-card"},pge={for:"admin_contact"},mge=["value"],Ege=["disabled"],hge={for:"max_users"},_ge=["disabled"],Tge={class:"user-limit-help"},gge={class:"info-box"},Age=dge(()=>p("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),Sge={for:"max_single_file_size"},Oge=["disabled"],Ige={for:"max_zip_file_size"},vge=["disabled"],Rge={for:"gpx_limit_import"},bge=["disabled"],Nge={class:"about-label",for:"about"},Cge={class:"textarea-description"},yge=["innerHTML"],Dge={class:"privacy-policy-label",for:"privacy_policy"},Pge={class:"textarea-description"},wge=["innerHTML"],Lge={key:5,class:"form-buttons"},$ge={class:"confirm",type:"submit"},kge={key:6,class:"form-buttons"},Uge=Q({__name:"AdminApplication",props:{appConfig:{},edition:{type:Boolean,default:!1}},setup(e){const t=e,{edition:n}=_e(t),r=$e(),a=Zr(),s=xt({admin_contact:"",max_users:0,max_single_file_size:0,max_zip_file_size:0,gpx_limit_import:0,about:"",privacy_policy:""}),o=$(()=>r.getters[H.GETTERS.ERROR_MESSAGES]);It(()=>{t.appConfig&&i(t.appConfig)});function i(l){Object.keys(s).map(f=>{["max_single_file_size","max_zip_file_size"].includes(f)?s[f]=uhe(l[f]):["about","privacy_policy"].includes(f)?s[f]=l[f]!==null?l[f]:"":s[f]=l[f]})}function u(){i(t.appConfig),r.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),a.push("/admin/application")}function c(){const l=Object.assign({},s);l.max_single_file_size*=1048576,l.max_zip_file_size*=1048576,r.dispatch(H.ACTIONS.UPDATE_APPLICATION_CONFIG,l)}return(l,f)=>{const d=ue("ErrorMessage"),m=ue("Card");return T(),N("div",fge,[M(m,null,{title:fe(()=>[K(_(l.$t("admin.APP_CONFIG.TITLE")),1)]),content:fe(()=>[p("form",{class:"admin-form",onSubmit:Xe(c,["prevent"])},[p("label",pge,[K(_(l.$t("admin.APP_CONFIG.ADMIN_CONTACT"))+": ",1),!h(n)&&!s.admin_contact?(T(),N("input",{key:0,class:"no-contact",value:l.$t("admin.APP_CONFIG.NO_CONTACT_EMAIL"),disabled:""},null,8,mge)):Ke((T(),N("input",{key:1,id:"admin_contact",name:"admin_contact",type:"email","onUpdate:modelValue":f[0]||(f[0]=E=>s.admin_contact=E),disabled:!h(n)},null,8,Ege)),[[tt,s.admin_contact]])]),p("label",hge,[K(_(l.$t("admin.APP_CONFIG.MAX_USERS_LABEL"))+": ",1),Ke(p("input",{id:"max_users",name:"max_users",type:"number",min:"0","onUpdate:modelValue":f[1]||(f[1]=E=>s.max_users=E),disabled:!h(n)},null,8,_ge),[[tt,s.max_users]])]),p("div",Tge,[p("span",gge,[Age,K(" "+_(l.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),p("label",Sge,[K(_(l.$t("admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Ke(p("input",{id:"max_single_file_size",name:"max_single_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":f[2]||(f[2]=E=>s.max_single_file_size=E),disabled:!h(n)},null,8,Oge),[[tt,s.max_single_file_size]])]),p("label",Ige,[K(_(l.$t("admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Ke(p("input",{id:"max_zip_file_size",name:"max_zip_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":f[3]||(f[3]=E=>s.max_zip_file_size=E),disabled:!h(n)},null,8,vge),[[tt,s.max_zip_file_size]])]),p("label",Rge,[K(_(l.$t("admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL"))+": ",1),Ke(p("input",{id:"gpx_limit_import",name:"gpx_limit_import",type:"number",min:"0","onUpdate:modelValue":f[4]||(f[4]=E=>s.gpx_limit_import=E),disabled:!h(n)},null,8,bge),[[tt,s.gpx_limit_import]])]),p("label",Nge,_(l.$t("admin.ABOUT.TEXT"))+": ",1),p("span",Cge,_(l.$t("admin.ABOUT.DESCRIPTION")),1),h(n)?Ke((T(),N("textarea",{key:0,id:"about",name:"about",rows:"10","onUpdate:modelValue":f[5]||(f[5]=E=>s.about=E)},null,512)),[[tt,s.about]]):(T(),N("div",{key:1,innerHTML:h(ma)(h(vo)(s.about?s.about:l.$t("admin.NO_TEXT_ENTERED"))),class:"textarea-content"},null,8,yge)),p("label",Dge,_(St(l.$t("privacy_policy.TITLE")))+": ",1),p("span",Pge,_(l.$t("admin.PRIVACY_POLICY_DESCRIPTION")),1),h(n)?Ke((T(),N("textarea",{key:2,id:"privacy_policy",name:"privacy_policy",rows:"20","onUpdate:modelValue":f[6]||(f[6]=E=>s.privacy_policy=E)},null,512)),[[tt,s.privacy_policy]]):(T(),N("div",{key:3,innerHTML:h(ma)(h(vo)(s.privacy_policy?s.privacy_policy:l.$t("admin.NO_TEXT_ENTERED"))),class:"textarea-content"},null,8,wge)),o.value?(T(),ne(d,{key:4,message:o.value},null,8,["message"])):W("",!0),h(n)?(T(),N("div",Lge,[p("button",$ge,_(l.$t("buttons.SUBMIT")),1),p("button",{class:"cancel",onClick:Xe(u,["prevent"])},_(l.$t("buttons.CANCEL")),1)])):(T(),N("div",kge,[p("button",{class:"confirm",onClick:f[7]||(f[7]=Xe(E=>l.$router.push("/admin/application/edit"),["prevent"]))},_(l.$t("buttons.EDIT")),1),p("button",{class:"cancel",onClick:f[8]||(f[8]=Xe(E=>l.$router.push("/admin"),["prevent"]))},_(l.$t("admin.BACK_TO_ADMIN")),1)]))],32)]),_:1})])}}}),BE=ae(Uge,[["__scopeId","data-v-a720b26e"]]),Mge={class:"stat-card"},xge={class:"stat-content box"},Fge={class:"stat-icon"},Wge={class:"stat-details"},Gge={class:"stat-huge"},zge={class:"stat"},fr=Q({__name:"StatCard",props:{icon:{},text:{},value:{}},setup(e){const t=e,{icon:n,text:r,value:a}=_e(t);return(s,o)=>(T(),N("div",Mge,[p("div",xge,[p("div",Fge,[p("i",{class:ge(["fa",`fa-${h(n)}`])},null,2)]),p("div",Wge,[p("div",Gge,_(h(a)),1),p("div",zge,_(h(r)),1)])])]))}}),Bge={id:"user-stats"},Hge=Q({__name:"AppStatsCards",props:{appStatistics:{}},setup(e){const t=e,{appStatistics:n}=_e(t),r=$(()=>YT(n.value.uploads_dir_size));return(a,s)=>(T(),N("div",Bge,[M(fr,{icon:"users",value:h(n).users,text:a.$t("admin.USER",h(n).users)},null,8,["value","text"]),M(fr,{icon:"tags",value:h(n).sports,text:a.$t("workouts.SPORT",h(n).sports)},null,8,["value","text"]),M(fr,{icon:"calendar",value:h(n).workouts,text:a.$t("workouts.WORKOUT",h(n).workouts)},null,8,["value","text"]),M(fr,{icon:"folder-open",value:r.value.size,text:r.value.suffix},null,8,["value","text"])]))}}),mA=e=>(ut("data-v-efcd2677"),e=e(),ct(),e),jge={id:"admin-menu",class:"center-card"},Vge={class:"admin-menu description-list"},Kge={class:"application-config-details"},Yge=mA(()=>p("br",null,null,-1)),qge={class:"registration-status"},Xge={key:0,class:"email-sending-status"},Zge=mA(()=>p("i",{class:"fa fa-exclamation-triangle","aria-hidden":"true"},null,-1)),Qge=Q({__name:"AdminMenu",props:{appConfig:{},appStatistics:{default:()=>({})}},setup(e){const t=e,{appConfig:n,appStatistics:r}=_e(t);return gt(()=>{const a=document.getElementById("adminLink");a&&a.focus()}),(a,s)=>{const o=ue("router-link");return T(),N("div",jge,[M(MT,null,{title:fe(()=>[K(_(a.$t("admin.ADMINISTRATION")),1)]),content:fe(()=>[M(Hge,{appStatistics:h(r)},null,8,["appStatistics"]),p("div",Vge,[p("dl",null,[p("dt",null,[M(o,{id:"adminLink",to:"/admin/application"},{default:fe(()=>[K(_(a.$t("admin.APPLICATION")),1)]),_:1})]),p("dd",Kge,[K(_(a.$t("admin.UPDATE_APPLICATION_DESCRIPTION")),1),Yge,p("span",qge,_(a.$t(`admin.REGISTRATION_${h(n).is_registration_enabled?"ENABLED":"DISABLED"}`)),1),h(n).is_email_sending_enabled?W("",!0):(T(),N("span",Xge,[Zge,K(" "+_(a.$t("admin.EMAIL_SENDING_DISABLED")),1)]))]),p("dt",null,[M(o,{to:"/admin/sports"},{default:fe(()=>[K(_(St(a.$t("workouts.SPORT",0))),1)]),_:1})]),p("dd",null,_(a.$t("admin.ENABLE_DISABLE_SPORTS")),1),p("dt",null,[M(o,{to:"/admin/users"},{default:fe(()=>[K(_(St(a.$t("admin.USER",0))),1)]),_:1})]),p("dd",null,_(a.$t("admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT")),1)])])]),_:1})])}}}),Jge=ae(Qge,[["__scopeId","data-v-efcd2677"]]),E0={"Cycling (Sport)":"#4c9792","Cycling (Transport)":"#88af98","Cycling (Virtual)":"#64a360",Hiking:"#bb757c","Mountain Biking":"#d4b371","Mountain Biking (Electric)":"#fc9d6f",Mountaineering:"#48b3b7","Open Water Swimming":"#4058a4",Paragliding:"#c23c50",Rowing:"#fcce72",Running:"#835b83","Skiing (Alpine)":"#67a4bd","Skiing (Cross Country)":"#9498d0",Snowshoes:"#5780a8",Trail:"#09a98a",Walking:"#838383"},eAe=e=>{const t={};return e.map(n=>t[n.id]=n.color?n.color:E0[n.label]),t},tAe=(e,t)=>{const n=e.translatedLabel.toLowerCase(),r=t.translatedLabel.toLowerCase();return n>r?1:ne.filter(a=>n==="all"?!0:r.includes(a.id)||a[n]).map(a=>({...a,translatedLabel:t(`sports.${a.label}.LABEL`)})).sort(tAe),h0=(e,t)=>t.filter(n=>n.id===e.sport_id).map(n=>n.label)[0],_0=(e,t)=>t.filter(n=>n.id===e.sport_id).map(n=>n.color)[0],Cc=e=>(ut("data-v-203d96b8"),e=e(),ct(),e),nAe={id:"admin-sports",class:"admin-card"},rAe={class:"responsive-table"},aAe=Cc(()=>p("th",null,"#",-1)),sAe={class:"text-left"},oAe={class:"text-left sport-action"},iAe=Cc(()=>p("th",null,null,-1)),uAe={class:"text-center"},cAe=Cc(()=>p("span",{class:"cell-heading"},"id",-1)),lAe={class:"cell-heading"},dAe={class:"sport-label"},fAe={class:"cell-heading"},pAe={class:"text-center"},mAe={class:"cell-heading"},EAe={class:"sport-action"},hAe={class:"cell-heading"},_Ae={class:"action-button"},TAe=["onClick"],gAe={key:0,class:"has-workouts"},AAe=Cc(()=>p("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)),SAe=Q({__name:"AdminSports",setup(e){const{t}=jt(),n=$e(),r=$(()=>Jr(n.getters[$t.GETTERS.SPORTS],t)),a=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]);function s(o,i){n.dispatch($t.ACTIONS.UPDATE_SPORTS,{id:o,isActive:i})}return(o,i)=>{const u=ue("SportImage"),c=ue("ErrorMessage"),l=ue("Card");return T(),N("div",nAe,[M(l,null,{title:fe(()=>[K(_(o.$t("admin.SPORTS.TITLE")),1)]),content:fe(()=>[p("button",{class:"top-button",onClick:i[0]||(i[0]=Xe(f=>o.$router.push("/admin"),["prevent"]))},_(o.$t("admin.BACK_TO_ADMIN")),1),p("div",rAe,[p("table",null,[p("thead",null,[p("tr",null,[aAe,p("th",null,_(o.$t("admin.SPORTS.TABLE.IMAGE")),1),p("th",sAe,_(o.$t("admin.SPORTS.TABLE.LABEL")),1),p("th",null,_(o.$t("admin.SPORTS.TABLE.ACTIVE")),1),p("th",oAe,_(o.$t("admin.ACTION")),1),iAe])]),p("tbody",null,[(T(!0),N(Ie,null,xe(r.value,f=>(T(),N("tr",{key:f.id},[p("td",uAe,[cAe,K(" "+_(f.id),1)]),p("td",null,[p("span",lAe,_(o.$t("admin.SPORTS.TABLE.IMAGE")),1),M(u,{title:f.translatedLabel,"sport-label":f.label,color:f.color},null,8,["title","sport-label","color"])]),p("td",dAe,[p("span",fAe,_(o.$t("admin.SPORTS.TABLE.LABEL")),1),K(" "+_(f.translatedLabel),1)]),p("td",pAe,[p("span",mAe,_(o.$t("admin.SPORTS.TABLE.ACTIVE")),1),p("i",{class:ge(`fa fa${f.is_active?"-check":""}`),"aria-hidden":"true"},null,2)]),p("td",EAe,[p("span",hAe,_(o.$t("admin.ACTION")),1),p("div",_Ae,[p("button",{class:ge({danger:f.is_active}),onClick:d=>s(f.id,!f.is_active)},_(o.$t(`buttons.${f.is_active?"DIS":"EN"}ABLE`)),11,TAe),f.has_workouts?(T(),N("span",gAe,[AAe,K(" "+_(o.$t("admin.SPORTS.TABLE.HAS_WORKOUTS")),1)])):W("",!0)])])]))),128))])]),a.value?(T(),ne(c,{key:0,message:a.value},null,8,["message"])):W("",!0),p("button",{onClick:i[1]||(i[1]=Xe(f=>o.$router.push("/admin"),["prevent"]))},_(o.$t("admin.BACK_TO_ADMIN")),1)])]),_:1})])}}}),OAe=ae(SAe,[["__scopeId","data-v-203d96b8"]]),IAe={class:"table-selects"},vAe=["value"],RAe=["value"],bAe=["value"],NAe=["value"],CAe=["value"],yAe=["value"],DAe=Q({__name:"FilterSelects",props:{order_by:{},query:{},sort:{},message:{}},emits:["updateSelect"],setup(e,{emit:t}){const n=e,r=t,{order_by:a,query:s,sort:o,message:i}=_e(n),u=[10,25,50,100];function c(l){r("updateSelect",l.target.id,l.target.value)}return(l,f)=>(T(),N("div",IAe,[p("label",null,[K(_(l.$t("common.SELECTS.ORDER_BY.LABEL"))+": ",1),p("select",{name:"order_by",id:"order_by",value:h(s).order_by,onChange:c},[(T(!0),N(Ie,null,xe(h(a),d=>(T(),N("option",{value:d,key:d},_(l.$t(`${h(i)}.${d.toUpperCase()}`)),9,RAe))),128))],40,vAe)]),p("label",null,[K(_(l.$t("common.SELECTS.ORDER.LABEL"))+": ",1),p("select",{name:"order",id:"order",value:h(s).order,onChange:c},[(T(!0),N(Ie,null,xe(h(o),d=>(T(),N("option",{value:d,key:d},_(l.$t(`common.SELECTS.ORDER.${d.toUpperCase()}`)),9,NAe))),128))],40,bAe)]),p("label",null,[K(_(l.$t("common.SELECTS.PER_PAGE.LABEL"))+": ",1),p("select",{name:"per_page",id:"per_page",value:h(s).per_page,onChange:c},[(T(),N(Ie,null,xe(u,d=>p("option",{value:d,key:d},_(d),9,yAe)),64))],40,CAe)])]))}}),EA=ae(DAe,[["__scopeId","data-v-fc86ab3c"]]),T0=["asc","desc"],hA=1,PAe=10,Fd=(e,t)=>e&&typeof e=="string"&&+e>0?+e:t,HE=(e,t,n)=>e&&typeof e=="string"&&t.includes(e)?e:n,Wd=(e,t,n,r)=>{const s=(r||{}).defaultSort||"asc",o={};return o.page=Fd(e.page,hA),o.per_page=Fd(e.per_page,PAe),o.order=HE(e.order,T0,s),o.order_by=HE(e.order_by,t,n),typeof e.q=="string"?o.q=e.q:delete o.q,o},wAe=["from","to","ave_speed_from","ave_speed_to","max_speed_from","max_speed_to","distance_from","distance_to","duration_from","duration_to","sport_id","title"],Pa=(e,t=1)=>Array.from({length:e-t+1},(n,r)=>t+r),LAe=(e,t)=>{if(e<0)return[];if(e<9)return Pa(e);let n=[1,2];return t<4?n=n.concat([3,4,5]):t<6?n=n.concat(Pa(t+2,3)):(n=n.concat(["..."]),t=e-2&&+n[n.length-1](ut("data-v-b6235e81"),e=e(),ct(),e),$Ae={class:"pagination-center","aria-label":"navigation"},kAe={class:"pagination"},UAe=_A(()=>p("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)),MAe={key:0},xAe=_A(()=>p("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)),FAe=Q({__name:"Pagination",props:{pagination:{},path:{},query:{}},setup(e){const t=e,{pagination:n,path:r,query:a}=_e(t);function s(o,i){const u=Object.assign({},a.value);return u.page=i?o+i:o,u}return(o,i)=>{const u=ue("router-link");return T(),N("nav",$Ae,[p("ul",kAe,[p("li",{class:ge(["page-prev",{disabled:!h(n).has_prev}])},[M(u,{class:"page-link",to:{path:h(r),query:s(h(n).page,-1)},disabled:!h(n).has_prev,tabindex:h(n).has_prev?0:-1},{default:fe(({navigate:c})=>[Va(o.$slots,"default",{onClick:l=>h(n).has_next?c:null},()=>[K(_(o.$t("api.PAGINATION.PREVIOUS"))+" ",1),UAe],!0)]),_:3},8,["to","disabled","tabindex"])],2),(T(!0),N(Ie,null,xe(h(LAe)(h(n).pages,h(n).page),c=>(T(),N("li",{key:c,class:ge(["page",{active:c===h(n).page}])},[c==="..."?(T(),N("span",MAe," ... ")):(T(),ne(u,{key:1,class:"page-link",to:{path:h(r),query:s(+c)}},{default:fe(()=>[K(_(c),1)]),_:2},1032,["to"]))],2))),128)),p("li",{class:ge(["page-next",{disabled:!h(n).has_next}])},[M(u,{class:"page-link",to:{path:h(r),query:s(h(n).page,1)},disabled:!h(n).has_next,tabindex:h(n).has_next?0:-1},{default:fe(({navigate:c})=>[Va(o.$slots,"default",{onClick:l=>h(n).has_next?c:null},()=>[K(_(o.$t("api.PAGINATION.NEXT"))+" ",1),xAe],!0)]),_:3},8,["to","disabled","tabindex"])],2)])])}}}),Wu=ae(FAe,[["__scopeId","data-v-b6235e81"]]),WAe={class:"users-filters"},GAe={class:"search-username"},zAe=["placeholder"],BAe=Q({__name:"UsersNameFilter",emits:["filterOnUsername"],setup(e,{emit:t}){const n=Vt(),r=ce(n.query.q?n.query.q:""),a=t;function s(){r.value!==""&&a("filterOnUsername",r)}function o(){r.value="",a("filterOnUsername",r.value)}return(i,u)=>(T(),N("div",WAe,[p("div",GAe,[Ke(p("input",{id:"username",name:"username","onUpdate:modelValue":u[0]||(u[0]=c=>r.value=c),onKeyup:At(s,["enter"]),placeholder:i.$t("user.FILTER_ON_USERNAME")},null,40,zAe),[[tt,r.value,void 0,{trim:!0}]]),r.value!==""?(T(),N("i",{key:0,class:"fa fa-times","aria-hidden":"true",onClick:o})):W("",!0)]),p("i",{class:ge(["fa fa-search",{"fa-disabled":r.value===""}]),"aria-hidden":"true",onClick:s},null,2)]))}}),HAe=ae(BAe,[["__scopeId","data-v-553040c7"]]);var Gd={exports:{}};(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=n;function n(r){if(r===null||r===!0||r===!1)return NaN;var a=Number(r);return isNaN(a)?a:a<0?Math.ceil(a):Math.floor(a)}e.exports=t.default})(Gd,Gd.exports);var jAe=Gd.exports;const VAe=qd(jAe);var zd={exports:{}};(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=n;function n(r){var a=new Date(Date.UTC(r.getFullYear(),r.getMonth(),r.getDate(),r.getHours(),r.getMinutes(),r.getSeconds(),r.getMilliseconds()));return a.setUTCFullYear(r.getFullYear()),r.getTime()-a.getTime()}e.exports=t.default})(zd,zd.exports);var KAe=zd.exports;const jE=qd(KAe);function YAe(e,t){var n=QAe(t);return n.formatToParts?XAe(n,e):ZAe(n,e)}var qAe={year:0,month:1,day:2,hour:3,minute:4,second:5};function XAe(e,t){try{for(var n=e.formatToParts(t),r=[],a=0;a=0&&(r[s]=parseInt(n[a].value,10))}return r}catch(o){if(o instanceof RangeError)return[NaN];throw o}}function ZAe(e,t){var n=e.format(t).replace(/\u200E/g,""),r=/(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(n);return[r[3],r[1],r[2],r[4],r[5],r[6]]}var pl={};function QAe(e){if(!pl[e]){var t=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:"America/New_York",year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(new Date("2014-06-25T04:00:00.123Z")),n=t==="06/25/2014, 00:00:00"||t==="‎06‎/‎25‎/‎2014‎ ‎00‎:‎00‎:‎00";pl[e]=n?new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}):new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:e,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})}return pl[e]}function TA(e,t,n,r,a,s,o){var i=new Date(0);return i.setUTCFullYear(e,t,n),i.setUTCHours(r,a,s,o),i}var VE=36e5,JAe=6e4,ml={timezone:/([Z+-].*)$/,timezoneZ:/^(Z)$/,timezoneHH:/^([+-]\d{2})$/,timezoneHHMM:/^([+-]\d{2}):?(\d{2})$/};function gA(e,t,n){var r,a;if(!e||(r=ml.timezoneZ.exec(e),r))return 0;var s;if(r=ml.timezoneHH.exec(e),r)return s=parseInt(r[1],10),KE(s)?-(s*VE):NaN;if(r=ml.timezoneHHMM.exec(e),r){s=parseInt(r[1],10);var o=parseInt(r[2],10);return KE(s,o)?(a=Math.abs(s)*VE+o*JAe,s>0?-a:a):NaN}if(nSe(e)){t=new Date(t||Date.now());var i=n?t:eSe(t),u=Bd(i,e),c=n?u:tSe(t,u,e);return-c}return NaN}function eSe(e){return TA(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds())}function Bd(e,t){var n=YAe(e,t),r=TA(n[0],n[1]-1,n[2],n[3]%24,n[4],n[5],0).getTime(),a=e.getTime(),s=a%1e3;return a-=s>=0?s:1e3+s,r-a}function tSe(e,t,n){var r=e.getTime(),a=r-t,s=Bd(new Date(a),n);if(t===s)return t;a-=s-t;var o=Bd(new Date(a),n);return s===o?s:Math.max(s,o)}function KE(e,t){return-23<=e&&e<=23&&(t==null||0<=t&&t<=59)}var YE={};function nSe(e){if(YE[e])return!0;try{return new Intl.DateTimeFormat(void 0,{timeZone:e}),YE[e]=!0,!0}catch{return!1}}var rSe=/(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?)$/,El=36e5,qE=6e4,aSe=2,Qt={dateTimePattern:/^([0-9W+-]+)(T| )(.*)/,datePattern:/^([0-9W+-]+)(.*)/,plainTime:/:/,YY:/^(\d{2})$/,YYY:[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],YYYY:/^(\d{4})/,YYYYY:[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],MM:/^-(\d{2})$/,DDD:/^-?(\d{3})$/,MMDD:/^-?(\d{2})-?(\d{2})$/,Www:/^-?W(\d{2})$/,WwwD:/^-?W(\d{2})-?(\d{1})$/,HH:/^(\d{2}([.,]\d*)?)$/,HHMM:/^(\d{2}):?(\d{2}([.,]\d*)?)$/,HHMMSS:/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,timeZone:rSe};function sSe(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");if(e===null)return new Date(NaN);var n=t||{},r=n.additionalDigits==null?aSe:VAe(n.additionalDigits);if(r!==2&&r!==1&&r!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]")return new Date(e.getTime());if(typeof e=="number"||Object.prototype.toString.call(e)==="[object Number]")return new Date(e);if(!(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]"))return new Date(NaN);var a=oSe(e),s=iSe(a.date,r),o=s.year,i=s.restDateString,u=uSe(i,o);if(isNaN(u))return new Date(NaN);if(u){var c=u.getTime(),l=0,f;if(a.time&&(l=cSe(a.time),isNaN(l)))return new Date(NaN);if(a.timeZone||n.timeZone){if(f=gA(a.timeZone||n.timeZone,new Date(c+l)),isNaN(f))return new Date(NaN)}else f=jE(new Date(c+l)),f=jE(new Date(c+l+f));return new Date(c+l+f)}else return new Date(NaN)}function oSe(e){var t={},n=Qt.dateTimePattern.exec(e),r;if(n?(t.date=n[1],r=n[3]):(n=Qt.datePattern.exec(e),n?(t.date=n[1],r=n[2]):(t.date=null,r=e)),r){var a=Qt.timeZone.exec(r);a?(t.time=r.replace(a[1],""),t.timeZone=a[1].trim()):t.time=r}return t}function iSe(e,t){var n=Qt.YYY[t],r=Qt.YYYYY[t],a;if(a=Qt.YYYY.exec(e)||r.exec(e),a){var s=a[1];return{year:parseInt(s,10),restDateString:e.slice(s.length)}}if(a=Qt.YY.exec(e)||n.exec(e),a){var o=a[1];return{year:parseInt(o,10)*100,restDateString:e.slice(o.length)}}return{year:null}}function uSe(e,t){if(t===null)return null;var n,r,a,s;if(e.length===0)return r=new Date(0),r.setUTCFullYear(t),r;if(n=Qt.MM.exec(e),n)return r=new Date(0),a=parseInt(n[1],10)-1,ZE(t,a)?(r.setUTCFullYear(t,a),r):new Date(NaN);if(n=Qt.DDD.exec(e),n){r=new Date(0);var o=parseInt(n[1],10);return fSe(t,o)?(r.setUTCFullYear(t,0,o),r):new Date(NaN)}if(n=Qt.MMDD.exec(e),n){r=new Date(0),a=parseInt(n[1],10)-1;var i=parseInt(n[2],10);return ZE(t,a,i)?(r.setUTCFullYear(t,a,i),r):new Date(NaN)}if(n=Qt.Www.exec(e),n)return s=parseInt(n[1],10)-1,QE(t,s)?XE(t,s):new Date(NaN);if(n=Qt.WwwD.exec(e),n){s=parseInt(n[1],10)-1;var u=parseInt(n[2],10)-1;return QE(t,s,u)?XE(t,s,u):new Date(NaN)}return null}function cSe(e){var t,n,r;if(t=Qt.HH.exec(e),t)return n=parseFloat(t[1].replace(",",".")),hl(n)?n%24*El:NaN;if(t=Qt.HHMM.exec(e),t)return n=parseInt(t[1],10),r=parseFloat(t[2].replace(",",".")),hl(n,r)?n%24*El+r*qE:NaN;if(t=Qt.HHMMSS.exec(e),t){n=parseInt(t[1],10),r=parseInt(t[2],10);var a=parseFloat(t[3].replace(",","."));return hl(n,r,a)?n%24*El+r*qE+a*1e3:NaN}return null}function XE(e,t,n){t=t||0,n=n||0;var r=new Date(0);r.setUTCFullYear(e,0,4);var a=r.getUTCDay()||7,s=t*7+n+1-a;return r.setUTCDate(r.getUTCDate()+s),r}var lSe=[31,28,31,30,31,30,31,31,30,31,30,31],dSe=[31,29,31,30,31,30,31,31,30,31,30,31];function AA(e){return e%400===0||e%4===0&&e%100!==0}function ZE(e,t,n){if(t<0||t>11)return!1;if(n!=null){if(n<1)return!1;var r=AA(e);if(r&&n>dSe[t]||!r&&n>lSe[t])return!1}return!0}function fSe(e,t){if(t<1)return!1;var n=AA(e);return!(n&&t>366||!n&&t>365)}function QE(e,t,n){return!(t<0||t>52||n!=null&&(n<0||n>6))}function hl(e,t,n){return!(e!=null&&(e<0||e>=25)||t!=null&&(t<0||t>=60)||n!=null&&(n<0||n>=60))}function pSe(e,t,n){var r=sSe(e,n),a=gA(t,r,!0),s=new Date(r.getTime()-a),o=new Date(0);return o.setFullYear(s.getUTCFullYear(),s.getUTCMonth(),s.getUTCDate()),o.setHours(s.getUTCHours(),s.getUTCMinutes(),s.getUTCSeconds(),s.getUTCMilliseconds()),o}const{locale:Gu}=ga.global,mSe=(e,t,n)=>{switch(e){case"week":return lc(t,{weekStartsOn:n?1:0});case"year":return wf(t);case"month":return Uo(t);default:throw new Error(`Invalid duration, expected: "week", "month", "year", got: "${e}"`)}},ESe=(e,t)=>{switch(e){case"week":return $o(t,7);case"year":return Qi(t,1);case"month":return Za(t,1);default:throw new Error(`Invalid duration, expected: "week", "month", "year", got: "${e}"`)}},yc=(e,t)=>pSe(new Date(e),t),JE=(e,t)=>{const n=Uo(e),r=ko(e),a=t?1:0;return{start:lc(n,{weekStartsOn:a}),end:Lf(r,{weekStartsOn:a})}},SA=(e,t=null,n=null)=>(t||(t="yyyy/MM/dd"),t=Sa(t,Gu.value),n||(n="HH:mm"),{workout_date:ln(e,t,{locale:Mo[Gu.value]}),workout_time:ln(e,n)}),hSe=["MM/dd/yyyy","dd/MM/yyyy","yyyy-MM-dd","date_string"],OA={de:"do MMM yyyy",en:"MMM. do, yyyy",es:"d MMM yyyy",fr:"d MMM yyyy",gl:"d MMM yyyy",it:"d MMM yyyy",pl:"d MMM yyyy",nb:"do MMM yyyy",nl:"d MMM yyyy"},Sa=(e,t)=>e==="date_string"?OA[t]:e,xn=(e,t,n,r=!0,a=null,s=!1)=>{a||(a=Gu.value);const o=r?s?" HH:mm:ss":" HH:mm":"";return ln(yc(e,t),`${Sa(n,a)}${o}`,{locale:Mo[a]})},_Se=(e,t,n=null)=>{const r=n||Gu.value,a=[];return hSe.map(s=>{const o=Sa(s,r);a.push({label:`${o} - ${xn(e,t,o,!1,r)}`,value:s})}),a},TSe=e=>(ut("data-v-4beb3bfa"),e=e(),ct(),e),gSe={id:"admin-users",class:"admin-card"},ASe={key:0,class:"no-users"},SSe={key:1,class:"responsive-table"},OSe=TSe(()=>p("th",null,"#",-1)),ISe={class:"left-text"},vSe={class:"left-text"},RSe={class:"left-text"},bSe={class:"cell-heading"},NSe={class:"cell-heading"},CSe={class:"cell-heading"},ySe={class:"cell-heading"},DSe={class:"text-center"},PSe={class:"cell-heading"},wSe={class:"text-center"},LSe={class:"cell-heading"},$Se={class:"text-center"},kSe={class:"cell-heading"},USe={class:"text-center"},MSe={class:"cell-heading"},xSe=["disabled","onClick"],eh="created_at",FSe=Q({__name:"AdminUsers",setup(e){const t=$e(),n=Vt(),r=Zr(),a=["is_active","admin","created_at","username","workouts_count"];let s=xt(Wd(n.query,a,eh));const o=$(()=>t.getters[Y.GETTERS.AUTH_USER_PROFILE]),i=$(()=>t.getters[Ce.GETTERS.USERS]),u=$(()=>t.getters[Ce.GETTERS.USERS_PAGINATION]),c=$(()=>t.getters[H.GETTERS.ERROR_MESSAGES]);It(()=>l(s));function l(E){t.dispatch(Ce.ACTIONS.GET_USERS,E)}function f(E){m("q",E.value)}function d(E,g){t.dispatch(Ce.ACTIONS.UPDATE_USER,{username:E,admin:g})}function m(E,g){s[E]=g,E==="per_page"&&(s.page=1),r.push({path:"/admin/users",query:s})}return Rt(()=>{t.dispatch(Ce.ACTIONS.EMPTY_USERS)}),Fe(()=>n.query,E=>{s=Wd(E,a,eh,{query:s}),l(s)}),(E,g)=>{const b=ue("router-link"),I=ue("ErrorMessage"),R=ue("Card");return T(),N("div",gSe,[M(R,null,{title:fe(()=>[K(_(St(E.$t("admin.USER",0))),1)]),content:fe(()=>[p("button",{class:"top-button",onClick:g[0]||(g[0]=Xe(v=>E.$router.push("/admin"),["prevent"]))},_(E.$t("admin.BACK_TO_ADMIN")),1),M(HAe,{onFilterOnUsername:f}),M(EA,{sort:h(T0),order_by:a,query:h(s),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:m},null,8,["sort","query"]),i.value.length===0?(T(),N("div",ASe,_(E.$t("user.NO_USERS_FOUND")),1)):(T(),N("div",SSe,[p("table",null,[p("thead",null,[p("tr",null,[OSe,p("th",ISe,_(E.$t("user.USERNAME")),1),p("th",vSe,_(E.$t("user.EMAIL")),1),p("th",RSe,_(E.$t("user.PROFILE.REGISTRATION_DATE")),1),p("th",null,_(St(E.$t("workouts.WORKOUT",0))),1),p("th",null,_(E.$t("admin.ACTIVE")),1),p("th",null,_(E.$t("user.ADMIN")),1),p("th",null,_(E.$t("admin.ACTION")),1)])]),p("tbody",null,[(T(!0),N(Ie,null,xe(i.value,v=>(T(),N("tr",{key:v.username},[p("td",null,[p("span",bSe,_(E.$t("user.PROFILE.PICTURE")),1),M(Lo,{user:v},null,8,["user"])]),p("td",null,[p("span",NSe,_(E.$t("user.USERNAME")),1),M(b,{to:`/admin/users/${v.username}`},{default:fe(()=>[K(_(v.username),1)]),_:2},1032,["to"])]),p("td",null,[p("span",CSe,_(E.$t("user.EMAIL")),1),K(" "+_(v.email),1)]),p("td",null,[p("span",ySe,_(E.$t("user.PROFILE.REGISTRATION_DATE")),1),p("time",null,_(h(xn)(v.created_at,o.value.timezone,o.value.date_format)),1)]),p("td",DSe,[p("span",PSe,_(St(E.$t("workouts.WORKOUT",0))),1),K(" "+_(v.nb_workouts),1)]),p("td",wSe,[p("span",LSe,_(E.$t("admin.ACTIVE")),1),p("i",{class:ge(`fa fa${v.is_active?"-check":""}-square-o`),"aria-hidden":"true"},null,2)]),p("td",$Se,[p("span",kSe,_(E.$t("user.ADMIN")),1),p("i",{class:ge(`fa fa${v.admin?"-check":""}-square-o`),"aria-hidden":"true"},null,2)]),p("td",USe,[p("span",MSe,_(E.$t("admin.ACTION")),1),p("button",{class:ge({danger:v.admin}),disabled:v.username===o.value.username,onClick:A=>d(v.username,!v.admin)},_(E.$t(`admin.USERS.TABLE.${v.admin?"REMOVE":"ADD"}_ADMIN_RIGHTS`)),11,xSe)])]))),128))])]),u.value.page?(T(),ne(Wu,{key:0,path:"/admin/users",pagination:u.value,query:h(s)},null,8,["pagination","query"])):W("",!0),c.value?(T(),ne(I,{key:1,message:c.value},null,8,["message"])):W("",!0),p("button",{onClick:g[1]||(g[1]=Xe(v=>E.$router.push("/admin"),["prevent"]))},_(E.$t("admin.BACK_TO_ADMIN")),1)]))]),_:1})])}}}),WSe=ae(FSe,[["__scopeId","data-v-4beb3bfa"]]),GSe={class:"box user-header"},zSe={class:"user-details"},BSe={class:"user-name"},HSe={class:"user-stats"},jSe={class:"user-stat"},VSe={class:"stat-number"},KSe={class:"stat-label"},YSe={class:"user-stat"},qSe={class:"stat-label"},XSe={class:"user-stat hide-small"},ZSe={class:"stat-number"},QSe={class:"stat-label"},JSe=Q({__name:"UserHeader",props:{user:{}},setup(e){const t=e,{user:n}=_e(t),r=$e(),a=$(()=>r.getters[Y.GETTERS.AUTH_USER_PROFILE]);return(s,o)=>{const i=ue("Distance");return T(),N("div",GSe,[M(Lo,{user:h(n)},null,8,["user"]),p("div",zSe,[p("div",BSe,_(h(n).username),1),p("div",HSe,[p("div",jSe,[p("span",VSe,_(h(n).nb_workouts),1),p("span",KSe,_(s.$t("workouts.WORKOUT",h(n).nb_workouts)),1)]),p("div",YSe,[M(i,{distance:h(n).total_distance,unitFrom:"km",digits:0,displayUnit:!1,useImperialUnits:a.value.imperial_units},null,8,["distance","useImperialUnits"]),p("span",qSe,_(a.value.imperial_units?"miles":"km"),1)]),p("div",XSe,[p("span",ZSe,_(h(n).nb_sports),1),p("span",QSe,_(s.$t("workouts.SPORT",h(n).nb_sports)),1)])])])])}}}),IA=ae(JSe,[["__scopeId","data-v-3abb1646"]]),eOe={class:"profile-tabs custom-checkboxes-group"},tOe={class:"profile-tabs-checkboxes custom-checkboxes"},nOe=["id","name","checked","disabled","onInput"],rOe=["id","onKeydown"],vA=Q({__name:"UserProfileTabs",props:{tabs:{},selectedTab:{},edition:{type:Boolean},disabled:{type:Boolean,default:!1}},setup(e){const t=e,{tabs:n,selectedTab:r,disabled:a}=_e(t);gt(()=>{const o=document.getElementById(`tab-${n.value[0]}`);o&&o.focus()});function s(o){switch(o){case"ACCOUNT":case"PICTURE":case"PRIVACY-POLICY":return`/profile/edit/${o.toLocaleLowerCase()}`;case"APPS":case"PREFERENCES":case"SPORTS":return`/profile${t.edition?"/edit":""}/${o.toLocaleLowerCase()}`;default:case"PROFILE":return`/profile${t.edition?"/edit":""}`}}return(o,i)=>(T(),N("div",eOe,[p("div",tOe,[(T(!0),N(Ie,null,xe(h(n),u=>(T(),N("div",{class:"profile-tab custom-checkbox",key:u},[p("label",null,[p("input",{type:"radio",id:u,name:u,checked:h(r).split("/")[0]===u,disabled:h(a),onInput:c=>o.$router.push(s(u))},null,40,nOe),p("span",{id:`tab-${u}`,tabindex:0,role:"button",onKeydown:At(c=>o.$router.push(s(u)),["enter"])},_(o.$t(`user.PROFILE.TABS.${u}`)),41,rOe)])]))),128))])]))}}),aOe={id:"user-profile"},sOe={class:"box"},oOe=Q({__name:"index",props:{user:{},tab:{}},setup(e){const t=e,{user:n,tab:r}=_e(t),a=["PROFILE","PREFERENCES","SPORTS","APPS"];return(s,o)=>{const i=ue("router-view");return T(),N("div",aOe,[M(IA,{user:h(n)},null,8,["user"]),p("div",sOe,[M(vA,{tabs:a,selectedTab:h(r),edition:!1},null,8,["selectedTab"]),M(i,{user:h(n)},null,8,["user"])])])}}}),iOe=ae(oOe,[["__scopeId","data-v-8a058d49"]]),uOe={id:"user-infos",class:"description-list"},cOe={key:1,class:"info-box success-message"},lOe={key:4,class:"email-form form-box"},dOe={class:"form-items",for:"email"},fOe={class:"form-items",for:"email"},pOe={class:"form-buttons"},mOe={class:"confirm",type:"submit"},EOe={key:5},hOe={key:0},_Oe={class:"user-bio"},TOe={key:0,class:"profile-buttons"},gOe={key:1,class:"profile-buttons"},AOe=Q({__name:"UserInfos",props:{user:{},fromAdmin:{type:Boolean,default:!1}},setup(e){const t=e,n=$e(),{user:r,fromAdmin:a}=_e(t),s=$(()=>n.getters[H.GETTERS.LANGUAGE]),o=$(()=>n.getters[Y.GETTERS.AUTH_USER_PROFILE]),i=$(()=>t.user.created_at?xn(t.user.created_at,o.value.timezone,o.value.date_format):""),u=$(()=>t.user.birth_date?ln(new Date(t.user.birth_date),`${Sa(o.value.date_format,s.value)}`,{locale:Mo[s.value]}):""),c=$(()=>n.getters[Ce.GETTERS.USERS_IS_SUCCESS]),l=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]),f=$(()=>n.getters[H.GETTERS.APP_CONFIG]),d=ce(""),m=ce(!1),E=ce(!1),g=ce(""),b=ce("");function I(z){d.value=z,z!==""&&n.commit(Ce.MUTATIONS.UPDATE_IS_SUCCESS,!1)}function R(z){n.dispatch(Ce.ACTIONS.DELETE_USER_ACCOUNT,{username:z})}function v(z){b.value="password-reset",n.dispatch(Ce.ACTIONS.UPDATE_USER,{username:z,resetPassword:!0})}function A(z){n.dispatch(Ce.ACTIONS.UPDATE_USER,{username:z,activate:!0})}function C(){L(),g.value=r.value.email_to_confirm?r.value.email_to_confirm:"",E.value=!0,b.value="email-update"}function w(){g.value="",E.value=!1}function k(z){n.dispatch(Ce.ACTIONS.UPDATE_USER,{username:z,new_email:g.value})}function L(){n.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),n.commit(Ce.MUTATIONS.UPDATE_IS_SUCCESS,!1),b.value=""}return Rt(()=>L()),Fe(()=>c.value,z=>{z&&(I(""),w())}),(z,F)=>{const U=ue("Modal"),Z=ue("AlertMessage"),ee=ue("ErrorMessage");return T(),N("div",uOe,[d.value?(T(),ne(U,{key:0,title:z.$t("common.CONFIRMATION"),message:d.value==="delete"?"admin.CONFIRM_USER_ACCOUNT_DELETION":"admin.CONFIRM_USER_PASSWORD_RESET",strongMessage:h(r).username,onConfirmAction:F[0]||(F[0]=re=>d.value==="delete"?R(h(r).username):v(h(r).username)),onCancelAction:F[1]||(F[1]=re=>I("")),onKeydown:F[2]||(F[2]=At(re=>I(""),["esc"]))},null,8,["title","message","strongMessage"])):W("",!0),c.value?(T(),N("div",cOe,_(z.$t(`admin.${b.value==="password-reset"?"PASSWORD_RESET":"USER_EMAIL_UPDATE"}_SUCCESSFUL`)),1)):W("",!0),h(r).is_active?W("",!0):(T(),ne(Z,{key:2,message:"user.THIS_USER_ACCOUNT_IS_INACTIVE"})),l.value?(T(),ne(ee,{key:3,message:l.value},null,8,["message"])):W("",!0),E.value?(T(),N("div",lOe,[p("form",{class:ge({errors:m.value}),onSubmit:F[5]||(F[5]=Xe(re=>k(h(r).username),["prevent"]))},[p("label",dOe,[K(_(z.$t("admin.CURRENT_EMAIL"))+" ",1),Ke(p("input",{id:"email",type:"email","onUpdate:modelValue":F[3]||(F[3]=re=>h(r).email=re),disabled:""},null,512),[[tt,h(r).email]])]),p("label",fOe,[K(_(z.$t("admin.NEW_EMAIL"))+"* ",1),Ke(p("input",{id:"new-email",type:"email",required:"","onUpdate:modelValue":F[4]||(F[4]=re=>g.value=re)},null,512),[[tt,g.value]])]),p("div",pOe,[p("button",mOe,_(z.$t("buttons.SUBMIT")),1),p("button",{class:"cancel",onClick:Xe(w,["prevent"])},_(z.$t("buttons.CANCEL")),1)])],34)])):(T(),N("div",EOe,[p("dl",null,[p("dt",null,_(z.$t("user.PROFILE.REGISTRATION_DATE"))+":",1),p("dd",null,[p("time",null,_(i.value),1)]),p("dt",null,_(z.$t("user.PROFILE.FIRST_NAME"))+":",1),p("dd",null,_(h(r).first_name),1),p("dt",null,_(z.$t("user.PROFILE.LAST_NAME"))+":",1),p("dd",null,_(h(r).last_name),1),p("dt",null,_(z.$t("user.PROFILE.BIRTH_DATE"))+":",1),p("dd",null,[u.value?(T(),N("time",hOe,_(u.value),1)):W("",!0)]),p("dt",null,_(z.$t("user.PROFILE.LOCATION"))+":",1),p("dd",null,_(h(r).location),1),p("dt",null,_(z.$t("user.PROFILE.BIO"))+":",1),p("dd",_Oe,_(h(r).bio),1)]),h(a)?(T(),N("div",TOe,[o.value.username!==h(r).username?(T(),N("button",{key:0,class:"danger",onClick:F[6]||(F[6]=Xe(re=>I("delete"),["prevent"]))},_(z.$t("admin.DELETE_USER")),1)):W("",!0),h(r).is_active?W("",!0):(T(),N("button",{key:1,onClick:F[7]||(F[7]=Xe(re=>A(h(r).username),["prevent"]))},_(z.$t("admin.ACTIVATE_USER_ACCOUNT")),1)),o.value.username!==h(r).username?(T(),N("button",{key:2,onClick:Xe(C,["prevent"])},_(z.$t("admin.UPDATE_USER_EMAIL")),1)):W("",!0),o.value.username!==h(r).username&&f.value.is_email_sending_enabled?(T(),N("button",{key:3,onClick:F[8]||(F[8]=Xe(re=>I("reset"),["prevent"]))},_(z.$t("admin.RESET_USER_PASSWORD")),1)):W("",!0),p("button",{onClick:F[9]||(F[9]=re=>z.$router.go(-1))},_(z.$t("buttons.BACK")),1)])):(T(),N("div",gOe,[p("button",{onClick:F[10]||(F[10]=re=>z.$router.push("/profile/edit"))},_(z.$t("user.PROFILE.EDIT")),1),p("button",{onClick:F[11]||(F[11]=re=>z.$router.push("/"))},_(z.$t("common.HOME")),1)]))]))])}}}),RA=ae(AOe,[["__scopeId","data-v-98220281"]]),SOe=e=>(ut("data-v-b0528e22"),e=e(),ct(),e),OOe={id:"user-preferences",class:"description-list"},IOe={class:"preferences-section"},vOe={class:"preferences-section"},ROe={class:"info-box raw-speed-help"},bOe=SOe(()=>p("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),NOe={class:"profile-buttons"},COe=Q({__name:"UserPreferences",props:{user:{}},setup(e){const t=e,n=$e(),r=$(()=>n.getters[H.GETTERS.LANGUAGE]),a=$(()=>t.user.language?id[t.user.language]:id.en),s=$(()=>t.user.weekm?"MONDAY":"SUNDAY"),o=$(()=>t.user.timezone?t.user.timezone:"Europe/Paris"),i=$(()=>t.user.date_format?t.user.date_format:"MM/dd/yyyy"),u=$(()=>t.user.display_ascent?"DISPLAYED":"HIDDEN"),c=$(()=>t.user.use_dark_mode===!0?"DARK":t.user.use_dark_mode===!1?"LIGHT":"DEFAULT");return(l,f)=>(T(),N("div",OOe,[p("div",IOe,_(l.$t("user.PROFILE.INTERFACE")),1),p("dl",null,[p("dt",null,_(l.$t("user.PROFILE.LANGUAGE"))+":",1),p("dd",null,_(a.value),1),p("dt",null,_(l.$t("user.PROFILE.THEME_MODE.LABEL"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.THEME_MODE.VALUES.${c.value}`)),1),p("dt",null,_(l.$t("user.PROFILE.TIMEZONE"))+":",1),p("dd",null,_(o.value),1),p("dt",null,_(l.$t("user.PROFILE.DATE_FORMAT"))+":",1),p("dd",null,_(h(Sa)(i.value,r.value)),1),p("dt",null,_(l.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.${s.value}`)),1)]),p("div",vOe,_(l.$t("workouts.WORKOUT",0)),1),p("dl",null,[p("dt",null,_(l.$t("user.PROFILE.UNITS.LABEL"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.UNITS.${l.user.imperial_units?"IMPERIAL":"METRIC"}`)),1),p("dt",null,_(l.$t("user.PROFILE.ASCENT_DATA"))+":",1),p("dd",null,_(l.$t(`common.${u.value}`)),1),p("dt",null,_(l.$t("user.PROFILE.ELEVATION_CHART_START.LABEL"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.ELEVATION_CHART_START.${l.user.start_elevation_at_zero?"ZERO":"MIN_ALT"}`)),1),p("dt",null,_(l.$t("user.PROFILE.USE_RAW_GPX_SPEED.LABEL"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.USE_RAW_GPX_SPEED.${l.user.use_raw_gpx_speed?"RAW_SPEED":"FILTERED_SPEED"}`)),1),p("div",ROe,[p("span",null,[bOe,K(" "+_(l.$t("user.PROFILE.USE_RAW_GPX_SPEED.HELP")),1)])])]),p("div",NOe,[p("button",{onClick:f[0]||(f[0]=d=>l.$router.push("/profile/edit/preferences"))},_(l.$t("user.PROFILE.EDIT_PREFERENCES")),1),p("button",{onClick:f[1]||(f[1]=d=>l.$router.push("/"))},_(l.$t("common.HOME")),1)])]))}}),yOe=ae(COe,[["__scopeId","data-v-b0528e22"]]),DOe={id:"user-profile-edition",class:"center-card"},POe=Q({__name:"index",props:{user:{},tab:{}},setup(e){const t=e,n=$e(),{user:r,tab:a}=_e(t),s=["PROFILE","ACCOUNT","PICTURE","PREFERENCES","SPORTS","PRIVACY-POLICY"],o=$(()=>n.getters[Y.GETTERS.USER_LOADING]);return(i,u)=>{const c=ue("router-view"),l=ue("Card");return T(),N("div",DOe,[M(l,null,{title:fe(()=>[K(_(i.$t(`user.PROFILE.${h(a)}_EDITION`)),1)]),content:fe(()=>[M(vA,{tabs:s,selectedTab:h(a),edition:!0,disabled:o.value},null,8,["selectedTab","disabled"]),M(c,{user:h(r)},null,8,["user"])]),_:1})])}}}),Js=new Map,wOe=e=>{const{method:t,url:n,params:r={},data:a={}}=e;return[t,n,JSON.stringify(r),JSON.stringify(a)].join("")},fs=e=>{const t=wOe(e);if(Js.has(t)){const n=Js.get(t)||{};n==null||n.abort(),Js.delete(t)}return t},Ur=N1.create({baseURL:wo()});Ur.interceptors.request.use(e=>{const t=new AbortController;e.signal=t.signal;const n=fs(e);return Js.set(n,t),e},e=>Promise.reject(e));Ur.interceptors.response.use(e=>(fs(e.config),e),e=>(e.message!=="canceled"&&e.response&&fs(e.response.config),Promise.reject(e)));const bA=(e,t)=>{e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.delete(`users/${t.username}`).then(n=>{n.status===204?t.fromAdmin?_t.push("/admin/users"):e.dispatch(Y.ACTIONS.LOGOUT).then(()=>_t.push("/")):he(e,null)}).catch(n=>he(e,n))},LOe={[Ce.ACTIONS.EMPTY_USER](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_USER,{})},[Ce.ACTIONS.EMPTY_USERS](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_USERS,[]),e.commit(Ce.MUTATIONS.UPDATE_USERS_PAGINATION,{})},[Ce.ACTIONS.GET_USER](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!0),Be.get(`users/${t}`).then(n=>{n.data.status==="success"?e.commit(Ce.MUTATIONS.UPDATE_USER,n.data.data.users[0]):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!1))},[Ce.ACTIONS.GET_USERS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!0),Be.get("users",{params:t}).then(n=>{n.data.status==="success"?(e.commit(Ce.MUTATIONS.UPDATE_USERS,n.data.data.users),e.commit(Ce.MUTATIONS.UPDATE_USERS_PAGINATION,n.data.pagination)):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!1))},[Ce.ACTIONS.UPDATE_USER](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_IS_SUCCESS,!1);const n={};t.admin!==void 0&&(n.admin=t.admin),t.resetPassword&&(n.reset_password=t.resetPassword),t.activate&&(n.activate=t.activate),t.new_email!==void 0&&(n.new_email=t.new_email),Be.patch(`users/${t.username}`,n).then(r=>{r.data.status==="success"?(e.commit(Ce.MUTATIONS.UPDATE_USER_IN_USERS,r.data.data.users[0]),(t.resetPassword||t.new_email)&&e.commit(Ce.MUTATIONS.UPDATE_IS_SUCCESS,!0),(t.activate||t.new_email)&&e.commit(Ce.MUTATIONS.UPDATE_USER,r.data.data.users[0])):he(e,null)}).catch(r=>he(e,r)).finally(()=>e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!1))},[Ce.ACTIONS.DELETE_USER_ACCOUNT](e,t){bA(e,{username:t.username,fromAdmin:!0})}},_i=e=>{localStorage.removeItem("authToken"),e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Kr.MUTATIONS.EMPTY_USER_STATS),e.commit(Y.MUTATIONS.CLEAR_AUTH_USER_TOKEN),e.commit(Ce.MUTATIONS.UPDATE_USERS,[]),e.commit(Te.MUTATIONS.EMPTY_WORKOUTS),e.commit(Te.MUTATIONS.EMPTY_WORKOUT),_t.push("/login")},$Oe={[Y.ACTIONS.CHECK_AUTH_USER](e){window.localStorage.authToken&&!e.getters[Y.GETTERS.IS_AUTHENTICATED]&&(e.commit(Y.MUTATIONS.UPDATE_AUTH_TOKEN,window.localStorage.authToken),e.dispatch(Y.ACTIONS.GET_USER_PROFILE)),!window.localStorage.authToken&&e.getters[Y.GETTERS.IS_AUTHENTICATED]&&_i(e)},[Y.ACTIONS.CONFIRM_ACCOUNT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Ur.post("auth/account/confirm",{token:t.token}).then(n=>{if(n.data.status==="success"){const r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(Y.MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/"))}else he(e,null)}).catch(n=>{he(e,n)})},[Y.ACTIONS.CONFIRM_EMAIL](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!1),Ur.post("/auth/email/update",{token:t.token}).then(n=>{n.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!0),t.refreshUser&&e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/profile/edit/account")),_t.push("/profile/edit/account")):he(e,null)}).catch(n=>{he(e,n)})},[Y.ACTIONS.GET_USER_PROFILE](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("auth/profile").then(t=>{t.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE,t.data.data),t.data.data.accepted_privacy_policy||e.dispatch(H.ACTIONS.GET_APPLICATION_PRIVACY_POLICY),t.data.data.language&&e.dispatch(H.ACTIONS.UPDATE_APPLICATION_LANGUAGE,t.data.data.language),e.commit(H.MUTATIONS.UPDATE_DARK_MODE,t.data.data.use_dark_mode),e.dispatch($t.ACTIONS.GET_SPORTS)):(he(e,null),_i(e))}).catch(t=>{t.message!=="canceled"&&(he(e,t),_i(e))})},[Y.ACTIONS.LOGIN_OR_REGISTER](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_IS_REGISTRATION_SUCCESS,!1),Ur.post(`/auth/${t.actionType}`,t.formData).then(n=>{if(n.data.status==="success")if(t.actionType==="login"){const r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(Y.MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push(typeof t.redirectUrl=="string"?t.redirectUrl:"/"))}else _t.push("/login").then(()=>e.commit(Y.MUTATIONS.UPDATE_IS_REGISTRATION_SUCCESS,!0));else he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.LOGOUT](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.post("auth/logout").then(t=>{t.data.status==="success"?_i(e):he(e,null)}).catch(t=>he(e,t))},[Y.ACTIONS.UPDATE_USER_PROFILE](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.post("auth/profile/edit",t).then(n=>{n.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE,n.data.data),_t.push("/profile")):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.UPDATE_USER_ACCOUNT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),e.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!1),Be.patch("auth/profile/edit/account",t).then(n=>{n.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE,n.data.data),e.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!0)):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.UPDATE_USER_PREFERENCES](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.post("auth/profile/edit/preferences",t).then(n=>{n.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE,n.data.data),e.commit(H.MUTATIONS.UPDATE_DARK_MODE,n.data.data.use_dark_mode),e.dispatch(H.ACTIONS.UPDATE_APPLICATION_LANGUAGE,n.data.data.language).then(()=>_t.push("/profile/preferences"))):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.RESET_USER_SPORT_PREFERENCES](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.delete(`auth/profile/reset/sports/${t}`).then(n=>{n.status===204?e.dispatch($t.ACTIONS.GET_SPORTS):he(e,null)}).catch(n=>{he(e,n),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1)})},[Y.ACTIONS.UPDATE_USER_SPORT_PREFERENCES](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.post("auth/profile/edit/sports",t).then(n=>{n.data.status==="success"?e.dispatch($t.ACTIONS.GET_SPORTS):he(e,null)}).catch(n=>{he(e,n),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1)})},[Y.ACTIONS.UPDATE_USER_PICTURE](e,t){if(e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),!t.picture)throw new Error("No file part");const n=new FormData;n.append("file",t.picture),Be.post("auth/picture",n,{headers:{"content-type":"multipart/form-data"}}).then(r=>{r.data.status==="success"?e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/profile")):he(e,null)}).catch(r=>he(e,r)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.DELETE_ACCOUNT](e,t){bA(e,t)},[Y.ACTIONS.DELETE_PICTURE](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.delete("auth/picture").then(t=>{t.status===204?e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/profile")):he(e,null)}).catch(t=>he(e,t)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.SEND_PASSWORD_RESET_REQUEST](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Ur.post("auth/password/reset-request",t).then(n=>{n.data.status==="success"?_t.push("/password-reset/sent"):he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.RESEND_ACCOUNT_CONFIRMATION_EMAIL](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Ur.post("auth/account/resend-confirmation",t).then(n=>{n.data.status==="success"?_t.push("/account-confirmation/email-sent"):he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.RESET_USER_PASSWORD](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Ur.post("auth/password/update",t).then(n=>{n.data.status==="success"?_t.push("/password-reset/password-updated"):he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.ACCEPT_PRIVACY_POLICY](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.post("auth/account/privacy-policy",{accepted_policy:t}).then(n=>{n.data.status==="success"?e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/profile")):he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.REQUEST_DATA_EXPORT](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.post("auth/account/export/request").then(t=>{t.data.status==="success"?e.commit(Y.MUTATIONS.SET_EXPORT_REQUEST,t.data.request):he(e,null)}).catch(t=>he(e,t))},[Y.ACTIONS.GET_REQUEST_DATA_EXPORT](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("auth/account/export").then(t=>{t.data.status==="success"?e.commit(Y.MUTATIONS.SET_EXPORT_REQUEST,t.data.request):he(e,null)}).catch(t=>he(e,t))}},kOe={[Y.GETTERS.AUTH_TOKEN]:e=>e.authToken,[Y.GETTERS.AUTH_USER_PROFILE]:e=>e.authUserProfile,[Y.GETTERS.EXPORT_REQUEST]:e=>e.exportRequest,[Y.GETTERS.IS_AUTHENTICATED]:e=>e.authToken!==null,[Y.GETTERS.IS_ADMIN]:e=>e.authUserProfile&&e.authUserProfile.admin,[Y.GETTERS.IS_REGISTRATION_SUCCESS]:e=>e.isRegistrationSuccess,[Y.GETTERS.IS_SUCCESS]:e=>e.isSuccess,[Y.GETTERS.USER_LOADING]:e=>e.loading},UOe={[Y.MUTATIONS.CLEAR_AUTH_USER_TOKEN](e){e.authToken=null,e.authUserProfile={}},[Y.MUTATIONS.UPDATE_AUTH_TOKEN](e,t){e.authToken=t},[Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE](e,t){e.authUserProfile=t},[Y.MUTATIONS.UPDATE_IS_REGISTRATION_SUCCESS](e,t){e.isRegistrationSuccess=t},[Y.MUTATIONS.UPDATE_IS_SUCCESS](e,t){e.isSuccess=t},[Y.MUTATIONS.UPDATE_USER_LOADING](e,t){e.loading=t},[Y.MUTATIONS.SET_EXPORT_REQUEST](e,t){e.exportRequest=t}},MOe={authToken:null,authUserProfile:{},isSuccess:!1,isRegistrationSuccess:!1,loading:!1,exportRequest:null},xOe={state:MOe,actions:$Oe,getters:kOe,mutations:UOe},th=(e,t)=>{e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get(t).then(n=>{n.data.status==="success"?e.commit(Ve.MUTATIONS.SET_CLIENT,n.data.data.client):he(e,null)}).catch(n=>he(e,n))},FOe={[Ve.ACTIONS.AUTHORIZE_CLIENT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES);const n=new FormData;n.set("client_id",t.client_id),n.set("response_type",t.response_type),n.set("scope",t.scope),n.set("confirm","true"),t.state&&n.set("state",t.state),t.code_challenge&&n.set("code_challenge",t.code_challenge),t.code_challenge_method&&n.set("code_challenge_method",t.code_challenge_method),Be.post("oauth/authorize",n,{headers:{"Content-Type":"multipart/form-data"}}).then(r=>{r.status==200&&r.data.redirect_url?window.location.href=r.data.redirect_url:he(e,null)}).catch(r=>he(e,r))},[Ve.ACTIONS.CREATE_CLIENT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.post("oauth/apps",t).then(n=>{n.data.status==="created"?(e.commit(Ve.MUTATIONS.SET_CLIENT,n.data.data.client),_t.push(`/profile/apps/${n.data.data.client.id}/created`)):he(e,null)}).catch(n=>he(e,n))},[Ve.ACTIONS.DELETE_CLIENT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.delete(`oauth/apps/${t}`).then(n=>{n.status===204?e.dispatch(Ve.ACTIONS.GET_CLIENTS).then(()=>_t.push("/profile/apps")):he(e,null)}).catch(n=>he(e,n))},[Ve.ACTIONS.GET_CLIENT_BY_CLIENT_ID](e,t){th(e,`oauth/apps/${t}`)},[Ve.ACTIONS.GET_CLIENT_BY_ID](e,t){th(e,`oauth/apps/${t}/by_id`)},[Ve.ACTIONS.GET_CLIENTS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("oauth/apps",{params:t}).then(n=>{n.data.status==="success"?(e.commit(Ve.MUTATIONS.SET_CLIENTS,n.data.data.clients),e.commit(Ve.MUTATIONS.SET_CLIENTS_PAGINATION,n.data.pagination)):he(e,null)}).catch(n=>he(e,n))},[Ve.ACTIONS.REVOKE_ALL_TOKENS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ve.MUTATIONS.SET_REVOCATION_SUCCESSFUL,!1),Be.post(`oauth/apps/${t}/revoke`).then(n=>{n.data.status==="success"?e.commit(Ve.MUTATIONS.SET_REVOCATION_SUCCESSFUL,!0):he(e,null)}).catch(n=>he(e,n))}},WOe={[Ve.GETTERS.CLIENT]:e=>e.client,[Ve.GETTERS.CLIENTS]:e=>e.clients,[Ve.GETTERS.CLIENTS_PAGINATION]:e=>e.pagination,[Ve.GETTERS.REVOCATION_SUCCESSFUL]:e=>e.revocationSuccessful},GOe={[Ve.MUTATIONS.SET_CLIENT](e,t){e.client=t},[Ve.MUTATIONS.EMPTY_CLIENT](e){e.client={}},[Ve.MUTATIONS.SET_CLIENTS](e,t){e.clients=t},[Ve.MUTATIONS.SET_CLIENTS_PAGINATION](e,t){e.pagination=t},[Ve.MUTATIONS.SET_REVOCATION_SUCCESSFUL](e,t){e.revocationSuccessful=t}},zOe={client:{},clients:[],pagination:{},revocationSuccessful:!1},BOe={state:zOe,actions:FOe,getters:WOe,mutations:GOe},{locale:HOe}=ga.global,jOe={[H.ACTIONS.GET_APPLICATION_CONFIG](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(H.MUTATIONS.UPDATE_APPLICATION_LOADING,!0),Be.get("config").then(t=>{t.data.status==="success"?e.commit(H.MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data):he(e,null)}).catch(t=>he(e,t)).finally(()=>e.commit(H.MUTATIONS.UPDATE_APPLICATION_LOADING,!1))},[H.ACTIONS.GET_APPLICATION_STATS](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("stats/all").then(t=>{t.data.status==="success"?e.commit(H.MUTATIONS.UPDATE_APPLICATION_STATS,t.data.data):he(e,null)}).catch(t=>he(e,t))},[H.ACTIONS.GET_APPLICATION_PRIVACY_POLICY](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("config").then(t=>{t.data.status==="success"?e.commit(H.MUTATIONS.UPDATE_APPLICATION_PRIVACY_POLICY,t.data.data):he(e,null)}).catch(t=>he(e,t))},[H.ACTIONS.UPDATE_APPLICATION_CONFIG](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.patch("config",t).then(n=>{n.data.status==="success"?(e.commit(H.MUTATIONS.UPDATE_APPLICATION_CONFIG,n.data.data),_t.push("/admin/application")):he(e,null)}).catch(n=>he(e,n))},[H.ACTIONS.UPDATE_APPLICATION_LANGUAGE](e,t){var n;(n=document.querySelector("html"))==null||n.setAttribute("lang",t),e.commit(H.MUTATIONS.UPDATE_LANG,t),HOe.value=t}},VOe={[H.GETTERS.APP_CONFIG]:e=>e.application.config,[H.GETTERS.APP_LOADING]:e=>e.appLoading,[H.GETTERS.APP_STATS]:e=>e.application.statistics,[H.GETTERS.DARK_MODE]:e=>e.darkMode,[H.GETTERS.ERROR_MESSAGES]:e=>e.errorMessages,[H.GETTERS.LANGUAGE]:e=>e.language,[H.GETTERS.LOCALE]:e=>e.locale},KOe={[H.MUTATIONS.EMPTY_ERROR_MESSAGES](e){e.errorMessages=null},[H.MUTATIONS.SET_ERROR_MESSAGES](e,t){e.errorMessages=t},[H.MUTATIONS.UPDATE_APPLICATION_CONFIG](e,t){e.application.config=t},[H.MUTATIONS.UPDATE_APPLICATION_LOADING](e,t){e.appLoading=t},[H.MUTATIONS.UPDATE_APPLICATION_PRIVACY_POLICY](e,t){e.application.config.privacy_policy=t.privacy_policy,e.application.config.privacy_policy_date=t.privacy_policy_date},[H.MUTATIONS.UPDATE_APPLICATION_STATS](e,t){e.application.statistics=t},[H.MUTATIONS.UPDATE_LANG](e,t){e.language=t,e.locale=Mo[t]},[H.MUTATIONS.UPDATE_DARK_MODE](e,t){e.darkMode=t}},YOe={root:!0,language:"en",locale:dc,errorMessages:null,application:{statistics:{sports:0,uploads_dir_size:0,users:0,workouts:0}},appLoading:!1,darkMode:null},qOe={[$t.ACTIONS.GET_SPORTS](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("sports").then(t=>{t.data.status==="success"?(e.commit($t.MUTATIONS.SET_SPORTS,t.data.data.sports),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1)):he(e,null)}).catch(t=>he(e,t))},[$t.ACTIONS.UPDATE_SPORTS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.patch(`sports/${t.id}`,{is_active:t.isActive}).then(n=>{n.data.status==="success"?e.dispatch($t.ACTIONS.GET_SPORTS):he(e,null)}).catch(n=>he(e,n))}},XOe={[$t.GETTERS.SPORTS]:e=>e.sports},ZOe={[$t.MUTATIONS.SET_SPORTS](e,t){e.sports=t}},QOe={sports:[]},JOe={state:QOe,actions:qOe,getters:XOe,mutations:ZOe},eIe={[Kr.ACTIONS.GET_USER_STATS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get(`stats/${t.username}/${t.filterType}`,{params:t.params}).then(n=>{n.data.status==="success"?e.commit(Kr.MUTATIONS.UPDATE_USER_STATS,n.data.data.statistics):he(e,null)}).catch(n=>he(e,n))}},tIe={[Kr.GETTERS.USER_STATS]:e=>e.statistics},nIe={[Kr.MUTATIONS.UPDATE_USER_STATS](e,t){e.statistics=t},[Kr.MUTATIONS.EMPTY_USER_STATS](e){e.statistics={}}},rIe={statistics:{}},aIe={state:rIe,actions:eIe,getters:tIe,mutations:nIe},sIe={[Ce.GETTERS.USER]:e=>e.user,[Ce.GETTERS.USERS]:e=>e.users,[Ce.GETTERS.USERS_IS_SUCCESS]:e=>e.isSuccess,[Ce.GETTERS.USERS_LOADING]:e=>e.loading,[Ce.GETTERS.USERS_PAGINATION]:e=>e.pagination},oIe={[Ce.MUTATIONS.UPDATE_USER](e,t){e.user=t},[Ce.MUTATIONS.UPDATE_USER_IN_USERS](e,t){e.users=e.users.map(n=>n.username===t.username?t:n)},[Ce.MUTATIONS.UPDATE_USERS](e,t){e.users=t},[Ce.MUTATIONS.UPDATE_USERS_LOADING](e,t){e.loading=t},[Ce.MUTATIONS.UPDATE_USERS_PAGINATION](e,t){e.pagination=t},[Ce.MUTATIONS.UPDATE_IS_SUCCESS](e,t){e.isSuccess=t}},iIe={user:{},users:[],loading:!1,isSuccess:!1,pagination:{}},uIe={state:iIe,actions:LOe,getters:sIe,mutations:oIe},Ti=(e,t,n)=>{e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("workouts",{params:t}).then(r=>{r.data.status==="success"?(e.commit(Te.MUTATIONS[n],r.data.data.workouts),n===ca.SET_USER_WORKOUTS&&e.commit(Te.MUTATIONS.SET_WORKOUTS_PAGINATION,r.data.pagination)):he(e,null)}).catch(r=>he(e,r))},cIe={[Te.ACTIONS.GET_CALENDAR_WORKOUTS](e,t){e.commit(Te.MUTATIONS.EMPTY_CALENDAR_WORKOUTS),Ti(e,t,ca.SET_CALENDAR_WORKOUTS)},[Te.ACTIONS.GET_USER_WORKOUTS](e,t){Ti(e,t,ca.SET_USER_WORKOUTS)},[Te.ACTIONS.GET_TIMELINE_WORKOUTS](e,t){Ti(e,t,ca.SET_TIMELINE_WORKOUTS)},[Te.ACTIONS.GET_MORE_TIMELINE_WORKOUTS](e,t){Ti(e,t,ca.ADD_TIMELINE_WORKOUTS)},[Te.ACTIONS.GET_WORKOUT_DATA](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0);const n=t.segmentId?`/segment/${t.segmentId}`:"";Be.get(`workouts/${t.workoutId}`).then(r=>{const a=r.data.data.workouts[0];if(r.data.status==="success"){if(t.segmentId&&(a.segments.length===0||!a.segments[+t.segmentId-1]))throw new Error("WORKOUT_NOT_FOUND");e.commit(Te.MUTATIONS.SET_WORKOUT,r.data.data.workouts[0]),r.data.data.workouts[0].with_gpx&&(Be.get(`workouts/${t.workoutId}/chart_data${n}`).then(s=>{s.data.status==="success"&&e.commit(Te.MUTATIONS.SET_WORKOUT_CHART_DATA,s.data.data.chart_data)}),Be.get(`workouts/${t.workoutId}/gpx${n}`).then(s=>{s.data.status==="success"&&e.commit(Te.MUTATIONS.SET_WORKOUT_GPX,s.data.data.gpx)}))}else e.commit(Te.MUTATIONS.EMPTY_WORKOUT),he(e,null)}).catch(r=>{e.commit(Te.MUTATIONS.EMPTY_WORKOUT),he(e,r)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))},[Te.ACTIONS.DELETE_WORKOUT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0),Be.delete(`workouts/${t.workoutId}`).then(()=>{e.commit(Te.MUTATIONS.EMPTY_WORKOUT),e.dispatch(Y.ACTIONS.GET_USER_PROFILE),_t.push("/")}).catch(n=>{he(e,n)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))},[Te.ACTIONS.EDIT_WORKOUT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0),Be.patch(`workouts/${t.workoutId}`,t.data).then(()=>{e.dispatch(Y.ACTIONS.GET_USER_PROFILE),e.dispatch(Te.ACTIONS.GET_WORKOUT_DATA,{workoutId:t.workoutId}).then(()=>{_t.push({name:"Workout",params:{workoutId:t.workoutId}})})}).catch(n=>{he(e,n)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))},[Te.ACTIONS.ADD_WORKOUT](e,t){if(e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0),!t.file)throw new Error("No file part");const n=t.notes.replace(/"/g,'\\"'),r=new FormData;r.append("file",t.file),r.append("data",`{"sport_id": ${t.sport_id}, "notes": "${n}"}`),Be.post("workouts",r,{headers:{"content-type":"multipart/form-data"}}).then(a=>{if(a.data.status==="created"){e.dispatch(Y.ACTIONS.GET_USER_PROFILE);const s=a.data.data.workouts[0];_t.push(a.data.data.workouts.length===1?`/workouts/${s.id}`:"/")}}).catch(a=>{he(e,a)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))},[Te.ACTIONS.ADD_WORKOUT_WITHOUT_GPX](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0),Be.post("workouts/no_gpx",t).then(n=>{if(n.data.status==="created"){e.dispatch(Y.ACTIONS.GET_USER_PROFILE);const r=n.data.data.workouts[0];_t.push(`/workouts/${r.id}`)}}).catch(n=>{he(e,n)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))}},lIe={[Te.GETTERS.CALENDAR_WORKOUTS]:e=>e.calendar_workouts,[Te.GETTERS.TIMELINE_WORKOUTS]:e=>e.timeline_workouts,[Te.GETTERS.USER_WORKOUTS]:e=>e.user_workouts,[Te.GETTERS.WORKOUT_DATA]:e=>e.workoutData,[Te.GETTERS.WORKOUTS_PAGINATION]:e=>e.pagination},dIe={[Te.MUTATIONS.ADD_TIMELINE_WORKOUTS](e,t){e.timeline_workouts=e.timeline_workouts.concat(t)},[Te.MUTATIONS.SET_CALENDAR_WORKOUTS](e,t){e.calendar_workouts=t},[Te.MUTATIONS.SET_TIMELINE_WORKOUTS](e,t){e.timeline_workouts=t},[Te.MUTATIONS.SET_USER_WORKOUTS](e,t){e.user_workouts=t},[Te.MUTATIONS.SET_WORKOUTS_PAGINATION](e,t){e.pagination=t},[Te.MUTATIONS.SET_WORKOUT](e,t){e.workoutData.workout=t},[Te.MUTATIONS.SET_WORKOUT_CHART_DATA](e,t){e.workoutData.chartData=t},[Te.MUTATIONS.SET_WORKOUT_GPX](e,t){e.workoutData.gpx=t},[Te.MUTATIONS.SET_WORKOUT_LOADING](e,t){e.workoutData.loading=t},[Te.MUTATIONS.EMPTY_CALENDAR_WORKOUTS](e){e.calendar_workouts=[]},[Te.MUTATIONS.EMPTY_WORKOUTS](e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]},[Te.MUTATIONS.EMPTY_WORKOUT](e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}}},fIe={calendar_workouts:[],timeline_workouts:[],pagination:{},user_workouts:[],workoutData:{gpx:"",loading:!1,workout:{},chartData:[]}},pIe={state:fIe,actions:cIe,getters:lIe,mutations:dIe},mIe={authUserModule:xOe,oAuthModule:BOe,sportsModule:JOe,statsModule:aIe,usersModule:uIe,workoutsModule:pIe},EIe={state:YOe,actions:jOe,getters:VOe,mutations:KOe,modules:mIe},eo=dN(EIe),g0=N1.create({baseURL:wo()});g0.interceptors.request.use(e=>{const t=new AbortController;e.signal=t.signal;const n=fs(e);Js.set(n,t);const r=eo.getters[Y.GETTERS.AUTH_TOKEN];if(r){const a=`Bearer ${r}`;e.headers&&e.headers.Authorization!==a&&(e.headers.Authorization=`Bearer ${r}`)}return e},e=>Promise.reject(e));g0.interceptors.response.use(e=>(fs(e.config),e),e=>(e.message!=="canceled"&&e.response&&fs(e.response.config),Promise.reject(e)));const Be=g0,Hd=(e,t)=>e.push.apply(e,t),ps=e=>e.sort((t,n)=>t.i-n.i||t.j-n.j),nh=e=>{const t={};let n=1;return e.forEach(r=>{t[r]=n,n+=1}),t};var hIe={4:[[1,2],[2,3]],5:[[1,3],[2,3],[2,4]],6:[[1,2],[2,4],[4,5]],7:[[1,3],[2,3],[4,5],[4,6]],8:[[2,4],[4,6]]};const rh=2050,ah=1e3,_Ie=hIe,TIe=10,gIe=1e4,NA=10,CA=50,yA=20,DA=/^[A-Z\xbf-\xdf][^A-Z\xbf-\xdf]+$/,AIe=/^[^A-Z\xbf-\xdf]+[A-Z\xbf-\xdf]$/,SIe=/^[A-Z\xbf-\xdf]+$/,PA=/^[^a-z\xdf-\xff]+$/,OIe=/^[a-z\xdf-\xff]+$/,IIe=/^[^A-Z\xbf-\xdf]+$/,vIe=/[a-z\xdf-\xff]/,RIe=/[A-Z\xbf-\xdf]/,bIe=/[^A-Za-z\xbf-\xdf]/gi,NIe=/^\d+$/,A0=new Date().getFullYear(),CIe={recentYear:/19\d\d|200\d|201\d|202\d/g},wA=[" ",",",";",":","|","/","\\","_",".","-"],yIe=wA.length;class DIe{match({password:t}){const n=[...this.getMatchesWithoutSeparator(t),...this.getMatchesWithSeparator(t)],r=this.filterNoise(n);return ps(r)}getMatchesWithSeparator(t){const n=[],r=/^(\d{1,4})([\s/\\_.-])(\d{1,2})\2(\d{1,4})$/;for(let a=0;a<=Math.abs(t.length-6);a+=1)for(let s=a+5;s<=a+9&&!(s>=t.length);s+=1){const o=t.slice(a,+s+1||9e9),i=r.exec(o);if(i!=null){const u=this.mapIntegersToDayMonthYear([parseInt(i[1],10),parseInt(i[3],10),parseInt(i[4],10)]);u!=null&&n.push({pattern:"date",token:o,i:a,j:s,separator:i[2],year:u.year,month:u.month,day:u.day})}}return n}getMatchesWithoutSeparator(t){const n=[],r=/^\d{4,8}$/,a=s=>Math.abs(s.year-A0);for(let s=0;s<=Math.abs(t.length-4);s+=1)for(let o=s+3;o<=s+7&&!(o>=t.length);o+=1){const i=t.slice(s,+o+1||9e9);if(r.exec(i)){const u=[],c=i.length;if(_Ie[c].forEach(([f,d])=>{const m=this.mapIntegersToDayMonthYear([parseInt(i.slice(0,f),10),parseInt(i.slice(f,d),10),parseInt(i.slice(d),10)]);m!=null&&u.push(m)}),u.length>0){let f=u[0],d=a(u[0]);u.slice(1).forEach(m=>{const E=a(m);E{let r=!1;const a=t.length;for(let s=0;s=n.j){r=!0;break}}return!r})}mapIntegersToDayMonthYear(t){if(t[1]>31||t[1]<=0)return null;let n=0,r=0,a=0;for(let s=0,o=t.length;s99&&irh)return null;i>31&&(r+=1),i>12&&(n+=1),i<=0&&(a+=1)}return r>=2||n===3||a>=2?null:this.getDayMonth(t)}getDayMonth(t){const n=[[t[2],t.slice(0,2)],[t[0],t.slice(1,3)]],r=n.length;for(let a=0;a=1&&s<=31&&o>=1&&o<=12)return{day:s,month:o}}return null}twoToFourDigitYear(t){return t>99?t:t>50?t+1900:t+2e3}}const lr=new Uint32Array(65536),PIe=(e,t)=>{const n=e.length,r=t.length,a=1<{const n=t.length,r=e.length,a=[],s=[],o=Math.ceil(n/32),i=Math.ceil(r/32);for(let E=0;E>>R&1,C=a[R/32|0]>>>R&1,w=v|E,k=((v|C)&g)+g^g|v|C;let L=E|~(k|g),z=g&k;L>>>31^A&&(s[R/32|0]^=1<>>31^C&&(a[R/32|0]^=1<>>E&1,I=a[E/32|0]>>>E&1,R=g|c,v=((g|I)&l)+l^l|g|I;let A=c|~(v|l),C=l&v;m+=A>>>r-1&1,m-=C>>>r-1&1,A>>>31^b&&(s[E/32|0]^=1<>>31^I&&(a[E/32|0]^=1<{if(e.length{const r=e.length<=t.length,a=e.length<=n;return r||a?Math.ceil(e.length/4):n},kIe=(e,t,n)=>{let r=0;const a=Object.keys(t).find(s=>{const o=$Ie(e,s,n);if(Math.abs(e.length-s.length)>o)return!1;const i=LIe(e,s),u=i<=o;return u&&(r=i),u});return a?{levenshteinDistance:r,levenshteinDistanceEntry:a}:{}};var sh={a:["4","@"],b:["8"],c:["(","{","[","<"],d:["6","|)"],e:["3"],f:["#"],g:["6","9","&"],h:["#","|-|"],i:["1","!","|"],k:["<","|<"],l:["!","1","|","7"],m:["^^","nn","2n","/\\\\/\\\\"],n:["//"],o:["0","()"],q:["9"],u:["|_|"],s:["$","5"],t:["+","7"],v:["<",">","/"],w:["^/","uu","vv","2u","2v","\\\\/\\\\/"],x:["%","><"],z:["2"]},_l={warnings:{straightRow:"straightRow",keyPattern:"keyPattern",simpleRepeat:"simpleRepeat",extendedRepeat:"extendedRepeat",sequences:"sequences",recentYears:"recentYears",dates:"dates",topTen:"topTen",topHundred:"topHundred",common:"common",similarToCommon:"similarToCommon",wordByItself:"wordByItself",namesByThemselves:"namesByThemselves",commonNames:"commonNames",userInputs:"userInputs",pwned:"pwned"},suggestions:{l33t:"l33t",reverseWords:"reverseWords",allUppercase:"allUppercase",capitalization:"capitalization",dates:"dates",recentYears:"recentYears",associatedYears:"associatedYears",sequences:"sequences",repeated:"repeated",longerKeyboardPattern:"longerKeyboardPattern",anotherWord:"anotherWord",useWords:"useWords",noNeed:"noNeed",pwned:"pwned"},timeEstimation:{ltSecond:"ltSecond",second:"second",seconds:"seconds",minute:"minute",minutes:"minutes",hour:"hour",hours:"hours",day:"day",days:"days",month:"month",months:"months",year:"year",years:"years",centuries:"centuries"}};class Ro{constructor(t=[]){this.parents=t,this.children=new Map}addSub(t,...n){const r=t.charAt(0);this.children.has(r)||this.children.set(r,new Ro([...this.parents,r]));let a=this.children.get(r);for(let s=1;s(Object.entries(e).forEach(([n,r])=>{r.forEach(a=>{t.addSub(a,n)})}),t);class UIe{constructor(){this.matchers={},this.l33tTable=sh,this.trieNodeRoot=oh(sh,new Ro),this.dictionary={userInputs:[]},this.rankedDictionaries={},this.rankedDictionariesMaxWordSize={},this.translations=_l,this.graphs={},this.useLevenshteinDistance=!1,this.levenshteinThreshold=2,this.l33tMaxSubstitutions=100,this.maxLength=256,this.setRankedDictionaries()}setOptions(t={}){t.l33tTable&&(this.l33tTable=t.l33tTable,this.trieNodeRoot=oh(t.l33tTable,new Ro)),t.dictionary&&(this.dictionary=t.dictionary,this.setRankedDictionaries()),t.translations&&this.setTranslations(t.translations),t.graphs&&(this.graphs=t.graphs),t.useLevenshteinDistance!==void 0&&(this.useLevenshteinDistance=t.useLevenshteinDistance),t.levenshteinThreshold!==void 0&&(this.levenshteinThreshold=t.levenshteinThreshold),t.l33tMaxSubstitutions!==void 0&&(this.l33tMaxSubstitutions=t.l33tMaxSubstitutions),t.maxLength!==void 0&&(this.maxLength=t.maxLength)}setTranslations(t){if(this.checkCustomTranslations(t))this.translations=t;else throw new Error("Invalid translations object fallback to keys")}checkCustomTranslations(t){let n=!0;return Object.keys(_l).forEach(r=>{if(r in t){const a=r;Object.keys(_l[a]).forEach(s=>{s in t[a]||(n=!1)})}else n=!1}),n}setRankedDictionaries(){const t={},n={};Object.keys(this.dictionary).forEach(r=>{t[r]=nh(this.dictionary[r]),n[r]=this.getRankedDictionariesMaxWordSize(this.dictionary[r])}),this.rankedDictionaries=t,this.rankedDictionariesMaxWordSize=n}getRankedDictionariesMaxWordSize(t){const n=t.map(r=>typeof r!="string"?r.toString().length:r.length);return n.length===0?0:n.reduce((r,a)=>Math.max(r,a),-1/0)}buildSanitizedRankedDictionary(t){const n=[];return t.forEach(r=>{const a=typeof r;(a==="string"||a==="number"||a==="boolean")&&n.push(r.toString().toLowerCase())}),nh(n)}extendUserInputsDictionary(t){this.dictionary.userInputs||(this.dictionary.userInputs=[]);const n=[...this.dictionary.userInputs,...t];this.rankedDictionaries.userInputs=this.buildSanitizedRankedDictionary(n),this.rankedDictionariesMaxWordSize.userInputs=this.getRankedDictionariesMaxWordSize(n)}addMatcher(t,n){this.matchers[t]?console.info(`Matcher ${t} already exists`):this.matchers[t]=n}}const Re=new UIe;class MIe{constructor(t){this.defaultMatch=t}match({password:t}){const n=t.split("").reverse().join("");return this.defaultMatch({password:n}).map(r=>({...r,token:r.token.split("").reverse().join(""),reversed:!0,i:t.length-1-r.j,j:t.length-1-r.i}))}}class xIe{constructor({substr:t,limit:n,trieRoot:r}){this.buffer=[],this.finalPasswords=[],this.substr=t,this.limit=n,this.trieRoot=r}getAllPossibleSubsAtIndex(t){const n=[];let r=this.trieRoot;for(let a=t;a=this.limit)return;if(r===this.substr.length){t===n&&this.finalPasswords.push({password:this.buffer.join(""),changes:s});return}const u=[...this.getAllPossibleSubsAtIndex(r)];let c=!1;for(let l=r+u.length-1;l>=r;l-=1){const f=u[l-r];if(f.isTerminal()){if(o===f.parents.join("")&&i>=3)continue;c=!0;const d=f.subs;for(const m of d){this.buffer.push(m);const E=s.concat({i:a,letter:m,substitution:f.parents.join("")});if(this.helper({onlyFullSub:t,isFullSub:n,index:l+1,subIndex:a+m.length,changes:E,lastSubLetter:f.parents.join(""),consecutiveSubCount:o===f.parents.join("")?i+1:1}),this.buffer.pop(),this.finalPasswords.length>=this.limit)return}}}if(!t||!c){const l=this.substr.charAt(r);this.buffer.push(l),this.helper({onlyFullSub:t,isFullSub:n&&!c,index:r+1,subIndex:a+1,changes:s,lastSubLetter:o,consecutiveSubCount:i}),this.buffer.pop()}}getAll(){return this.helper({onlyFullSub:!0,isFullSub:!0,index:0,subIndex:0,changes:[],lastSubLetter:void 0,consecutiveSubCount:0}),this.helper({onlyFullSub:!1,isFullSub:!0,index:0,subIndex:0,changes:[],lastSubLetter:void 0,consecutiveSubCount:0}),this.finalPasswords}}const FIe=(e,t,n)=>new xIe({substr:e,limit:t,trieRoot:n}).getAll(),WIe=(e,t,n)=>{const a=e.changes.filter(c=>c.ic-l.letter.length+l.substitution.length,t),s=e.changes.filter(c=>c.i>=t&&c.i<=n),o=s.reduce((c,l)=>c-l.letter.length+l.substitution.length,n-t+a),i=[],u=[];return s.forEach(c=>{i.findIndex(f=>f.letter===c.letter&&f.substitution===c.substitution)<0&&(i.push({letter:c.letter,substitution:c.substitution}),u.push(`${c.substitution} -> ${c.letter}`))}),{i:a,j:o,subs:i,subDisplay:u.join(", ")}};class GIe{constructor(t){this.defaultMatch=t}isAlreadyIncluded(t,n){return t.some(r=>Object.entries(r).every(([a,s])=>a==="subs"||s===n[a]))}match({password:t}){const n=[],r=FIe(t,Re.l33tMaxSubstitutions,Re.trieNodeRoot);let a=!1,s=!0;return r.forEach(o=>{if(a)return;const i=this.defaultMatch({password:o.password,useLevenshtein:s});s=!1,i.forEach(u=>{a||(a=u.i===0&&u.j===t.length-1);const c=WIe(o,u.i,u.j),l=t.slice(c.i,+c.j+1||9e9),f={...u,l33t:!0,token:l,...c},d=this.isAlreadyIncluded(n,f);l.toLowerCase()!==u.matchedWord&&!d&&n.push(f)})}),n.filter(o=>o.token.length>1)}}class zIe{constructor(){this.l33t=new GIe(this.defaultMatch),this.reverse=new MIe(this.defaultMatch)}match({password:t}){const n=[...this.defaultMatch({password:t}),...this.reverse.match({password:t}),...this.l33t.match({password:t})];return ps(n)}defaultMatch({password:t,useLevenshtein:n=!0}){const r=[],a=t.length,s=t.toLowerCase();return Object.keys(Re.rankedDictionaries).forEach(o=>{const i=Re.rankedDictionaries[o],u=Re.rankedDictionariesMaxWordSize[o],c=Math.min(u,a);for(let l=0;l{const s=n[a];s.lastIndex=0;let o;for(;o=s.exec(t);)if(o){const i=o[0];r.push({pattern:"regex",token:i,i:o.index,j:o.index+o[0].length-1,regexName:a,regexMatch:o})}}),ps(r)}}var Oa={nCk(e,t){let n=e;if(t>n)return 0;if(t===0)return 1;let r=1;for(let a=1;a<=t;a+=1)r*=n,r/=a,n-=1;return r},log10(e){return e===0?0:Math.log(e)/Math.log(10)},log2(e){return Math.log(e)/Math.log(2)},factorial(e){let t=1;for(let n=2;n<=e;n+=1)t*=n;return t}},HIe=({token:e})=>{let t=TIe**e.length;t===Number.POSITIVE_INFINITY&&(t=Number.MAX_VALUE);let n;return e.length===1?n=NA+1:n=CA+1,Math.max(t,n)},jIe=({year:e,separator:t})=>{let r=Math.max(Math.abs(e-A0),yA)*365;return t&&(r*=4),r};const VIe=e=>{const t=e.split(""),n=t.filter(o=>o.match(RIe)).length,r=t.filter(o=>o.match(vIe)).length;let a=0;const s=Math.min(n,r);for(let o=1;o<=s;o+=1)a+=Oa.nCk(n+r,o);return a};var KIe=e=>{const t=e.replace(bIe,"");if(t.match(IIe)||t.toLowerCase()===t)return 1;const n=[DA,AIe,PA],r=n.length;for(let a=0;a{let n=0,r=e.indexOf(t);for(;r>=0;)n+=1,r=e.indexOf(t,r+t.length);return n},YIe=({sub:e,token:t})=>{const n=t.toLowerCase(),r=ih(n,e.substitution),a=ih(n,e.letter);return{subbedCount:r,unsubbedCount:a}};var qIe=({l33t:e,subs:t,token:n})=>{if(!e)return 1;let r=1;return t.forEach(a=>{const{subbedCount:s,unsubbedCount:o}=YIe({sub:a,token:n});if(s===0||o===0)r*=2;else{const i=Math.min(o,s);let u=0;for(let c=1;c<=i;c+=1)u+=Oa.nCk(o+s,c);r*=u}}),r},XIe=({rank:e,reversed:t,l33t:n,subs:r,token:a,dictionaryName:s})=>{const o=e,i=KIe(a),u=qIe({l33t:n,subs:r,token:a}),c=t&&2||1;let l;return s==="diceware"?l=6**5/2:l=o*i*u*c,{baseGuesses:o,uppercaseVariations:i,l33tVariations:u,calculation:l}},ZIe=({regexName:e,regexMatch:t,token:n})=>{const r={alphaLower:26,alphaUpper:26,alpha:52,alphanumeric:62,digits:10,symbols:33};if(e in r)return r[e]**n.length;switch(e){case"recentYear":return Math.max(Math.abs(parseInt(t[0],10)-A0),yA)}return 0},QIe=({baseGuesses:e,repeatCount:t})=>e*t,JIe=({token:e,ascending:t})=>{const n=e.charAt(0);let r=0;return["a","A","z","Z","0","1","9"].includes(n)?r=4:n.match(/\d/)?r=10:r=26,t||(r*=2),r*e.length};const eve=e=>{let t=0;return Object.keys(e).forEach(n=>{const r=e[n];t+=r.filter(a=>!!a).length}),t/=Object.entries(e).length,t},tve=({token:e,graph:t,turns:n})=>{const r=Object.keys(Re.graphs[t]).length,a=eve(Re.graphs[t]);let s=0;const o=e.length;for(let i=2;i<=o;i+=1){const u=Math.min(n,i-1);for(let c=1;c<=u;c+=1)s+=Oa.nCk(i-1,c-1)*r*a**c}return s};var nve=({graph:e,token:t,shiftedCount:n,turns:r})=>{let a=tve({token:t,graph:e,turns:r});if(n){const s=t.length-n;if(n===0||s===0)a*=2;else{let o=0;for(let i=1;i<=Math.min(n,s);i+=1)o+=Oa.nCk(n+s,i);a*=o}}return Math.round(a)},rve=()=>yIe;const ave=(e,t)=>{let n=1;return e.token.lengthuh[e]?uh[e](t):Re.matchers[e]&&"scoring"in Re.matchers[e]?Re.matchers[e].scoring(t):0;var ove=(e,t)=>{const n={};if("guesses"in e&&e.guesses!=null)return e;const r=ave(e,t),a=sve(e.pattern,e);let s=0;typeof a=="number"?s=a:e.pattern==="dictionary"&&(s=a.calculation,n.baseGuesses=a.baseGuesses,n.uppercaseVariations=a.uppercaseVariations,n.l33tVariations=a.l33tVariations);const o=Math.max(s,r);return{...e,...n,guesses:o,guessesLog10:Oa.log10(o)}};const pn={password:"",optimal:{},excludeAdditive:!1,separatorRegex:void 0,fillArray(e,t){const n=[];for(let r=0;r1&&(a*=this.optimal.pi[r.i-1][t-1]);let s=Oa.factorial(t)*a;this.excludeAdditive||(s+=gIe**(t-1));let o=!1;Object.keys(this.optimal.g[n]).forEach(i=>{const u=this.optimal.g[n][i];parseInt(i,10)<=t&&u<=s&&(o=!0)}),o||(this.optimal.g[n][t]=s,this.optimal.m[n][t]=r,this.optimal.pi[n][t]=a)},bruteforceUpdate(e){let t=this.makeBruteforceMatch(0,e);this.update(t,1);for(let n=1;n<=e;n+=1){t=this.makeBruteforceMatch(n,e);const r=this.optimal.m[n-1];Object.keys(r).forEach(a=>{r[a].pattern!=="bruteforce"&&this.update(t,parseInt(a,10)+1)})}},unwind(e){const t=[];let n=e-1,r=0,a=1/0;const s=this.optimal.g[n];for(s&&Object.keys(s).forEach(o=>{const i=s[o];i=0;){const o=this.optimal.m[n][r];t.unshift(o),n=o.i-1,r-=1}return t}};var jd={mostGuessableMatchSequence(e,t,n=!1){pn.password=e,pn.excludeAdditive=n;const r=e.length;let a=pn.fillArray(r,"array");t.forEach(u=>{a[u.j].push(u)}),a=a.map(u=>u.sort((c,l)=>c.i-l.i)),pn.optimal={m:pn.fillArray(r,"object"),pi:pn.fillArray(r,"object"),g:pn.fillArray(r,"object")};for(let u=0;u{c.i>0?Object.keys(pn.optimal.m[c.i-1]).forEach(l=>{pn.update(c,parseInt(l,10)+1)}):pn.update(c,1)}),pn.bruteforceUpdate(u);const s=pn.unwind(r),o=s.length,i=this.getGuesses(e,o);return{password:e,guesses:i,guessesLog10:Oa.log10(i),sequence:s}},getGuesses(e,t){const n=e.length;let r=0;return e.length===0?r=1:r=pn.optimal.g[n-1][t],r}};class ive{match({password:t,omniMatch:n}){const r=[];let a=0;for(;ao instanceof Promise)?Promise.all(r):r}normalizeMatch(t,n,r,a){const s={pattern:"repeat",i:r.index,j:n,token:r[0],baseToken:t,baseGuesses:0,repeatCount:r[0].length/t.length};return a instanceof Promise?a.then(o=>({...s,baseGuesses:o})):{...s,baseGuesses:a}}getGreedyMatch(t,n){const r=/(.+)\1+/g;return r.lastIndex=n,r.exec(t)}getLazyMatch(t,n){const r=/(.+?)\1+/g;return r.lastIndex=n,r.exec(t)}setMatchToken(t,n){const r=/^(.+?)\1+$/;let a,s="";if(n&&t[0].length>n[0].length){a=t;const o=r.exec(a[0]);o&&(s=o[1])}else a=n,a&&(s=a[1]);return{match:a,baseToken:s}}getBaseGuesses(t,n){const r=n.match(t);return r instanceof Promise?r.then(s=>jd.mostGuessableMatchSequence(t,s).guesses):jd.mostGuessableMatchSequence(t,r).guesses}}class uve{constructor(){this.MAX_DELTA=5}match({password:t}){const n=[];if(t.length===1)return[];let r=0,a=null;const s=t.length;for(let o=1;o1||Math.abs(r)===1){const o=Math.abs(r);if(o>0&&o<=this.MAX_DELTA){const i=a.slice(t,+n+1||9e9),{sequenceName:u,sequenceSpace:c}=this.getSequence(i);return s.push({pattern:"sequence",i:t,j:n,token:a.slice(t,+n+1||9e9),sequenceName:u,sequenceSpace:c,ascending:r>0})}}return null}getSequence(t){let n="unicode",r=26;return OIe.test(t)?(n="lower",r=26):SIe.test(t)?(n="upper",r=26):NIe.test(t)&&(n="digits",r=10),{sequenceName:n,sequenceSpace:r}}}class cve{constructor(){this.SHIFTED_RX=/[~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>?]/}match({password:t}){const n=[];return Object.keys(Re.graphs).forEach(r=>{const a=Re.graphs[r];Hd(n,this.helper(t,a,r))}),ps(n)}checkIfShifted(t,n,r){return!t.includes("keypad")&&this.SHIFTED_RX.test(n.charAt(r))?1:0}helper(t,n,r){let a;const s=[];let o=0;const i=t.length;for(;o2&&s.push({pattern:"spatial",i:o,j:u-1,token:t.slice(o,u),graph:r,turns:l,shiftedCount:a}),o=u;break}}}return s}}const lve=new RegExp(`[${wA.join("")}]`);class zu{static getMostUsedSeparatorChar(t){const n=[...t.split("").filter(a=>lve.test(a)).reduce((a,s)=>{const o=a.get(s);return o?a.set(s,o+1):a.set(s,1),a},new Map).entries()].sort(([a,s],[o,i])=>i-s);if(!n.length)return;const r=n[0];if(!(r[1]<2))return r[0]}static getSeparatorRegex(t){return new RegExp(`([^${t} +`)});const i=t.nonTextTags||["script","style","textarea","option"];let u,c;t.allowedAttributes&&(u={},c={},Ws(t.allowedAttributes,function(P,B){u[B]=[];const V=[];P.forEach(function(se){typeof se=="string"&&se.indexOf("*")>=0?V.push(WE(se).replace(/\\\*/g,".*")):u[B].push(se)}),V.length&&(c[B]=new RegExp("^("+V.join("|")+")$"))}));const l={},f={},d={};Ws(t.allowedClasses,function(P,B){if(u&&(ur(u,B)||(u[B]=[]),u[B].push("class")),l[B]=P,Array.isArray(P)){const V=[];l[B]=[],d[B]=[],P.forEach(function(se){typeof se=="string"&&se.indexOf("*")>=0?V.push(WE(se).replace(/\\\*/g,".*")):se instanceof RegExp?d[B].push(se):l[B].push(se)}),V.length&&(f[B]=new RegExp("^("+V.join("|")+")$"))}});const m={};let E;Ws(t.transformTags,function(P,B){let V;typeof P=="function"?V=P:typeof P=="string"&&(V=Io.simpleTransform(P)),B==="*"?E=V:m[B]=V});let g,b,I,R,v,A,C=!1;k();const w=new JTe.Parser({onopentag:function(P,B){if(t.enforceHtmlBoundary&&P==="html"&&k(),v){A++;return}const V=new s(P,B);b.push(V);let se=!1;const Pe=!!V.text;let We;if(ur(m,P)&&(We=m[P](P,B),V.attribs=B=We.attribs,We.text!==void 0&&(V.innerText=We.text),P!==We.tagName&&(V.name=P=We.tagName,R[g]=We.tagName)),E&&(We=E(P,B),V.attribs=B=We.attribs,P!==We.tagName&&(V.name=P=We.tagName,R[g]=We.tagName)),(!o(P)||t.disallowedTagsMode==="recursiveEscape"&&!sge(I)||t.nestingLimit!=null&&g>=t.nestingLimit)&&(se=!0,I[g]=!0,t.disallowedTagsMode==="discard"&&i.indexOf(P)!==-1&&(v=!0,A=1),I[g]=!0),g++,se){if(t.disallowedTagsMode==="discard")return;a=r,r=""}r+="<"+P,P==="script"&&(t.allowedScriptHostnames||t.allowedScriptDomains)&&(V.innerText=""),(!u||ur(u,P)||u["*"])&&Ws(B,function(Ae,ye){if(!uge.test(ye)){delete V.attribs[ye];return}if(Ae===""&&(t.nonBooleanAttributes.includes(ye)||t.nonBooleanAttributes.includes("*"))){delete V.attribs[ye];return}let Wt=!1;if(!u||ur(u,P)&&u[P].indexOf(ye)!==-1||u["*"]&&u["*"].indexOf(ye)!==-1||ur(c,P)&&c[P].test(ye)||c["*"]&&c["*"].test(ye))Wt=!0;else if(u&&u[P]){for(const ke of u[P])if(ege(ke)&&ke.name&&ke.name===ye){Wt=!0;let ze="";if(ke.multiple===!0){const rt=Ae.split(" ");for(const X of rt)ke.values.indexOf(X)!==-1&&(ze===""?ze=X:ze+=" "+X)}else ke.values.indexOf(Ae)>=0&&(ze=Ae);Ae=ze}}if(Wt){if(t.allowedSchemesAppliedToAttributes.indexOf(ye)!==-1&&z(P,Ae)){delete V.attribs[ye];return}if(P==="script"&&ye==="src"){let ke=!0;try{const ze=F(Ae);if(t.allowedScriptHostnames||t.allowedScriptDomains){const rt=(t.allowedScriptHostnames||[]).find(function(pe){return pe===ze.url.hostname}),X=(t.allowedScriptDomains||[]).find(function(pe){return ze.url.hostname===pe||ze.url.hostname.endsWith(`.${pe}`)});ke=rt||X}}catch{ke=!1}if(!ke){delete V.attribs[ye];return}}if(P==="iframe"&&ye==="src"){let ke=!0;try{const ze=F(Ae);if(ze.isRelativeUrl)ke=ur(t,"allowIframeRelativeUrls")?t.allowIframeRelativeUrls:!t.allowedIframeHostnames&&!t.allowedIframeDomains;else if(t.allowedIframeHostnames||t.allowedIframeDomains){const rt=(t.allowedIframeHostnames||[]).find(function(pe){return pe===ze.url.hostname}),X=(t.allowedIframeDomains||[]).find(function(pe){return ze.url.hostname===pe||ze.url.hostname.endsWith(`.${pe}`)});ke=rt||X}}catch{ke=!1}if(!ke){delete V.attribs[ye];return}}if(ye==="srcset")try{let ke=tge(Ae);if(ke.forEach(function(ze){z("srcset",ze.url)&&(ze.evil=!0)}),ke=zE(ke,function(ze){return!ze.evil}),ke.length)Ae=oge(zE(ke,function(ze){return!ze.evil})),V.attribs[ye]=Ae;else{delete V.attribs[ye];return}}catch{delete V.attribs[ye];return}if(ye==="class"){const ke=l[P],ze=l["*"],rt=f[P],X=d[P],pe=f["*"],le=[rt,pe].concat(X).filter(function(Se){return Se});if(ke&&ze?Ae=re(Ae,GE(ke,ze),le):Ae=re(Ae,ke||ze,le),!Ae.length){delete V.attribs[ye];return}}if(ye==="style"){if(t.parseStyleAttributes)try{const ke=nge(P+" {"+Ae+"}"),ze=U(ke,t.allowedStyles);if(Ae=Z(ze),Ae.length===0){delete V.attribs[ye];return}}catch{typeof window<"u"&&console.warn('Failed to parse "'+P+" {"+Ae+`}", If you're running this in a browser, we recommend to disable style parsing: options.parseStyleAttributes: false, since this only works in a node environment due to a postcss dependency, More info: https://github.com/apostrophecms/sanitize-html/issues/547`),delete V.attribs[ye];return}else if(t.allowedStyles)throw new Error("allowedStyles option cannot be used together with parseStyleAttributes: false.")}r+=" "+ye,Ae&&Ae.length&&(r+='="'+L(Ae,!0)+'"')}else delete V.attribs[ye]}),t.selfClosing.indexOf(P)!==-1?r+=" />":(r+=">",V.innerText&&!Pe&&!t.textFilter&&(r+=L(V.innerText),C=!0)),se&&(r=a+L(r),a="")},ontext:function(P){if(v)return;const B=b[b.length-1];let V;if(B&&(V=B.tag,P=B.innerText!==void 0?B.innerText:P),t.disallowedTagsMode==="discard"&&(V==="script"||V==="style"))r+=P;else{const se=L(P,!1);t.textFilter&&!C?r+=t.textFilter(se,V):C||(r+=se)}if(b.length){const se=b[b.length-1];se.text+=P}},onclosetag:function(P,B){if(v)if(A--,!A)v=!1;else return;const V=b.pop();if(!V)return;if(V.tag!==P){b.push(V);return}v=t.enforceHtmlBoundary?P==="html":!1,g--;const se=I[g];if(se){if(delete I[g],t.disallowedTagsMode==="discard"){V.updateParentNodeText();return}a=r,r=""}if(R[g]&&(P=R[g],delete R[g]),t.exclusiveFilter&&t.exclusiveFilter(V)){r=r.substr(0,V.tagPosition);return}if(V.updateParentNodeMediaChildren(),V.updateParentNodeText(),t.selfClosing.indexOf(P)!==-1||B&&!o(P)&&["escape","recursiveEscape"].indexOf(t.disallowedTagsMode)>=0){se&&(r=a,a="");return}r+="",se&&(r=a+L(r),a=""),C=!1}},t.parser);return w.write(e),w.end(),r;function k(){r="",g=0,b=[],I={},R={},v=!1,A=0}function L(P,B){return typeof P!="string"&&(P=P+""),t.parser.decodeEntities&&(P=P.replace(/&/g,"&").replace(//g,">"),B&&(P=P.replace(/"/g,"""))),P=P.replace(/&(?![a-zA-Z0-9#]{1,20};)/g,"&").replace(//g,">"),B&&(P=P.replace(/"/g,""")),P}function z(P,B){for(B=B.replace(/[\x00-\x20]+/g,"");;){const Pe=B.indexOf("",Pe+4);if(We===-1)break;B=B.substring(0,Pe)+B.substring(We+3)}const V=B.match(/^([a-zA-Z][a-zA-Z0-9.\-+]*):/);if(!V)return B.match(/^[/\\]{2}/)?!t.allowProtocolRelative:!1;const se=V[1].toLowerCase();return ur(t.allowedSchemesByTag,P)?t.allowedSchemesByTag[P].indexOf(se)===-1:!t.allowedSchemes||t.allowedSchemes.indexOf(se)===-1}function F(P){if(P=P.replace(/^(\w+:)?\s*[\\/]\s*[\\/]/,"$1//"),P.startsWith("relative:"))throw new Error("relative: exploit attempt");let B="relative://relative-site";for(let Pe=0;Pe<100;Pe++)B+=`/${Pe}`;const V=new URL(P,B);return{isRelativeUrl:V&&V.hostname==="relative-site"&&V.protocol==="relative:",url:V}}function U(P,B){if(!B)return P;const V=P.nodes[0];let se;return B[V.selector]&&B["*"]?se=GE(B[V.selector],B["*"]):se=B[V.selector]||B["*"],se&&(P.nodes[0].nodes=V.nodes.reduce(ee(se),[])),P}function Z(P){return P.nodes[0].nodes.reduce(function(B,V){return B.push(`${V.prop}:${V.value}${V.important?" !important":""}`),B},[]).join(";")}function ee(P){return function(B,V){return ur(P,V.prop)&&P[V.prop].some(function(Pe){return Pe.test(V.value)})&&B.push(V),B}}function re(P,B,V){return B?(P=P.split(/\s+/),P.filter(function(se){return B.indexOf(se)!==-1||V.some(function(Pe){return Pe.test(se)})}).join(" ")):P}}const cge={decodeEntities:!0};Io.defaults={allowedTags:["address","article","aside","footer","header","h1","h2","h3","h4","h5","h6","hgroup","main","nav","section","blockquote","dd","div","dl","dt","figcaption","figure","hr","li","main","ol","p","pre","ul","a","abbr","b","bdi","bdo","br","cite","code","data","dfn","em","i","kbd","mark","q","rb","rp","rt","rtc","ruby","s","samp","small","span","strong","sub","sup","time","u","var","wbr","caption","col","colgroup","table","tbody","td","tfoot","th","thead","tr"],nonBooleanAttributes:["abbr","accept","accept-charset","accesskey","action","allow","alt","as","autocapitalize","autocomplete","blocking","charset","cite","class","color","cols","colspan","content","contenteditable","coords","crossorigin","data","datetime","decoding","dir","dirname","download","draggable","enctype","enterkeyhint","fetchpriority","for","form","formaction","formenctype","formmethod","formtarget","headers","height","hidden","high","href","hreflang","http-equiv","id","imagesizes","imagesrcset","inputmode","integrity","is","itemid","itemprop","itemref","itemtype","kind","label","lang","list","loading","low","max","maxlength","media","method","min","minlength","name","nonce","optimum","pattern","ping","placeholder","popover","popovertarget","popovertargetaction","poster","preload","referrerpolicy","rel","rows","rowspan","sandbox","scope","shape","size","sizes","slot","span","spellcheck","src","srcdoc","srclang","srcset","start","step","style","tabindex","target","title","translate","type","usemap","value","width","wrap","onauxclick","onafterprint","onbeforematch","onbeforeprint","onbeforeunload","onbeforetoggle","onblur","oncancel","oncanplay","oncanplaythrough","onchange","onclick","onclose","oncontextlost","oncontextmenu","oncontextrestored","oncopy","oncuechange","oncut","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","onformdata","onhashchange","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onlanguagechange","onload","onloadeddata","onloadedmetadata","onloadstart","onmessage","onmessageerror","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onoffline","ononline","onpagehide","onpageshow","onpaste","onpause","onplay","onplaying","onpopstate","onprogress","onratechange","onreset","onresize","onrejectionhandled","onscroll","onscrollend","onsecuritypolicyviolation","onseeked","onseeking","onselect","onslotchange","onstalled","onstorage","onsubmit","onsuspend","ontimeupdate","ontoggle","onunhandledrejection","onunload","onvolumechange","onwaiting","onwheel"],disallowedTagsMode:"discard",allowedAttributes:{a:["href","name","target"],img:["src","srcset","alt","title","width","height","loading"]},selfClosing:["img","br","hr","area","base","basefont","input","link","meta"],allowedSchemes:["http","https","ftp","mailto","tel"],allowedSchemesByTag:{},allowedSchemesAppliedToAttributes:["href","src","cite"],allowProtocolRelative:!0,enforceHtmlBoundary:!1,parseStyleAttributes:!0};Io.simpleTransform=function(e,t,n){return n=n===void 0?!0:n,t=t||{},function(r,a){let s;if(n)for(s in t)a[s]=t[s];else a=t;return{tagName:e,attribs:a}}};const lge=qd(ige),vo=e=>lge(Fhe(e,{target:"_blank"}),{allowedTags:["a"],disallowedTagsMode:"escape"}),dge=e=>(ut("data-v-a720b26e"),e=e(),ct(),e),fge={id:"admin-app",class:"admin-card"},pge={for:"admin_contact"},mge=["value"],Ege=["disabled"],hge={for:"max_users"},_ge=["disabled"],Tge={class:"user-limit-help"},gge={class:"info-box"},Age=dge(()=>p("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),Sge={for:"max_single_file_size"},Oge=["disabled"],Ige={for:"max_zip_file_size"},vge=["disabled"],Rge={for:"gpx_limit_import"},bge=["disabled"],Nge={class:"about-label",for:"about"},Cge={class:"textarea-description"},yge=["innerHTML"],Dge={class:"privacy-policy-label",for:"privacy_policy"},Pge={class:"textarea-description"},wge=["innerHTML"],Lge={key:5,class:"form-buttons"},$ge={class:"confirm",type:"submit"},kge={key:6,class:"form-buttons"},Uge=Q({__name:"AdminApplication",props:{appConfig:{},edition:{type:Boolean,default:!1}},setup(e){const t=e,{edition:n}=_e(t),r=$e(),a=Zr(),s=xt({admin_contact:"",max_users:0,max_single_file_size:0,max_zip_file_size:0,gpx_limit_import:0,about:"",privacy_policy:""}),o=$(()=>r.getters[H.GETTERS.ERROR_MESSAGES]);It(()=>{t.appConfig&&i(t.appConfig)});function i(l){Object.keys(s).map(f=>{["max_single_file_size","max_zip_file_size"].includes(f)?s[f]=uhe(l[f]):["about","privacy_policy"].includes(f)?s[f]=l[f]!==null?l[f]:"":s[f]=l[f]})}function u(){i(t.appConfig),r.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),a.push("/admin/application")}function c(){const l=Object.assign({},s);l.max_single_file_size*=1048576,l.max_zip_file_size*=1048576,r.dispatch(H.ACTIONS.UPDATE_APPLICATION_CONFIG,l)}return(l,f)=>{const d=ue("ErrorMessage"),m=ue("Card");return T(),N("div",fge,[M(m,null,{title:fe(()=>[K(_(l.$t("admin.APP_CONFIG.TITLE")),1)]),content:fe(()=>[p("form",{class:"admin-form",onSubmit:Xe(c,["prevent"])},[p("label",pge,[K(_(l.$t("admin.APP_CONFIG.ADMIN_CONTACT"))+": ",1),!h(n)&&!s.admin_contact?(T(),N("input",{key:0,class:"no-contact",value:l.$t("admin.APP_CONFIG.NO_CONTACT_EMAIL"),disabled:""},null,8,mge)):Ke((T(),N("input",{key:1,id:"admin_contact",name:"admin_contact",type:"email","onUpdate:modelValue":f[0]||(f[0]=E=>s.admin_contact=E),disabled:!h(n)},null,8,Ege)),[[tt,s.admin_contact]])]),p("label",hge,[K(_(l.$t("admin.APP_CONFIG.MAX_USERS_LABEL"))+": ",1),Ke(p("input",{id:"max_users",name:"max_users",type:"number",min:"0","onUpdate:modelValue":f[1]||(f[1]=E=>s.max_users=E),disabled:!h(n)},null,8,_ge),[[tt,s.max_users]])]),p("div",Tge,[p("span",gge,[Age,K(" "+_(l.$t("admin.APP_CONFIG.MAX_USERS_HELP")),1)])]),p("label",Sge,[K(_(l.$t("admin.APP_CONFIG.SINGLE_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Ke(p("input",{id:"max_single_file_size",name:"max_single_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":f[2]||(f[2]=E=>s.max_single_file_size=E),disabled:!h(n)},null,8,Oge),[[tt,s.max_single_file_size]])]),p("label",Ige,[K(_(l.$t("admin.APP_CONFIG.ZIP_UPLOAD_MAX_SIZE_LABEL"))+": ",1),Ke(p("input",{id:"max_zip_file_size",name:"max_zip_file_size",type:"number",step:"0.1",min:"0","onUpdate:modelValue":f[3]||(f[3]=E=>s.max_zip_file_size=E),disabled:!h(n)},null,8,vge),[[tt,s.max_zip_file_size]])]),p("label",Rge,[K(_(l.$t("admin.APP_CONFIG.MAX_FILES_IN_ZIP_LABEL"))+": ",1),Ke(p("input",{id:"gpx_limit_import",name:"gpx_limit_import",type:"number",min:"0","onUpdate:modelValue":f[4]||(f[4]=E=>s.gpx_limit_import=E),disabled:!h(n)},null,8,bge),[[tt,s.gpx_limit_import]])]),p("label",Nge,_(l.$t("admin.ABOUT.TEXT"))+": ",1),p("span",Cge,_(l.$t("admin.ABOUT.DESCRIPTION")),1),h(n)?Ke((T(),N("textarea",{key:0,id:"about",name:"about",rows:"10","onUpdate:modelValue":f[5]||(f[5]=E=>s.about=E)},null,512)),[[tt,s.about]]):(T(),N("div",{key:1,innerHTML:h(ma)(h(vo)(s.about?s.about:l.$t("admin.NO_TEXT_ENTERED"))),class:"textarea-content"},null,8,yge)),p("label",Dge,_(St(l.$t("privacy_policy.TITLE")))+": ",1),p("span",Pge,_(l.$t("admin.PRIVACY_POLICY_DESCRIPTION")),1),h(n)?Ke((T(),N("textarea",{key:2,id:"privacy_policy",name:"privacy_policy",rows:"20","onUpdate:modelValue":f[6]||(f[6]=E=>s.privacy_policy=E)},null,512)),[[tt,s.privacy_policy]]):(T(),N("div",{key:3,innerHTML:h(ma)(h(vo)(s.privacy_policy?s.privacy_policy:l.$t("admin.NO_TEXT_ENTERED"))),class:"textarea-content"},null,8,wge)),o.value?(T(),ne(d,{key:4,message:o.value},null,8,["message"])):W("",!0),h(n)?(T(),N("div",Lge,[p("button",$ge,_(l.$t("buttons.SUBMIT")),1),p("button",{class:"cancel",onClick:Xe(u,["prevent"])},_(l.$t("buttons.CANCEL")),1)])):(T(),N("div",kge,[p("button",{class:"confirm",onClick:f[7]||(f[7]=Xe(E=>l.$router.push("/admin/application/edit"),["prevent"]))},_(l.$t("buttons.EDIT")),1),p("button",{class:"cancel",onClick:f[8]||(f[8]=Xe(E=>l.$router.push("/admin"),["prevent"]))},_(l.$t("admin.BACK_TO_ADMIN")),1)]))],32)]),_:1})])}}}),BE=ae(Uge,[["__scopeId","data-v-a720b26e"]]),Mge={class:"stat-card"},xge={class:"stat-content box"},Fge={class:"stat-icon"},Wge={class:"stat-details"},Gge={class:"stat-huge"},zge={class:"stat"},fr=Q({__name:"StatCard",props:{icon:{},text:{},value:{}},setup(e){const t=e,{icon:n,text:r,value:a}=_e(t);return(s,o)=>(T(),N("div",Mge,[p("div",xge,[p("div",Fge,[p("i",{class:ge(["fa",`fa-${h(n)}`])},null,2)]),p("div",Wge,[p("div",Gge,_(h(a)),1),p("div",zge,_(h(r)),1)])])]))}}),Bge={id:"user-stats"},Hge=Q({__name:"AppStatsCards",props:{appStatistics:{}},setup(e){const t=e,{appStatistics:n}=_e(t),r=$(()=>YT(n.value.uploads_dir_size));return(a,s)=>(T(),N("div",Bge,[M(fr,{icon:"users",value:h(n).users,text:a.$t("admin.USER",h(n).users)},null,8,["value","text"]),M(fr,{icon:"tags",value:h(n).sports,text:a.$t("workouts.SPORT",h(n).sports)},null,8,["value","text"]),M(fr,{icon:"calendar",value:h(n).workouts,text:a.$t("workouts.WORKOUT",h(n).workouts)},null,8,["value","text"]),M(fr,{icon:"folder-open",value:r.value.size,text:r.value.suffix},null,8,["value","text"])]))}}),mA=e=>(ut("data-v-efcd2677"),e=e(),ct(),e),jge={id:"admin-menu",class:"center-card"},Vge={class:"admin-menu description-list"},Kge={class:"application-config-details"},Yge=mA(()=>p("br",null,null,-1)),qge={class:"registration-status"},Xge={key:0,class:"email-sending-status"},Zge=mA(()=>p("i",{class:"fa fa-exclamation-triangle","aria-hidden":"true"},null,-1)),Qge=Q({__name:"AdminMenu",props:{appConfig:{},appStatistics:{default:()=>({})}},setup(e){const t=e,{appConfig:n,appStatistics:r}=_e(t);return gt(()=>{const a=document.getElementById("adminLink");a&&a.focus()}),(a,s)=>{const o=ue("router-link");return T(),N("div",jge,[M(MT,null,{title:fe(()=>[K(_(a.$t("admin.ADMINISTRATION")),1)]),content:fe(()=>[M(Hge,{appStatistics:h(r)},null,8,["appStatistics"]),p("div",Vge,[p("dl",null,[p("dt",null,[M(o,{id:"adminLink",to:"/admin/application"},{default:fe(()=>[K(_(a.$t("admin.APPLICATION")),1)]),_:1})]),p("dd",Kge,[K(_(a.$t("admin.UPDATE_APPLICATION_DESCRIPTION")),1),Yge,p("span",qge,_(a.$t(`admin.REGISTRATION_${h(n).is_registration_enabled?"ENABLED":"DISABLED"}`)),1),h(n).is_email_sending_enabled?W("",!0):(T(),N("span",Xge,[Zge,K(" "+_(a.$t("admin.EMAIL_SENDING_DISABLED")),1)]))]),p("dt",null,[M(o,{to:"/admin/sports"},{default:fe(()=>[K(_(St(a.$t("workouts.SPORT",0))),1)]),_:1})]),p("dd",null,_(a.$t("admin.ENABLE_DISABLE_SPORTS")),1),p("dt",null,[M(o,{to:"/admin/users"},{default:fe(()=>[K(_(St(a.$t("admin.USER",0))),1)]),_:1})]),p("dd",null,_(a.$t("admin.ADMIN_RIGHTS_DELETE_USER_ACCOUNT")),1)])])]),_:1})])}}}),Jge=ae(Qge,[["__scopeId","data-v-efcd2677"]]),E0={"Cycling (Sport)":"#4c9792","Cycling (Transport)":"#88af98","Cycling (Virtual)":"#64a360",Hiking:"#bb757c","Mountain Biking":"#d4b371","Mountain Biking (Electric)":"#fc9d6f",Mountaineering:"#48b3b7","Open Water Swimming":"#4058a4",Paragliding:"#c23c50",Rowing:"#fcce72",Running:"#835b83","Skiing (Alpine)":"#67a4bd","Skiing (Cross Country)":"#9498d0",Snowshoes:"#5780a8",Trail:"#09a98a",Walking:"#838383"},eAe=e=>{const t={};return e.map(n=>t[n.id]=n.color?n.color:E0[n.label]),t},tAe=(e,t)=>{const n=e.translatedLabel.toLowerCase(),r=t.translatedLabel.toLowerCase();return n>r?1:ne.filter(a=>n==="all"?!0:r.includes(a.id)||a[n]).map(a=>({...a,translatedLabel:t(`sports.${a.label}.LABEL`)})).sort(tAe),h0=(e,t)=>t.filter(n=>n.id===e.sport_id).map(n=>n.label)[0],_0=(e,t)=>t.filter(n=>n.id===e.sport_id).map(n=>n.color)[0],Cc=e=>(ut("data-v-203d96b8"),e=e(),ct(),e),nAe={id:"admin-sports",class:"admin-card"},rAe={class:"responsive-table"},aAe=Cc(()=>p("th",null,"#",-1)),sAe={class:"text-left"},oAe={class:"text-left sport-action"},iAe=Cc(()=>p("th",null,null,-1)),uAe={class:"text-center"},cAe=Cc(()=>p("span",{class:"cell-heading"},"id",-1)),lAe={class:"cell-heading"},dAe={class:"sport-label"},fAe={class:"cell-heading"},pAe={class:"text-center"},mAe={class:"cell-heading"},EAe={class:"sport-action"},hAe={class:"cell-heading"},_Ae={class:"action-button"},TAe=["onClick"],gAe={key:0,class:"has-workouts"},AAe=Cc(()=>p("i",{class:"fa fa-warning","aria-hidden":"true"},null,-1)),SAe=Q({__name:"AdminSports",setup(e){const{t}=jt(),n=$e(),r=$(()=>Jr(n.getters[$t.GETTERS.SPORTS],t)),a=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]);function s(o,i){n.dispatch($t.ACTIONS.UPDATE_SPORTS,{id:o,isActive:i})}return(o,i)=>{const u=ue("SportImage"),c=ue("ErrorMessage"),l=ue("Card");return T(),N("div",nAe,[M(l,null,{title:fe(()=>[K(_(o.$t("admin.SPORTS.TITLE")),1)]),content:fe(()=>[p("button",{class:"top-button",onClick:i[0]||(i[0]=Xe(f=>o.$router.push("/admin"),["prevent"]))},_(o.$t("admin.BACK_TO_ADMIN")),1),p("div",rAe,[p("table",null,[p("thead",null,[p("tr",null,[aAe,p("th",null,_(o.$t("admin.SPORTS.TABLE.IMAGE")),1),p("th",sAe,_(o.$t("admin.SPORTS.TABLE.LABEL")),1),p("th",null,_(o.$t("admin.SPORTS.TABLE.ACTIVE")),1),p("th",oAe,_(o.$t("admin.ACTION")),1),iAe])]),p("tbody",null,[(T(!0),N(Ie,null,xe(r.value,f=>(T(),N("tr",{key:f.id},[p("td",uAe,[cAe,K(" "+_(f.id),1)]),p("td",null,[p("span",lAe,_(o.$t("admin.SPORTS.TABLE.IMAGE")),1),M(u,{title:f.translatedLabel,"sport-label":f.label,color:f.color},null,8,["title","sport-label","color"])]),p("td",dAe,[p("span",fAe,_(o.$t("admin.SPORTS.TABLE.LABEL")),1),K(" "+_(f.translatedLabel),1)]),p("td",pAe,[p("span",mAe,_(o.$t("admin.SPORTS.TABLE.ACTIVE")),1),p("i",{class:ge(`fa fa${f.is_active?"-check":""}`),"aria-hidden":"true"},null,2)]),p("td",EAe,[p("span",hAe,_(o.$t("admin.ACTION")),1),p("div",_Ae,[p("button",{class:ge({danger:f.is_active}),onClick:d=>s(f.id,!f.is_active)},_(o.$t(`buttons.${f.is_active?"DIS":"EN"}ABLE`)),11,TAe),f.has_workouts?(T(),N("span",gAe,[AAe,K(" "+_(o.$t("admin.SPORTS.TABLE.HAS_WORKOUTS")),1)])):W("",!0)])])]))),128))])]),a.value?(T(),ne(c,{key:0,message:a.value},null,8,["message"])):W("",!0),p("button",{onClick:i[1]||(i[1]=Xe(f=>o.$router.push("/admin"),["prevent"]))},_(o.$t("admin.BACK_TO_ADMIN")),1)])]),_:1})])}}}),OAe=ae(SAe,[["__scopeId","data-v-203d96b8"]]),IAe={class:"table-selects"},vAe=["value"],RAe=["value"],bAe=["value"],NAe=["value"],CAe=["value"],yAe=["value"],DAe=Q({__name:"FilterSelects",props:{order_by:{},query:{},sort:{},message:{}},emits:["updateSelect"],setup(e,{emit:t}){const n=e,r=t,{order_by:a,query:s,sort:o,message:i}=_e(n),u=[10,25,50,100];function c(l){r("updateSelect",l.target.id,l.target.value)}return(l,f)=>(T(),N("div",IAe,[p("label",null,[K(_(l.$t("common.SELECTS.ORDER_BY.LABEL"))+": ",1),p("select",{name:"order_by",id:"order_by",value:h(s).order_by,onChange:c},[(T(!0),N(Ie,null,xe(h(a),d=>(T(),N("option",{value:d,key:d},_(l.$t(`${h(i)}.${d.toUpperCase()}`)),9,RAe))),128))],40,vAe)]),p("label",null,[K(_(l.$t("common.SELECTS.ORDER.LABEL"))+": ",1),p("select",{name:"order",id:"order",value:h(s).order,onChange:c},[(T(!0),N(Ie,null,xe(h(o),d=>(T(),N("option",{value:d,key:d},_(l.$t(`common.SELECTS.ORDER.${d.toUpperCase()}`)),9,NAe))),128))],40,bAe)]),p("label",null,[K(_(l.$t("common.SELECTS.PER_PAGE.LABEL"))+": ",1),p("select",{name:"per_page",id:"per_page",value:h(s).per_page,onChange:c},[(T(),N(Ie,null,xe(u,d=>p("option",{value:d,key:d},_(d),9,yAe)),64))],40,CAe)])]))}}),EA=ae(DAe,[["__scopeId","data-v-fc86ab3c"]]),T0=["asc","desc"],hA=1,PAe=10,Fd=(e,t)=>e&&typeof e=="string"&&+e>0?+e:t,HE=(e,t,n)=>e&&typeof e=="string"&&t.includes(e)?e:n,Wd=(e,t,n,r)=>{const s=(r||{}).defaultSort||"asc",o={};return o.page=Fd(e.page,hA),o.per_page=Fd(e.per_page,PAe),o.order=HE(e.order,T0,s),o.order_by=HE(e.order_by,t,n),typeof e.q=="string"?o.q=e.q:delete o.q,o},wAe=["from","to","ave_speed_from","ave_speed_to","max_speed_from","max_speed_to","distance_from","distance_to","duration_from","duration_to","sport_id","title"],Pa=(e,t=1)=>Array.from({length:e-t+1},(n,r)=>t+r),LAe=(e,t)=>{if(e<0)return[];if(e<9)return Pa(e);let n=[1,2];return t<4?n=n.concat([3,4,5]):t<6?n=n.concat(Pa(t+2,3)):(n=n.concat(["..."]),t=e-2&&+n[n.length-1](ut("data-v-b6235e81"),e=e(),ct(),e),$Ae={class:"pagination-center","aria-label":"navigation"},kAe={class:"pagination"},UAe=_A(()=>p("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)),MAe={key:0},xAe=_A(()=>p("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)),FAe=Q({__name:"Pagination",props:{pagination:{},path:{},query:{}},setup(e){const t=e,{pagination:n,path:r,query:a}=_e(t);function s(o,i){const u=Object.assign({},a.value);return u.page=i?o+i:o,u}return(o,i)=>{const u=ue("router-link");return T(),N("nav",$Ae,[p("ul",kAe,[p("li",{class:ge(["page-prev",{disabled:!h(n).has_prev}])},[M(u,{class:"page-link",to:{path:h(r),query:s(h(n).page,-1)},disabled:!h(n).has_prev,tabindex:h(n).has_prev?0:-1},{default:fe(({navigate:c})=>[Va(o.$slots,"default",{onClick:l=>h(n).has_next?c:null},()=>[K(_(o.$t("api.PAGINATION.PREVIOUS"))+" ",1),UAe],!0)]),_:3},8,["to","disabled","tabindex"])],2),(T(!0),N(Ie,null,xe(h(LAe)(h(n).pages,h(n).page),c=>(T(),N("li",{key:c,class:ge(["page",{active:c===h(n).page}])},[c==="..."?(T(),N("span",MAe," ... ")):(T(),ne(u,{key:1,class:"page-link",to:{path:h(r),query:s(+c)}},{default:fe(()=>[K(_(c),1)]),_:2},1032,["to"]))],2))),128)),p("li",{class:ge(["page-next",{disabled:!h(n).has_next}])},[M(u,{class:"page-link",to:{path:h(r),query:s(h(n).page,1)},disabled:!h(n).has_next,tabindex:h(n).has_next?0:-1},{default:fe(({navigate:c})=>[Va(o.$slots,"default",{onClick:l=>h(n).has_next?c:null},()=>[K(_(o.$t("api.PAGINATION.NEXT"))+" ",1),xAe],!0)]),_:3},8,["to","disabled","tabindex"])],2)])])}}}),Wu=ae(FAe,[["__scopeId","data-v-b6235e81"]]),WAe={class:"users-filters"},GAe={class:"search-username"},zAe=["placeholder"],BAe=Q({__name:"UsersNameFilter",emits:["filterOnUsername"],setup(e,{emit:t}){const n=Vt(),r=ce(n.query.q?n.query.q:""),a=t;function s(){r.value!==""&&a("filterOnUsername",r)}function o(){r.value="",a("filterOnUsername",r.value)}return(i,u)=>(T(),N("div",WAe,[p("div",GAe,[Ke(p("input",{id:"username",name:"username","onUpdate:modelValue":u[0]||(u[0]=c=>r.value=c),onKeyup:At(s,["enter"]),placeholder:i.$t("user.FILTER_ON_USERNAME")},null,40,zAe),[[tt,r.value,void 0,{trim:!0}]]),r.value!==""?(T(),N("i",{key:0,class:"fa fa-times","aria-hidden":"true",onClick:o})):W("",!0)]),p("i",{class:ge(["fa fa-search",{"fa-disabled":r.value===""}]),"aria-hidden":"true",onClick:s},null,2)]))}}),HAe=ae(BAe,[["__scopeId","data-v-553040c7"]]);var Gd={exports:{}};(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=n;function n(r){if(r===null||r===!0||r===!1)return NaN;var a=Number(r);return isNaN(a)?a:a<0?Math.ceil(a):Math.floor(a)}e.exports=t.default})(Gd,Gd.exports);var jAe=Gd.exports;const VAe=qd(jAe);var zd={exports:{}};(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=n;function n(r){var a=new Date(Date.UTC(r.getFullYear(),r.getMonth(),r.getDate(),r.getHours(),r.getMinutes(),r.getSeconds(),r.getMilliseconds()));return a.setUTCFullYear(r.getFullYear()),r.getTime()-a.getTime()}e.exports=t.default})(zd,zd.exports);var KAe=zd.exports;const jE=qd(KAe);function YAe(e,t){var n=QAe(t);return n.formatToParts?XAe(n,e):ZAe(n,e)}var qAe={year:0,month:1,day:2,hour:3,minute:4,second:5};function XAe(e,t){try{for(var n=e.formatToParts(t),r=[],a=0;a=0&&(r[s]=parseInt(n[a].value,10))}return r}catch(o){if(o instanceof RangeError)return[NaN];throw o}}function ZAe(e,t){var n=e.format(t).replace(/\u200E/g,""),r=/(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(n);return[r[3],r[1],r[2],r[4],r[5],r[6]]}var pl={};function QAe(e){if(!pl[e]){var t=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:"America/New_York",year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(new Date("2014-06-25T04:00:00.123Z")),n=t==="06/25/2014, 00:00:00"||t==="‎06‎/‎25‎/‎2014‎ ‎00‎:‎00‎:‎00";pl[e]=n?new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}):new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:e,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})}return pl[e]}function TA(e,t,n,r,a,s,o){var i=new Date(0);return i.setUTCFullYear(e,t,n),i.setUTCHours(r,a,s,o),i}var VE=36e5,JAe=6e4,ml={timezone:/([Z+-].*)$/,timezoneZ:/^(Z)$/,timezoneHH:/^([+-]\d{2})$/,timezoneHHMM:/^([+-]\d{2}):?(\d{2})$/};function gA(e,t,n){var r,a;if(!e||(r=ml.timezoneZ.exec(e),r))return 0;var s;if(r=ml.timezoneHH.exec(e),r)return s=parseInt(r[1],10),KE(s)?-(s*VE):NaN;if(r=ml.timezoneHHMM.exec(e),r){s=parseInt(r[1],10);var o=parseInt(r[2],10);return KE(s,o)?(a=Math.abs(s)*VE+o*JAe,s>0?-a:a):NaN}if(nSe(e)){t=new Date(t||Date.now());var i=n?t:eSe(t),u=Bd(i,e),c=n?u:tSe(t,u,e);return-c}return NaN}function eSe(e){return TA(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds())}function Bd(e,t){var n=YAe(e,t),r=TA(n[0],n[1]-1,n[2],n[3]%24,n[4],n[5],0).getTime(),a=e.getTime(),s=a%1e3;return a-=s>=0?s:1e3+s,r-a}function tSe(e,t,n){var r=e.getTime(),a=r-t,s=Bd(new Date(a),n);if(t===s)return t;a-=s-t;var o=Bd(new Date(a),n);return s===o?s:Math.max(s,o)}function KE(e,t){return-23<=e&&e<=23&&(t==null||0<=t&&t<=59)}var YE={};function nSe(e){if(YE[e])return!0;try{return new Intl.DateTimeFormat(void 0,{timeZone:e}),YE[e]=!0,!0}catch{return!1}}var rSe=/(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?)$/,El=36e5,qE=6e4,aSe=2,Qt={dateTimePattern:/^([0-9W+-]+)(T| )(.*)/,datePattern:/^([0-9W+-]+)(.*)/,plainTime:/:/,YY:/^(\d{2})$/,YYY:[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],YYYY:/^(\d{4})/,YYYYY:[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],MM:/^-(\d{2})$/,DDD:/^-?(\d{3})$/,MMDD:/^-?(\d{2})-?(\d{2})$/,Www:/^-?W(\d{2})$/,WwwD:/^-?W(\d{2})-?(\d{1})$/,HH:/^(\d{2}([.,]\d*)?)$/,HHMM:/^(\d{2}):?(\d{2}([.,]\d*)?)$/,HHMMSS:/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,timeZone:rSe};function sSe(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");if(e===null)return new Date(NaN);var n=t||{},r=n.additionalDigits==null?aSe:VAe(n.additionalDigits);if(r!==2&&r!==1&&r!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]")return new Date(e.getTime());if(typeof e=="number"||Object.prototype.toString.call(e)==="[object Number]")return new Date(e);if(!(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]"))return new Date(NaN);var a=oSe(e),s=iSe(a.date,r),o=s.year,i=s.restDateString,u=uSe(i,o);if(isNaN(u))return new Date(NaN);if(u){var c=u.getTime(),l=0,f;if(a.time&&(l=cSe(a.time),isNaN(l)))return new Date(NaN);if(a.timeZone||n.timeZone){if(f=gA(a.timeZone||n.timeZone,new Date(c+l)),isNaN(f))return new Date(NaN)}else f=jE(new Date(c+l)),f=jE(new Date(c+l+f));return new Date(c+l+f)}else return new Date(NaN)}function oSe(e){var t={},n=Qt.dateTimePattern.exec(e),r;if(n?(t.date=n[1],r=n[3]):(n=Qt.datePattern.exec(e),n?(t.date=n[1],r=n[2]):(t.date=null,r=e)),r){var a=Qt.timeZone.exec(r);a?(t.time=r.replace(a[1],""),t.timeZone=a[1].trim()):t.time=r}return t}function iSe(e,t){var n=Qt.YYY[t],r=Qt.YYYYY[t],a;if(a=Qt.YYYY.exec(e)||r.exec(e),a){var s=a[1];return{year:parseInt(s,10),restDateString:e.slice(s.length)}}if(a=Qt.YY.exec(e)||n.exec(e),a){var o=a[1];return{year:parseInt(o,10)*100,restDateString:e.slice(o.length)}}return{year:null}}function uSe(e,t){if(t===null)return null;var n,r,a,s;if(e.length===0)return r=new Date(0),r.setUTCFullYear(t),r;if(n=Qt.MM.exec(e),n)return r=new Date(0),a=parseInt(n[1],10)-1,ZE(t,a)?(r.setUTCFullYear(t,a),r):new Date(NaN);if(n=Qt.DDD.exec(e),n){r=new Date(0);var o=parseInt(n[1],10);return fSe(t,o)?(r.setUTCFullYear(t,0,o),r):new Date(NaN)}if(n=Qt.MMDD.exec(e),n){r=new Date(0),a=parseInt(n[1],10)-1;var i=parseInt(n[2],10);return ZE(t,a,i)?(r.setUTCFullYear(t,a,i),r):new Date(NaN)}if(n=Qt.Www.exec(e),n)return s=parseInt(n[1],10)-1,QE(t,s)?XE(t,s):new Date(NaN);if(n=Qt.WwwD.exec(e),n){s=parseInt(n[1],10)-1;var u=parseInt(n[2],10)-1;return QE(t,s,u)?XE(t,s,u):new Date(NaN)}return null}function cSe(e){var t,n,r;if(t=Qt.HH.exec(e),t)return n=parseFloat(t[1].replace(",",".")),hl(n)?n%24*El:NaN;if(t=Qt.HHMM.exec(e),t)return n=parseInt(t[1],10),r=parseFloat(t[2].replace(",",".")),hl(n,r)?n%24*El+r*qE:NaN;if(t=Qt.HHMMSS.exec(e),t){n=parseInt(t[1],10),r=parseInt(t[2],10);var a=parseFloat(t[3].replace(",","."));return hl(n,r,a)?n%24*El+r*qE+a*1e3:NaN}return null}function XE(e,t,n){t=t||0,n=n||0;var r=new Date(0);r.setUTCFullYear(e,0,4);var a=r.getUTCDay()||7,s=t*7+n+1-a;return r.setUTCDate(r.getUTCDate()+s),r}var lSe=[31,28,31,30,31,30,31,31,30,31,30,31],dSe=[31,29,31,30,31,30,31,31,30,31,30,31];function AA(e){return e%400===0||e%4===0&&e%100!==0}function ZE(e,t,n){if(t<0||t>11)return!1;if(n!=null){if(n<1)return!1;var r=AA(e);if(r&&n>dSe[t]||!r&&n>lSe[t])return!1}return!0}function fSe(e,t){if(t<1)return!1;var n=AA(e);return!(n&&t>366||!n&&t>365)}function QE(e,t,n){return!(t<0||t>52||n!=null&&(n<0||n>6))}function hl(e,t,n){return!(e!=null&&(e<0||e>=25)||t!=null&&(t<0||t>=60)||n!=null&&(n<0||n>=60))}function pSe(e,t,n){var r=sSe(e,n),a=gA(t,r,!0),s=new Date(r.getTime()-a),o=new Date(0);return o.setFullYear(s.getUTCFullYear(),s.getUTCMonth(),s.getUTCDate()),o.setHours(s.getUTCHours(),s.getUTCMinutes(),s.getUTCSeconds(),s.getUTCMilliseconds()),o}const{locale:Gu}=ga.global,mSe=(e,t,n)=>{switch(e){case"week":return lc(t,{weekStartsOn:n?1:0});case"year":return wf(t);case"month":return Uo(t);default:throw new Error(`Invalid duration, expected: "week", "month", "year", got: "${e}"`)}},ESe=(e,t)=>{switch(e){case"week":return $o(t,7);case"year":return Qi(t,1);case"month":return Za(t,1);default:throw new Error(`Invalid duration, expected: "week", "month", "year", got: "${e}"`)}},yc=(e,t)=>pSe(new Date(e),t),JE=(e,t)=>{const n=Uo(e),r=ko(e),a=t?1:0;return{start:lc(n,{weekStartsOn:a}),end:Lf(r,{weekStartsOn:a})}},SA=(e,t=null,n=null)=>(t||(t="yyyy/MM/dd"),t=Sa(t,Gu.value),n||(n="HH:mm"),{workout_date:ln(e,t,{locale:Mo[Gu.value]}),workout_time:ln(e,n)}),hSe=["MM/dd/yyyy","dd/MM/yyyy","yyyy-MM-dd","date_string"],OA={de:"do MMM yyyy",en:"MMM. do, yyyy",es:"d MMM yyyy",fr:"d MMM yyyy",gl:"d MMM yyyy",it:"d MMM yyyy",pl:"d MMM yyyy",nb:"do MMM yyyy",nl:"d MMM yyyy"},Sa=(e,t)=>e==="date_string"?OA[t]:e,xn=(e,t,n,r=!0,a=null,s=!1)=>{a||(a=Gu.value);const o=r?s?" HH:mm:ss":" HH:mm":"";return ln(yc(e,t),`${Sa(n,a)}${o}`,{locale:Mo[a]})},_Se=(e,t,n=null)=>{const r=n||Gu.value,a=[];return hSe.map(s=>{const o=Sa(s,r);a.push({label:`${o} - ${xn(e,t,o,!1,r)}`,value:s})}),a},TSe=e=>(ut("data-v-4beb3bfa"),e=e(),ct(),e),gSe={id:"admin-users",class:"admin-card"},ASe={key:0,class:"no-users"},SSe={key:1,class:"responsive-table"},OSe=TSe(()=>p("th",null,"#",-1)),ISe={class:"left-text"},vSe={class:"left-text"},RSe={class:"left-text"},bSe={class:"cell-heading"},NSe={class:"cell-heading"},CSe={class:"cell-heading"},ySe={class:"cell-heading"},DSe={class:"text-center"},PSe={class:"cell-heading"},wSe={class:"text-center"},LSe={class:"cell-heading"},$Se={class:"text-center"},kSe={class:"cell-heading"},USe={class:"text-center"},MSe={class:"cell-heading"},xSe=["disabled","onClick"],eh="created_at",FSe=Q({__name:"AdminUsers",setup(e){const t=$e(),n=Vt(),r=Zr(),a=["is_active","admin","created_at","username","workouts_count"];let s=xt(Wd(n.query,a,eh));const o=$(()=>t.getters[Y.GETTERS.AUTH_USER_PROFILE]),i=$(()=>t.getters[Ce.GETTERS.USERS]),u=$(()=>t.getters[Ce.GETTERS.USERS_PAGINATION]),c=$(()=>t.getters[H.GETTERS.ERROR_MESSAGES]);It(()=>l(s));function l(E){t.dispatch(Ce.ACTIONS.GET_USERS,E)}function f(E){m("q",E.value)}function d(E,g){t.dispatch(Ce.ACTIONS.UPDATE_USER,{username:E,admin:g})}function m(E,g){s[E]=g,E==="per_page"&&(s.page=1),r.push({path:"/admin/users",query:s})}return Rt(()=>{t.dispatch(Ce.ACTIONS.EMPTY_USERS)}),Fe(()=>n.query,E=>{s=Wd(E,a,eh,{query:s}),l(s)}),(E,g)=>{const b=ue("router-link"),I=ue("ErrorMessage"),R=ue("Card");return T(),N("div",gSe,[M(R,null,{title:fe(()=>[K(_(St(E.$t("admin.USER",0))),1)]),content:fe(()=>[p("button",{class:"top-button",onClick:g[0]||(g[0]=Xe(v=>E.$router.push("/admin"),["prevent"]))},_(E.$t("admin.BACK_TO_ADMIN")),1),M(HAe,{onFilterOnUsername:f}),M(EA,{sort:h(T0),order_by:a,query:h(s),message:"admin.USERS.SELECTS.ORDER_BY",onUpdateSelect:m},null,8,["sort","query"]),i.value.length===0?(T(),N("div",ASe,_(E.$t("user.NO_USERS_FOUND")),1)):(T(),N("div",SSe,[p("table",null,[p("thead",null,[p("tr",null,[OSe,p("th",ISe,_(E.$t("user.USERNAME")),1),p("th",vSe,_(E.$t("user.EMAIL")),1),p("th",RSe,_(E.$t("user.PROFILE.REGISTRATION_DATE")),1),p("th",null,_(St(E.$t("workouts.WORKOUT",0))),1),p("th",null,_(E.$t("admin.ACTIVE")),1),p("th",null,_(E.$t("user.ADMIN")),1),p("th",null,_(E.$t("admin.ACTION")),1)])]),p("tbody",null,[(T(!0),N(Ie,null,xe(i.value,v=>(T(),N("tr",{key:v.username},[p("td",null,[p("span",bSe,_(E.$t("user.PROFILE.PICTURE")),1),M(Lo,{user:v},null,8,["user"])]),p("td",null,[p("span",NSe,_(E.$t("user.USERNAME")),1),M(b,{to:`/admin/users/${v.username}`},{default:fe(()=>[K(_(v.username),1)]),_:2},1032,["to"])]),p("td",null,[p("span",CSe,_(E.$t("user.EMAIL")),1),K(" "+_(v.email),1)]),p("td",null,[p("span",ySe,_(E.$t("user.PROFILE.REGISTRATION_DATE")),1),p("time",null,_(h(xn)(v.created_at,o.value.timezone,o.value.date_format)),1)]),p("td",DSe,[p("span",PSe,_(St(E.$t("workouts.WORKOUT",0))),1),K(" "+_(v.nb_workouts),1)]),p("td",wSe,[p("span",LSe,_(E.$t("admin.ACTIVE")),1),p("i",{class:ge(`fa fa${v.is_active?"-check":""}-square-o`),"aria-hidden":"true"},null,2)]),p("td",$Se,[p("span",kSe,_(E.$t("user.ADMIN")),1),p("i",{class:ge(`fa fa${v.admin?"-check":""}-square-o`),"aria-hidden":"true"},null,2)]),p("td",USe,[p("span",MSe,_(E.$t("admin.ACTION")),1),p("button",{class:ge({danger:v.admin}),disabled:v.username===o.value.username,onClick:A=>d(v.username,!v.admin)},_(E.$t(`admin.USERS.TABLE.${v.admin?"REMOVE":"ADD"}_ADMIN_RIGHTS`)),11,xSe)])]))),128))])]),u.value.page?(T(),ne(Wu,{key:0,path:"/admin/users",pagination:u.value,query:h(s)},null,8,["pagination","query"])):W("",!0),c.value?(T(),ne(I,{key:1,message:c.value},null,8,["message"])):W("",!0),p("button",{onClick:g[1]||(g[1]=Xe(v=>E.$router.push("/admin"),["prevent"]))},_(E.$t("admin.BACK_TO_ADMIN")),1)]))]),_:1})])}}}),WSe=ae(FSe,[["__scopeId","data-v-4beb3bfa"]]),GSe={class:"box user-header"},zSe={class:"user-details"},BSe={class:"user-name"},HSe={class:"user-stats"},jSe={class:"user-stat"},VSe={class:"stat-number"},KSe={class:"stat-label"},YSe={class:"user-stat"},qSe={class:"stat-label"},XSe={class:"user-stat hide-small"},ZSe={class:"stat-number"},QSe={class:"stat-label"},JSe=Q({__name:"UserHeader",props:{user:{}},setup(e){const t=e,{user:n}=_e(t),r=$e(),a=$(()=>r.getters[Y.GETTERS.AUTH_USER_PROFILE]);return(s,o)=>{const i=ue("Distance");return T(),N("div",GSe,[M(Lo,{user:h(n)},null,8,["user"]),p("div",zSe,[p("div",BSe,_(h(n).username),1),p("div",HSe,[p("div",jSe,[p("span",VSe,_(h(n).nb_workouts),1),p("span",KSe,_(s.$t("workouts.WORKOUT",h(n).nb_workouts)),1)]),p("div",YSe,[M(i,{distance:h(n).total_distance,unitFrom:"km",digits:0,displayUnit:!1,useImperialUnits:a.value.imperial_units},null,8,["distance","useImperialUnits"]),p("span",qSe,_(a.value.imperial_units?"miles":"km"),1)]),p("div",XSe,[p("span",ZSe,_(h(n).nb_sports),1),p("span",QSe,_(s.$t("workouts.SPORT",h(n).nb_sports)),1)])])])])}}}),IA=ae(JSe,[["__scopeId","data-v-3abb1646"]]),eOe={class:"profile-tabs custom-checkboxes-group"},tOe={class:"profile-tabs-checkboxes custom-checkboxes"},nOe=["id","name","checked","disabled","onInput"],rOe=["id","onKeydown"],vA=Q({__name:"UserProfileTabs",props:{tabs:{},selectedTab:{},edition:{type:Boolean},disabled:{type:Boolean,default:!1}},setup(e){const t=e,{tabs:n,selectedTab:r,disabled:a}=_e(t);gt(()=>{const o=document.getElementById(`tab-${n.value[0]}`);o&&o.focus()});function s(o){switch(o){case"ACCOUNT":case"PICTURE":case"PRIVACY-POLICY":return`/profile/edit/${o.toLocaleLowerCase()}`;case"APPS":case"PREFERENCES":case"SPORTS":return`/profile${t.edition?"/edit":""}/${o.toLocaleLowerCase()}`;default:case"PROFILE":return`/profile${t.edition?"/edit":""}`}}return(o,i)=>(T(),N("div",eOe,[p("div",tOe,[(T(!0),N(Ie,null,xe(h(n),u=>(T(),N("div",{class:"profile-tab custom-checkbox",key:u},[p("label",null,[p("input",{type:"radio",id:u,name:u,checked:h(r).split("/")[0]===u,disabled:h(a),onInput:c=>o.$router.push(s(u))},null,40,nOe),p("span",{id:`tab-${u}`,tabindex:0,role:"button",onKeydown:At(c=>o.$router.push(s(u)),["enter"])},_(o.$t(`user.PROFILE.TABS.${u}`)),41,rOe)])]))),128))])]))}}),aOe={id:"user-profile"},sOe={class:"box"},oOe=Q({__name:"index",props:{user:{},tab:{}},setup(e){const t=e,{user:n,tab:r}=_e(t),a=["PROFILE","PREFERENCES","SPORTS","APPS"];return(s,o)=>{const i=ue("router-view");return T(),N("div",aOe,[M(IA,{user:h(n)},null,8,["user"]),p("div",sOe,[M(vA,{tabs:a,selectedTab:h(r),edition:!1},null,8,["selectedTab"]),M(i,{user:h(n)},null,8,["user"])])])}}}),iOe=ae(oOe,[["__scopeId","data-v-8a058d49"]]),uOe={id:"user-infos",class:"description-list"},cOe={key:1,class:"info-box success-message"},lOe={key:4,class:"email-form form-box"},dOe={class:"form-items",for:"email"},fOe={class:"form-items",for:"email"},pOe={class:"form-buttons"},mOe={class:"confirm",type:"submit"},EOe={key:5},hOe={key:0},_Oe={class:"user-bio"},TOe={key:0,class:"profile-buttons"},gOe={key:1,class:"profile-buttons"},AOe=Q({__name:"UserInfos",props:{user:{},fromAdmin:{type:Boolean,default:!1}},setup(e){const t=e,n=$e(),{user:r,fromAdmin:a}=_e(t),s=$(()=>n.getters[H.GETTERS.LANGUAGE]),o=$(()=>n.getters[Y.GETTERS.AUTH_USER_PROFILE]),i=$(()=>t.user.created_at?xn(t.user.created_at,o.value.timezone,o.value.date_format):""),u=$(()=>t.user.birth_date?ln(new Date(t.user.birth_date),`${Sa(o.value.date_format,s.value)}`,{locale:Mo[s.value]}):""),c=$(()=>n.getters[Ce.GETTERS.USERS_IS_SUCCESS]),l=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]),f=$(()=>n.getters[H.GETTERS.APP_CONFIG]),d=ce(""),m=ce(!1),E=ce(!1),g=ce(""),b=ce("");function I(z){d.value=z,z!==""&&n.commit(Ce.MUTATIONS.UPDATE_IS_SUCCESS,!1)}function R(z){n.dispatch(Ce.ACTIONS.DELETE_USER_ACCOUNT,{username:z})}function v(z){b.value="password-reset",n.dispatch(Ce.ACTIONS.UPDATE_USER,{username:z,resetPassword:!0})}function A(z){n.dispatch(Ce.ACTIONS.UPDATE_USER,{username:z,activate:!0})}function C(){L(),g.value=r.value.email_to_confirm?r.value.email_to_confirm:"",E.value=!0,b.value="email-update"}function w(){g.value="",E.value=!1}function k(z){n.dispatch(Ce.ACTIONS.UPDATE_USER,{username:z,new_email:g.value})}function L(){n.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),n.commit(Ce.MUTATIONS.UPDATE_IS_SUCCESS,!1),b.value=""}return Rt(()=>L()),Fe(()=>c.value,z=>{z&&(I(""),w())}),(z,F)=>{const U=ue("Modal"),Z=ue("AlertMessage"),ee=ue("ErrorMessage");return T(),N("div",uOe,[d.value?(T(),ne(U,{key:0,title:z.$t("common.CONFIRMATION"),message:d.value==="delete"?"admin.CONFIRM_USER_ACCOUNT_DELETION":"admin.CONFIRM_USER_PASSWORD_RESET",strongMessage:h(r).username,onConfirmAction:F[0]||(F[0]=re=>d.value==="delete"?R(h(r).username):v(h(r).username)),onCancelAction:F[1]||(F[1]=re=>I("")),onKeydown:F[2]||(F[2]=At(re=>I(""),["esc"]))},null,8,["title","message","strongMessage"])):W("",!0),c.value?(T(),N("div",cOe,_(z.$t(`admin.${b.value==="password-reset"?"PASSWORD_RESET":"USER_EMAIL_UPDATE"}_SUCCESSFUL`)),1)):W("",!0),h(r).is_active?W("",!0):(T(),ne(Z,{key:2,message:"user.THIS_USER_ACCOUNT_IS_INACTIVE"})),l.value?(T(),ne(ee,{key:3,message:l.value},null,8,["message"])):W("",!0),E.value?(T(),N("div",lOe,[p("form",{class:ge({errors:m.value}),onSubmit:F[5]||(F[5]=Xe(re=>k(h(r).username),["prevent"]))},[p("label",dOe,[K(_(z.$t("admin.CURRENT_EMAIL"))+" ",1),Ke(p("input",{id:"email",type:"email","onUpdate:modelValue":F[3]||(F[3]=re=>h(r).email=re),disabled:""},null,512),[[tt,h(r).email]])]),p("label",fOe,[K(_(z.$t("admin.NEW_EMAIL"))+"* ",1),Ke(p("input",{id:"new-email",type:"email",required:"","onUpdate:modelValue":F[4]||(F[4]=re=>g.value=re)},null,512),[[tt,g.value]])]),p("div",pOe,[p("button",mOe,_(z.$t("buttons.SUBMIT")),1),p("button",{class:"cancel",onClick:Xe(w,["prevent"])},_(z.$t("buttons.CANCEL")),1)])],34)])):(T(),N("div",EOe,[p("dl",null,[p("dt",null,_(z.$t("user.PROFILE.REGISTRATION_DATE"))+":",1),p("dd",null,[p("time",null,_(i.value),1)]),p("dt",null,_(z.$t("user.PROFILE.FIRST_NAME"))+":",1),p("dd",null,_(h(r).first_name),1),p("dt",null,_(z.$t("user.PROFILE.LAST_NAME"))+":",1),p("dd",null,_(h(r).last_name),1),p("dt",null,_(z.$t("user.PROFILE.BIRTH_DATE"))+":",1),p("dd",null,[u.value?(T(),N("time",hOe,_(u.value),1)):W("",!0)]),p("dt",null,_(z.$t("user.PROFILE.LOCATION"))+":",1),p("dd",null,_(h(r).location),1),p("dt",null,_(z.$t("user.PROFILE.BIO"))+":",1),p("dd",_Oe,_(h(r).bio),1)]),h(a)?(T(),N("div",TOe,[o.value.username!==h(r).username?(T(),N("button",{key:0,class:"danger",onClick:F[6]||(F[6]=Xe(re=>I("delete"),["prevent"]))},_(z.$t("admin.DELETE_USER")),1)):W("",!0),h(r).is_active?W("",!0):(T(),N("button",{key:1,onClick:F[7]||(F[7]=Xe(re=>A(h(r).username),["prevent"]))},_(z.$t("admin.ACTIVATE_USER_ACCOUNT")),1)),o.value.username!==h(r).username?(T(),N("button",{key:2,onClick:Xe(C,["prevent"])},_(z.$t("admin.UPDATE_USER_EMAIL")),1)):W("",!0),o.value.username!==h(r).username&&f.value.is_email_sending_enabled?(T(),N("button",{key:3,onClick:F[8]||(F[8]=Xe(re=>I("reset"),["prevent"]))},_(z.$t("admin.RESET_USER_PASSWORD")),1)):W("",!0),p("button",{onClick:F[9]||(F[9]=re=>z.$router.go(-1))},_(z.$t("buttons.BACK")),1)])):(T(),N("div",gOe,[p("button",{onClick:F[10]||(F[10]=re=>z.$router.push("/profile/edit"))},_(z.$t("user.PROFILE.EDIT")),1),p("button",{onClick:F[11]||(F[11]=re=>z.$router.push("/"))},_(z.$t("common.HOME")),1)]))]))])}}}),RA=ae(AOe,[["__scopeId","data-v-98220281"]]),SOe=e=>(ut("data-v-b0528e22"),e=e(),ct(),e),OOe={id:"user-preferences",class:"description-list"},IOe={class:"preferences-section"},vOe={class:"preferences-section"},ROe={class:"info-box raw-speed-help"},bOe=SOe(()=>p("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),NOe={class:"profile-buttons"},COe=Q({__name:"UserPreferences",props:{user:{}},setup(e){const t=e,n=$e(),r=$(()=>n.getters[H.GETTERS.LANGUAGE]),a=$(()=>t.user.language?id[t.user.language]:id.en),s=$(()=>t.user.weekm?"MONDAY":"SUNDAY"),o=$(()=>t.user.timezone?t.user.timezone:"Europe/Paris"),i=$(()=>t.user.date_format?t.user.date_format:"MM/dd/yyyy"),u=$(()=>t.user.display_ascent?"DISPLAYED":"HIDDEN"),c=$(()=>t.user.use_dark_mode===!0?"DARK":t.user.use_dark_mode===!1?"LIGHT":"DEFAULT");return(l,f)=>(T(),N("div",OOe,[p("div",IOe,_(l.$t("user.PROFILE.INTERFACE")),1),p("dl",null,[p("dt",null,_(l.$t("user.PROFILE.LANGUAGE"))+":",1),p("dd",null,_(a.value),1),p("dt",null,_(l.$t("user.PROFILE.THEME_MODE.LABEL"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.THEME_MODE.VALUES.${c.value}`)),1),p("dt",null,_(l.$t("user.PROFILE.TIMEZONE"))+":",1),p("dd",null,_(o.value),1),p("dt",null,_(l.$t("user.PROFILE.DATE_FORMAT"))+":",1),p("dd",null,_(h(Sa)(i.value,r.value)),1),p("dt",null,_(l.$t("user.PROFILE.FIRST_DAY_OF_WEEK"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.${s.value}`)),1)]),p("div",vOe,_(l.$t("workouts.WORKOUT",0)),1),p("dl",null,[p("dt",null,_(l.$t("user.PROFILE.UNITS.LABEL"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.UNITS.${l.user.imperial_units?"IMPERIAL":"METRIC"}`)),1),p("dt",null,_(l.$t("user.PROFILE.ASCENT_DATA"))+":",1),p("dd",null,_(l.$t(`common.${u.value}`)),1),p("dt",null,_(l.$t("user.PROFILE.ELEVATION_CHART_START.LABEL"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.ELEVATION_CHART_START.${l.user.start_elevation_at_zero?"ZERO":"MIN_ALT"}`)),1),p("dt",null,_(l.$t("user.PROFILE.USE_RAW_GPX_SPEED.LABEL"))+":",1),p("dd",null,_(l.$t(`user.PROFILE.USE_RAW_GPX_SPEED.${l.user.use_raw_gpx_speed?"RAW_SPEED":"FILTERED_SPEED"}`)),1),p("div",ROe,[p("span",null,[bOe,K(" "+_(l.$t("user.PROFILE.USE_RAW_GPX_SPEED.HELP")),1)])])]),p("div",NOe,[p("button",{onClick:f[0]||(f[0]=d=>l.$router.push("/profile/edit/preferences"))},_(l.$t("user.PROFILE.EDIT_PREFERENCES")),1),p("button",{onClick:f[1]||(f[1]=d=>l.$router.push("/"))},_(l.$t("common.HOME")),1)])]))}}),yOe=ae(COe,[["__scopeId","data-v-b0528e22"]]),DOe={id:"user-profile-edition",class:"center-card"},POe=Q({__name:"index",props:{user:{},tab:{}},setup(e){const t=e,n=$e(),{user:r,tab:a}=_e(t),s=["PROFILE","ACCOUNT","PICTURE","PREFERENCES","SPORTS","PRIVACY-POLICY"],o=$(()=>n.getters[Y.GETTERS.USER_LOADING]);return(i,u)=>{const c=ue("router-view"),l=ue("Card");return T(),N("div",DOe,[M(l,null,{title:fe(()=>[K(_(i.$t(`user.PROFILE.${h(a)}_EDITION`)),1)]),content:fe(()=>[M(vA,{tabs:s,selectedTab:h(a),edition:!0,disabled:o.value},null,8,["selectedTab","disabled"]),M(c,{user:h(r)},null,8,["user"])]),_:1})])}}}),Js=new Map,wOe=e=>{const{method:t,url:n,params:r={},data:a={}}=e;return[t,n,JSON.stringify(r),JSON.stringify(a)].join("")},fs=e=>{const t=wOe(e);if(Js.has(t)){const n=Js.get(t)||{};n==null||n.abort(),Js.delete(t)}return t},Ur=N1.create({baseURL:wo()});Ur.interceptors.request.use(e=>{const t=new AbortController;e.signal=t.signal;const n=fs(e);return Js.set(n,t),e},e=>Promise.reject(e));Ur.interceptors.response.use(e=>(fs(e.config),e),e=>(e.message!=="canceled"&&e.response&&fs(e.response.config),Promise.reject(e)));const bA=(e,t)=>{e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.delete(`users/${t.username}`).then(n=>{n.status===204?t.fromAdmin?_t.push("/admin/users"):e.dispatch(Y.ACTIONS.LOGOUT).then(()=>_t.push("/")):he(e,null)}).catch(n=>he(e,n))},LOe={[Ce.ACTIONS.EMPTY_USER](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_USER,{})},[Ce.ACTIONS.EMPTY_USERS](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_USERS,[]),e.commit(Ce.MUTATIONS.UPDATE_USERS_PAGINATION,{})},[Ce.ACTIONS.GET_USER](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!0),Be.get(`users/${t}`).then(n=>{n.data.status==="success"?e.commit(Ce.MUTATIONS.UPDATE_USER,n.data.data.users[0]):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!1))},[Ce.ACTIONS.GET_USERS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!0),Be.get("users",{params:t}).then(n=>{n.data.status==="success"?(e.commit(Ce.MUTATIONS.UPDATE_USERS,n.data.data.users),e.commit(Ce.MUTATIONS.UPDATE_USERS_PAGINATION,n.data.pagination)):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!1))},[Ce.ACTIONS.UPDATE_USER](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ce.MUTATIONS.UPDATE_IS_SUCCESS,!1);const n={};t.admin!==void 0&&(n.admin=t.admin),t.resetPassword&&(n.reset_password=t.resetPassword),t.activate&&(n.activate=t.activate),t.new_email!==void 0&&(n.new_email=t.new_email),Be.patch(`users/${t.username}`,n).then(r=>{r.data.status==="success"?(e.commit(Ce.MUTATIONS.UPDATE_USER_IN_USERS,r.data.data.users[0]),(t.resetPassword||t.new_email)&&e.commit(Ce.MUTATIONS.UPDATE_IS_SUCCESS,!0),(t.activate||t.new_email)&&e.commit(Ce.MUTATIONS.UPDATE_USER,r.data.data.users[0])):he(e,null)}).catch(r=>he(e,r)).finally(()=>e.commit(Ce.MUTATIONS.UPDATE_USERS_LOADING,!1))},[Ce.ACTIONS.DELETE_USER_ACCOUNT](e,t){bA(e,{username:t.username,fromAdmin:!0})}},_i=e=>{localStorage.removeItem("authToken"),e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Kr.MUTATIONS.EMPTY_USER_STATS),e.commit(Y.MUTATIONS.CLEAR_AUTH_USER_TOKEN),e.commit(Ce.MUTATIONS.UPDATE_USERS,[]),e.commit(Te.MUTATIONS.EMPTY_WORKOUTS),e.commit(Te.MUTATIONS.EMPTY_WORKOUT),_t.push("/login")},$Oe={[Y.ACTIONS.CHECK_AUTH_USER](e){window.localStorage.authToken&&!e.getters[Y.GETTERS.IS_AUTHENTICATED]&&(e.commit(Y.MUTATIONS.UPDATE_AUTH_TOKEN,window.localStorage.authToken),e.dispatch(Y.ACTIONS.GET_USER_PROFILE,!0)),!window.localStorage.authToken&&e.getters[Y.GETTERS.IS_AUTHENTICATED]&&_i(e)},[Y.ACTIONS.CONFIRM_ACCOUNT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Ur.post("auth/account/confirm",{token:t.token}).then(n=>{if(n.data.status==="success"){const r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(Y.MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/"))}else he(e,null)}).catch(n=>{he(e,n)})},[Y.ACTIONS.CONFIRM_EMAIL](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!1),Ur.post("/auth/email/update",{token:t.token}).then(n=>{n.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!0),t.refreshUser&&e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/profile/edit/account")),_t.push("/profile/edit/account")):he(e,null)}).catch(n=>{he(e,n)})},[Y.ACTIONS.GET_USER_PROFILE](e,t=!1){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("auth/profile").then(n=>{if(n.data.status==="success"){const r=e.getters[Y.GETTERS.IS_PROFILE_NOT_LOADED];e.commit(Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE,n.data.data),n.data.data.accepted_privacy_policy||e.dispatch(H.ACTIONS.GET_APPLICATION_PRIVACY_POLICY),(r||t)&&(n.data.data.language&&e.dispatch(H.ACTIONS.UPDATE_APPLICATION_LANGUAGE,n.data.data.language),e.commit(H.MUTATIONS.UPDATE_DARK_MODE,n.data.data.use_dark_mode)),e.dispatch($t.ACTIONS.GET_SPORTS)}else he(e,null),_i(e)}).catch(n=>{n.message!=="canceled"&&(he(e,n),_i(e))})},[Y.ACTIONS.LOGIN_OR_REGISTER](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_IS_REGISTRATION_SUCCESS,!1),Ur.post(`/auth/${t.actionType}`,t.formData).then(n=>{if(n.data.status==="success")if(t.actionType==="login"){const r=n.data.auth_token;window.localStorage.setItem("authToken",r),e.commit(Y.MUTATIONS.UPDATE_AUTH_TOKEN,r),e.dispatch(Y.ACTIONS.GET_USER_PROFILE,!0).then(()=>_t.push(typeof t.redirectUrl=="string"?t.redirectUrl:"/"))}else _t.push("/login").then(()=>e.commit(Y.MUTATIONS.UPDATE_IS_REGISTRATION_SUCCESS,!0));else he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.LOGOUT](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.post("auth/logout").then(t=>{t.data.status==="success"?_i(e):he(e,null)}).catch(t=>he(e,t))},[Y.ACTIONS.UPDATE_USER_PROFILE](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.post("auth/profile/edit",t).then(n=>{n.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE,n.data.data),_t.push("/profile")):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.UPDATE_USER_ACCOUNT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),e.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!1),Be.patch("auth/profile/edit/account",t).then(n=>{n.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE,n.data.data),e.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!0)):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.UPDATE_USER_PREFERENCES](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.post("auth/profile/edit/preferences",t).then(n=>{n.data.status==="success"?(e.commit(Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE,n.data.data),e.commit(H.MUTATIONS.UPDATE_DARK_MODE,n.data.data.use_dark_mode),e.dispatch(H.ACTIONS.UPDATE_APPLICATION_LANGUAGE,n.data.data.language).then(()=>_t.push("/profile/preferences"))):he(e,null)}).catch(n=>he(e,n)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.RESET_USER_SPORT_PREFERENCES](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.delete(`auth/profile/reset/sports/${t}`).then(n=>{n.status===204?e.dispatch($t.ACTIONS.GET_SPORTS):he(e,null)}).catch(n=>{he(e,n),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1)})},[Y.ACTIONS.UPDATE_USER_SPORT_PREFERENCES](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.post("auth/profile/edit/sports",t).then(n=>{n.data.status==="success"?e.dispatch($t.ACTIONS.GET_SPORTS):he(e,null)}).catch(n=>{he(e,n),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1)})},[Y.ACTIONS.UPDATE_USER_PICTURE](e,t){if(e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),!t.picture)throw new Error("No file part");const n=new FormData;n.append("file",t.picture),Be.post("auth/picture",n,{headers:{"content-type":"multipart/form-data"}}).then(r=>{r.data.status==="success"?e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/profile")):he(e,null)}).catch(r=>he(e,r)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.DELETE_ACCOUNT](e,t){bA(e,t)},[Y.ACTIONS.DELETE_PICTURE](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!0),Be.delete("auth/picture").then(t=>{t.status===204?e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/profile")):he(e,null)}).catch(t=>he(e,t)).finally(()=>e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1))},[Y.ACTIONS.SEND_PASSWORD_RESET_REQUEST](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Ur.post("auth/password/reset-request",t).then(n=>{n.data.status==="success"?_t.push("/password-reset/sent"):he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.RESEND_ACCOUNT_CONFIRMATION_EMAIL](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Ur.post("auth/account/resend-confirmation",t).then(n=>{n.data.status==="success"?_t.push("/account-confirmation/email-sent"):he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.RESET_USER_PASSWORD](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Ur.post("auth/password/update",t).then(n=>{n.data.status==="success"?_t.push("/password-reset/password-updated"):he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.ACCEPT_PRIVACY_POLICY](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.post("auth/account/privacy-policy",{accepted_policy:t}).then(n=>{n.data.status==="success"?e.dispatch(Y.ACTIONS.GET_USER_PROFILE).then(()=>_t.push("/profile")):he(e,null)}).catch(n=>he(e,n))},[Y.ACTIONS.REQUEST_DATA_EXPORT](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.post("auth/account/export/request").then(t=>{t.data.status==="success"?e.commit(Y.MUTATIONS.SET_EXPORT_REQUEST,t.data.request):he(e,null)}).catch(t=>he(e,t))},[Y.ACTIONS.GET_REQUEST_DATA_EXPORT](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("auth/account/export").then(t=>{t.data.status==="success"?e.commit(Y.MUTATIONS.SET_EXPORT_REQUEST,t.data.request):he(e,null)}).catch(t=>he(e,t))}},kOe={[Y.GETTERS.AUTH_TOKEN]:e=>e.authToken,[Y.GETTERS.AUTH_USER_PROFILE]:e=>e.authUserProfile,[Y.GETTERS.EXPORT_REQUEST]:e=>e.exportRequest,[Y.GETTERS.IS_AUTHENTICATED]:e=>e.authToken!==null,[Y.GETTERS.IS_ADMIN]:e=>e.authUserProfile&&e.authUserProfile.admin,[Y.GETTERS.IS_REGISTRATION_SUCCESS]:e=>e.isRegistrationSuccess,[Y.GETTERS.IS_SUCCESS]:e=>e.isSuccess,[Y.GETTERS.USER_LOADING]:e=>e.loading,[Y.GETTERS.IS_PROFILE_NOT_LOADED]:e=>e.authUserProfile.username===void 0},UOe={[Y.MUTATIONS.CLEAR_AUTH_USER_TOKEN](e){e.authToken=null,e.authUserProfile={}},[Y.MUTATIONS.UPDATE_AUTH_TOKEN](e,t){e.authToken=t},[Y.MUTATIONS.UPDATE_AUTH_USER_PROFILE](e,t){e.authUserProfile=t},[Y.MUTATIONS.UPDATE_IS_REGISTRATION_SUCCESS](e,t){e.isRegistrationSuccess=t},[Y.MUTATIONS.UPDATE_IS_SUCCESS](e,t){e.isSuccess=t},[Y.MUTATIONS.UPDATE_USER_LOADING](e,t){e.loading=t},[Y.MUTATIONS.SET_EXPORT_REQUEST](e,t){e.exportRequest=t}},MOe={authToken:null,authUserProfile:{},isSuccess:!1,isRegistrationSuccess:!1,loading:!1,exportRequest:null},xOe={state:MOe,actions:$Oe,getters:kOe,mutations:UOe},th=(e,t)=>{e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get(t).then(n=>{n.data.status==="success"?e.commit(Ve.MUTATIONS.SET_CLIENT,n.data.data.client):he(e,null)}).catch(n=>he(e,n))},FOe={[Ve.ACTIONS.AUTHORIZE_CLIENT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES);const n=new FormData;n.set("client_id",t.client_id),n.set("response_type",t.response_type),n.set("scope",t.scope),n.set("confirm","true"),t.state&&n.set("state",t.state),t.code_challenge&&n.set("code_challenge",t.code_challenge),t.code_challenge_method&&n.set("code_challenge_method",t.code_challenge_method),Be.post("oauth/authorize",n,{headers:{"Content-Type":"multipart/form-data"}}).then(r=>{r.status==200&&r.data.redirect_url?window.location.href=r.data.redirect_url:he(e,null)}).catch(r=>he(e,r))},[Ve.ACTIONS.CREATE_CLIENT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.post("oauth/apps",t).then(n=>{n.data.status==="created"?(e.commit(Ve.MUTATIONS.SET_CLIENT,n.data.data.client),_t.push(`/profile/apps/${n.data.data.client.id}/created`)):he(e,null)}).catch(n=>he(e,n))},[Ve.ACTIONS.DELETE_CLIENT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.delete(`oauth/apps/${t}`).then(n=>{n.status===204?e.dispatch(Ve.ACTIONS.GET_CLIENTS).then(()=>_t.push("/profile/apps")):he(e,null)}).catch(n=>he(e,n))},[Ve.ACTIONS.GET_CLIENT_BY_CLIENT_ID](e,t){th(e,`oauth/apps/${t}`)},[Ve.ACTIONS.GET_CLIENT_BY_ID](e,t){th(e,`oauth/apps/${t}/by_id`)},[Ve.ACTIONS.GET_CLIENTS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("oauth/apps",{params:t}).then(n=>{n.data.status==="success"?(e.commit(Ve.MUTATIONS.SET_CLIENTS,n.data.data.clients),e.commit(Ve.MUTATIONS.SET_CLIENTS_PAGINATION,n.data.pagination)):he(e,null)}).catch(n=>he(e,n))},[Ve.ACTIONS.REVOKE_ALL_TOKENS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Ve.MUTATIONS.SET_REVOCATION_SUCCESSFUL,!1),Be.post(`oauth/apps/${t}/revoke`).then(n=>{n.data.status==="success"?e.commit(Ve.MUTATIONS.SET_REVOCATION_SUCCESSFUL,!0):he(e,null)}).catch(n=>he(e,n))}},WOe={[Ve.GETTERS.CLIENT]:e=>e.client,[Ve.GETTERS.CLIENTS]:e=>e.clients,[Ve.GETTERS.CLIENTS_PAGINATION]:e=>e.pagination,[Ve.GETTERS.REVOCATION_SUCCESSFUL]:e=>e.revocationSuccessful},GOe={[Ve.MUTATIONS.SET_CLIENT](e,t){e.client=t},[Ve.MUTATIONS.EMPTY_CLIENT](e){e.client={}},[Ve.MUTATIONS.SET_CLIENTS](e,t){e.clients=t},[Ve.MUTATIONS.SET_CLIENTS_PAGINATION](e,t){e.pagination=t},[Ve.MUTATIONS.SET_REVOCATION_SUCCESSFUL](e,t){e.revocationSuccessful=t}},zOe={client:{},clients:[],pagination:{},revocationSuccessful:!1},BOe={state:zOe,actions:FOe,getters:WOe,mutations:GOe},{locale:HOe}=ga.global,jOe={[H.ACTIONS.GET_APPLICATION_CONFIG](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(H.MUTATIONS.UPDATE_APPLICATION_LOADING,!0),Be.get("config").then(t=>{t.data.status==="success"?e.commit(H.MUTATIONS.UPDATE_APPLICATION_CONFIG,t.data.data):he(e,null)}).catch(t=>he(e,t)).finally(()=>e.commit(H.MUTATIONS.UPDATE_APPLICATION_LOADING,!1))},[H.ACTIONS.GET_APPLICATION_STATS](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("stats/all").then(t=>{t.data.status==="success"?e.commit(H.MUTATIONS.UPDATE_APPLICATION_STATS,t.data.data):he(e,null)}).catch(t=>he(e,t))},[H.ACTIONS.GET_APPLICATION_PRIVACY_POLICY](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("config").then(t=>{t.data.status==="success"?e.commit(H.MUTATIONS.UPDATE_APPLICATION_PRIVACY_POLICY,t.data.data):he(e,null)}).catch(t=>he(e,t))},[H.ACTIONS.UPDATE_APPLICATION_CONFIG](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.patch("config",t).then(n=>{n.data.status==="success"?(e.commit(H.MUTATIONS.UPDATE_APPLICATION_CONFIG,n.data.data),_t.push("/admin/application")):he(e,null)}).catch(n=>he(e,n))},[H.ACTIONS.UPDATE_APPLICATION_LANGUAGE](e,t){var n;(n=document.querySelector("html"))==null||n.setAttribute("lang",t),e.commit(H.MUTATIONS.UPDATE_LANG,t),HOe.value=t}},VOe={[H.GETTERS.APP_CONFIG]:e=>e.application.config,[H.GETTERS.APP_LOADING]:e=>e.appLoading,[H.GETTERS.APP_STATS]:e=>e.application.statistics,[H.GETTERS.DARK_MODE]:e=>e.darkMode,[H.GETTERS.ERROR_MESSAGES]:e=>e.errorMessages,[H.GETTERS.LANGUAGE]:e=>e.language,[H.GETTERS.LOCALE]:e=>e.locale},KOe={[H.MUTATIONS.EMPTY_ERROR_MESSAGES](e){e.errorMessages=null},[H.MUTATIONS.SET_ERROR_MESSAGES](e,t){e.errorMessages=t},[H.MUTATIONS.UPDATE_APPLICATION_CONFIG](e,t){e.application.config=t},[H.MUTATIONS.UPDATE_APPLICATION_LOADING](e,t){e.appLoading=t},[H.MUTATIONS.UPDATE_APPLICATION_PRIVACY_POLICY](e,t){e.application.config.privacy_policy=t.privacy_policy,e.application.config.privacy_policy_date=t.privacy_policy_date},[H.MUTATIONS.UPDATE_APPLICATION_STATS](e,t){e.application.statistics=t},[H.MUTATIONS.UPDATE_LANG](e,t){e.language=t,e.locale=Mo[t]},[H.MUTATIONS.UPDATE_DARK_MODE](e,t){e.darkMode=t}},YOe={root:!0,language:"en",locale:dc,errorMessages:null,application:{statistics:{sports:0,uploads_dir_size:0,users:0,workouts:0}},appLoading:!1,darkMode:null},qOe={[$t.ACTIONS.GET_SPORTS](e){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("sports").then(t=>{t.data.status==="success"?(e.commit($t.MUTATIONS.SET_SPORTS,t.data.data.sports),e.commit(Y.MUTATIONS.UPDATE_USER_LOADING,!1)):he(e,null)}).catch(t=>he(e,t))},[$t.ACTIONS.UPDATE_SPORTS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.patch(`sports/${t.id}`,{is_active:t.isActive}).then(n=>{n.data.status==="success"?e.dispatch($t.ACTIONS.GET_SPORTS):he(e,null)}).catch(n=>he(e,n))}},XOe={[$t.GETTERS.SPORTS]:e=>e.sports},ZOe={[$t.MUTATIONS.SET_SPORTS](e,t){e.sports=t}},QOe={sports:[]},JOe={state:QOe,actions:qOe,getters:XOe,mutations:ZOe},eIe={[Kr.ACTIONS.GET_USER_STATS](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get(`stats/${t.username}/${t.filterType}`,{params:t.params}).then(n=>{n.data.status==="success"?e.commit(Kr.MUTATIONS.UPDATE_USER_STATS,n.data.data.statistics):he(e,null)}).catch(n=>he(e,n))}},tIe={[Kr.GETTERS.USER_STATS]:e=>e.statistics},nIe={[Kr.MUTATIONS.UPDATE_USER_STATS](e,t){e.statistics=t},[Kr.MUTATIONS.EMPTY_USER_STATS](e){e.statistics={}}},rIe={statistics:{}},aIe={state:rIe,actions:eIe,getters:tIe,mutations:nIe},sIe={[Ce.GETTERS.USER]:e=>e.user,[Ce.GETTERS.USERS]:e=>e.users,[Ce.GETTERS.USERS_IS_SUCCESS]:e=>e.isSuccess,[Ce.GETTERS.USERS_LOADING]:e=>e.loading,[Ce.GETTERS.USERS_PAGINATION]:e=>e.pagination},oIe={[Ce.MUTATIONS.UPDATE_USER](e,t){e.user=t},[Ce.MUTATIONS.UPDATE_USER_IN_USERS](e,t){e.users=e.users.map(n=>n.username===t.username?t:n)},[Ce.MUTATIONS.UPDATE_USERS](e,t){e.users=t},[Ce.MUTATIONS.UPDATE_USERS_LOADING](e,t){e.loading=t},[Ce.MUTATIONS.UPDATE_USERS_PAGINATION](e,t){e.pagination=t},[Ce.MUTATIONS.UPDATE_IS_SUCCESS](e,t){e.isSuccess=t}},iIe={user:{},users:[],loading:!1,isSuccess:!1,pagination:{}},uIe={state:iIe,actions:LOe,getters:sIe,mutations:oIe},Ti=(e,t,n)=>{e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),Be.get("workouts",{params:t}).then(r=>{r.data.status==="success"?(e.commit(Te.MUTATIONS[n],r.data.data.workouts),n===ca.SET_USER_WORKOUTS&&e.commit(Te.MUTATIONS.SET_WORKOUTS_PAGINATION,r.data.pagination)):he(e,null)}).catch(r=>he(e,r))},cIe={[Te.ACTIONS.GET_CALENDAR_WORKOUTS](e,t){e.commit(Te.MUTATIONS.EMPTY_CALENDAR_WORKOUTS),Ti(e,t,ca.SET_CALENDAR_WORKOUTS)},[Te.ACTIONS.GET_USER_WORKOUTS](e,t){Ti(e,t,ca.SET_USER_WORKOUTS)},[Te.ACTIONS.GET_TIMELINE_WORKOUTS](e,t){Ti(e,t,ca.SET_TIMELINE_WORKOUTS)},[Te.ACTIONS.GET_MORE_TIMELINE_WORKOUTS](e,t){Ti(e,t,ca.ADD_TIMELINE_WORKOUTS)},[Te.ACTIONS.GET_WORKOUT_DATA](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0);const n=t.segmentId?`/segment/${t.segmentId}`:"";Be.get(`workouts/${t.workoutId}`).then(r=>{const a=r.data.data.workouts[0];if(r.data.status==="success"){if(t.segmentId&&(a.segments.length===0||!a.segments[+t.segmentId-1]))throw new Error("WORKOUT_NOT_FOUND");e.commit(Te.MUTATIONS.SET_WORKOUT,r.data.data.workouts[0]),r.data.data.workouts[0].with_gpx&&(Be.get(`workouts/${t.workoutId}/chart_data${n}`).then(s=>{s.data.status==="success"&&e.commit(Te.MUTATIONS.SET_WORKOUT_CHART_DATA,s.data.data.chart_data)}),Be.get(`workouts/${t.workoutId}/gpx${n}`).then(s=>{s.data.status==="success"&&e.commit(Te.MUTATIONS.SET_WORKOUT_GPX,s.data.data.gpx)}))}else e.commit(Te.MUTATIONS.EMPTY_WORKOUT),he(e,null)}).catch(r=>{e.commit(Te.MUTATIONS.EMPTY_WORKOUT),he(e,r)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))},[Te.ACTIONS.DELETE_WORKOUT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0),Be.delete(`workouts/${t.workoutId}`).then(()=>{e.commit(Te.MUTATIONS.EMPTY_WORKOUT),e.dispatch(Y.ACTIONS.GET_USER_PROFILE),_t.push("/")}).catch(n=>{he(e,n)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))},[Te.ACTIONS.EDIT_WORKOUT](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0),Be.patch(`workouts/${t.workoutId}`,t.data).then(()=>{e.dispatch(Y.ACTIONS.GET_USER_PROFILE),e.dispatch(Te.ACTIONS.GET_WORKOUT_DATA,{workoutId:t.workoutId}).then(()=>{_t.push({name:"Workout",params:{workoutId:t.workoutId}})})}).catch(n=>{he(e,n)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))},[Te.ACTIONS.ADD_WORKOUT](e,t){if(e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0),!t.file)throw new Error("No file part");const n=t.notes.replace(/"/g,'\\"'),r=new FormData;r.append("file",t.file),r.append("data",`{"sport_id": ${t.sport_id}, "notes": "${n}"}`),Be.post("workouts",r,{headers:{"content-type":"multipart/form-data"}}).then(a=>{if(a.data.status==="created"){e.dispatch(Y.ACTIONS.GET_USER_PROFILE);const s=a.data.data.workouts[0];_t.push(a.data.data.workouts.length===1?`/workouts/${s.id}`:"/")}}).catch(a=>{he(e,a)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))},[Te.ACTIONS.ADD_WORKOUT_WITHOUT_GPX](e,t){e.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!0),Be.post("workouts/no_gpx",t).then(n=>{if(n.data.status==="created"){e.dispatch(Y.ACTIONS.GET_USER_PROFILE);const r=n.data.data.workouts[0];_t.push(`/workouts/${r.id}`)}}).catch(n=>{he(e,n)}).finally(()=>e.commit(Te.MUTATIONS.SET_WORKOUT_LOADING,!1))}},lIe={[Te.GETTERS.CALENDAR_WORKOUTS]:e=>e.calendar_workouts,[Te.GETTERS.TIMELINE_WORKOUTS]:e=>e.timeline_workouts,[Te.GETTERS.USER_WORKOUTS]:e=>e.user_workouts,[Te.GETTERS.WORKOUT_DATA]:e=>e.workoutData,[Te.GETTERS.WORKOUTS_PAGINATION]:e=>e.pagination},dIe={[Te.MUTATIONS.ADD_TIMELINE_WORKOUTS](e,t){e.timeline_workouts=e.timeline_workouts.concat(t)},[Te.MUTATIONS.SET_CALENDAR_WORKOUTS](e,t){e.calendar_workouts=t},[Te.MUTATIONS.SET_TIMELINE_WORKOUTS](e,t){e.timeline_workouts=t},[Te.MUTATIONS.SET_USER_WORKOUTS](e,t){e.user_workouts=t},[Te.MUTATIONS.SET_WORKOUTS_PAGINATION](e,t){e.pagination=t},[Te.MUTATIONS.SET_WORKOUT](e,t){e.workoutData.workout=t},[Te.MUTATIONS.SET_WORKOUT_CHART_DATA](e,t){e.workoutData.chartData=t},[Te.MUTATIONS.SET_WORKOUT_GPX](e,t){e.workoutData.gpx=t},[Te.MUTATIONS.SET_WORKOUT_LOADING](e,t){e.workoutData.loading=t},[Te.MUTATIONS.EMPTY_CALENDAR_WORKOUTS](e){e.calendar_workouts=[]},[Te.MUTATIONS.EMPTY_WORKOUTS](e){e.calendar_workouts=[],e.user_workouts=[],e.timeline_workouts=[]},[Te.MUTATIONS.EMPTY_WORKOUT](e){e.workoutData={gpx:"",loading:!1,workout:{},chartData:[]}}},fIe={calendar_workouts:[],timeline_workouts:[],pagination:{},user_workouts:[],workoutData:{gpx:"",loading:!1,workout:{},chartData:[]}},pIe={state:fIe,actions:cIe,getters:lIe,mutations:dIe},mIe={authUserModule:xOe,oAuthModule:BOe,sportsModule:JOe,statsModule:aIe,usersModule:uIe,workoutsModule:pIe},EIe={state:YOe,actions:jOe,getters:VOe,mutations:KOe,modules:mIe},eo=dN(EIe),g0=N1.create({baseURL:wo()});g0.interceptors.request.use(e=>{const t=new AbortController;e.signal=t.signal;const n=fs(e);Js.set(n,t);const r=eo.getters[Y.GETTERS.AUTH_TOKEN];if(r){const a=`Bearer ${r}`;e.headers&&e.headers.Authorization!==a&&(e.headers.Authorization=`Bearer ${r}`)}return e},e=>Promise.reject(e));g0.interceptors.response.use(e=>(fs(e.config),e),e=>(e.message!=="canceled"&&e.response&&fs(e.response.config),Promise.reject(e)));const Be=g0,Hd=(e,t)=>e.push.apply(e,t),ps=e=>e.sort((t,n)=>t.i-n.i||t.j-n.j),nh=e=>{const t={};let n=1;return e.forEach(r=>{t[r]=n,n+=1}),t};var hIe={4:[[1,2],[2,3]],5:[[1,3],[2,3],[2,4]],6:[[1,2],[2,4],[4,5]],7:[[1,3],[2,3],[4,5],[4,6]],8:[[2,4],[4,6]]};const rh=2050,ah=1e3,_Ie=hIe,TIe=10,gIe=1e4,NA=10,CA=50,yA=20,DA=/^[A-Z\xbf-\xdf][^A-Z\xbf-\xdf]+$/,AIe=/^[^A-Z\xbf-\xdf]+[A-Z\xbf-\xdf]$/,SIe=/^[A-Z\xbf-\xdf]+$/,PA=/^[^a-z\xdf-\xff]+$/,OIe=/^[a-z\xdf-\xff]+$/,IIe=/^[^A-Z\xbf-\xdf]+$/,vIe=/[a-z\xdf-\xff]/,RIe=/[A-Z\xbf-\xdf]/,bIe=/[^A-Za-z\xbf-\xdf]/gi,NIe=/^\d+$/,A0=new Date().getFullYear(),CIe={recentYear:/19\d\d|200\d|201\d|202\d/g},wA=[" ",",",";",":","|","/","\\","_",".","-"],yIe=wA.length;class DIe{match({password:t}){const n=[...this.getMatchesWithoutSeparator(t),...this.getMatchesWithSeparator(t)],r=this.filterNoise(n);return ps(r)}getMatchesWithSeparator(t){const n=[],r=/^(\d{1,4})([\s/\\_.-])(\d{1,2})\2(\d{1,4})$/;for(let a=0;a<=Math.abs(t.length-6);a+=1)for(let s=a+5;s<=a+9&&!(s>=t.length);s+=1){const o=t.slice(a,+s+1||9e9),i=r.exec(o);if(i!=null){const u=this.mapIntegersToDayMonthYear([parseInt(i[1],10),parseInt(i[3],10),parseInt(i[4],10)]);u!=null&&n.push({pattern:"date",token:o,i:a,j:s,separator:i[2],year:u.year,month:u.month,day:u.day})}}return n}getMatchesWithoutSeparator(t){const n=[],r=/^\d{4,8}$/,a=s=>Math.abs(s.year-A0);for(let s=0;s<=Math.abs(t.length-4);s+=1)for(let o=s+3;o<=s+7&&!(o>=t.length);o+=1){const i=t.slice(s,+o+1||9e9);if(r.exec(i)){const u=[],c=i.length;if(_Ie[c].forEach(([f,d])=>{const m=this.mapIntegersToDayMonthYear([parseInt(i.slice(0,f),10),parseInt(i.slice(f,d),10),parseInt(i.slice(d),10)]);m!=null&&u.push(m)}),u.length>0){let f=u[0],d=a(u[0]);u.slice(1).forEach(m=>{const E=a(m);E{let r=!1;const a=t.length;for(let s=0;s=n.j){r=!0;break}}return!r})}mapIntegersToDayMonthYear(t){if(t[1]>31||t[1]<=0)return null;let n=0,r=0,a=0;for(let s=0,o=t.length;s99&&irh)return null;i>31&&(r+=1),i>12&&(n+=1),i<=0&&(a+=1)}return r>=2||n===3||a>=2?null:this.getDayMonth(t)}getDayMonth(t){const n=[[t[2],t.slice(0,2)],[t[0],t.slice(1,3)]],r=n.length;for(let a=0;a=1&&s<=31&&o>=1&&o<=12)return{day:s,month:o}}return null}twoToFourDigitYear(t){return t>99?t:t>50?t+1900:t+2e3}}const lr=new Uint32Array(65536),PIe=(e,t)=>{const n=e.length,r=t.length,a=1<{const n=t.length,r=e.length,a=[],s=[],o=Math.ceil(n/32),i=Math.ceil(r/32);for(let E=0;E>>R&1,C=a[R/32|0]>>>R&1,w=v|E,k=((v|C)&g)+g^g|v|C;let L=E|~(k|g),z=g&k;L>>>31^A&&(s[R/32|0]^=1<>>31^C&&(a[R/32|0]^=1<>>E&1,I=a[E/32|0]>>>E&1,R=g|c,v=((g|I)&l)+l^l|g|I;let A=c|~(v|l),C=l&v;m+=A>>>r-1&1,m-=C>>>r-1&1,A>>>31^b&&(s[E/32|0]^=1<>>31^I&&(a[E/32|0]^=1<{if(e.length{const r=e.length<=t.length,a=e.length<=n;return r||a?Math.ceil(e.length/4):n},kIe=(e,t,n)=>{let r=0;const a=Object.keys(t).find(s=>{const o=$Ie(e,s,n);if(Math.abs(e.length-s.length)>o)return!1;const i=LIe(e,s),u=i<=o;return u&&(r=i),u});return a?{levenshteinDistance:r,levenshteinDistanceEntry:a}:{}};var sh={a:["4","@"],b:["8"],c:["(","{","[","<"],d:["6","|)"],e:["3"],f:["#"],g:["6","9","&"],h:["#","|-|"],i:["1","!","|"],k:["<","|<"],l:["!","1","|","7"],m:["^^","nn","2n","/\\\\/\\\\"],n:["//"],o:["0","()"],q:["9"],u:["|_|"],s:["$","5"],t:["+","7"],v:["<",">","/"],w:["^/","uu","vv","2u","2v","\\\\/\\\\/"],x:["%","><"],z:["2"]},_l={warnings:{straightRow:"straightRow",keyPattern:"keyPattern",simpleRepeat:"simpleRepeat",extendedRepeat:"extendedRepeat",sequences:"sequences",recentYears:"recentYears",dates:"dates",topTen:"topTen",topHundred:"topHundred",common:"common",similarToCommon:"similarToCommon",wordByItself:"wordByItself",namesByThemselves:"namesByThemselves",commonNames:"commonNames",userInputs:"userInputs",pwned:"pwned"},suggestions:{l33t:"l33t",reverseWords:"reverseWords",allUppercase:"allUppercase",capitalization:"capitalization",dates:"dates",recentYears:"recentYears",associatedYears:"associatedYears",sequences:"sequences",repeated:"repeated",longerKeyboardPattern:"longerKeyboardPattern",anotherWord:"anotherWord",useWords:"useWords",noNeed:"noNeed",pwned:"pwned"},timeEstimation:{ltSecond:"ltSecond",second:"second",seconds:"seconds",minute:"minute",minutes:"minutes",hour:"hour",hours:"hours",day:"day",days:"days",month:"month",months:"months",year:"year",years:"years",centuries:"centuries"}};class Ro{constructor(t=[]){this.parents=t,this.children=new Map}addSub(t,...n){const r=t.charAt(0);this.children.has(r)||this.children.set(r,new Ro([...this.parents,r]));let a=this.children.get(r);for(let s=1;s(Object.entries(e).forEach(([n,r])=>{r.forEach(a=>{t.addSub(a,n)})}),t);class UIe{constructor(){this.matchers={},this.l33tTable=sh,this.trieNodeRoot=oh(sh,new Ro),this.dictionary={userInputs:[]},this.rankedDictionaries={},this.rankedDictionariesMaxWordSize={},this.translations=_l,this.graphs={},this.useLevenshteinDistance=!1,this.levenshteinThreshold=2,this.l33tMaxSubstitutions=100,this.maxLength=256,this.setRankedDictionaries()}setOptions(t={}){t.l33tTable&&(this.l33tTable=t.l33tTable,this.trieNodeRoot=oh(t.l33tTable,new Ro)),t.dictionary&&(this.dictionary=t.dictionary,this.setRankedDictionaries()),t.translations&&this.setTranslations(t.translations),t.graphs&&(this.graphs=t.graphs),t.useLevenshteinDistance!==void 0&&(this.useLevenshteinDistance=t.useLevenshteinDistance),t.levenshteinThreshold!==void 0&&(this.levenshteinThreshold=t.levenshteinThreshold),t.l33tMaxSubstitutions!==void 0&&(this.l33tMaxSubstitutions=t.l33tMaxSubstitutions),t.maxLength!==void 0&&(this.maxLength=t.maxLength)}setTranslations(t){if(this.checkCustomTranslations(t))this.translations=t;else throw new Error("Invalid translations object fallback to keys")}checkCustomTranslations(t){let n=!0;return Object.keys(_l).forEach(r=>{if(r in t){const a=r;Object.keys(_l[a]).forEach(s=>{s in t[a]||(n=!1)})}else n=!1}),n}setRankedDictionaries(){const t={},n={};Object.keys(this.dictionary).forEach(r=>{t[r]=nh(this.dictionary[r]),n[r]=this.getRankedDictionariesMaxWordSize(this.dictionary[r])}),this.rankedDictionaries=t,this.rankedDictionariesMaxWordSize=n}getRankedDictionariesMaxWordSize(t){const n=t.map(r=>typeof r!="string"?r.toString().length:r.length);return n.length===0?0:n.reduce((r,a)=>Math.max(r,a),-1/0)}buildSanitizedRankedDictionary(t){const n=[];return t.forEach(r=>{const a=typeof r;(a==="string"||a==="number"||a==="boolean")&&n.push(r.toString().toLowerCase())}),nh(n)}extendUserInputsDictionary(t){this.dictionary.userInputs||(this.dictionary.userInputs=[]);const n=[...this.dictionary.userInputs,...t];this.rankedDictionaries.userInputs=this.buildSanitizedRankedDictionary(n),this.rankedDictionariesMaxWordSize.userInputs=this.getRankedDictionariesMaxWordSize(n)}addMatcher(t,n){this.matchers[t]?console.info(`Matcher ${t} already exists`):this.matchers[t]=n}}const Re=new UIe;class MIe{constructor(t){this.defaultMatch=t}match({password:t}){const n=t.split("").reverse().join("");return this.defaultMatch({password:n}).map(r=>({...r,token:r.token.split("").reverse().join(""),reversed:!0,i:t.length-1-r.j,j:t.length-1-r.i}))}}class xIe{constructor({substr:t,limit:n,trieRoot:r}){this.buffer=[],this.finalPasswords=[],this.substr=t,this.limit=n,this.trieRoot=r}getAllPossibleSubsAtIndex(t){const n=[];let r=this.trieRoot;for(let a=t;a=this.limit)return;if(r===this.substr.length){t===n&&this.finalPasswords.push({password:this.buffer.join(""),changes:s});return}const u=[...this.getAllPossibleSubsAtIndex(r)];let c=!1;for(let l=r+u.length-1;l>=r;l-=1){const f=u[l-r];if(f.isTerminal()){if(o===f.parents.join("")&&i>=3)continue;c=!0;const d=f.subs;for(const m of d){this.buffer.push(m);const E=s.concat({i:a,letter:m,substitution:f.parents.join("")});if(this.helper({onlyFullSub:t,isFullSub:n,index:l+1,subIndex:a+m.length,changes:E,lastSubLetter:f.parents.join(""),consecutiveSubCount:o===f.parents.join("")?i+1:1}),this.buffer.pop(),this.finalPasswords.length>=this.limit)return}}}if(!t||!c){const l=this.substr.charAt(r);this.buffer.push(l),this.helper({onlyFullSub:t,isFullSub:n&&!c,index:r+1,subIndex:a+1,changes:s,lastSubLetter:o,consecutiveSubCount:i}),this.buffer.pop()}}getAll(){return this.helper({onlyFullSub:!0,isFullSub:!0,index:0,subIndex:0,changes:[],lastSubLetter:void 0,consecutiveSubCount:0}),this.helper({onlyFullSub:!1,isFullSub:!0,index:0,subIndex:0,changes:[],lastSubLetter:void 0,consecutiveSubCount:0}),this.finalPasswords}}const FIe=(e,t,n)=>new xIe({substr:e,limit:t,trieRoot:n}).getAll(),WIe=(e,t,n)=>{const a=e.changes.filter(c=>c.ic-l.letter.length+l.substitution.length,t),s=e.changes.filter(c=>c.i>=t&&c.i<=n),o=s.reduce((c,l)=>c-l.letter.length+l.substitution.length,n-t+a),i=[],u=[];return s.forEach(c=>{i.findIndex(f=>f.letter===c.letter&&f.substitution===c.substitution)<0&&(i.push({letter:c.letter,substitution:c.substitution}),u.push(`${c.substitution} -> ${c.letter}`))}),{i:a,j:o,subs:i,subDisplay:u.join(", ")}};class GIe{constructor(t){this.defaultMatch=t}isAlreadyIncluded(t,n){return t.some(r=>Object.entries(r).every(([a,s])=>a==="subs"||s===n[a]))}match({password:t}){const n=[],r=FIe(t,Re.l33tMaxSubstitutions,Re.trieNodeRoot);let a=!1,s=!0;return r.forEach(o=>{if(a)return;const i=this.defaultMatch({password:o.password,useLevenshtein:s});s=!1,i.forEach(u=>{a||(a=u.i===0&&u.j===t.length-1);const c=WIe(o,u.i,u.j),l=t.slice(c.i,+c.j+1||9e9),f={...u,l33t:!0,token:l,...c},d=this.isAlreadyIncluded(n,f);l.toLowerCase()!==u.matchedWord&&!d&&n.push(f)})}),n.filter(o=>o.token.length>1)}}class zIe{constructor(){this.l33t=new GIe(this.defaultMatch),this.reverse=new MIe(this.defaultMatch)}match({password:t}){const n=[...this.defaultMatch({password:t}),...this.reverse.match({password:t}),...this.l33t.match({password:t})];return ps(n)}defaultMatch({password:t,useLevenshtein:n=!0}){const r=[],a=t.length,s=t.toLowerCase();return Object.keys(Re.rankedDictionaries).forEach(o=>{const i=Re.rankedDictionaries[o],u=Re.rankedDictionariesMaxWordSize[o],c=Math.min(u,a);for(let l=0;l{const s=n[a];s.lastIndex=0;let o;for(;o=s.exec(t);)if(o){const i=o[0];r.push({pattern:"regex",token:i,i:o.index,j:o.index+o[0].length-1,regexName:a,regexMatch:o})}}),ps(r)}}var Oa={nCk(e,t){let n=e;if(t>n)return 0;if(t===0)return 1;let r=1;for(let a=1;a<=t;a+=1)r*=n,r/=a,n-=1;return r},log10(e){return e===0?0:Math.log(e)/Math.log(10)},log2(e){return Math.log(e)/Math.log(2)},factorial(e){let t=1;for(let n=2;n<=e;n+=1)t*=n;return t}},HIe=({token:e})=>{let t=TIe**e.length;t===Number.POSITIVE_INFINITY&&(t=Number.MAX_VALUE);let n;return e.length===1?n=NA+1:n=CA+1,Math.max(t,n)},jIe=({year:e,separator:t})=>{let r=Math.max(Math.abs(e-A0),yA)*365;return t&&(r*=4),r};const VIe=e=>{const t=e.split(""),n=t.filter(o=>o.match(RIe)).length,r=t.filter(o=>o.match(vIe)).length;let a=0;const s=Math.min(n,r);for(let o=1;o<=s;o+=1)a+=Oa.nCk(n+r,o);return a};var KIe=e=>{const t=e.replace(bIe,"");if(t.match(IIe)||t.toLowerCase()===t)return 1;const n=[DA,AIe,PA],r=n.length;for(let a=0;a{let n=0,r=e.indexOf(t);for(;r>=0;)n+=1,r=e.indexOf(t,r+t.length);return n},YIe=({sub:e,token:t})=>{const n=t.toLowerCase(),r=ih(n,e.substitution),a=ih(n,e.letter);return{subbedCount:r,unsubbedCount:a}};var qIe=({l33t:e,subs:t,token:n})=>{if(!e)return 1;let r=1;return t.forEach(a=>{const{subbedCount:s,unsubbedCount:o}=YIe({sub:a,token:n});if(s===0||o===0)r*=2;else{const i=Math.min(o,s);let u=0;for(let c=1;c<=i;c+=1)u+=Oa.nCk(o+s,c);r*=u}}),r},XIe=({rank:e,reversed:t,l33t:n,subs:r,token:a,dictionaryName:s})=>{const o=e,i=KIe(a),u=qIe({l33t:n,subs:r,token:a}),c=t&&2||1;let l;return s==="diceware"?l=6**5/2:l=o*i*u*c,{baseGuesses:o,uppercaseVariations:i,l33tVariations:u,calculation:l}},ZIe=({regexName:e,regexMatch:t,token:n})=>{const r={alphaLower:26,alphaUpper:26,alpha:52,alphanumeric:62,digits:10,symbols:33};if(e in r)return r[e]**n.length;switch(e){case"recentYear":return Math.max(Math.abs(parseInt(t[0],10)-A0),yA)}return 0},QIe=({baseGuesses:e,repeatCount:t})=>e*t,JIe=({token:e,ascending:t})=>{const n=e.charAt(0);let r=0;return["a","A","z","Z","0","1","9"].includes(n)?r=4:n.match(/\d/)?r=10:r=26,t||(r*=2),r*e.length};const eve=e=>{let t=0;return Object.keys(e).forEach(n=>{const r=e[n];t+=r.filter(a=>!!a).length}),t/=Object.entries(e).length,t},tve=({token:e,graph:t,turns:n})=>{const r=Object.keys(Re.graphs[t]).length,a=eve(Re.graphs[t]);let s=0;const o=e.length;for(let i=2;i<=o;i+=1){const u=Math.min(n,i-1);for(let c=1;c<=u;c+=1)s+=Oa.nCk(i-1,c-1)*r*a**c}return s};var nve=({graph:e,token:t,shiftedCount:n,turns:r})=>{let a=tve({token:t,graph:e,turns:r});if(n){const s=t.length-n;if(n===0||s===0)a*=2;else{let o=0;for(let i=1;i<=Math.min(n,s);i+=1)o+=Oa.nCk(n+s,i);a*=o}}return Math.round(a)},rve=()=>yIe;const ave=(e,t)=>{let n=1;return e.token.lengthuh[e]?uh[e](t):Re.matchers[e]&&"scoring"in Re.matchers[e]?Re.matchers[e].scoring(t):0;var ove=(e,t)=>{const n={};if("guesses"in e&&e.guesses!=null)return e;const r=ave(e,t),a=sve(e.pattern,e);let s=0;typeof a=="number"?s=a:e.pattern==="dictionary"&&(s=a.calculation,n.baseGuesses=a.baseGuesses,n.uppercaseVariations=a.uppercaseVariations,n.l33tVariations=a.l33tVariations);const o=Math.max(s,r);return{...e,...n,guesses:o,guessesLog10:Oa.log10(o)}};const pn={password:"",optimal:{},excludeAdditive:!1,separatorRegex:void 0,fillArray(e,t){const n=[];for(let r=0;r1&&(a*=this.optimal.pi[r.i-1][t-1]);let s=Oa.factorial(t)*a;this.excludeAdditive||(s+=gIe**(t-1));let o=!1;Object.keys(this.optimal.g[n]).forEach(i=>{const u=this.optimal.g[n][i];parseInt(i,10)<=t&&u<=s&&(o=!0)}),o||(this.optimal.g[n][t]=s,this.optimal.m[n][t]=r,this.optimal.pi[n][t]=a)},bruteforceUpdate(e){let t=this.makeBruteforceMatch(0,e);this.update(t,1);for(let n=1;n<=e;n+=1){t=this.makeBruteforceMatch(n,e);const r=this.optimal.m[n-1];Object.keys(r).forEach(a=>{r[a].pattern!=="bruteforce"&&this.update(t,parseInt(a,10)+1)})}},unwind(e){const t=[];let n=e-1,r=0,a=1/0;const s=this.optimal.g[n];for(s&&Object.keys(s).forEach(o=>{const i=s[o];i=0;){const o=this.optimal.m[n][r];t.unshift(o),n=o.i-1,r-=1}return t}};var jd={mostGuessableMatchSequence(e,t,n=!1){pn.password=e,pn.excludeAdditive=n;const r=e.length;let a=pn.fillArray(r,"array");t.forEach(u=>{a[u.j].push(u)}),a=a.map(u=>u.sort((c,l)=>c.i-l.i)),pn.optimal={m:pn.fillArray(r,"object"),pi:pn.fillArray(r,"object"),g:pn.fillArray(r,"object")};for(let u=0;u{c.i>0?Object.keys(pn.optimal.m[c.i-1]).forEach(l=>{pn.update(c,parseInt(l,10)+1)}):pn.update(c,1)}),pn.bruteforceUpdate(u);const s=pn.unwind(r),o=s.length,i=this.getGuesses(e,o);return{password:e,guesses:i,guessesLog10:Oa.log10(i),sequence:s}},getGuesses(e,t){const n=e.length;let r=0;return e.length===0?r=1:r=pn.optimal.g[n-1][t],r}};class ive{match({password:t,omniMatch:n}){const r=[];let a=0;for(;ao instanceof Promise)?Promise.all(r):r}normalizeMatch(t,n,r,a){const s={pattern:"repeat",i:r.index,j:n,token:r[0],baseToken:t,baseGuesses:0,repeatCount:r[0].length/t.length};return a instanceof Promise?a.then(o=>({...s,baseGuesses:o})):{...s,baseGuesses:a}}getGreedyMatch(t,n){const r=/(.+)\1+/g;return r.lastIndex=n,r.exec(t)}getLazyMatch(t,n){const r=/(.+?)\1+/g;return r.lastIndex=n,r.exec(t)}setMatchToken(t,n){const r=/^(.+?)\1+$/;let a,s="";if(n&&t[0].length>n[0].length){a=t;const o=r.exec(a[0]);o&&(s=o[1])}else a=n,a&&(s=a[1]);return{match:a,baseToken:s}}getBaseGuesses(t,n){const r=n.match(t);return r instanceof Promise?r.then(s=>jd.mostGuessableMatchSequence(t,s).guesses):jd.mostGuessableMatchSequence(t,r).guesses}}class uve{constructor(){this.MAX_DELTA=5}match({password:t}){const n=[];if(t.length===1)return[];let r=0,a=null;const s=t.length;for(let o=1;o1||Math.abs(r)===1){const o=Math.abs(r);if(o>0&&o<=this.MAX_DELTA){const i=a.slice(t,+n+1||9e9),{sequenceName:u,sequenceSpace:c}=this.getSequence(i);return s.push({pattern:"sequence",i:t,j:n,token:a.slice(t,+n+1||9e9),sequenceName:u,sequenceSpace:c,ascending:r>0})}}return null}getSequence(t){let n="unicode",r=26;return OIe.test(t)?(n="lower",r=26):SIe.test(t)?(n="upper",r=26):NIe.test(t)&&(n="digits",r=10),{sequenceName:n,sequenceSpace:r}}}class cve{constructor(){this.SHIFTED_RX=/[~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>?]/}match({password:t}){const n=[];return Object.keys(Re.graphs).forEach(r=>{const a=Re.graphs[r];Hd(n,this.helper(t,a,r))}),ps(n)}checkIfShifted(t,n,r){return!t.includes("keypad")&&this.SHIFTED_RX.test(n.charAt(r))?1:0}helper(t,n,r){let a;const s=[];let o=0;const i=t.length;for(;o2&&s.push({pattern:"spatial",i:o,j:u-1,token:t.slice(o,u),graph:r,turns:l,shiftedCount:a}),o=u;break}}}return s}}const lve=new RegExp(`[${wA.join("")}]`);class zu{static getMostUsedSeparatorChar(t){const n=[...t.split("").filter(a=>lve.test(a)).reduce((a,s)=>{const o=a.get(s);return o?a.set(s,o+1):a.set(s,1),a},new Map).entries()].sort(([a,s],[o,i])=>i-s);if(!n.length)return;const r=n[0];if(!(r[1]<2))return r[0]}static getSeparatorRegex(t){return new RegExp(`([^${t} ])(${t})(?!${t})`,"g")}match({password:t}){const n=[];if(t.length===0)return n;const r=zu.getMostUsedSeparatorChar(t);if(r===void 0)return n;const a=zu.getSeparatorRegex(r);for(const s of t.matchAll(a)){if(s.index===void 0)continue;const o=s.index+1;n.push({pattern:"separator",token:r,i:o,j:o})}return n}}class dve{constructor(){this.matchers={date:DIe,dictionary:zIe,regex:BIe,repeat:ive,sequence:uve,spatial:cve,separator:zu}}match(t){const n=[],r=[];return[...Object.keys(this.matchers),...Object.keys(Re.matchers)].forEach(s=>{if(!this.matchers[s]&&!Re.matchers[s])return;const o=this.matchers[s]?this.matchers[s]:Re.matchers[s].Matching,u=new o().match({password:t,omniMatch:this});u instanceof Promise?(u.then(c=>{Hd(n,c)}),r.push(u)):Hd(n,u)}),r.length>0?new Promise((s,o)=>{Promise.all(r).then(()=>{s(ps(n))}).catch(i=>{o(i)})}):ps(n)}}const LA=1,$A=LA*60,kA=$A*60,UA=kA*24,MA=UA*31,xA=MA*12,fve=xA*100,Tl={second:LA,minute:$A,hour:kA,day:UA,month:MA,year:xA,century:fve};class pve{translate(t,n){let r=t;n!==void 0&&n!==1&&(r+="s");const{timeEstimation:a}=Re.translations;return a[r].replace("{base}",`${n}`)}estimateAttackTimes(t){const n={onlineThrottling100PerHour:t/.027777777777777776,onlineNoThrottling10PerSecond:t/10,offlineSlowHashing1e4PerSecond:t/1e4,offlineFastHashing1e10PerSecond:t/1e10},r={onlineThrottling100PerHour:"",onlineNoThrottling10PerSecond:"",offlineSlowHashing1e4PerSecond:"",offlineFastHashing1e10PerSecond:""};return Object.keys(n).forEach(a=>{const s=n[a];r[a]=this.displayTime(s)}),{crackTimesSeconds:n,crackTimesDisplay:r,score:this.guessesToScore(t)}}guessesToScore(t){return t<1005?0:t<1000005?1:t<100000005?2:t<1e10+5?3:4}displayTime(t){let n="centuries",r;const a=Object.keys(Tl),s=a.findIndex(o=>t-1&&(n=a[s-1],s!==0?r=Math.round(t/Tl[n]):n="ltSecond"),this.translate(n,r)}}var mve=()=>null,Eve=()=>({warning:Re.translations.warnings.dates,suggestions:[Re.translations.suggestions.dates]});const hve=(e,t)=>{let n=null;return t&&!e.l33t&&!e.reversed?e.rank<=10?n=Re.translations.warnings.topTen:e.rank<=100?n=Re.translations.warnings.topHundred:n=Re.translations.warnings.common:e.guessesLog10<=4&&(n=Re.translations.warnings.similarToCommon),n},_ve=(e,t)=>{let n=null;return t&&(n=Re.translations.warnings.wordByItself),n},Tve=(e,t)=>t?Re.translations.warnings.namesByThemselves:Re.translations.warnings.commonNames,gve=(e,t)=>{let n=null;const r=e.dictionaryName,a=r==="lastnames"||r.toLowerCase().includes("firstnames");return r==="passwords"?n=hve(e,t):r.includes("wikipedia")?n=_ve(e,t):a?n=Tve(e,t):r==="userInputs"&&(n=Re.translations.warnings.userInputs),n};var Ave=(e,t)=>{const n=gve(e,t),r=[],a=e.token;return a.match(DA)?r.push(Re.translations.suggestions.capitalization):a.match(PA)&&a.toLowerCase()!==a&&r.push(Re.translations.suggestions.allUppercase),e.reversed&&e.token.length>=4&&r.push(Re.translations.suggestions.reverseWords),e.l33t&&r.push(Re.translations.suggestions.l33t),{warning:n,suggestions:r}},Sve=e=>e.regexName==="recentYear"?{warning:Re.translations.warnings.recentYears,suggestions:[Re.translations.suggestions.recentYears,Re.translations.suggestions.associatedYears]}:{warning:null,suggestions:[]},Ove=e=>{let t=Re.translations.warnings.extendedRepeat;return e.baseToken.length===1&&(t=Re.translations.warnings.simpleRepeat),{warning:t,suggestions:[Re.translations.suggestions.repeated]}},Ive=()=>({warning:Re.translations.warnings.sequences,suggestions:[Re.translations.suggestions.sequences]}),vve=e=>{let t=Re.translations.warnings.keyPattern;return e.turns===1&&(t=Re.translations.warnings.straightRow),{warning:t,suggestions:[Re.translations.suggestions.longerKeyboardPattern]}},Rve=()=>null;const ch={warning:null,suggestions:[]};class bve{constructor(){this.matchers={bruteforce:mve,date:Eve,dictionary:Ave,regex:Sve,repeat:Ove,sequence:Ive,spatial:vve,separator:Rve},this.defaultFeedback={warning:null,suggestions:[]},this.setDefaultSuggestions()}setDefaultSuggestions(){this.defaultFeedback.suggestions.push(Re.translations.suggestions.useWords,Re.translations.suggestions.noNeed)}getFeedback(t,n){if(n.length===0)return this.defaultFeedback;if(t>2)return ch;const r=Re.translations.suggestions.anotherWord,a=this.getLongestMatch(n);let s=this.getMatchFeedback(a,n.length===1);return s!=null?s.suggestions.unshift(r):s={warning:null,suggestions:[r]},s}getLongestMatch(t){let n=t[0];return t.slice(1).forEach(a=>{a.token.length>n.token.length&&(n=a)}),n}getMatchFeedback(t,n){return this.matchers[t.pattern]?this.matchers[t.pattern](t,n):Re.matchers[t.pattern]&&"feedback"in Re.matchers[t.pattern]?Re.matchers[t.pattern].feedback(t,n):ch}}const FA=()=>new Date().getTime(),Nve=(e,t,n)=>{const r=new bve,a=new pve,s=jd.mostGuessableMatchSequence(t,e),o=FA()-n,i=a.estimateAttackTimes(s.guesses);return{calcTime:o,...s,...i,feedback:r.getFeedback(i.score,s.sequence)}},Cve=(e,t)=>(t&&Re.extendUserInputsDictionary(t),new dve().match(e)),yve=(e,t)=>{const n=FA(),r=Cve(e,t);if(r instanceof Promise)throw new Error("You are using a Promised matcher, please use `zxcvbnAsync` for it.");return Nve(r,e,n)},Dve="modulepreload",Pve=function(e){return"/"+e},lh={},bt=function(t,n,r){let a=Promise.resolve();if(n&&n.length>0){const s=document.getElementsByTagName("link");a=Promise.all(n.map(o=>{if(o=Pve(o),o in lh)return;lh[o]=!0;const i=o.endsWith(".css"),u=i?'[rel="stylesheet"]':"";if(!!r)for(let f=s.length-1;f>=0;f--){const d=s[f];if(d.href===o&&(!i||d.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${o}"]${u}`))return;const l=document.createElement("link");if(l.rel=i?"stylesheet":Dve,i||(l.as="script",l.crossOrigin=""),l.href=o,document.head.appendChild(l),i)return new Promise((f,d)=>{l.addEventListener("load",f),l.addEventListener("error",()=>d(new Error(`Unable to preload CSS for ${o}`)))})}))}return a.then(()=>t()).catch(s=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=s,window.dispatchEvent(o),!o.defaultPrevented)throw s})},wve=async e=>{switch(e){case"fr":return await bt(()=>import("./password.fr-1uJe1-pR.js"),__vite__mapDeps([]));case"de":return await bt(()=>import("./password.de-qoep7B_f.js"),__vite__mapDeps([]));case"it":return await bt(()=>import("./password.it-ImDc22WR.js"),__vite__mapDeps([]));case"es":return await bt(()=>import("./password.es-es--6AdGpRj.js"),__vite__mapDeps([]));case"pl":return await bt(()=>import("./password.pl-Ipz4x2MM.js"),__vite__mapDeps([]));default:return await bt(()=>import("./password.en-lIq_N4yZ.js"),__vite__mapDeps([]))}},dh=async e=>{const t=await bt(()=>import("./password.common-7m77ow97.js"),__vite__mapDeps([])),n=await wve(e),r={graphs:t.adjacencyGraphs,dictionary:{...t.dictionary,...n.dictionary}};Re.setOptions(r)},Lve=e=>{switch(e){case 2:return"AVERAGE";case 3:return"GOOD";case 4:return"STRONG";default:return"WEAK"}},$ve={class:"password-strength"},kve=["value"],Uve={key:0,class:"password-strength-details"},Mve={class:"password-strength-value"},xve={key:0,class:"info-box"},Fve={class:"password-feedback"},Wve=Q({__name:"PasswordStength",props:{password:{}},setup(e){const t=e,{password:n}=_e(t),r=$e(),a=$(()=>r.getters[H.GETTERS.LANGUAGE]),s=$(()=>r.getters[Y.GETTERS.IS_SUCCESS]),o=ce(0),i=ce(""),u=ce([]),c=ce("0% 100%");It(async()=>await dh(a.value));function l(f){const d=yve(f);o.value=d.score,i.value=Lve(o.value),u.value=d.feedback.suggestions,c.value=o.value*100/4+"% 100%"}return Fe(()=>a.value,async f=>{await dh(f)}),Fe(()=>n.value,async f=>{s.value?i.value="":l(f)}),(f,d)=>(T(),N("div",$ve,[p("input",{class:ge(["password-slider",`strength-${o.value}`]),style:Yr({backgroundSize:c.value}),type:"range",value:o.value,min:"0",max:"4",step:"1",tabindex:-1},null,14,kve),i.value?(T(),N("div",Uve,[p("span",Mve,_(f.$t("user.PASSWORD_STRENGTH.LABEL"))+": "+_(f.$t(`user.PASSWORD_STRENGTH.${i.value}`)),1),u.value.length>0?(T(),N("div",xve,[p("ul",Fve,[(T(!0),N(Ie,null,xe(u.value,m=>(T(),N("li",{key:m},_(f.$t(`user.PASSWORD_STRENGTH.SUGGESTIONS.${m}`)),1))),128))])])):W("",!0)])):W("",!0)]))}}),Gve=ae(Wve,[["__scopeId","data-v-1affb508"]]),zve=e=>(ut("data-v-ac528612"),e=e(),ct(),e),Bve={class:"password-input"},Hve=["id","disabled","placeholder","required","type"],jve={class:"show-password"},Vve={key:0,class:"form-info"},Kve=zve(()=>p("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),Yve=Q({__name:"PasswordInput",props:{checkStrength:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},id:{default:"password"},password:{default:""},placeholder:{},required:{type:Boolean,default:!1}},emits:["updatePassword","passwordError"],setup(e,{emit:t}){const n=e,{checkStrength:r,disabled:a,id:s,password:o,placeholder:i,required:u}=_e(n),c=ce(!1),l=ce(""),f=t;function d(){c.value=!c.value}function m(g){f("updatePassword",g.target.value)}function E(){f("passwordError")}return Fe(()=>o.value,g=>{g===""&&(l.value="",c.value=!1)}),(g,b)=>(T(),N("div",Bve,[Ke(p("input",{id:h(s),disabled:h(a),placeholder:h(i),required:h(u),type:c.value?"text":"password","onUpdate:modelValue":b[0]||(b[0]=I=>l.value=I),minlength:"8",onInput:m,onInvalid:E},null,40,Hve),[[fv,l.value]]),p("div",jve,[p("button",{class:"transparent",onClick:Xe(d,["prevent"]),type:"button"},[K(_(g.$t(`user.${c.value?"HIDE":"SHOW"}_PASSWORD`))+" ",1),p("i",{class:ge(["fa",`fa-eye${c.value?"-slash":""}`]),"aria-hidden":"true"},null,2)])]),h(r)?(T(),N("div",Vve,[Kve,K(" "+_(g.$t("user.PASSWORD_INFO")),1)])):W("",!0),h(r)?(T(),ne(Gve,{key:1,password:l.value},null,8,["password"])):W("",!0)]))}}),Vd=ae(Yve,[["__scopeId","data-v-ac528612"]]),S0=e=>(ut("data-v-8ebb5cd3"),e=e(),ct(),e),qve={id:"user-infos-edition"},Xve={class:"profile-form form-box"},Zve={key:1,class:"info-box success-message"},Qve={class:"form-items",for:"email"},Jve=["disabled"],eRe={class:"form-items",for:"password-field"},tRe={class:"form-items",for:"new-password-field"},nRe={class:"form-buttons"},rRe={class:"confirm",type:"submit"},aRe={class:"data-export"},sRe={class:"info-box"},oRe=S0(()=>p("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),iRe={key:0,class:"data-export-archive"},uRe=S0(()=>p("i",{class:"fa fa-download","aria-hidden":"true"},null,-1)),cRe={key:1},lRe={key:2},dRe=S0(()=>p("i",{class:"fa fa-spinner fa-pulse","aria-hidden":"true"},null,-1)),fRe=Q({__name:"UserAccountEdition",props:{user:{}},setup(e){const t=e,{user:n}=_e(t),r=$e(),a=xt({email:"",password:"",new_password:""}),s=$(()=>r.getters[Y.GETTERS.USER_LOADING]),o=$(()=>r.getters[H.GETTERS.APP_CONFIG]),i=$(()=>r.getters[Y.GETTERS.IS_SUCCESS]),u=ce(!1),c=$(()=>r.getters[H.GETTERS.ERROR_MESSAGES]),l=ce(!1),f=ce(!1),d=$(()=>r.getters[Y.GETTERS.EXPORT_REQUEST]),m=$(()=>v()),E=ce(!1);gt(()=>{t.user&&(r.dispatch(Y.ACTIONS.GET_REQUEST_DATA_EXPORT),b(t.user))});function g(){l.value=!0}function b(F){a.email=F.email}function I(F){a.password=F}function R(F){a.new_password=F}function v(){return d.value?xn(d.value.created_at,n.value.timezone,n.value.date_format,!0,null,!0):null}function A(){return m.value?U3(new Date(m.value),F3(new Date,1)):!0}function C(){const F={email:a.email,password:a.password};a.new_password&&(F.new_password=a.new_password),u.value=a.email!==n.value.email,r.dispatch(Y.ACTIONS.UPDATE_USER_ACCOUNT,F)}function w(F){f.value=F}function k(F){r.dispatch(Y.ACTIONS.DELETE_ACCOUNT,{username:F})}function L(){r.dispatch(Y.ACTIONS.REQUEST_DATA_EXPORT)}async function z(F){E.value=!0,await Be.get(`/auth/account/export/${F}`,{responseType:"blob"}).then(U=>{const Z=window.URL.createObjectURL(new Blob([U.data],{type:"application/zip"})),ee=document.createElement("a");ee.href=Z,ee.setAttribute("download",F),document.body.appendChild(ee),ee.click()}).finally(()=>E.value=!1)}return Rt(()=>{r.commit(Y.MUTATIONS.UPDATE_IS_SUCCESS,!1),r.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES)}),Fe(()=>i.value,async F=>{F&&(I(""),R(""),b(n.value),l.value=!1)}),Fe(()=>n.value.email,async()=>{b(n.value)}),(F,U)=>{const Z=ue("Modal"),ee=ue("ErrorMessage");return T(),N("div",qve,[f.value?(T(),ne(Z,{key:0,title:F.$t("common.CONFIRMATION"),message:F.$t("user.CONFIRM_ACCOUNT_DELETION"),onConfirmAction:U[0]||(U[0]=re=>k(h(n).username)),onCancelAction:U[1]||(U[1]=re=>w(!1)),onKeydown:U[2]||(U[2]=At(re=>w(!1),["esc"]))},null,8,["title","message"])):W("",!0),p("div",Xve,[c.value?(T(),ne(ee,{key:0,message:c.value},null,8,["message"])):W("",!0),i.value?(T(),N("div",Zve,_(F.$t(`user.PROFILE.SUCCESSFUL_${u.value&&o.value.is_email_sending_enabled?"EMAIL_":""}UPDATE`)),1)):W("",!0),p("form",{class:ge({errors:l.value}),onSubmit:Xe(C,["prevent"])},[p("label",Qve,[K(_(F.$t("user.EMAIL"))+"* ",1),Ke(p("input",{id:"email","onUpdate:modelValue":U[3]||(U[3]=re=>a.email=re),disabled:s.value,required:!0,onInvalid:g},null,40,Jve),[[tt,a.email]])]),p("label",eRe,[K(_(F.$t("user.CURRENT_PASSWORD"))+"* ",1),M(Vd,{id:"password-field",disabled:s.value,password:a.password,required:!0,onUpdatePassword:I,onPasswordError:g},null,8,["disabled","password"])]),p("label",tRe,[K(_(F.$t("user.NEW_PASSWORD"))+" ",1),M(Vd,{id:"new-password-field",disabled:s.value,checkStrength:!0,password:a.new_password,isSuccess:!1,onUpdatePassword:R,onPasswordError:g},null,8,["disabled","password"])]),p("div",nRe,[p("button",rRe,_(F.$t("buttons.SUBMIT")),1),p("button",{class:"cancel",onClick:U[4]||(U[4]=Xe(re=>F.$router.push("/profile"),["prevent"]))},_(F.$t("buttons.CANCEL")),1),p("button",{class:"danger",onClick:U[5]||(U[5]=Xe(re=>w(!0),["prevent"]))},_(F.$t("buttons.DELETE_MY_ACCOUNT")),1),A()?(T(),N("button",{key:0,class:"confirm",onClick:Xe(L,["prevent"])},_(F.$t("buttons.REQUEST_DATA_EXPORT")),1)):W("",!0)])],34),p("div",aRe,[p("span",sRe,[oRe,K(" "+_(F.$t("user.EXPORT_REQUEST.ONLY_ONE_EXPORT_PER_DAY")),1)]),d.value?(T(),N("div",iRe,[K(_(F.$t("user.EXPORT_REQUEST.DATA_EXPORT"))+" ("+_(m.value)+"): ",1),d.value.status==="successful"?(T(),N("span",{key:0,class:"archive-link",onClick:U[6]||(U[6]=Xe(re=>z(d.value.file_name),["prevent"]))},[uRe,K(" "+_(F.$t("user.EXPORT_REQUEST.DOWNLOAD_ARCHIVE"))+" ("+_(h(tu)(d.value.file_size))+") ",1)])):(T(),N("span",cRe,_(F.$t(`user.EXPORT_REQUEST.STATUS.${d.value.status}`)),1)),E.value?(T(),N("span",lRe,[K(_(F.$t("user.EXPORT_REQUEST.GENERATING_LINK"))+" ",1),dRe])):W("",!0)])):W("",!0)])])])}}}),pRe=ae(fRe,[["__scopeId","data-v-8ebb5cd3"]]),mRe={id:"user-infos-edition"},ERe={class:"profile-form form-box"},hRe={class:"form-items",for:"registrationDate"},_Re=["value"],TRe={class:"form-items",for:"first_name"},gRe=["disabled"],ARe={class:"form-items",for:"last_name"},SRe={class:"form-items",for:"birth_date"},ORe=["disabled"],IRe={class:"form-items",for:"location"},vRe=["disabled"],RRe={class:"form-items"},bRe={class:"form-buttons"},NRe={class:"confirm",type:"submit"},CRe=Q({__name:"UserInfosEdition",props:{user:{}},setup(e){const t=e,n=$e(),r=xt({first_name:"",last_name:"",birth_date:"",location:"",bio:""}),a=$(()=>t.user.created_at?xn(t.user.created_at,t.user.timezone,t.user.date_format):""),s=$(()=>n.getters[Y.GETTERS.USER_LOADING]),o=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]);gt(()=>{t.user&&i(t.user)});function i(l){r.first_name=l.first_name?l.first_name:"",r.last_name=l.last_name?l.last_name:"",r.birth_date=l.birth_date?ln(new Date(l.birth_date),"yyyy-MM-dd"):"",r.location=l.location?l.location:"",r.bio=l.bio?l.bio:""}function u(l){r.bio=l}function c(){n.dispatch(Y.ACTIONS.UPDATE_USER_PROFILE,r)}return Rt(()=>{n.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES)}),(l,f)=>{const d=ue("ErrorMessage"),m=ue("CustomTextArea");return T(),N("div",mRe,[p("div",ERe,[o.value?(T(),ne(d,{key:0,message:o.value},null,8,["message"])):W("",!0),p("form",{onSubmit:Xe(c,["prevent"])},[p("label",hRe,[K(_(l.$t("user.PROFILE.REGISTRATION_DATE"))+" ",1),p("input",{id:"registrationDate",value:a.value,disabled:""},null,8,_Re)]),p("label",TRe,[K(_(l.$t("user.PROFILE.FIRST_NAME"))+" ",1),Ke(p("input",{id:"first_name","onUpdate:modelValue":f[0]||(f[0]=E=>r.first_name=E),disabled:s.value},null,8,gRe),[[tt,r.first_name]])]),p("label",ARe,[K(_(l.$t("user.PROFILE.LAST_NAME"))+" ",1),Ke(p("input",{id:"last_name","onUpdate:modelValue":f[1]||(f[1]=E=>r.last_name=E)},null,512),[[tt,r.last_name]])]),p("label",SRe,[K(_(l.$t("user.PROFILE.BIRTH_DATE"))+" ",1),Ke(p("input",{id:"birth_date",type:"date",class:"birth-date","onUpdate:modelValue":f[2]||(f[2]=E=>r.birth_date=E),disabled:s.value},null,8,ORe),[[tt,r.birth_date]])]),p("label",IRe,[K(_(l.$t("user.PROFILE.LOCATION"))+" ",1),Ke(p("input",{id:"location","onUpdate:modelValue":f[3]||(f[3]=E=>r.location=E),disabled:s.value},null,8,vRe),[[tt,r.location]])]),p("label",RRe,[K(_(l.$t("user.PROFILE.BIO"))+" ",1),M(m,{name:"bio",charLimit:200,input:r.bio,disabled:s.value,onUpdateValue:u},null,8,["input","disabled"])]),p("div",bRe,[p("button",NRe,_(l.$t("buttons.SUBMIT")),1),p("button",{class:"cancel",onClick:f[4]||(f[4]=Xe(E=>l.$router.push("/profile"),["prevent"]))},_(l.$t("buttons.CANCEL")),1)])],32)])])}}}),yRe=ae(CRe,[["__scopeId","data-v-5f5c8fca"]]),DRe=e=>(ut("data-v-8f62d42f"),e=e(),ct(),e),PRe={id:"user-picture-edition"},wRe={class:"user-picture-form"},LRe={class:"picture-help"},$Re={class:"info-box"},kRe=DRe(()=>p("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),URe={class:"picture-buttons"},MRe=["disabled"],xRe=Q({__name:"UserPictureEdition",props:{user:{}},setup(e){const t=e,n=$e(),{user:r}=_e(t),a=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]),s=$(()=>n.getters[H.GETTERS.APP_CONFIG]),o=s.value.max_single_file_size?tu(s.value.max_single_file_size):"",i=ce(null);function u(){n.dispatch(Y.ACTIONS.DELETE_PICTURE)}function c(f){f.target.files!==null&&(i.value=f.target.files[0])}function l(){i.value&&n.dispatch(Y.ACTIONS.UPDATE_USER_PICTURE,{picture:i.value})}return Rt(()=>{n.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES)}),(f,d)=>{const m=ue("ErrorMessage");return T(),N("div",PRe,[p("div",wRe,[a.value?(T(),ne(m,{key:0,message:a.value},null,8,["message"])):W("",!0),M(Lo,{user:h(r)},null,8,["user"]),p("form",{onSubmit:Xe(l,["prevent"])},[p("input",{type:"file",name:"picture",accept:".png,.jpg,.gif",onInput:c},null,32),p("div",LRe,[p("span",$Re,[kRe,K(" "+_(f.$t("workouts.MAX_SIZE"))+": "+_(h(o)),1)])]),p("div",URe,[p("button",{type:"submit",disabled:!i.value},_(f.$t("user.PROFILE.PICTURE_UPDATE")),9,MRe),h(r).picture?(T(),N("button",{key:0,class:"danger",onClick:u},_(f.$t("user.PROFILE.PICTURE_REMOVE")),1)):W("",!0),p("button",{class:"cancel",onClick:d[0]||(d[0]=E=>f.$router.push("/profile"))},_(f.$t("user.PROFILE.BACK_TO_PROFILE")),1)])],32)])])}}}),FRe=ae(xRe,[["__scopeId","data-v-8f62d42f"]]),WRe=["Africa/Abidjan","Africa/Accra","Africa/Algiers","Africa/Bissau","Africa/Cairo","Africa/Casablanca","Africa/Ceuta","Africa/El_Aaiun","Africa/Johannesburg","Africa/Juba","Africa/Khartoum","Africa/Lagos","Africa/Maputo","Africa/Monrovia","Africa/Nairobi","Africa/Ndjamena","Africa/Sao_Tome","Africa/Tripoli","Africa/Tunis","Africa/Windhoek","America/Adak","America/Anchorage","America/Araguaina","America/Argentina/Buenos_Aires","America/Argentina/Catamarca","America/Argentina/Cordoba","America/Argentina/Jujuy","America/Argentina/La_Rioja","America/Argentina/Mendoza","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Asuncion","America/Atikokan","America/Bahia","America/Bahia_Banderas","America/Barbados","America/Belem","America/Belize","America/Blanc-Sablon","America/Boa_Vista","America/Bogota","America/Boise","America/Cambridge_Bay","America/Campo_Grande","America/Cancun","America/Caracas","America/Cayenne","America/Chicago","America/Chihuahua","America/Costa_Rica","America/Creston","America/Cuiaba","America/Curacao","America/Danmarkshavn","America/Dawson","America/Dawson_Creek","America/Denver","America/Detroit","America/Edmonton","America/Eirunepe","America/El_Salvador","America/Fortaleza","America/Fort_Nelson","America/Glace_Bay","America/Godthab","America/Goose_Bay","America/Grand_Turk","America/Guatemala","America/Guayaquil","America/Guyana","America/Halifax","America/Havana","America/Hermosillo","America/Indiana/Indianapolis","America/Indiana/Knox","America/Indiana/Marengo","America/Indiana/Petersburg","America/Indiana/Tell_City","America/Indiana/Vevay","America/Indiana/Vincennes","America/Indiana/Winamac","America/Inuvik","America/Iqaluit","America/Jamaica","America/Juneau","America/Kentucky/Louisville","America/Kentucky/Monticello","America/La_Paz","America/Lima","America/Los_Angeles","America/Maceio","America/Managua","America/Manaus","America/Martinique","America/Matamoros","America/Mazatlan","America/Menominee","America/Merida","America/Metlakatla","America/Mexico_City","America/Miquelon","America/Moncton","America/Monterrey","America/Montevideo","America/Nassau","America/New_York","America/Nipigon","America/Nome","America/Noronha","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Ojinaga","America/Panama","America/Pangnirtung","America/Paramaribo","America/Phoenix","America/Port-au-Prince","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Punta_Arenas","America/Rainy_River","America/Rankin_Inlet","America/Recife","America/Regina","America/Resolute","America/Rio_Branco","America/Santarem","America/Santiago","America/Santo_Domingo","America/Sao_Paulo","America/Scoresbysund","America/Sitka","America/St_Johns","America/Swift_Current","America/Tegucigalpa","America/Thule","America/Thunder_Bay","America/Tijuana","America/Toronto","America/Vancouver","America/Whitehorse","America/Winnipeg","America/Yakutat","America/Yellowknife","Antarctica/Casey","Antarctica/Davis","Antarctica/DumontDUrville","Antarctica/Macquarie","Antarctica/Mawson","Antarctica/Palmer","Antarctica/Rothera","Antarctica/Syowa","Antarctica/Troll","Antarctica/Vostok","Asia/Almaty","Asia/Amman","Asia/Anadyr","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Atyrau","Asia/Baghdad","Asia/Baku","Asia/Bangkok","Asia/Barnaul","Asia/Beirut","Asia/Bishkek","Asia/Brunei","Asia/Chita","Asia/Choibalsan","Asia/Colombo","Asia/Damascus","Asia/Dhaka","Asia/Dili","Asia/Dubai","Asia/Dushanbe","Asia/Famagusta","Asia/Gaza","Asia/Hebron","Asia/Ho_Chi_Minh","Asia/Hong_Kong","Asia/Hovd","Asia/Irkutsk","Asia/Jakarta","Asia/Jayapura","Asia/Jerusalem","Asia/Kabul","Asia/Kamchatka","Asia/Karachi","Asia/Kathmandu","Asia/Khandyga","Asia/Kolkata","Asia/Krasnoyarsk","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Macau","Asia/Magadan","Asia/Makassar","Asia/Manila","Asia/Nicosia","Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk","Asia/Oral","Asia/Pontianak","Asia/Pyongyang","Asia/Qatar","Asia/Qostanay","Asia/Qyzylorda","Asia/Riyadh","Asia/Sakhalin","Asia/Samarkand","Asia/Seoul","Asia/Shanghai","Asia/Singapore","Asia/Srednekolymsk","Asia/Taipei","Asia/Tashkent","Asia/Tbilisi","Asia/Tehran","Asia/Thimphu","Asia/Tokyo","Asia/Tomsk","Asia/Ulaanbaatar","Asia/Urumqi","Asia/Ust-Nera","Asia/Vladivostok","Asia/Yakutsk","Asia/Yangon","Asia/Yekaterinburg","Asia/Yerevan","Atlantic/Azores","Atlantic/Bermuda","Atlantic/Canary","Atlantic/Cape_Verde","Atlantic/Faroe","Atlantic/Madeira","Atlantic/Reykjavik","Atlantic/South_Georgia","Atlantic/Stanley","Australia/Adelaide","Australia/Brisbane","Australia/Broken_Hill","Australia/Currie","Australia/Darwin","Australia/Eucla","Australia/Hobart","Australia/Lindeman","Australia/Lord_Howe","Australia/Melbourne","Australia/Perth","Australia/Sydney","Europe/Amsterdam","Europe/Andorra","Europe/Astrakhan","Europe/Athens","Europe/Belgrade","Europe/Berlin","Europe/Brussels","Europe/Bucharest","Europe/Budapest","Europe/Chisinau","Europe/Copenhagen","Europe/Dublin","Europe/Gibraltar","Europe/Helsinki","Europe/Istanbul","Europe/Kaliningrad","Europe/Kiev","Europe/Kirov","Europe/Lisbon","Europe/London","Europe/Luxembourg","Europe/Madrid","Europe/Malta","Europe/Minsk","Europe/Monaco","Europe/Moscow","Europe/Oslo","Europe/Paris","Europe/Prague","Europe/Riga","Europe/Rome","Europe/Samara","Europe/Saratov","Europe/Simferopol","Europe/Sofia","Europe/Stockholm","Europe/Tallinn","Europe/Tirane","Europe/Ulyanovsk","Europe/Uzhgorod","Europe/Vienna","Europe/Vilnius","Europe/Volgograd","Europe/Warsaw","Europe/Zaporozhye","Europe/Zurich","Indian/Chagos","Indian/Christmas","Indian/Cocos","Indian/Kerguelen","Indian/Mahe","Indian/Maldives","Indian/Mauritius","Indian/Reunion","Pacific/Apia","Pacific/Auckland","Pacific/Bougainville","Pacific/Chatham","Pacific/Chuuk","Pacific/Easter","Pacific/Efate","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos","Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam","Pacific/Honolulu","Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein","Pacific/Majuro","Pacific/Marquesas","Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea","Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn","Pacific/Pohnpei","Pacific/Port_Moresby","Pacific/Rarotonga","Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu","Pacific/Wake","Pacific/Wallis"],GRe={id:"tz-dropdown"},zRe=["value","disabled"],BRe=["onClick","onMouseover","autofocus"],HRe=Q({__name:"TimezoneDropdown",props:{input:{},disabled:{type:Boolean,default:!1}},emits:["updateTimezone"],setup(e,{emit:t}){const n=e,r=t,{input:a,disabled:s}=_e(n),o=ce(a.value),i=ce(!1),u=ce(null),c=ce(0);function l(g){return g.toLowerCase().match(o.value.toLowerCase())}function f(g){c.value=g}function d(g){o.value=g,i.value=!1,r("updateTimezone",g)}function m(g){var b,I,R,v;g.preventDefault(),(I=(b=u.value)==null?void 0:b.firstElementChild)!=null&&I.innerHTML&&d((v=(R=u.value)==null?void 0:R.firstElementChild)==null?void 0:v.innerHTML)}function E(g){g.preventDefault(),i.value=!0,o.value=g.target.value.trim()}return Fe(()=>n.input,g=>{o.value=g}),(g,b)=>(T(),N("div",GRe,[p("input",{class:"tz-dropdown-input",id:"timezone",name:"timezone",value:o.value,disabled:h(s),required:"",onKeydown:[b[0]||(b[0]=At(I=>d(h(a)),["esc"])),At(m,["enter"])],onInput:E},null,40,zRe),i.value?(T(),N("ul",{key:0,class:"tz-dropdown-list",ref_key:"tzList",ref:u},[(T(!0),N(Ie,null,xe(h(WRe).filter(I=>l(I)),(I,R)=>(T(),N("li",{key:I,class:ge(["tz-dropdown-item",{focus:R===c.value}]),onClick:v=>d(I),onMouseover:v=>f(R),autofocus:R===c.value},_(I),43,BRe))),128))],512)):W("",!0)]))}}),jRe=ae(HRe,[["__scopeId","data-v-0ed9f402"]]),VRe=e=>(ut("data-v-e38a969e"),e=e(),ct(),e),KRe={id:"user-preferences-edition"},YRe={class:"profile-form form-box"},qRe={class:"preferences-section"},XRe={class:"form-items"},ZRe=["disabled"],QRe=["value"],JRe={class:"form-items"},e2e=["disabled"],t2e=["value"],n2e={class:"form-items"},r2e={class:"form-items"},a2e=["disabled"],s2e=["value"],o2e={class:"form-items form-checkboxes"},i2e={class:"checkboxes-label"},u2e={class:"checkboxes"},c2e=["id","name","checked","disabled","onInput"],l2e={class:"checkbox-label"},d2e={class:"preferences-section"},f2e={class:"form-items form-checkboxes"},p2e={class:"checkboxes-label"},m2e={class:"checkboxes"},E2e=["id","name","checked","disabled","onInput"],h2e={class:"checkbox-label"},_2e={class:"form-items form-checkboxes"},T2e={class:"checkboxes-label"},g2e={class:"checkboxes"},A2e=["id","name","checked","disabled","onInput"],S2e={class:"checkbox-label"},O2e={class:"form-items form-checkboxes"},I2e={class:"checkboxes-label"},v2e={class:"checkboxes"},R2e=["id","name","checked","disabled","onInput"],b2e={class:"checkbox-label"},N2e={class:"form-items form-checkboxes"},C2e={class:"checkboxes-label"},y2e={class:"checkboxes"},D2e=["id","name","checked","disabled","onInput"],P2e={class:"checkbox-label"},w2e={class:"info-box raw-speed-help"},L2e=VRe(()=>p("i",{class:"fa fa-info-circle","aria-hidden":"true"},null,-1)),$2e={class:"form-buttons"},k2e={class:"confirm",type:"submit"},U2e=Q({__name:"UserPreferencesEdition",props:{user:{}},setup(e){const t=e,n=$e(),r=xt({display_ascent:!0,imperial_units:!1,language:"en",timezone:"Europe/Paris",date_format:"dd/MM/yyyy",weekm:!1,start_elevation_at_zero:!1,use_raw_gpx_speed:!1,use_dark_mode:!1}),a=[{label:"SUNDAY",value:!1},{label:"MONDAY",value:!0}],s=[{label:"METRIC",value:!1},{label:"IMPERIAL",value:!0}],o=[{label:"DISPLAYED",value:!0},{label:"HIDDEN",value:!1}],i=[{label:"ZERO",value:!0},{label:"MIN_ALT",value:!1}],u=[{label:"FILTERED_SPEED",value:!1},{label:"RAW_SPEED",value:!0}],c=[{label:"DARK",value:!0},{label:"DEFAULT",value:null},{label:"LIGHT",value:!1}],l=$(()=>n.getters[Y.GETTERS.USER_LOADING]),f=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]),d=$(()=>_Se(new Date().toUTCString(),t.user.timezone,r.language));gt(()=>{t.user&&m(t.user)});function m(C){r.display_ascent=C.display_ascent,r.start_elevation_at_zero=C.start_elevation_at_zero?C.start_elevation_at_zero:!1,r.use_raw_gpx_speed=C.use_raw_gpx_speed?C.use_raw_gpx_speed:!1,r.imperial_units=C.imperial_units?C.imperial_units:!1,r.language=C.language?C.language:"en",r.timezone=C.timezone?C.timezone:"Europe/Paris",r.date_format=C.date_format?C.date_format:"dd/MM/yyyy",r.weekm=C.weekm?C.weekm:!1,r.use_dark_mode=C.use_dark_mode}function E(){n.dispatch(Y.ACTIONS.UPDATE_USER_PREFERENCES,r)}function g(C){r.timezone=C}function b(C){r.start_elevation_at_zero=C}function I(C){r.use_raw_gpx_speed=C}function R(C){r.display_ascent=C}function v(C){r.imperial_units=C}function A(C){r.weekm=C}return Rt(()=>{n.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES)}),(C,w)=>{const k=ue("ErrorMessage");return T(),N("div",KRe,[p("div",YRe,[f.value?(T(),ne(k,{key:0,message:f.value},null,8,["message"])):W("",!0),p("form",{onSubmit:Xe(E,["prevent"])},[p("div",qRe,_(C.$t("user.PROFILE.INTERFACE")),1),p("label",XRe,[K(_(C.$t("user.PROFILE.LANGUAGE"))+" ",1),Ke(p("select",{id:"language","onUpdate:modelValue":w[0]||(w[0]=L=>r.language=L),disabled:l.value},[(T(!0),N(Ie,null,xe(h(ud),L=>(T(),N("option",{value:L.value,key:L.value},_(L.label),9,QRe))),128))],8,ZRe),[[js,r.language]])]),p("label",JRe,[K(_(C.$t("user.PROFILE.THEME_MODE.LABEL"))+" ",1),Ke(p("select",{id:"use_dark_mode","onUpdate:modelValue":w[1]||(w[1]=L=>r.use_dark_mode=L),disabled:l.value},[(T(),N(Ie,null,xe(c,L=>p("option",{value:L.value,key:L.label},_(C.$t(`user.PROFILE.THEME_MODE.VALUES.${L.label}`)),9,t2e)),64))],8,e2e),[[js,r.use_dark_mode]])]),p("label",n2e,[K(_(C.$t("user.PROFILE.TIMEZONE"))+" ",1),M(jRe,{input:r.timezone,disabled:l.value,onUpdateTimezone:g},null,8,["input","disabled"])]),p("label",r2e,[K(_(C.$t("user.PROFILE.DATE_FORMAT"))+" ",1),Ke(p("select",{id:"date_format","onUpdate:modelValue":w[2]||(w[2]=L=>r.date_format=L),disabled:l.value},[(T(!0),N(Ie,null,xe(d.value,L=>(T(),N("option",{value:L.value,key:L.value},_(L.label),9,s2e))),128))],8,a2e),[[js,r.date_format]])]),p("div",o2e,[p("span",i2e,_(C.$t("user.PROFILE.FIRST_DAY_OF_WEEK")),1),p("div",u2e,[(T(),N(Ie,null,xe(a,L=>p("label",{key:L.label},[p("input",{type:"radio",id:L.label,name:L.label,checked:L.value===r.weekm,disabled:l.value,onInput:z=>A(L.value)},null,40,c2e),p("span",l2e,_(C.$t(`user.PROFILE.${L.label}`)),1)])),64))])]),p("div",d2e,_(C.$t("workouts.WORKOUT",0)),1),p("div",f2e,[p("span",p2e,_(C.$t("user.PROFILE.UNITS.LABEL")),1),p("div",m2e,[(T(),N(Ie,null,xe(s,L=>p("label",{key:L.label},[p("input",{type:"radio",id:L.label,name:L.label,checked:L.value===r.imperial_units,disabled:l.value,onInput:z=>v(L.value)},null,40,E2e),p("span",h2e,_(C.$t(`user.PROFILE.UNITS.${L.label}`)),1)])),64))])]),p("div",_2e,[p("span",T2e,_(C.$t("user.PROFILE.ASCENT_DATA")),1),p("div",g2e,[(T(),N(Ie,null,xe(o,L=>p("label",{key:L.label},[p("input",{type:"radio",id:L.label,name:L.label,checked:L.value===r.display_ascent,disabled:l.value,onInput:z=>R(L.value)},null,40,A2e),p("span",S2e,_(C.$t(`common.${L.label}`)),1)])),64))])]),p("div",O2e,[p("span",I2e,_(C.$t("user.PROFILE.ELEVATION_CHART_START.LABEL")),1),p("div",v2e,[(T(),N(Ie,null,xe(i,L=>p("label",{key:L.label},[p("input",{type:"radio",id:L.label,name:L.label,checked:L.value===r.start_elevation_at_zero,disabled:l.value,onInput:z=>b(L.value)},null,40,R2e),p("span",b2e,_(C.$t(`user.PROFILE.ELEVATION_CHART_START.${L.label}`)),1)])),64))])]),p("div",N2e,[p("span",C2e,_(C.$t("user.PROFILE.USE_RAW_GPX_SPEED.LABEL")),1),p("div",y2e,[(T(),N(Ie,null,xe(u,L=>p("label",{key:L.label},[p("input",{type:"radio",id:L.label,name:L.label,checked:L.value===r.use_raw_gpx_speed,disabled:l.value,onInput:z=>I(L.value)},null,40,D2e),p("span",P2e,_(C.$t(`user.PROFILE.USE_RAW_GPX_SPEED.${L.label}`)),1)])),64))]),p("div",w2e,[p("span",null,[L2e,K(" "+_(C.$t("user.PROFILE.USE_RAW_GPX_SPEED.HELP")),1)])])]),p("div",$2e,[p("button",k2e,_(C.$t("buttons.SUBMIT")),1),p("button",{class:"cancel",onClick:w[3]||(w[3]=Xe(L=>C.$router.push("/profile/preferences"),["prevent"]))},_(C.$t("buttons.CANCEL")),1)])],32)])])}}}),M2e=ae(U2e,[["__scopeId","data-v-e38a969e"]]),x2e={class:"privacy-policy-text"},F2e={class:"last-update"},W2e=["innerHTML"],G2e=["innerHTML"],z2e="Sun, 26 Feb 2023 17:00:00 GMT",B2e=Q({__name:"PrivacyPolicy",setup(e){const t=$e(),n=$(()=>t.getters[H.GETTERS.APP_CONFIG]),r=$(()=>t.getters[H.GETTERS.LANGUAGE]),a=$(()=>t.getters[Y.GETTERS.AUTH_USER_PROFILE]),s=$(()=>l()),o=$(()=>c()),i=$(()=>f()),u=["DATA_COLLECTED","INFORMATION_USAGE","INFORMATION_PROTECTION","INFORMATION_DISCLOSURE","SITE_USAGE_BY_CHILDREN","YOUR_CONSENT","ACCOUNT_DELETION","CHANGES_TO_OUR_PRIVACY_POLICY"];function c(){return a.value.timezone?a.value.timezone:Intl.DateTimeFormat().resolvedOptions().timeZone?Intl.DateTimeFormat().resolvedOptions().timeZone:"Europe/Paris"}function l(){return OA[r.value]}function f(){return xn(n.value.privacy_policy&&n.value.privacy_policy_date?`${n.value.privacy_policy_date}`:z2e,o.value,s.value,!1)}return(d,m)=>(T(),N("div",x2e,[p("h1",null,_(St(d.$t("privacy_policy.TITLE"))),1),p("p",F2e,[K(_(d.$t("privacy_policy.LAST_UPDATE"))+": ",1),p("time",null,_(i.value),1)]),n.value.privacy_policy?(T(),N("div",{key:0,innerHTML:h(ma)(h(vo)(n.value.privacy_policy))},null,8,W2e)):(T(),N(Ie,{key:1},xe(u,E=>(T(),N(Ie,{key:E},[p("h2",null,_(d.$t(`privacy_policy.CONTENT.${E}.TITLE`)),1),p("p",{innerHTML:h(ma)(d.$t(`privacy_policy.CONTENT.${E}.CONTENT`))},null,8,G2e)],64))),64))]))}}),WA=ae(B2e,[["__scopeId","data-v-31d5cd27"]]),H2e={id:"user-privacy-policy"},j2e={key:1},V2e={class:"policy-content"},K2e={for:"accepted_policy",class:"accepted_policy"},Y2e={class:"form-buttons"},q2e={class:"confirm",type:"submit"},X2e=Q({__name:"UserPrivacyPolicyValidation",props:{user:{}},setup(e){const t=e,{user:n}=_e(t),r=$e(),a=$(()=>r.getters[H.GETTERS.ERROR_MESSAGES]),s=ce(!1);function o(){r.dispatch(Y.ACTIONS.ACCEPT_PRIVACY_POLICY,s.value)}return Rt(()=>{r.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES)}),(i,u)=>{const c=ue("ErrorMessage"),l=ue("router-link"),f=ue("i18n-t");return T(),N("div",H2e,[a.value?(T(),ne(c,{key:0,message:a.value},null,8,["message"])):W("",!0),h(n).accepted_privacy_policy?(T(),N("div",j2e,[p("p",null,[M(f,{keypath:"user.YOU_HAVE_ACCEPTED_PRIVACY_POLICY"},{default:fe(()=>[M(l,{to:"/privacy-policy"},{default:fe(()=>[K(_(i.$t("privacy_policy.TITLE")),1)]),_:1})]),_:1})]),p("button",{class:"cancel",onClick:u[0]||(u[0]=d=>i.$router.push("/profile"))},_(i.$t("user.PROFILE.BACK_TO_PROFILE")),1)])):(T(),N("form",{key:2,onSubmit:u[3]||(u[3]=Xe(d=>o(),["prevent"]))},[p("div",V2e,[M(WA)]),p("label",K2e,[Ke(p("input",{type:"checkbox",id:"accepted_policy",required:"","onUpdate:modelValue":u[1]||(u[1]=d=>s.value=d)},null,512),[[hf,s.value]]),p("span",null,[M(f,{keypath:"user.READ_AND_ACCEPT_PRIVACY_POLICY"},{default:fe(()=>[K(_(i.$t("privacy_policy.TITLE")),1)]),_:1})])]),M(l,{to:"/profile/edit/account"},{default:fe(()=>[K(_(i.$t("user.I_WANT_TO_DELETE_MY_ACCOUNT")),1)]),_:1}),p("div",Y2e,[p("button",q2e,_(i.$t("buttons.SUBMIT")),1),p("button",{class:"cancel",onClick:u[2]||(u[2]=d=>i.$router.push("/profile"))},_(i.$t("user.PROFILE.BACK_TO_PROFILE")),1)])],32))])}}}),Z2e=ae(X2e,[["__scopeId","data-v-a70349ce"]]),Q2e=["profile:read","profile:write","users:read","users:write","workouts:read","workouts:write"],J2e=["application:write"],ebe={id:"new-oauth2-app"},tbe={id:"new-oauth2-title"},nbe={id:"apps-form"},rbe={class:"form-items"},abe={class:"form-item"},sbe={for:"app-name"},obe={class:"form-item"},ibe={for:"app-description"},ube={class:"form-item"},cbe={for:"app-url"},lbe={class:"form-item"},dbe={for:"app-redirect-uri"},fbe={class:"form-item-scope"},pbe={class:"form-item-scope-label"},mbe={class:"scope-label"},Ebe=["name","checked","onChange"],hbe=["innerHTML"],_be={class:"form-buttons"},Tbe=["disabled"],gbe=Q({__name:"AddUserApp",props:{authUser:{}},setup(e){const t=e,n=$e(),r=xt({client_name:"",client_uri:"",client_description:"",description:"",redirect_uri:""}),a=xt([]),s=$(()=>c(t.authUser,J2e,Q2e));function o(){const l={client_name:r.client_name,client_description:r.client_description,client_uri:r.client_uri,redirect_uris:[r.redirect_uri],scope:a.sort().join(" ")};n.dispatch(Ve.ACTIONS.CREATE_CLIENT,l)}function i(l){r.client_description=l}function u(l){const f=a.indexOf(l);f>-1?a.splice(f,1):a.push(l)}function c(l,f,d){const m=[...d];return l.admin&&m.push(...f),m.sort()}return(l,f)=>{const d=ue("CustomTextArea");return T(),N("div",ebe,[p("h1",tbe,_(l.$t("oauth2.ADD_A_NEW_APP")),1),p("div",nbe,[p("form",{onSubmit:Xe(o,["prevent"])},[p("div",rbe,[p("div",abe,[p("label",sbe,_(l.$t("oauth2.APP.NAME"))+"*",1),Ke(p("input",{id:"app-name",type:"text",required:"","onUpdate:modelValue":f[0]||(f[0]=m=>r.client_name=m)},null,512),[[tt,r.client_name]])]),p("div",obe,[p("label",ibe,_(l.$t("oauth2.APP.DESCRIPTION")),1),M(d,{name:"app-description",charLimit:200,input:r.description,onUpdateValue:i},null,8,["input"])]),p("div",ube,[p("label",cbe,_(l.$t("oauth2.APP.URL"))+"*",1),Ke(p("input",{id:"app-url",type:"text",required:"","onUpdate:modelValue":f[1]||(f[1]=m=>r.client_uri=m)},null,512),[[tt,r.client_uri]])]),p("div",lbe,[p("label",dbe,_(l.$t("oauth2.APP.REDIRECT_URL"))+"* ",1),Ke(p("input",{id:"app-redirect-uri",type:"text",required:"","onUpdate:modelValue":f[2]||(f[2]=m=>r.redirect_uri=m)},null,512),[[tt,r.redirect_uri]])]),p("div",fbe,[p("div",pbe,_(l.$t("oauth2.APP.SCOPE.LABEL"))+"* ",1),(T(!0),N(Ie,null,xe(s.value,m=>(T(),N("div",{class:"form-item-scope-checkboxes",key:m},[p("label",mbe,[p("input",{type:"checkbox",name:m,checked:a.includes(m),onChange:E=>u(m)},null,40,Ebe),p("code",null,_(m),1)]),p("p",{class:"scope-description",innerHTML:l.$t(`oauth2.APP.SCOPE.${m}_DESCRIPTION`)},null,8,hbe)]))),128))])]),p("div",_be,[p("button",{class:"confirm",type:"submit",disabled:a.length===0},_(l.$t("buttons.SUBMIT")),9,Tbe),p("button",{class:"cancel",onClick:f[3]||(f[3]=Xe(()=>l.$router.push("/profile/apps"),["prevent"]))},_(l.$t("buttons.CANCEL")),1)])],32)])])}}}),Abe=ae(gbe,[["__scopeId","data-v-e2284e06"]]),Sbe={id:"authorize-oauth2-app"},Obe={key:0},Ibe={id:"authorize-oauth2-title"},vbe={class:"oauth2-access description-list"},Rbe={class:"client-scope"},bbe=["innerHTML"],Nbe={class:"authorize-oauth2-buttons"},Cbe={key:1},ybe={class:"no-app"},Dbe=Q({__name:"AuthorizeUserApp",setup(e){const t=Vt(),n=$e(),r=$(()=>n.getters[Ve.GETTERS.CLIENT]),a=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]);It(()=>s());function s(){t.query.client_id&&typeof t.query.client_id=="string"&&n.dispatch(Ve.ACTIONS.GET_CLIENT_BY_CLIENT_ID,t.query.client_id)}function o(){n.dispatch(Ve.ACTIONS.AUTHORIZE_CLIENT,{client_id:`${t.query.client_id}`,redirect_uri:`${t.query.redirect_uri}`,response_type:`${t.query.response_type}`,scope:`${t.query.scope}`,state:`${t.query.state?t.query.state:""}`,code_challenge:`${t.query.code_challenge?t.query.code_challenge:""}`,code_challenge_method:`${t.query.code_challenge_method?t.query.code_challenge_method:""}`})}return(i,u)=>{const c=ue("router-link"),l=ue("i18n-t"),f=ue("ErrorMessage");return T(),N("div",Sbe,[r.value.client_id?(T(),N("div",Obe,[p("h1",Ibe,[M(l,{keypath:"oauth2.AUTHORIZE_APP"},{default:fe(()=>[M(c,{to:{name:"UserApp",params:{id:r.value.id}}},{default:fe(()=>[K(_(r.value.name),1)]),_:1},8,["to"])]),_:1})]),a.value?(T(),ne(f,{key:0,message:a.value},null,8,["message"])):W("",!0),p("div",vbe,[p("p",null,_(i.$t("oauth2.APP_REQUESTING_ACCESS")),1),p("dl",null,[(T(!0),N(Ie,null,xe(r.value.scope.split(" "),d=>(T(),N(Ie,{key:d},[p("dt",Rbe,[p("code",null,_(d),1)]),p("dd",{innerHTML:i.$t(`oauth2.APP.SCOPE.${d}_DESCRIPTION`)},null,8,bbe)],64))),128))]),p("div",Nbe,[p("button",{class:"danger",onClick:o},_(i.$t("buttons.AUTHORIZE")),1),p("button",{class:"cancel",onClick:u[0]||(u[0]=d=>i.$router.push("/profile/apps"))},_(i.$t("buttons.CANCEL")),1)])])])):(T(),N("div",Cbe,[p("p",ybe,_(i.$t("oauth2.NO_APP")),1),p("button",{onClick:u[1]||(u[1]=d=>i.$router.push("/profile/apps"))},_(i.$t("buttons.BACK")),1)]))])}}}),Pbe=ae(Dbe,[["__scopeId","data-v-a8ed6bf8"]]),wbe={id:"oauth2-apps"},Lbe=Q({__name:"index",props:{user:{}},setup(e){const t=e,n=$e(),{user:r}=_e(t);return Rt(()=>{n.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),n.commit(Ve.MUTATIONS.SET_CLIENTS,[])}),(a,s)=>{const o=ue("router-view");return T(),N("div",wbe,[M(o,{authUser:h(r)},null,8,["authUser"])])}}}),$be={id:"oauth2-app",class:"description-list"},kbe={key:1},Ube={key:0,class:"info-box success-message"},Mbe=["title"],xbe={key:0},Fbe={key:1,class:"app-secret"},Wbe=["title"],Gbe={class:"client-scopes"},zbe={class:"app-buttons"},Bbe={key:2},Hbe={class:"no-app"},jbe=Q({__name:"UserApp",props:{authUser:{},afterCreation:{type:Boolean,default:!1}},setup(e){const t=e,n=Vt(),r=$e(),{afterCreation:a,authUser:s}=_e(t),o=$(()=>r.getters[Ve.GETTERS.CLIENT]),i=$(()=>r.getters[Ve.GETTERS.REVOCATION_SUCCESSFUL]),u=ce(!1),c=ce(""),l=ce(!1),f=ce(!1),d=ce(!1);It(()=>{m(),navigator.clipboard&&(d.value=!0)});function m(){!a.value&&n.params.id&&typeof n.params.id=="string"&&r.dispatch(Ve.ACTIONS.GET_CLIENT_BY_ID,+n.params.id)}function E(v){c.value=v?"oauth2.APP_DELETION_CONFIRMATION":"oauth2.TOKENS_REVOCATION_CONFIRMATION",g(!0)}function g(v){u.value=v,v||(c.value="")}function b(v){c.value==="oauth2.APP_DELETION_CONFIRMATION"?r.dispatch(Ve.ACTIONS.DELETE_CLIENT,v):r.dispatch(Ve.ACTIONS.REVOKE_ALL_TOKENS,v)}function I(){navigator.clipboard.writeText(o.value.client_id),l.value=!0,f.value=!1,setTimeout(()=>{l.value=!1},3e3)}function R(){o.value.client_secret&&(navigator.clipboard.writeText(o.value.client_secret),f.value=!0,l.value=!1,setTimeout(()=>{f.value=!1},3e3))}return Rt(()=>{r.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES),r.commit(Ve.MUTATIONS.EMPTY_CLIENT),r.commit(Ve.MUTATIONS.SET_REVOCATION_SUCCESSFUL,!1)}),Fe(()=>i.value,v=>{v&&g(!1)}),(v,A)=>{const C=ue("Modal");return T(),N("div",$be,[u.value?(T(),ne(C,{key:0,title:v.$t("common.CONFIRMATION"),message:v.$t(c.value),onConfirmAction:A[0]||(A[0]=w=>b(o.value.id)),onCancelAction:A[1]||(A[1]=w=>g(!1)),onKeydown:A[2]||(A[2]=At(w=>g(!1),["esc"]))},null,8,["title","message"])):W("",!0),o.value&&o.value.client_id?(T(),N("div",kbe,[h(a)||i.value?(T(),N("div",Ube,_(v.$t(h(a)?"oauth2.APP_CREATED_SUCCESSFULLY":"oauth2.TOKENS_REVOKED")),1)):W("",!0),p("dl",null,[p("dt",null,_(v.$t("oauth2.APP.CLIENT_ID"))+":",1),p("dd",null,[K(_(o.value.client_id)+" ",1),h(a)&&d.value?(T(),N("i",{key:0,class:ge(`fa fa-${l.value?"check":"copy"}`),"aria-hidden":"true",title:v.$t("oauth2.COPY_TO_CLIPBOARD"),onClick:I},null,10,Mbe)):W("",!0)]),h(a)&&o.value.client_secret?(T(),N("dt",xbe,_(v.$t("oauth2.APP.CLIENT_SECRET"))+": ",1)):W("",!0),h(a)&&o.value.client_secret?(T(),N("dd",Fbe,[K(_(o.value.client_secret)+" ",1),d.value?(T(),N("i",{key:0,class:ge(`fa fa-${f.value?"check":"copy"}`),"aria-hidden":"true",title:v.$t("oauth2.COPY_TO_CLIPBOARD"),onClick:R},null,10,Wbe)):W("",!0)])):W("",!0),p("dt",null,_(St(v.$t("oauth2.APP.ISSUE_AT")))+":",1),p("dd",null,[p("time",null,_(h(xn)(o.value.issued_at,h(s).timezone,h(s).date_format)),1)]),p("dt",null,_(v.$t("oauth2.APP.NAME"))+":",1),p("dd",null,_(o.value.name),1),p("dt",null,_(v.$t("oauth2.APP.DESCRIPTION"))+":",1),p("dd",{class:ge({"no-description":!o.value.client_description})},_(o.value.client_description?o.value.client_description:v.$t("oauth2.NO_DESCRIPTION")),3),p("dt",null,_(v.$t("oauth2.APP.URL"))+":",1),p("dd",null,_(o.value.website),1),p("dt",null,_(v.$t("oauth2.APP.REDIRECT_URL"))+":",1),p("dd",null,_(o.value.redirect_uris.length>0?o.value.redirect_uris[0]:""),1),p("dt",null,_(v.$t("oauth2.APP.SCOPE.LABEL"))+":",1),p("dd",Gbe,[(T(!0),N(Ie,null,xe(o.value.scope.split(" "),w=>(T(),N("span",{class:"client-scope",key:w},[p("code",null,_(w),1)]))),128))])]),p("div",zbe,[p("button",{class:"danger",onClick:A[3]||(A[3]=w=>E(!1))},_(v.$t("oauth2.REVOKE_ALL_TOKENS")),1),p("button",{class:"danger",onClick:A[4]||(A[4]=w=>E(!0))},_(v.$t("oauth2.DELETE_APP")),1),p("button",{onClick:A[5]||(A[5]=w=>v.$router.push("/profile/apps"))},_(v.$t("buttons.BACK")),1)])])):(T(),N("div",Bbe,[p("p",Hbe,_(v.$t("oauth2.NO_APP")),1),p("button",{onClick:A[6]||(A[6]=w=>v.$router.push("/profile/apps"))},_(v.$t("buttons.BACK")),1)]))])}}}),fh=ae(jbe,[["__scopeId","data-v-3a7d0f4a"]]),Vbe={id:"oauth2-apps-list"},Kbe={class:"apps-list"},Ybe={key:0},qbe={class:"app-issued-at"},Xbe={key:1,class:"no-apps"},Zbe={class:"app-list-buttons"},Qbe=Q({__name:"UserAppsList",props:{authUser:{}},setup(e){const t=e,n=$e(),r=Vt(),{authUser:a}=_e(t),s=$(()=>n.getters[Ve.GETTERS.CLIENTS]),o=$(()=>n.getters[Ve.GETTERS.CLIENTS_PAGINATION]);let i=u(r.query);It(()=>{c(i)});function u(l){const f={};return l.page&&(f.page=Fd(l.page,hA)),f}function c(l){n.dispatch(Ve.ACTIONS.GET_CLIENTS,l)}return Fe(()=>r.query,async l=>{i=u(l),c(i)}),(l,f)=>{const d=ue("router-link");return T(),N("div",Vbe,[p("p",Kbe,_(l.$t("oauth2.APPS_LIST")),1),s.value.length>0?(T(),N("ul",Ybe,[(T(!0),N(Ie,null,xe(s.value,m=>(T(),N("li",{key:m.client_id},[M(d,{to:{name:"UserApp",params:{id:m.id}}},{default:fe(()=>[K(_(m.name),1)]),_:2},1032,["to"]),p("span",qbe,[K(_(l.$t("oauth2.APP.ISSUE_AT"))+" ",1),p("time",null,_(h(xn)(m.issued_at,h(a).timezone,h(a).date_format)),1)])]))),128))])):(T(),N("div",Xbe,_(l.$t("oauth2.NO_APPS")),1)),s.value.length>0?(T(),ne(Wu,{key:2,pagination:o.value,path:"/profile/apps",query:h(i)},null,8,["pagination","query"])):W("",!0),p("div",Zbe,[p("button",{onClick:f[0]||(f[0]=m=>l.$router.push("/profile/apps/new"))},_(l.$t("oauth2.NEW_APP")),1),p("button",{onClick:f[1]||(f[1]=m=>l.$router.push("/"))},_(l.$t("common.HOME")),1)])])}}}),Jbe=ae(Qbe,[["__scopeId","data-v-064a87b7"]]),eNe={id:"user-sport-preferences"},tNe={key:0,class:"responsive-table"},nNe={class:"mobile-display"},rNe={key:0,class:"profile-buttons mobile-display"},aNe={key:1,class:"profile-buttons"},sNe={class:"text-left"},oNe={key:0},iNe={class:"cell-heading"},uNe=["value"],cNe={class:"cell-heading"},lNe={key:0,class:"disabled-message"},dNe={key:1,class:"fa fa-refresh fa-spin fa-fw"},fNe={class:"cell-heading"},pNe={class:"cell-heading"},mNe=["checked"],ENe={class:"cell-heading"},hNe=["value"],_Ne={key:1},TNe={key:0,class:"action-buttons"},gNe={class:"cell-heading"},ANe=["onClick"],SNe={key:1,class:"edition-buttons"},ONe=["disabled"],INe=["disabled","onClick"],vNe=["disabled"],RNe={key:0,class:"profile-buttons"},bNe={key:1,class:"profile-buttons"},NNe="#838383",CNe=Q({__name:"UserSportPreferences",props:{user:{},isEdition:{type:Boolean}},setup(e){const t=e,n=$e(),{t:r}=jt(),{isEdition:a,user:s}=_e(t),o=ht("sportColors"),i=$(()=>n.getters[$t.GETTERS.SPORTS]),u=$(()=>Jr(i.value,r,"is_active",s.value.sports_list)),c=$(()=>n.getters[Y.GETTERS.USER_LOADING]),l=$(()=>n.getters[H.GETTERS.ERROR_MESSAGES]),f=xt({sport_id:0,color:null,is_active:!0,stopped_speed_threshold:1});function d(A){A!==null?(f.sport_id=A.id,f.color=A.color?A.color:o?o[A.label]:NNe,f.is_active=A.is_active_for_user,f.stopped_speed_threshold=A.stopped_speed_threshold):I()}function m(A){return f.sport_id===A}function E(A){f.color=A.target.value}function g(A){f.stopped_speed_threshold=parseFloat(A.target.value)}function b(A){f.is_active=A.target.checked}function I(){f.sport_id=0,f.color=null,f.is_active=!0,f.stopped_speed_threshold=1,n.commit(H.MUTATIONS.EMPTY_ERROR_MESSAGES)}function R(A){A.preventDefault(),n.dispatch(Y.ACTIONS.UPDATE_USER_SPORT_PREFERENCES,f)}function v(A,C){A.preventDefault(),n.dispatch(Y.ACTIONS.RESET_USER_SPORT_PREFERENCES,C)}return Fe(()=>c.value,A=>{!A&&!l.value&&I()}),(A,C)=>{const w=ue("SportImage"),k=ue("ErrorMessage");return T(),N("div",eNe,[i.value.length>0?(T(),N("div",tNe,[p("div",nNe,[h(a)?(T(),N("div",rNe,[p("button",{class:"cancel",onClick:C[0]||(C[0]=Xe(L=>A.$router.push("/profile/sports"),["prevent"]))},_(A.$t("buttons.BACK")),1)])):(T(),N("div",aNe,[p("button",{onClick:C[1]||(C[1]=L=>A.$router.push("/profile/edit/sports"))},_(A.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),p("button",{onClick:C[2]||(C[2]=L=>A.$router.push("/"))},_(A.$t("common.HOME")),1)]))]),p("table",null,[p("thead",null,[p("tr",null,[p("th",null,_(A.$t("user.PROFILE.SPORT.COLOR")),1),p("th",sNe,_(A.$t("workouts.SPORT",0)),1),p("th",null,_(A.$t("workouts.WORKOUT",0)),1),p("th",null,_(A.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),p("th",null,_(A.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),h(a)?(T(),N("th",oNe,_(A.$t("user.PROFILE.SPORT.ACTION")),1)):W("",!0)])]),p("tbody",null,[(T(!0),N(Ie,null,xe(u.value,L=>(T(),N("tr",{key:L.id},[p("td",null,[p("span",iNe,_(A.$t("user.PROFILE.SPORT.COLOR")),1),m(L.id)?(T(),N("input",{key:0,class:"sport-color",type:"color",value:f.color,onInput:E},null,40,uNe)):(T(),ne(w,{key:1,title:L.translatedLabel,"sport-label":L.label,color:L.color?L.color:h(o)[L.label]},null,8,["title","sport-label","color"]))]),p("td",{class:ge(["sport-label",{"disabled-sport":!L.is_active}])},[p("span",cNe,_(A.$t("user.PROFILE.SPORT.LABEL")),1),K(" "+_(L.translatedLabel)+" ",1),L.is_active?W("",!0):(T(),N("span",lNe," ("+_(A.$t("user.PROFILE.SPORT.DISABLED_BY_ADMIN"))+") ",1)),c.value&&m(L.id)?(T(),N("i",dNe)):W("",!0),l.value&&f.sport_id===L.id?(T(),ne(k,{key:2,message:l.value},null,8,["message"])):W("",!0)],2),p("td",{class:ge(["text-center",{"disabled-sport":!L.is_active}])},[p("span",fNe,_(A.$t("workouts.WORKOUT",0)),1),p("i",{class:ge(`fa fa${h(s).sports_list.includes(L.id)?"-check":""}`),"aria-hidden":"true"},null,2)],2),p("td",{class:ge(["text-center",{"disabled-sport":!L.is_active}])},[p("span",pNe,_(A.$t("user.PROFILE.SPORT.IS_ACTIVE")),1),m(L.id)&&L.is_active?(T(),N("input",{key:0,type:"checkbox",checked:L.is_active_for_user,onChange:b},null,40,mNe)):(T(),N("i",{key:1,class:ge(`fa fa${L.is_active_for_user?"-check":""}`),"aria-hidden":"true"},null,2))],2),p("td",{class:ge(["text-center",{"disabled-sport":!L.is_active}])},[p("span",ENe,_(A.$t("user.PROFILE.SPORT.STOPPED_SPEED_THRESHOLD")),1),m(L.id)&&L.is_active?(T(),N("input",{key:0,class:"threshold-input",type:"number",min:"0",step:"0.1",value:f.stopped_speed_threshold,onInput:g},null,40,hNe)):(T(),N("span",_Ne,_(L.stopped_speed_threshold),1))],2),h(a)?(T(),N("td",TNe,[p("span",gNe,_(A.$t("user.PROFILE.SPORT.ACTION")),1),f.sport_id===0?(T(),N("button",{key:0,onClick:z=>d(L)},_(A.$t("buttons.EDIT")),9,ANe)):W("",!0),m(L.id)?(T(),N("div",SNe,[p("button",{disabled:c.value,onClick:R},_(A.$t("buttons.SUBMIT")),9,ONe),p("button",{disabled:c.value,onClick:z=>v(z,L.id)},_(A.$t("buttons.RESET")),9,INe),p("button",{disabled:c.value,onClick:C[3]||(C[3]=z=>d(null))},_(A.$t("buttons.CANCEL")),9,vNe)])):W("",!0)])):W("",!0)]))),128))])]),h(a)?(T(),N("div",RNe,[p("button",{class:"cancel",onClick:C[4]||(C[4]=Xe(L=>A.$router.push("/profile/sports"),["prevent"]))},_(A.$t("buttons.BACK")),1)])):(T(),N("div",bNe,[p("button",{onClick:C[5]||(C[5]=L=>A.$router.push("/profile/edit/sports"))},_(A.$t("user.PROFILE.EDIT_SPORTS_PREFERENCES")),1),p("button",{onClick:C[6]||(C[6]=L=>A.$router.push("/"))},_(A.$t("common.HOME")),1)]))])):W("",!0)])}}}),ph=ae(CNe,[["__scopeId","data-v-aa4857fe"]]),Bo=e=>(ut("data-v-43bcf522"),e=e(),ct(),e),yNe={class:"about-text"},DNe=["innerHTML"],PNe=Bo(()=>p("i",{class:"fa fa-book fa-padding","aria-hidden":"true"},null,-1)),wNe=["href"],LNe=Bo(()=>p("i",{class:"fa fa-github fa-padding","aria-hidden":"true"},null,-1)),$Ne={href:"https://github.com/SamR1/FitTrackee",target:"_blank",rel:"noopener noreferrer"},kNe=Bo(()=>p("i",{class:"fa fa-balance-scale fa-padding","aria-hidden":"true"},null,-1)),UNe=Bo(()=>p("a",{href:"https://choosealicense.com/licenses/agpl-3.0/",target:"_blank",rel:"noopener noreferrer"}," AGPLv3 ",-1)),MNe={key:0},xNe=Bo(()=>p("i",{class:"fa fa-envelope-o fa-padding","aria-hidden":"true"},null,-1)),FNe=["href"],WNe={key:1},GNe=["href"],zNe={class:"about-instance"},BNe=["innerHTML"],HNe=Q({__name:"About",setup(e){const t=$e(),n=$(()=>t.getters[H.GETTERS.APP_CONFIG]),r=$(()=>o()),a=$(()=>t.getters[H.GETTERS.LANGUAGE]),s=$(()=>i());function o(){const u={};return n.value.weather_provider==="visualcrossing"&&(u.name="Visual Crossing",u.url="https://www.visualcrossing.com"),u}function i(){let u="https://samr1.github.io/FitTrackee/";return a.value==="fr"&&(u+="fr/"),u}return(u,c)=>{const l=ue("i18n-t");return T(),N("div",yNe,[p("div",null,[p("p",{class:"error-message",innerHTML:u.$t("about.FITTRACKEE_DESCRIPTION")},null,8,DNe),p("p",null,[PNe,p("a",{class:"documentation-link",href:s.value,target:"_blank",rel:"noopener noreferrer"},_(St(u.$t("common.DOCUMENTATION"))),9,wNe)]),p("p",null,[LNe,p("a",$Ne,_(u.$t("about.SOURCE_CODE")),1)]),p("p",null,[kNe,M(l,{keypath:"about.FITTRACKEE_LICENSE"},{default:fe(()=>[UNe]),_:1})]),n.value.admin_contact?(T(),N("div",MNe,[xNe,p("a",{href:`mailto:${n.value.admin_contact}`},_(u.$t("about.CONTACT_ADMIN")),9,FNe)])):W("",!0),r.value&&r.value.name?(T(),N("div",WNe,[K(_(u.$t("about.WEATHER_DATA_FROM"))+" ",1),p("a",{href:r.value.url,target:"_blank",rel:"nofollow noopener"},_(r.value.name),9,GNe)])):W("",!0),n.value.about?(T(),N(Ie,{key:2},[p("p",zNe,_(u.$t("about.ABOUT_THIS_INSTANCE")),1),p("div",{innerHTML:h(ma)(h(vo)(n.value.about))},null,8,BNe)],64)):W("",!0)])])}}}),jNe=ae(HNe,[["__scopeId","data-v-43bcf522"]]),VNe={},KNe={id:"bike"},YNe=["src"];function qNe(e,t){return T(),N("div",KNe,[p("img",{class:"bike-img",src:"/img/bike.svg",alt:"mountain bike"},null,8,YNe)])}const GA=ae(VNe,[["render",qNe],["__scopeId","data-v-dc181e30"]]),XNe={id:"about",class:"view"},ZNe={class:"container"},QNe={class:"container-sub"},JNe={class:"container-sub about-details"},e3e=Q({__name:"AboutView",setup(e){return(t,n)=>(T(),N("div",XNe,[p("div",ZNe,[p("div",QNe,[M(GA)]),p("div",JNe,[M(jNe)])])]))}}),t3e=ae(e3e,[["__scopeId","data-v-ef9c7198"]]),n3e={id:"error"},r3e={class:"error-content"},a3e=Q({__name:"Error",props:{title:{},message:{},buttonText:{},path:{default:"/"}},setup(e){const t=e,{buttonText:n,title:r,message:a,path:s}=_e(t);return(o,i)=>(T(),N("div",n3e,[p("div",r3e,[p("h1",null,_(h(r)),1),p("p",null,_(h(a)),1),h(n)?(T(),N("button",{key:0,onClick:i[0]||(i[0]=u=>o.$router.push(h(s))),class:"upper"},_(h(n)),1)):W("",!0)])]))}}),s3e=ae(a3e,[["__scopeId","data-v-48ec856d"]]),O0=Q({__name:"NotFound",props:{target:{default:"PAGE"}},setup(e){const t=e,{target:n}=_e(t),r=ce(),a=ce(!1);gt(()=>s());function s(){r.value=setTimeout(()=>{a.value=!0},500)}return Rt(()=>{r.value&&clearTimeout(r.value)}),(o,i)=>a.value?(T(),ne(s3e,{key:0,title:"404",message:o.$t(`error.NOT_FOUND.${h(n)}`),"button-text":o.$t("common.HOME")},null,8,["message","button-text"])):W("",!0)}}),o3e=e=>(ut("data-v-5eee0876"),e=e(),ct(),e),i3e={id:"admin",class:"view"},u3e={key:0,class:"container"},c3e=o3e(()=>p("div",{id:"bottom"},null,-1)),l3e=Q({__name:"AdminView",setup(e){const t=$e(),n=$(()=>t.getters[H.GETTERS.APP_CONFIG]),r=$(()=>t.getters[H.GETTERS.APP_STATS]),a=$(()=>t.getters[Y.GETTERS.IS_ADMIN]),s=$(()=>t.getters[Y.GETTERS.USER_LOADING]);return It(()=>t.dispatch(H.ACTIONS.GET_APPLICATION_STATS)),(o,i)=>{const u=ue("router-view");return T(),N("div",i3e,[s.value?W("",!0):(T(),N("div",u3e,[a.value?(T(),ne(u,{key:0,appConfig:n.value,appStatistics:r.value},null,8,["appConfig","appStatistics"])):(T(),ne(O0,{key:1})),c3e]))])}}}),d3e=ae(l3e,[["__scopeId","data-v-5eee0876"]]),zA="/img/workouts/mountains.svg",f3e=p("div",{class:"map-attribution"},[p("span",{class:"map-attribution-text"},"©"),p("a",{class:"map-attribution-text",href:"https://www.openstreetmap.org/copyright",target:"_blank",rel:"noopener noreferrer"}," OpenStreetMap ")],-1),BA=Q({__name:"StaticMap",props:{workout:{},displayHover:{type:Boolean,default:!1}},setup(e){const t=e,{displayHover:n}=_e(t),r=`${wo()}workouts/map/${t.workout.map}`;return(a,s)=>(T(),N("div",{class:ge(["static-map",{"display-hover":h(n)}])},[h(n)?(T(),N("img",{key:0,src:r,alt:""})):(T(),N("div",{key:1,class:"bg-map-image",style:Yr({backgroundImage:`url(${r})`})},null,4)),f3e],2))}}),I0=e=>(ut("data-v-99122469"),e=e(),ct(),e),p3e={class:"timeline-workout"},m3e={class:"box"},E3e={class:"workout-user-date"},h3e={class:"workout-user"},_3e=["title"],T3e={key:0},g3e={key:1,class:"no-map"},A3e={class:"img"},S3e={class:"data"},O3e=I0(()=>p("i",{class:"fa fa-clock-o","aria-hidden":"true"},null,-1)),I3e={key:0},v3e={class:"data"},R3e=I0(()=>p("i",{class:"fa fa-road","aria-hidden":"true"},null,-1)),b3e={key:0,class:"data elevation"},N3e=["alt"],C3e={class:"data-values"},y3e={key:1,class:"data altitude"},D3e=I0(()=>p("i",{class:"fa fa-location-arrow","aria-hidden":"true"},null,-1)),P3e={class:"data-values"},w3e=Q({__name:"WorkoutCard",props:{user:{},useImperialUnits:{type:Boolean},workout:{default:()=>({})},sport:{default:()=>({})}},setup(e){const t=e,n=$e(),{user:r,workout:a,sport:s,useImperialUnits:o}=_e(t),i=$(()=>n.getters[H.GETTERS.LOCALE]);function u(l){return l.with_gpx&&l.min_alt!==null&&l.max_alt!==null}function c(l){return u(l)&&l.ascent!==null&&l.descent!==null}return(l,f)=>{var g;const d=ue("router-link"),m=ue("SportImage"),E=ue("Distance");return T(),N("div",p3e,[p("div",m3e,[p("div",E3e,[p("div",h3e,[M(Lo,{user:h(r)},null,8,["user"]),h(r).username?(T(),ne(d,{key:0,class:"workout-user-name",to:{name:"User",params:{username:h(r).username}}},{default:fe(()=>[K(_(h(r).username),1)]),_:1},8,["to"])):W("",!0)]),h(a).id?(T(),ne(d,{key:0,class:"workout-title",to:{name:"Workout",params:{workoutId:h(a).id}}},{default:fe(()=>[K(_(h(a).title),1)]),_:1},8,["to"])):W("",!0),h(a).workout_date&&h(r)?(T(),N("div",{key:1,class:"workout-date",title:h(xn)(h(a).workout_date,h(r).timezone,h(r).date_format)},_(h(k3)(new Date(h(a).workout_date),new Date,{addSuffix:!0,locale:i.value})),9,_3e)):W("",!0)]),p("div",{class:ge(["workout-map",{"no-cursor":!h(a)}]),onClick:f[0]||(f[0]=b=>h(a).id?l.$router.push({name:"Workout",params:{workoutId:h(a).id}}):null)},[h(a)?(T(),N("div",T3e,[h(a).with_gpx?(T(),ne(BA,{key:0,workout:h(a)},null,8,["workout"])):(T(),N("div",g3e,_(l.$t("workouts.NO_MAP")),1))])):W("",!0)],2),p("div",{class:ge(["workout-data",{"without-elevation":!u(h(a))}]),onClick:f[1]||(f[1]=b=>h(a).id?l.$router.push({name:"Workout",params:{workoutId:h(a).id}}):null)},[p("div",A3e,[(g=h(s))!=null&&g.label?(T(),ne(m,{key:0,"sport-label":h(s).label,color:h(s).color},null,8,["sport-label","color"])):W("",!0)]),p("div",S3e,[O3e,h(a)?(T(),N("span",I3e,_(h(a).moving),1)):W("",!0)]),p("div",v3e,[R3e,h(a).id?(T(),ne(E,{key:0,distance:h(a).distance,digits:3,unitFrom:"km",useImperialUnits:h(o)},null,8,["distance","useImperialUnits"])):W("",!0)]),u(h(a))?(T(),N("div",b3e,[p("img",{class:"mountains",src:zA,alt:l.$t("workouts.ELEVATION")},null,8,N3e),p("div",C3e,[h(a).id?(T(),ne(E,{key:0,distance:h(a).min_alt,unitFrom:"m",displayUnit:!1,useImperialUnits:h(o)},null,8,["distance","useImperialUnits"])):W("",!0),K("/ "),h(a).id?(T(),ne(E,{key:1,distance:h(a).max_alt,unitFrom:"m",useImperialUnits:h(o)},null,8,["distance","useImperialUnits"])):W("",!0)])])):W("",!0),c(h(a))?(T(),N("div",y3e,[D3e,p("div",P3e,[K(" +"),h(a).id?(T(),ne(E,{key:0,distance:h(a).ascent,unitFrom:"m",displayUnit:!1,useImperialUnits:h(o)},null,8,["distance","useImperialUnits"])):W("",!0),K("/- "),h(a).id?(T(),ne(E,{key:1,distance:h(a).descent,unitFrom:"m",useImperialUnits:h(o)},null,8,["distance","useImperialUnits"])):W("",!0)])])):W("",!0)],2)])])}}}),mh=ae(w3e,[["__scopeId","data-v-99122469"]]),L3e={},$3e={class:"no-workouts box"};function k3e(e,t){const n=ue("router-link");return T(),N("div",$3e,[p("div",null,[K(_(e.$t("workouts.NO_WORKOUTS"))+" ",1),M(n,{to:"/workouts/add"},{default:fe(()=>[K(_(e.$t("workouts.UPLOAD_FIRST_WORKOUT")),1)]),_:1})])])}const v0=ae(L3e,[["render",k3e],["__scopeId","data-v-b0c91cc6"]]),Gr={ligthMode:{text:"#666",line:"rgba(0, 0, 0, 0.1)"},darkMode:{text:"#a1a1a1",line:"#3f3f3f"}},U3e=(e,t,n,r=!1)=>{const a={speed:{label:t("workouts.SPEED"),backgroundColor:["transparent"],borderColor:[r?"#5f5c97":"#8884d8"],borderWidth:2,data:[],yAxisID:"ySpeed"},elevation:{label:t("workouts.ELEVATION"),backgroundColor:[r?"#303030":"#e5e5e5"],borderColor:[r?"#222222":"#cccccc"],borderWidth:1,fill:!0,data:[],yAxisID:"yElevation"}},s=[],o=[],i=[];return e.map(u=>{s.push(wi("km",u.distance,n)),o.push(u.duration),a.speed.data.push(wi("km",u.speed,n)),u.elevation!==void 0&&a.elevation.data.push(wi("m",u.elevation,n)),i.push({latitude:u.latitude,longitude:u.longitude})}),{distance_labels:s,duration_labels:o,datasets:a,coordinates:i}},M3e=e=>{const t=e.length;if(t===0)return{};const n={};return e.map(r=>{n[r.sport_id]||(n[r.sport_id]={count:0,percentage:0}),n[r.sport_id].count+=1,n[r.sport_id].percentage=n[r.sport_id].count/t}),n},bo={order:"desc",order_by:"workout_date"},x3e={id:"timeline"},F3e={class:"section-title"},W3e={key:0},G3e={key:1},z3e={key:1,class:"more-workouts"},gi=5,B3e=Q({__name:"Timeline",props:{sports:{},user:{}},setup(e){const t=e,n=$e(),{sports:r,user:a}=_e(t),s=ce(1),o=t.user.nb_workouts>=gi?gi:t.user.nb_workouts;It(()=>c());const i=$(()=>n.getters[Te.GETTERS.TIMELINE_WORKOUTS]),u=$(()=>i.value.length>0?i.value[i.value.length-1].previous_workout!==null:!1);function c(){n.dispatch(Te.ACTIONS.GET_TIMELINE_WORKOUTS,{page:s.value,per_page:gi,...bo})}function l(){s.value+=1,n.dispatch(Te.ACTIONS.GET_MORE_TIMELINE_WORKOUTS,{page:s.value,per_page:gi,...bo})}return(f,d)=>(T(),N("div",x3e,[p("div",F3e,_(f.$t("workouts.LATEST_WORKOUTS")),1),h(a).nb_workouts>0&&i.value.length===0?(T(),N("div",W3e,[(T(!0),N(Ie,null,xe([...Array(h(o)).keys()],m=>(T(),ne(mh,{user:h(a),useImperialUnits:h(a).imperial_units,key:m},null,8,["user","useImperialUnits"]))),128))])):(T(),N("div",G3e,[(T(!0),N(Ie,null,xe(i.value,m=>(T(),ne(mh,{workout:m,sport:i.value.length>0?h(r).filter(E=>E.id===m.sport_id)[0]:null,user:h(a),useImperialUnits:h(a).imperial_units,key:m.id},null,8,["workout","sport","user","useImperialUnits"]))),128)),i.value.length===0?(T(),ne(v0,{key:0})):W("",!0),u.value?(T(),N("div",z3e,[p("button",{onClick:l},_(f.$t("workouts.LOAD_MORE_WORKOUT")),1)])):W("",!0)]))]))}}),H3e=ae(B3e,[["__scopeId","data-v-e0964959"]]),j3e=["title"],HA=Q({__name:"CalendarWorkout",props:{displayHARecord:{type:Boolean},workout:{},sportLabel:{},sportColor:{}},setup(e){const t=e,{displayHARecord:n,workout:r,sportLabel:a,sportColor:s}=_e(t);return(o,i)=>{const u=ue("SportImage");return T(),N("div",{class:"calendar-workout",onClick:i[0]||(i[0]=c=>o.$router.push({name:"Workout",params:{workoutId:h(r).id}}))},[M(u,{"sport-label":h(a),title:h(r).title,color:h(s)},null,8,["sport-label","title","color"]),p("sup",null,[h(r).records.length>0?(T(),N("i",{key:0,class:"fa fa-trophy custom-fa-small","aria-hidden":"true",title:h(r).records.filter(c=>h(n)?!0:c.record_type!=="HA").map(c=>` ${o.$t(`workouts.RECORD_${c.record_type}`)}`)[0]},null,8,j3e)):W("",!0)])])}}}),V3e={class:"donut-chart"},K3e={height:"34",width:"34",viewBox:"0 0 34 34"},Y3e=["stroke","stroke-dashoffset","transform"],Eh=16,hh=16,_h=14,q3e=Q({__name:"DonutChart",props:{colors:{},datasets:{}},setup(e){const t=e,{colors:n,datasets:r}=_e(t);let a=-90;const s=2*Math.PI*_h;function o(u,c){return c-u*c}function i(u,c){const l=`rotate(${a}, ${Eh}, ${hh})`;return a=c*360+a,l}return(u,c)=>(T(),N("div",V3e,[(T(),N("svg",K3e,[(T(!0),N(Ie,null,xe(Object.entries(h(r)),(l,f)=>(T(),N("g",{key:f},[p("circle",{cx:Eh,cy:hh,r:_h,fill:"transparent",stroke:h(n)[+l[0]],"stroke-dashoffset":o(l[1].percentage,s),"stroke-dasharray":s,"stroke-width":"3","stroke-opacity":"0.8",transform:i(f,l[1].percentage)},null,8,Y3e)]))),128))]))]))}}),X3e={class:"calendar-workouts-chart"},Z3e={class:"workouts-count"},Q3e={key:0,class:"workouts-pane"},J3e={class:"more-workouts"},eCe=Q({__name:"CalendarWorkoutsChart",props:{colors:{},datasets:{},sports:{},workouts:{},displayHARecord:{type:Boolean}},setup(e){const t=e,{colors:n,datasets:r,sports:a,workouts:s}=_e(t),o=ce(!0);function i(u){u.stopPropagation(),o.value=!o.value}return(u,c)=>{const l=WO("click-outside");return T(),N("div",X3e,[p("div",{class:"workouts-chart",onClick:i},[p("div",Z3e,_(h(s).length),1),M(q3e,{datasets:h(r),colors:h(n)},null,8,["datasets","colors"])]),o.value?W("",!0):(T(),N("div",Q3e,[Ke((T(),N("div",J3e,[p("i",{class:"fa fa-times calendar-more","aria-hidden":"true",onClick:i}),(T(!0),N(Ie,null,xe(h(s),(f,d)=>(T(),ne(HA,{key:d,displayHARecord:u.displayHARecord,workout:f,sportLabel:h(h0)(f,h(a)),sportColor:h(_0)(f,h(a))},null,8,["displayHARecord","workout","sportLabel","sportColor"]))),128))])),[[l,i]])]))])}}}),Th=ae(eCe,[["__scopeId","data-v-bf05bb20"]]),tCe={class:"calendar-workouts"},nCe={class:"desktop-display"},rCe={key:0,class:"workouts-display"},aCe={key:1,class:"donut-display"},sCe={class:"mobile-display"},oCe={key:0,class:"donut-display"},gh=6,iCe=Q({__name:"CalendarWorkouts",props:{displayHARecord:{type:Boolean},workouts:{},sports:{}},setup(e){const t=e,{displayHARecord:n,workouts:r,sports:a}=_e(t),s=$(()=>M3e(t.workouts)),o=$(()=>eAe(t.sports));return(i,u)=>(T(),N("div",tCe,[p("div",nCe,[h(r).length<=gh?(T(),N("div",rCe,[(T(!0),N(Ie,null,xe(h(r).slice(0,gh),(c,l)=>(T(),ne(HA,{key:l,displayHARecord:h(n),workout:c,sportLabel:h(h0)(c,h(a)),sportColor:h(_0)(c,h(a))},null,8,["displayHARecord","workout","sportLabel","sportColor"]))),128))])):(T(),N("div",aCe,[M(Th,{workouts:h(r),sports:h(a),datasets:s.value,colors:o.value,displayHARecord:h(n)},null,8,["workouts","sports","datasets","colors","displayHARecord"])]))]),p("div",sCe,[h(r).length>0?(T(),N("div",oCe,[M(Th,{workouts:h(r),sports:h(a),datasets:s.value,colors:o.value,displayHARecord:h(n)},null,8,["workouts","sports","datasets","colors","displayHARecord"])])):W("",!0)])]))}}),uCe={class:"calendar-cells"},cCe={class:"calendar-cell-day"},lCe=Q({__name:"CalendarCells",props:{currentDay:{},displayHARecord:{type:Boolean},endDate:{},sports:{},startDate:{},timezone:{},weekStartingMonday:{type:Boolean},workouts:{}},setup(e){const t=e,{currentDay:n,displayHARecord:r,endDate:a,sports:s,startDate:o,timezone:i,weekStartingMonday:u,workouts:c}=_e(t),l=ce([]);gt(()=>f());function f(){l.value=[];let E=o.value;for(;E<=a.value;){const g=[];for(let b=0;b<7;b++)g.push(E),E=$o(E,1);l.value.push(g)}}function d(E){return u.value?[5,6].includes(E):[0,6].includes(E)}function m(E,g){return g?g.filter(b=>sT(yc(b.workout_date,i.value),E)).reverse():[]}return Fe(()=>t.currentDay,()=>f()),(E,g)=>(T(),N("div",uCe,[(T(!0),N(Ie,null,xe(l.value,(b,I)=>(T(),N("div",{class:"calendar-row",key:I},[(T(!0),N(Ie,null,xe(b,(R,v)=>(T(),N("div",{class:ge(["calendar-cell",{"disabled-cell":!h(M3)(R,h(n)),"week-end":d(v),today:h(x3)(R)}]),key:v},[M(iCe,{workouts:m(R,h(c)),sports:h(s),displayHARecord:h(r)},null,8,["workouts","sports","displayHARecord"]),p("div",cCe,_(h(ln)(R,"d")),1)],2))),128))]))),128))]))}}),dCe={class:"calendar-days"},fCe=Q({__name:"CalendarDays",props:{startDate:{},localeOptions:{}},setup(e){const t=e,n=[];for(let r=0;r<7;r++)n.push($o(t.startDate,r));return(r,a)=>(T(),N("div",dCe,[(T(),N(Ie,null,xe(n,(s,o)=>p("div",{class:"calendar-day",key:o},_(h(ln)(s,"EEE",{locale:r.localeOptions})),1)),64))]))}}),pCe={class:"calendar-header"},mCe=p("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1),ECe=[mCe],hCe={class:"calendar-month"},_Ce=p("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1),TCe=[_Ce],gCe=Q({__name:"CalendarHeader",props:{day:{},localeOptions:{}},emits:["displayNextMonth","displayPreviousMonth"],setup(e,{emit:t}){const n=e,r=t,{day:a,localeOptions:s}=_e(n);return(o,i)=>(T(),N("div",pCe,[p("div",{class:"calendar-arrow calendar-arrow-left",onClick:i[0]||(i[0]=u=>r("displayPreviousMonth"))},ECe),p("div",hCe,[p("span",null,_(h(ln)(h(a),"MMM yyyy",{locale:h(s)})),1)]),p("div",{class:"calendar-arrow calendar-arrow-right",onClick:i[1]||(i[1]=u=>r("displayNextMonth"))},TCe)]))}}),ACe={id:"user-calendar"},SCe={class:"calendar-card box"},Ah="yyyy-MM-dd",OCe=Q({__name:"index",props:{sports:{},user:{}},setup(e){const t=e,n=$e(),{sports:r,user:a}=_e(t),s=ce(new Date),o=ce(JE(s.value,a.value.weekm)),i=$(()=>n.getters[Te.GETTERS.CALENDAR_WORKOUTS]),u=$(()=>n.getters[H.GETTERS.LOCALE]);It(()=>c());function c(){o.value=JE(s.value,t.user.weekm);const d={from:ln(o.value.start,Ah),to:ln(o.value.end,Ah),page:1,per_page:100,...bo};n.dispatch(Te.ACTIONS.GET_CALENDAR_WORKOUTS,d)}function l(){s.value=Za(s.value,1),c()}function f(){s.value=uo(s.value,1),c()}return(d,m)=>(T(),N("div",ACe,[p("div",SCe,[M(gCe,{day:s.value,"locale-options":u.value,onDisplayNextMonth:l,onDisplayPreviousMonth:f},null,8,["day","locale-options"]),M(fCe,{"start-date":o.value.start,"locale-options":u.value},null,8,["start-date","locale-options"]),M(lCe,{currentDay:s.value,displayHARecord:h(a).display_ascent,"end-date":o.value.end,sports:h(r),"start-date":o.value.start,timezone:h(a).timezone,workouts:i.value,weekStartingMonday:h(a).weekm},null,8,["currentDay","displayHARecord","end-date","sports","start-date","timezone","workouts","weekStartingMonday"])])]))}}),jA={data:{type:Object,required:!0},options:{type:Object,default:()=>({})},plugins:{type:Array,default:()=>[]},datasetIdKey:{type:String,default:"label"},updateMode:{type:String,default:void 0}},ICe={ariaLabel:{type:String},ariaDescribedby:{type:String}},vCe={type:{type:String,required:!0},...jA,...ICe},RCe=U_[0]==="2"?(e,t)=>Object.assign(e,{attrs:t}):(e,t)=>Object.assign(e,t);function wa(e){return Vu(e)?Je(e):e}function bCe(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e;return Vu(t)?new Proxy(e,{}):e}function NCe(e,t){const n=e.options;n&&t&&Object.assign(n,t)}function VA(e,t){e.labels=t}function KA(e,t,n){const r=[];e.datasets=t.map(a=>{const s=e.datasets.find(o=>o[n]===a[n]);return!s||!a.data||r.includes(s)?{...a}:(r.push(s),Object.assign(s,a),s)})}function CCe(e,t){const n={labels:[],datasets:[]};return VA(n,e.labels),KA(n,e.datasets,t),n}const yCe=Q({props:vCe,setup(e,t){let{expose:n,slots:r}=t;const a=ce(null),s=Ku(null);n({chart:s});const o=()=>{if(!a.value)return;const{type:c,data:l,options:f,plugins:d,datasetIdKey:m}=e,E=CCe(l,m),g=bCe(E,l);s.value=new Yd(a.value,{type:c,data:g,options:{...f},plugins:d})},i=()=>{const c=Je(s.value);c&&(c.destroy(),s.value=null)},u=c=>{c.update(e.updateMode)};return gt(o),Co(i),Fe([()=>e.options,()=>e.data],(c,l)=>{let[f,d]=c,[m,E]=l;const g=Je(s.value);if(!g)return;let b=!1;if(f){const I=wa(f),R=wa(m);I&&I!==R&&(NCe(g,I),b=!0)}if(d){const I=wa(d.labels),R=wa(E.labels),v=wa(d.datasets),A=wa(E.datasets);I!==R&&(VA(g.config.data,I),b=!0),v&&v!==A&&(KA(g.config.data,v,e.datasetIdKey),b=!0)}b&&gn(()=>{u(g)})},{deep:!0}),()=>An("canvas",{role:"img",ariaLabel:e.ariaLabel,ariaDescribedby:e.ariaDescribedby,ref:a},[An("p",{},[r.default?r.default():""])])}});function YA(e,t){return Yd.register(t),Q({props:jA,setup(n,r){let{expose:a}=r;const s=Ku(null),o=i=>{s.value=i==null?void 0:i.chart};return a({chart:s}),()=>An(yCe,RCe({ref:o},{type:e,...n}))}})}const DCe=YA("bar",Uh),PCe=YA("line",Mh),wCe=(e,t=!1)=>{let n="0";t&&(n=String(Math.floor(e/86400)),e%=86400);const r=String(Math.floor(e/3600)).padStart(2,"0");e%=3600;const a=String(Math.floor(e/60)).padStart(2,"0"),s=String(e%60).padStart(2,"0");return t?`${n==="0"?"":`${n}d `}${r==="00"?"":`${r}h `}${a}m ${s}s`:`${r==="00"?"":`${r}:`}${a}:${s}`},Us=(e,t,n,r=!0,a="km")=>{const s=n?$n[a].defaultTarget:a;switch(e){case"average_speed":return`${t.toFixed(2)} ${s}/h`;case"total_duration":return wCe(t,r);case"total_distance":case"total_ascent":case"total_descent":return`${t.toFixed(2)} ${s}`;default:return t.toString()}},LCe=Q({__name:"Chart",props:{datasets:{},labels:{},displayedData:{},displayedSportIds:{},fullStats:{type:Boolean},useImperialUnits:{type:Boolean}},setup(e){const t=e,{datasets:n,labels:r,displayedData:a,displayedSportIds:s,fullStats:o,useImperialUnits:i}=_e(t),u=Cf(),{t:c}=jt(),l=$(()=>u.getters[H.GETTERS.DARK_MODE]),f=$(()=>({color:l.value?Gr.darkMode.line:Gr.ligthMode.line})),d=$(()=>({color:l.value?Gr.darkMode.text:Gr.ligthMode.text})),m=$(()=>({labels:r.value,datasets:JSON.parse(JSON.stringify(n.value))})),E=$(()=>({responsive:!0,maintainAspectRatio:!1,animation:!1,layout:{padding:{top:o.value?40:22}},scales:{x:{stacked:!0,grid:{drawOnChartArea:!1,...f.value},border:{...f.value},ticks:{...d.value}},y:{stacked:a.value!=="average_speed",grid:{drawOnChartArea:!1,...f.value},border:{...f.value},ticks:{maxTicksLimit:6,callback:function(R){return Us(a.value,+R,i.value,!1,I(a.value))},...d.value},afterFit:function(R){R.width=o.value?90:60}}},plugins:{datalabels:{anchor:"end",align:"end",color:function(R){return a.value==="average_speed"&&R.dataset.backgroundColor?R.dataset.backgroundColor[0]:"#666666"},rotation:function(R){return o.value&&R.chart.chartArea.width<580?310:0},display:function(R){return o.value&&R.chart.chartArea.width<300?!1:a.value==="average_speed"?s.value.length==1?"auto":!1:!0},formatter:function(R,v){if(a.value==="average_speed")return Us(a.value,R,i.value,!1);{const A=v.chart.data.datasets.map(C=>C.data[v.dataIndex]).reduce((C,w)=>b(C,w),0);return v.datasetIndex===s.value.length-1&&A>0?Us(a.value,A,i.value,!1,I(a.value)):null}}},legend:{display:!1},tooltip:{interaction:{intersect:!0,mode:"index",position:a.value==="average_speed"?"nearest":"average"},filter:function(R){return R.formattedValue!=="0"},callbacks:{label:function(R){let v=c(`sports.${R.dataset.label}.LABEL`)||"";return v&&(v+=": "),R.parsed.y!==null&&(v+=Us(a.value,R.parsed.y,i.value,!0,I(a.value))),v},footer:function(R){if(a.value==="average_speed")return"";let v=0;return R.map(A=>{v+=A.parsed.y}),`${c("common.TOTAL")}: `+Us(a.value,v,i.value,!0,I(a.value))}}}}}));function g(R){return isNaN(R)?0:+R}function b(R,v){return g(R)+g(v)}function I(R){return["total_ascent","total_descent"].includes(R)?"m":"km"}return(R,v)=>(T(),N("div",{class:ge(["bar-chart",{minimal:!h(o)}])},[M(h(DCe),{data:m.value,options:E.value},null,8,["data","options"])],2))}}),$Ce=ae(LCe,[["__scopeId","data-v-ec445a3e"]]),{locale:Sh}=ga.global,kCe={week:{api:"yyyy-MM-dd",chart:"MM/dd/yyyy"},month:{api:"yyyy-MM",chart:"MM/yyyy"},year:{api:"yyyy",chart:"yyyy"}},UCe=["average_speed","nb_workouts","total_duration","total_distance","total_ascent","total_descent"],MCe=(e,t)=>{const n=[];for(let r=mSe(e.duration,e.start,t);r<=e.end;r=ESe(e.duration,r))n.push(r);return n},La=(e,t,n=!1)=>{const r={label:e,backgroundColor:[t],data:[]};return n?(r.type="line",r.borderColor=[t],r.spanGaps=!0):r.type="bar",r},xCe=e=>{const t={average_speed:[],nb_workouts:[],total_distance:[],total_duration:[],total_ascent:[],total_descent:[]};return e.map(n=>{const r=n.color?n.color:E0[n.label];t.average_speed.push(La(n.label,r,!0)),t.nb_workouts.push(La(n.label,r)),t.total_distance.push(La(n.label,r)),t.total_duration.push(La(n.label,r)),t.total_ascent.push(La(n.label,r)),t.total_descent.push(La(n.label,r))}),t},FCe=(e,t,n)=>{switch(e){case"average_speed":case"total_distance":case"total_ascent":case"total_descent":return wi(["average_speed","total_distance"].includes(e)?"km":"m",t,n);default:case"nb_workouts":case"total_duration":return t}},WCe=(e,t,n,r,a,s,o)=>{const i=MCe(e,t),u=kCe[e.duration],c=n.filter(m=>r.includes(m.id)),l=[],f=xCe(c),d={};return c.map(m=>d[m.label]=m.id),i.map(m=>{const E=ln(m,u.api),g=ln(m,e.duration==="week"?Sa(o,Sh.value):u.chart,{locale:Mo[Sh.value]});l.push(g),UCe.map(b=>{f[b].map(I=>{I.data.push(E in a&&d[I.label]in a[E]?FCe(b,a[E][d[I.label]][b],s):b==="average_speed"?null:0)})})}),{labels:l,datasets:f}},GCe=(e,t,n)=>{const r=n?1:0,a=t==="year"?wf(Kl(e,9)):t==="week"?lc(uo(e,2),{weekStartsOn:r}):Uo(uo(e,11)),s=t==="year"?oT(e):t==="week"?Lf(e,{weekStartsOn:r}):ko(e);return{duration:t,end:s,start:a}},zCe=(e,t,n)=>{const{duration:r,start:a,end:s}=e,o=n?1:0;return{duration:r,end:r==="year"?oT(t?Kl(s,1):Qi(s,1)):r==="week"?Lf(t?tm(s,1):Vl(s,1),{weekStartsOn:o}):ko(t?uo(s,1):Za(s,1)),start:r==="year"?wf(t?Kl(a,1):Qi(a,1)):r==="week"?lc(t?tm(a,1):Vl(a,1),{weekStartsOn:o}):Uo(t?uo(a,1):Za(a,1))}},BCe={class:"stats-chart"},HCe={key:0},jCe={key:1},VCe={class:"chart-radio"},KCe=["checked","disabled"],YCe=["checked","disabled"],qCe=["checked","disabled"],XCe={key:0},ZCe=["checked","disabled"],QCe={key:1},JCe=["checked","disabled"],eye={key:2},tye=["checked","disabled"],nye=Q({__name:"index",props:{sports:{},user:{},chartParams:{},displayedSportIds:{default:()=>[]},fullStats:{type:Boolean,default:!1},hideChartIfNoData:{type:Boolean,default:!1},isDisabled:{type:Boolean,default:!1}},setup(e){const t=e,{sports:n,user:r,chartParams:a,displayedSportIds:s,fullStats:o,hideChartIfNoData:i,isDisabled:u}=_e(t),c=$e(),l=ce("total_distance"),f=$(()=>c.getters[Kr.GETTERS.USER_STATS]),d=$(()=>WCe(a.value,r.value.weekm,n.value,s.value,f.value,r.value.imperial_units,r.value.date_format)),m=$(()=>d.value.datasets[l.value]),E=$(()=>d.value.labels),g=$(()=>Object.keys(f.value).length===0);It(()=>b(R(a.value,r.value)));function b(v){c.dispatch(Kr.ACTIONS.GET_USER_STATS,{username:r.value.username,filterType:"by_time",params:v})}function I(v){l.value=v.target.name}function R(v,A){return{from:ln(v.start,"yyyy-MM-dd"),to:ln(v.end,"yyyy-MM-dd"),time:v.duration==="week"?`week${A.weekm?"m":""}`:v.duration}}return Fe(()=>a.value,async v=>{b(R(v,r.value))}),(v,A)=>(T(),N("div",BCe,[h(i)&&g.value?(T(),N("div",HCe,_(v.$t("workouts.NO_WORKOUTS")),1)):(T(),N("div",jCe,[p("div",VCe,[p("label",null,[p("input",{type:"radio",name:"total_distance",checked:l.value==="total_distance",disabled:h(u),onClick:I},null,8,KCe),K(" "+_(v.$t("workouts.DISTANCE")),1)]),p("label",null,[p("input",{type:"radio",name:"total_duration",checked:l.value==="total_duration",disabled:h(u),onClick:I},null,8,YCe),K(" "+_(v.$t("workouts.DURATION")),1)]),p("label",null,[p("input",{type:"radio",name:"nb_workouts",checked:l.value==="nb_workouts",disabled:h(u),onClick:I},null,8,qCe),K(" "+_(v.$t("workouts.WORKOUT",2)),1)]),h(o)?(T(),N("label",XCe,[p("input",{type:"radio",name:"average_speed",checked:l.value==="average_speed",disabled:h(u),onClick:I},null,8,ZCe),K(" "+_(v.$t("workouts.AVERAGE_SPEED")),1)])):W("",!0),h(o)?(T(),N("label",QCe,[p("input",{type:"radio",name:"total_ascent",checked:l.value==="total_ascent",disabled:h(u),onClick:I},null,8,JCe),K(" "+_(v.$t("workouts.ASCENT")),1)])):W("",!0),h(o)?(T(),N("label",eye,[p("input",{type:"radio",name:"total_descent",checked:l.value==="total_descent",disabled:h(u),onClick:I},null,8,tye),K(" "+_(v.$t("workouts.DESCENT")),1)])):W("",!0)]),E.value.length>0?(T(),ne($Ce,{key:0,datasets:m.value,labels:E.value,displayedData:l.value,displayedSportIds:h(s),fullStats:h(o),useImperialUnits:h(r).imperial_units},null,8,["datasets","labels","displayedData","displayedSportIds","fullStats","useImperialUnits"])):W("",!0)]))]))}}),qA=ae(nye,[["__scopeId","data-v-b8d7f5c9"]]),rye={class:"user-month-stats"},aye=Q({__name:"UserMonthStats",props:{sports:{},user:{}},setup(e){const t=e,{sports:n,user:r}=_e(t),a=new Date,s={duration:"week",start:Uo(a),end:ko(a)},o=n.value.map(i=>i.id);return(i,u)=>{const c=ue("Card");return T(),N("div",rye,[M(c,null,{title:fe(()=>[K(_(i.$t("dashboard.THIS_MONTH")),1)]),content:fe(()=>[M(qA,{sports:h(n),user:h(r),"chart-params":s,"displayed-sport-ids":h(o),"hide-chart-if-no-data":!0},null,8,["sports","user","displayed-sport-ids"])]),_:1})])}}}),sye=ae(aye,[["__scopeId","data-v-8f59a282"]]),{locale:oye}=ga.global,iye=(e,t,n,r)=>{const a="km",s=n?$n[a].defaultTarget:a,o="m",i=n?$n[o].defaultTarget:o;let u;switch(e.record_type){case"AS":case"MS":u=`${sn(+e.value,a,s,2)} ${s}/h`;break;case"FD":u=`${sn(+e.value,a,s,3)} ${s}`;break;case"HA":u=`${sn(+e.value,o,i,2)} ${i}`;break;case"LD":u=e.value;break;default:throw new Error(`Invalid record type, expected: "AS", "FD", "HA", "LD", "MD", got: "${e.record_type}"`)}return{id:e.id,record_type:e.record_type,sport_id:e.sport_id,value:u,user:e.user,workout_date:xn(e.workout_date,t,r,!1),workout_id:e.workout_id}},uye=(e,t)=>{const n=e.label.toLowerCase(),r=t.label.toLowerCase();return n>r?1:n(s=Sa(s,oye.value),e.filter(o=>a?!0:o.record_type!=="HA").reduce((o,i)=>{const u=t.find(c=>c.id===i.sport_id);return u&&u.label&&(o[u.translatedLabel]===void 0&&(o[u.translatedLabel]={label:u.label,color:u.color,records:[]}),o[u.translatedLabel].records.push(iye(i,n,r,s))),o},{})),lye={class:"records-card"},dye={class:"record-type"},fye={class:"record-value"},pye={class:"record-date"},mye=Q({__name:"RecordsCard",props:{records:{},sportTranslatedLabel:{}},setup(e){const t=e,{records:n,sportTranslatedLabel:r}=_e(t),{t:a}=jt();function s(o){const i=[];return o.map(u=>{i.push({...u,label:a(`workouts.RECORD_${u.record_type}`)})}),i.sort(uye)}return(o,i)=>{const u=ue("SportImage"),c=ue("router-link"),l=ue("Card");return T(),N("div",lye,[M(l,null,{title:fe(()=>[M(u,{"sport-label":h(n).label,color:h(n).color},null,8,["sport-label","color"]),K(" "+_(h(r)),1)]),content:fe(()=>[(T(!0),N(Ie,null,xe(s(h(n).records),f=>(T(),N("div",{class:"record",key:f.id},[p("span",dye,_(f.label),1),p("span",fye,_(f.value),1),p("span",pye,[M(c,{to:{name:"Workout",params:{workoutId:f.workout_id}}},{default:fe(()=>[p("time",null,_(f.workout_date),1)]),_:2},1032,["to"])])]))),128))]),_:1})])}}}),Eye=ae(mye,[["__scopeId","data-v-64523a87"]]),hye=e=>(ut("data-v-fff33919"),e=e(),ct(),e),_ye={class:"user-records-section"},Tye={class:"section-title"},gye=hye(()=>p("i",{class:"fa fa-trophy custom-fa-small","aria-hidden":"true"},null,-1)),Aye={class:"user-records"},Sye={key:0,class:"no-records"},Oye=Q({__name:"index",props:{sports:{},user:{}},setup(e){const t=e,{t:n}=jt(),r=$(()=>cye(t.user.records,Jr(t.sports,n),t.user.timezone,t.user.imperial_units,t.user.display_ascent,t.user.date_format));return(a,s)=>(T(),N("div",_ye,[p("div",Tye,[gye,K(" "+_(a.$t("workouts.RECORD",2)),1)]),p("div",Aye,[Object.keys(r.value).length===0?(T(),N("div",Sye,_(a.$t("workouts.NO_RECORDS")),1)):W("",!0),(T(!0),N(Ie,null,xe(Object.keys(r.value).sort(),o=>(T(),ne(Eye,{sportTranslatedLabel:o,records:r.value[o],key:o,useImperialUnits:a.user.imperial_units},null,8,["sportTranslatedLabel","records","useImperialUnits"]))),128))])]))}}),Iye=ae(Oye,[["__scopeId","data-v-fff33919"]]),vye={id:"user-stats"},gl="km",Al="m",Rye=Q({__name:"index",props:{user:{}},setup(e){const t=e,{t:n}=jt(),{user:r}=_e(t),a=$(()=>t.user.total_duration),s=$(()=>l(a)),o=r.value.imperial_units?$n[gl].defaultTarget:gl,i=$(()=>r.value.imperial_units?sn(r.value.total_distance,gl,o,2):parseFloat(r.value.total_distance.toFixed(2))),u=r.value.imperial_units?$n[Al].defaultTarget:Al,c=$(()=>r.value.imperial_units?sn(r.value.total_ascent,Al,u,2):parseFloat(r.value.total_ascent.toFixed(2)));function l(f){const d=f.value.match(/day/g)?f.value.split(", ")[1]:f.value;return{days:f.value.match(/day/g)?`${f.value.split(" ")[0]} ${f.value.match(/days/g)?n("common.DAY",2):n("common.DAY",1)}`:`0 ${n("common.DAY",2)},`,duration:`${d.split(":")[0]}h ${d.split(":")[1]}min`}}return(f,d)=>(T(),N("div",vye,[M(fr,{icon:"calendar",value:h(r).nb_workouts,text:f.$t("workouts.WORKOUT",h(r).nb_workouts)},null,8,["value","text"]),M(fr,{icon:"road",value:i.value,text:h(o)==="mi"?"miles":h(o)},null,8,["value","text"]),h(r).display_ascent?(T(),ne(fr,{key:0,icon:"location-arrow",value:c.value,text:h(u)==="ft"?"feet":h(u)},null,8,["value","text"])):W("",!0),M(fr,{icon:"clock-o",value:s.value.days,text:s.value.duration},null,8,["value","text"]),h(r).display_ascent?W("",!0):(T(),ne(fr,{key:1,icon:"tags",value:h(r).nb_sports,text:f.$t("workouts.SPORT",h(r).nb_sports)},null,8,["value","text"]))]))}}),bye={},Nye={class:"privacy-policy-message"};function Cye(e,t){const n=ue("router-link"),r=ue("i18n-t");return T(),N("div",Nye,[p("span",null,[M(r,{keypath:"user.LAST_PRIVACY_POLICY_TO_VALIDATE"},{default:fe(()=>[M(n,{to:"/profile/edit/privacy-policy"},{default:fe(()=>[K(_(e.$t("user.REVIEW")),1)]),_:1})]),_:1})])])}const yye=ae(bye,[["render",Cye],["__scopeId","data-v-9714d129"]]),Ho=e=>(ut("data-v-8f5da609"),e=e(),ct(),e),Dye={key:0,id:"dashboard",class:"view"},Pye={class:"container mobile-menu"},wye={class:"box"},Lye=Ho(()=>p("i",{class:"fa fa-calendar","aria-hidden":"true"},null,-1)),$ye=[Lye],kye=Ho(()=>p("i",{class:"fa fa-bar-chart","aria-hidden":"true"},null,-1)),Uye=[kye],Mye=Ho(()=>p("i",{class:"fa fa-map-o","aria-hidden":"true"},null,-1)),xye=[Mye],Fye=Ho(()=>p("i",{class:"fa fa-trophy","aria-hidden":"true"},null,-1)),Wye=[Fye],Gye={key:0,class:"container privacy-policy-message"},zye={class:"container"},Bye={class:"container dashboard-container"},Hye={class:"left-container dashboard-sub-container"},jye={class:"right-container dashboard-sub-container"},Vye=Ho(()=>p("div",{id:"bottom"},null,-1)),Kye={key:1,class:"app-loading"},Yye=Q({__name:"Dashboard",setup(e){const t=$e(),n=$(()=>t.getters[Y.GETTERS.AUTH_USER_PROFILE]),r=$(()=>t.getters[$t.GETTERS.SPORTS]),a=ce("calendar");It(()=>t.dispatch(Y.ACTIONS.GET_USER_PROFILE));function s(o){a.value=o}return(o,i)=>{const u=ue("Loader");return n.value.username&&r.value.length>0?(T(),N("div",Dye,[p("div",Pye,[p("div",wye,[p("div",{class:ge(["mobile-menu-item",{"is-selected":a.value==="calendar"}]),onClick:i[0]||(i[0]=c=>s("calendar"))},$ye,2),p("div",{class:ge(["mobile-menu-item",{"is-selected":a.value==="chart"}]),onClick:i[1]||(i[1]=c=>s("chart"))},Uye,2),p("div",{class:ge(["mobile-menu-item",{"is-selected":a.value==="timeline"}]),onClick:i[2]||(i[2]=c=>s("timeline"))},xye,2),p("div",{class:ge(["mobile-menu-item",{"is-selected":a.value==="records"}]),onClick:i[3]||(i[3]=c=>s("records"))},Wye,2)])]),n.value.accepted_privacy_policy?W("",!0):(T(),N("div",Gye,[M(yye)])),p("div",zye,[M(Rye,{user:n.value},null,8,["user"])]),p("div",Bye,[p("div",Hye,[M(sye,{sports:r.value,user:n.value,class:ge({"is-hidden":a.value!=="chart"})},null,8,["sports","user","class"]),M(Iye,{sports:r.value,user:n.value,class:ge({"is-hidden":a.value!=="records"})},null,8,["sports","user","class"])]),p("div",jye,[M(OCe,{sports:r.value,user:n.value,class:ge({"is-hidden":a.value!=="calendar"})},null,8,["sports","user","class"]),M(H3e,{sports:r.value,user:n.value,class:ge({"is-hidden":a.value!=="timeline"})},null,8,["sports","user","class"])])]),Vye])):(T(),N("div",Kye,[M(u)]))}}}),qye=ae(Yye,[["__scopeId","data-v-8f5da609"]]),Xye={class:"not-found view"},Zye=Q({__name:"NotFoundView",setup(e){return(t,n)=>(T(),N("div",Xye,[M(O0)]))}}),Qye={id:"privacy-policy",class:"view"},Jye={class:"container"},eDe=p("div",{id:"bottom"},null,-1),tDe=Q({__name:"PrivacyPolicyView",setup(e){const t=$e();return It(()=>{t.dispatch(H.ACTIONS.GET_APPLICATION_PRIVACY_POLICY)}),(n,r)=>(T(),N("div",Qye,[p("div",Jye,[M(WA)]),eDe]))}}),XA=e=>(ut("data-v-174c91c4"),e=e(),ct(),e),nDe={class:"chart-menu"},rDe=["disabled"],aDe=XA(()=>p("i",{class:"fa fa-chevron-left","aria-hidden":"true"},null,-1)),sDe=[aDe],oDe={class:"time-frames custom-checkboxes-group"},iDe={class:"time-frames-checkboxes custom-checkboxes"},uDe=["id","name","checked","onInput","disabled"],cDe=["id","tabindex","onKeydown"],lDe=["disabled"],dDe=XA(()=>p("i",{class:"fa fa-chevron-right","aria-hidden":"true"},null,-1)),fDe=[dDe],pDe=Q({__name:"StatsMenu",props:{isDisabled:{type:Boolean}},emits:["arrowClick","timeFrameUpdate"],setup(e,{emit:t}){const n=e,{isDisabled:r}=_e(n),a=t,s=ce("month"),o=["week","month","year"];function i(u){s.value=u,a("timeFrameUpdate",u)}return gt(()=>{if(!r.value){const u=document.getElementById("frame-month");u&&u.focus()}}),(u,c)=>(T(),N("div",nDe,[p("button",{class:"chart-arrow transparent",onClick:c[0]||(c[0]=l=>a("arrowClick",!0)),onKeydown:c[1]||(c[1]=At(l=>a("arrowClick",!0),["enter"])),disabled:h(r)},sDe,40,rDe),p("div",oDe,[p("div",iDe,[(T(),N(Ie,null,xe(o,l=>p("div",{class:"time-frame custom-checkbox",key:l},[p("label",null,[p("input",{type:"radio",id:l,name:l,checked:s.value===l,onInput:f=>i(l),disabled:h(r)},null,40,uDe),p("span",{id:`frame-${l}`,tabindex:h(r)?-1:0,role:"button",onKeydown:At(f=>i(l),["enter"])},_(u.$t(`statistics.TIME_FRAMES.${l}`)),41,cDe)])])),64))])]),p("button",{class:"chart-arrow transparent",onClick:c[2]||(c[2]=l=>a("arrowClick",!1)),onKeydown:c[3]||(c[3]=At(l=>a("arrowClick",!1),["enter"])),disabled:h(r)},fDe,40,lDe)]))}}),mDe=ae(pDe,[["__scopeId","data-v-174c91c4"]]),EDe={class:"sports-menu"},hDe=["id","name","checked","onInput"],_De={class:"sport-label"},TDe=Q({__name:"StatsSportsMenu",props:{userSports:{},selectedSportIds:{default:()=>[]}},emits:["selectedSportIdsUpdate"],setup(e,{emit:t}){const n=e,r=t,{t:a}=jt(),s=ht("sportColors"),{selectedSportIds:o}=_e(n),i=$(()=>Jr(n.userSports,a));function u(c){r("selectedSportIdsUpdate",c)}return(c,l)=>{const f=ue("SportImage");return T(),N("div",EDe,[(T(!0),N(Ie,null,xe(i.value,d=>(T(),N("label",{type:"checkbox",key:d.id,style:Yr({color:d.color?d.color:h(s)[d.label]})},[p("input",{type:"checkbox",id:`${d.id}`,name:d.label,checked:h(o).includes(d.id),onInput:m=>u(d.id)},null,40,hDe),M(f,{"sport-label":d.label,color:d.color},null,8,["sport-label","color"]),p("span",_De,_(d.translatedLabel),1)],4))),128))])}}}),gDe={key:0,id:"user-statistics"},ADe=Q({__name:"index",props:{sports:{},user:{},isDisabled:{type:Boolean}},setup(e){const t=e,{t:n}=jt(),{sports:r,user:a}=_e(t),s=ce("month"),o=ce(l(s.value)),i=$(()=>Jr(t.sports,n)),u=ce(d(r.value));function c(E){s.value=E,o.value=l(s.value)}function l(E){return GCe(new Date,E,t.user.weekm)}function f(E){o.value=zCe(o.value,E,t.user.weekm)}function d(E){return E.map(g=>g.id)}function m(E){u.value.includes(E)?u.value=u.value.filter(g=>g!==E):u.value.push(E)}return Fe(()=>t.sports,E=>{u.value=d(E)}),(E,g)=>i.value?(T(),N("div",gDe,[M(mDe,{onTimeFrameUpdate:c,onArrowClick:f,isDisabled:E.isDisabled},null,8,["isDisabled"]),M(qA,{sports:h(r),user:h(a),chartParams:o.value,"displayed-sport-ids":u.value,fullStats:!0,isDisabled:E.isDisabled},null,8,["sports","user","chartParams","displayed-sport-ids","isDisabled"]),M(TDe,{"selected-sport-ids":u.value,"user-sports":h(r),onSelectedSportIdsUpdate:m},null,8,["selected-sport-ids","user-sports"])])):W("",!0)}}),SDe=ae(ADe,[["__scopeId","data-v-b145e4ac"]]),ODe={id:"statistics",class:"view"},IDe={key:0,class:"container"},vDe=Q({__name:"StatisticsView",setup(e){const t=$e(),n=$(()=>t.getters[Y.GETTERS.AUTH_USER_PROFILE]),r=$(()=>t.getters[$t.GETTERS.SPORTS].filter(s=>n.value.sports_list.includes(s.id))),a=$(()=>n.value.nb_workouts===0);return(s,o)=>{const i=ue("Card");return T(),N("div",ODe,[n.value.username?(T(),N("div",IDe,[M(i,null,{title:fe(()=>[K(_(s.$t("statistics.STATISTICS")),1)]),content:fe(()=>[M(SDe,{class:ge({"stats-disabled":a.value}),user:n.value,sports:r.value,isDisabled:a.value},null,8,["class","user","sports","isDisabled"])]),_:1}),n.value.nb_workouts===0?(T(),ne(v0,{key:0})):W("",!0)])):W("",!0)])}}}),RDe=ae(vDe,[["__scopeId","data-v-0aa997fa"]]),bDe={name:"EmailSent"},NDe={version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 345.834 345.834",style:{"enable-background":"new 0 0 345.834 345.834"},"xml:space":"preserve"},CDe=p("g",null,[p("path",{d:`M339.798,260.429c0.13-0.026,0.257-0.061,0.385-0.094c0.109-0.028,0.219-0.051,0.326-0.084 c0.125-0.038,0.247-0.085,0.369-0.129c0.108-0.039,0.217-0.074,0.324-0.119c0.115-0.048,0.226-0.104,0.338-0.157 c0.109-0.052,0.22-0.1,0.327-0.158c0.107-0.057,0.208-0.122,0.312-0.184c0.107-0.064,0.215-0.124,0.319-0.194